Releases: dashingsoft/pyarmor
Releases · dashingsoft/pyarmor
Release 9.0.5
Release 9.0.4
New feature
- When something is wrong with pyarmor, one file
pyarmor.bug.log
will be generated in the current path
Changed features
- Save debug logfile
pyarmor.debug.log
and trace logfilepyarmor.trace.log
in the current path, in prior to version, they are stored in the path.pyarmor
- Enable
pyarmor man
, now it works
Fixed isssues
- Fix issue:
pyarmor -v
returnTypeError: 'NoneType' object is not subscriptable
- Fix issue: Python 3.9+ failed to register Pyarmor
- Fix issue: The new device regfile doesn't work for Group License
- Fix issue #1970: When register with Basic CI regfile, license type is unknown
- Fix issue #1977: When obfuscating the scripts, pyarmor raises error
unknown token error 3
Release 9.0
Upgrade Notes
There is a big change about using Pyarmor in CI/CD pipeline, please refer to Pyarmor 9 Upgrade Notes
New Feature
- Add new license type Pyarmor CI License to support CI/CD pipeline
Change Features
- Pro License could not be used in CI/CD pipeline
- Basic License need use extra options to work in CI/CD pipeline
- When first activate license, pyarmor will complete the registration process internatively
- Group License need update old device registration file by new version
Fix Issues
- Fix issue #1944: subclass attribtes are not be renamed in RFT mode
- Fix group license does not work in some Linux like Openeuler
- Fix issue: local variables are not mixed in Python 3.11+
- Fix issue: function arguments are not mixed in Python 3.11+ even
pyarmor cfg mix_argnames = 1
- Fix issue: position only arguments may not be mixed for Python 3.8+ even
pyarmor cfg mix_argnames = 1
- Fix issue: error message not clear when platform is not supported
Release 8.5.12
Change features
- If last registeration was within 30 seconds, next registration will be delayed automatically. It prevents frequent registration requests being sent to license server.
Fix issues
- Fix runtime error:
RuntimeError: failed to get api PyCell_Get
in Android (need pyarmor.cli.core.android>=6.5.3.post1) - Fix issue #1929: the obfuscated script can not bind to domain name
- Fix issue: in Darwin packing universal2 build failed
Release 8.5.11
New features
- Module could inherit package private configuration by
pyarmor cfg propagate_package_options=1
- Add new configuration item
rft_simple_import
Fix issues
- Fix issue: Remove leading dot from private module config file name if input path is "."
- Fix issue: When using multiple
--platform
to obfuscate the scripts, even--platform cygwin.x86_64
is specified, the obfuscated scripts still could not run in Cygwin platform (need install packagepip install pyarmor.cli.core.cygwin>=6.5.3.post1
) - Fix issue: the rft-mode script may raise
ImportError: cannot import name from partially initialized module (most likely due to a circular import)
- Fix issue #1876: in some platforms bcc scripts crash if there are too many variables or parameters
Release 8.5.10
Changed features
- Do not copy plain script to output instead raising exception as before (only in v8.5.9 the plain script will be copied to "dist" without obfuscation when out of license)
- Refine hint messages when something is wrong with pyarmor
New feature
- Support new platforms: cygwin.x86_64 with new package
pyarmor.cli.core.cygwin
Fix issues
- Fix issue:
--pack
with executable file will raise encoding exception for non-ascii script - Fix issue: in some platforms
pyarmor
may fail when call functionformat_platform
- Fix issue: the error message is not clear when group license failed in the docker container
- Fix issue #1807, #1810: In Windows VM pyarmor raises exception
RuntimeError: Incorrect function
- Fix issue #1815: named harddisk serial number includes whitespace
- Fix issue #1845: complex runtime hook scripts failed for Python 3.11+
- Fix issue: pyarmor.cli.hdinfo could not get multiple mac addresses
Release 8.5.9
New Features
pyarmor-auth
supports new option--host
(refer to #1773)- Support new platforms (no tested): linux.mips32el, linux.mips64el, linux.ppc64le, linux.riscv64, alpine.mips32el, alpine.mips64el, alpine.ppc64le, alpine.riscv64
Changed feature for trial version
- Copy plain script to output directly instead of raising exception if out of license
Fix issues
- Fix issue #1760: Pyarmor Basic or Pro license need to be registered again after several days
- Fix issue #1764:
--pack
with executable file will raise exceptionNo such file or directory
- Fix issue #1772: when
pyarmor cfg data_files=*
, the directoy such as2003.2
will be renamed to2003
in output path - Fix issue #1788: remove whitespaces in the harddisk serial number
- Fix issue #1793: In Windows VM pyarmor raises exception
<built-in function init_ctx> returned a result with an exception set
- Fix issue: in some special arches
pyarmor
raise exceptionModuleNotFound (pytransform3)
- Fix issue: if the scripts are obfuscated by
--obf-module 0
, it raisesRuntimeError: the format of obfuscated script is incorrect (1:1082)
in runtime
Fix Pyarmor-7 issues
- Fix issue #1785:
pyarmor-7 pack
doesn't work with PyInstaller 5.11.0+
Release 8.5.8
New Feature
- Option
--pack
support specfile. If plain script could be packed by one.spec
file, it could be used by--pack
to pack the obfuscated script. For example,pyarmor gen --pack foo.spec foo.py
Fix issues
- Fix pack issues with extra PyInstaller options
- Fix pack issue: some special binary extensions are missed in the final bundle
- Fix pack issue: in Windows case insensitive path does not work
- Fix issue #1758:
--pack
could not work with--enable-rft
,--assert-import
orassert-call
- Fix issue #1756: Match case which form is
Class.Name
wont work with--obf-code 2
Release 8.5.6
Fix issues:
- Fix issue #1745:
--pack
with PyInstaller 6.6 raises exception
Release 8.5.5
New feature:
- Support new configuration item
runtime:patch_extension
to enable/disable patching extensionpyarmor_runtime
, the main purpose is to solve code sign issue in Darwin - Option
--pack
supports new valueFC
,DC
to clean output path without prompt
Fix issues:
- Refine pack output log to make it clear