A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
Fix issues:
RuntimeError: invalid license token
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Fix issues:
request license token failed (3)
when registering Pyarmor in some special networksfrom __future__ imports must occur at the beginning of the file
when using --mix-str
to obfuscate module which has doc string__all__
missing keyword "license"
Fix issues:
invalid v8 code
--use-runtime
, pyarmor raises error byte must be in range(0, b256)
invalid device info
when binding to hard disk with special serial number/usr/local/opt/gettext/lib/libintl.8.dylib
for Python 3.10+ (need reinstall package pyarmor.cli.core
)Fix issues:
invalid v8 code
when obfuscating some Python3.12 scriptsSyntaxError: unexpected character after line continuation character
when there is ,
in obfuscated codeinvalid license token
when obfuscating a big project (need pip install -U pyarmor.cli.core
also)
1Change logs:
pyarmor.cli
by pip
, it will create console command pyarmor-auth
Fix issues:
pyarmor gen
in docker container raises error invalid license token
and pyarmor-auth
crashed in docker hostSupport Python 3.12
Change logs:
Fix issues:
on_error=1
does't work for outer licenseChange logs:
pyarmor reg -g N
Fix issues:
import a.b.c as abc
--no-wrap
and --mix-str
results in NameError: name '__assert_armored__' is not defined
--mix-str
with non-ascii string may raise encoding errorUnboundLocalError
Change logs:
pyarmor-auth
supports option -d
as short form of --debug
Fix issues:
--outer
can not work with multiple --platform
, the obfuscated script raises exception bad argument to internal function
import a.b.c as abc
MultiPythonPlugin
saves runtime package to wrong path when there is only one cross platformChange logs:
l
Fix issues:
Change logs:
http_proxy
i
which ignores computer nameFix issues:
NameError: name '__assert_armored__' is not defined
when there is docstring in the function and the script is obfuscated by both --enable-bcc
and --mix-str
--enable-rft
, configuration items bcc:excludes
, bcc:includes
, assert.call:includes
and assert.call:excludes
do not work