Skip to content

Releases: dashingsoft/pyarmor

Release 8.5.9

01 Jun 00:55
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
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
Compare
Choose a tag to compare

Fix issues:

  • pyarmor man raises normpath issuse

Release 8.5.1

17 Mar 03:56
Compare
Choose a tag to compare

Fix issues:

  • In some Windows x86 platform it raises exception: unsupported arch "x86"
  • Fix Python 3.12 issue #1710: ModuleNotFoundError: No module named 'distutils'

Release 8.5.0

07 Mar 14:26
Compare
Choose a tag to compare

Upgrade notes:

  • Change option -e/--expired behaviour. In the previous versions, it checks internet time, but now it will check local time by default. After run pyarmor cfg nts="pool.ntp.org", it will be same as previous versions.
  • When something is wrong with pyarmor, it will print suggestion solutions in the console

New features:

  • Add new plugin post_script which could be used to patch each obfuscated script
  • Runtime key could be obfuscated if config option obf_key_mode is set by pyarmor cfg obf_key_mode=1
  • Support binding obfuscated script by machine id, refer to option -b/--bind-device in the man page
  • Add new command man, pyarmor man could help Pyarmor users to learn and use Pyarmor by web-ui, quickly find solutions when something is wrong, and report issues in standard form

Fix issues:

  • --private doesn't work with --pack (PyInstaller), if scripts are obfuscated by --private, the executable bundle will raise protection error unauthorized use of script
  • Fix Python 3.12 issue: pyarmor raise exception no module named 'distutils'

Release 8.4.7

26 Jan 23:25
Compare
Choose a tag to compare

Fix issues:

  • Fix issue #1585: some special modules could be imported by plain script even if --restrict option is used
  • Fix issue #1647: Raise error invalid co header size when obfuscating special scripts
  • Fix issue #1668: Raise error invalid device info "xxxxxx" when binding to too short harddisk serial number
  • Fix bug: pyarmor.cli.hdinfo could not get "Multiple Mac addresses", it raises error Unsupported hardware type with name