Skip to content

Releases: dashingsoft/pyarmor

Release 8.5.12

01 Oct 02:19

Choose a tag to compare

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

01 Aug 00:44

Choose a tag to compare

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 package pip 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

01 Jul 02:20

Choose a tag to compare

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 function format_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

01 Jun 00:55

Choose a tag to compare

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 exception No such file or directory
  • Fix issue #1772: when pyarmor cfg data_files=*, the directoy such as 2003.2 will be renamed to 2003 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 exception ModuleNotFound (pytransform3)
  • Fix issue: if the scripts are obfuscated by --obf-module 0, it raises RuntimeError: 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

01 May 01:08

Choose a tag to compare

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 or assert-call
  • Fix issue #1756: Match case which form is Class.Name wont work with --obf-code 2

Release 8.5.6

23 Apr 04:59

Choose a tag to compare

Fix issues:

  • Fix issue #1745: --pack with PyInstaller 6.6 raises exception

Release 8.5.5

23 Apr 01:35

Choose a tag to compare

New feature:

  • Support new configuration item runtime:patch_extension to enable/disable patching extension pyarmor_runtime, the main purpose is to solve code sign issue in Darwin
  • Option --pack supports new value FC, DC to clean output path without prompt

Fix issues:

  • Refine pack output log to make it clear

Release 8.5.4

22 Apr 11:22

Choose a tag to compare

New feature:

Option --pack support constant onefile and onedir, both of them work for PyInstaller 6.0+

In previous versions --pack only accepts executable generated by PyInstaller < 6.0.

Since v8.5.4, it accepts string constant onefile or onefolder, support PyInstaller 6.0+ and previous versions too. User need not call PyInstaller, pyarmor will do everything. For example, obfuscate plain script main.py and pack the output to one executable just by this one command:

pyarmor gen --pack onefile main.py

Release 8.5.3

19 Apr 11:37

Choose a tag to compare

Upgrade Notes:

The behaviour of option --private is changed

In previous versions the plain script could NOT import the module obfuscated by --private. Now the plain script could import this obfuscated module, but could not visit module attribute __dict__.

If still need keep old behaviours, run command pyarmor cfg private_module_as_restrict=1 once before generating the obfuscated scripts.

Fix issues:

  • Fix issue #1712: Group license does't work in Windows.x86
  • Fix issue: registering Pyarmor failed if firewall blocks extension pytransform3

Release 8.5.2

29 Mar 02:25

Choose a tag to compare

Fix issues:

  • pyarmor man raises normpath issuse