Skip to content

Releases: dashingsoft/pyarmor

Release 9.0.5

10 Nov 05:22
Compare
Choose a tag to compare

New feature

  • Support Python 3.13 (need pyarmor.cli.core>=7.6.2)

Fixed isssues

  • Fix issue: pyarmor cfg failed to reset option value
  • Fix issue #1980: cross-platform build both darwin intel and arm64 failed
  • Fix issue #1981: Basic CI license failed with error "invalid network date format"

Release 9.0.4

07 Nov 04:30
Compare
Choose a tag to compare

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 logfile pyarmor.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 return TypeError: '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

20 Oct 00:29
Compare
Choose a tag to compare

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

01 Oct 02:19
Compare
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
Compare
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
Compare
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
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