pyarmor 8.5.10__zip → 8.5.11__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. {pyarmor-8.5.10 → pyarmor-8.5.11}/PKG-INFO +1 -1
  2. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/__init__.py +1 -1
  3. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/__main__.py +1 -13
  4. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/context.py +14 -5
  5. pyarmor-8.5.11/pyarmor/cli/core.data.1 +0 -0
  6. pyarmor-8.5.11/pyarmor/cli/core.data.3 +0 -0
  7. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/default.cfg +15 -3
  8. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/register.py +5 -0
  9. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/config.py +1 -1
  10. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor.egg-info/PKG-INFO +1 -1
  11. pyarmor-8.5.10/pyarmor/cli/core.data.1 +0 -0
  12. pyarmor-8.5.10/pyarmor/cli/core.data.3 +0 -0
  13. {pyarmor-8.5.10 → pyarmor-8.5.11}/MANIFEST.in +0 -0
  14. {pyarmor-8.5.10 → pyarmor-8.5.11}/README.md +0 -0
  15. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/README.rst +0 -0
  16. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/__init__.py +0 -0
  17. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/benchmark.py +0 -0
  18. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/build_meta.py +0 -0
  19. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/bootstrap.py +0 -0
  20. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/bug.py +0 -0
  21. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/config.py +0 -0
  22. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/core.data.2 +0 -0
  23. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/docker.py +0 -0
  24. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/generate.py +0 -0
  25. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/hdinfo.py +0 -0
  26. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/merge.py +0 -0
  27. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/mixer.py +0 -0
  28. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/plugin.py +0 -0
  29. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/public_capsule.zip +0 -0
  30. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/repack.py +0 -0
  31. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/resource.py +0 -0
  32. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cli/shell.py +0 -0
  33. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/cobuilder.py +0 -0
  34. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/README-ZH.md +0 -0
  35. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/README.md +0 -0
  36. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/build-for-exe.bat +0 -0
  37. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/build-for-freeze.bat +0 -0
  38. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/build-with-project.bat +0 -0
  39. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/build-with-project.sh +0 -0
  40. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/cx_Freeze/hello.py +0 -0
  41. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/cx_Freeze/queens.py +0 -0
  42. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/cx_Freeze/setup.py +0 -0
  43. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/helloworld/foo.py +0 -0
  44. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/obfuscate-app.bat +0 -0
  45. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/obfuscate-app.sh +0 -0
  46. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/obfuscate-pkg.bat +0 -0
  47. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/obfuscate-pkg.sh +0 -0
  48. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pack-obfuscated-scripts.bat +0 -0
  49. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pack-obfuscated-scripts.sh +0 -0
  50. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/py2exe/hello.py +0 -0
  51. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/py2exe/queens.py +0 -0
  52. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/py2exe/setup.py +0 -0
  53. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Arithmetic.py +0 -0
  54. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Calls.py +0 -0
  55. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/CommandLine.py +0 -0
  56. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Constructs.py +0 -0
  57. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Dict.py +0 -0
  58. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Exceptions.py +0 -0
  59. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Imports.py +0 -0
  60. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Instances.py +0 -0
  61. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Lists.py +0 -0
  62. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Lookups.py +0 -0
  63. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/NewInstances.py +0 -0
  64. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Numbers.py +0 -0
  65. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Setup.py +0 -0
  66. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Strings.py +0 -0
  67. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/Tuples.py +0 -0
  68. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/With.py +0 -0
  69. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/clockres.py +0 -0
  70. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/package/__init__.py +0 -0
  71. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/package/submodule.py +0 -0
  72. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/pybench.py +0 -0
  73. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/pybench/systimes.py +0 -0
  74. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/simple/queens.py +0 -0
  75. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/testmod/hello.py +0 -0
  76. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/testmod/queens.py +0 -0
  77. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/testpkg/main.py +0 -0
  78. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/testpkg/mypkg/__init__.py +0 -0
  79. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/examples/testpkg/mypkg/foo.py +0 -0
  80. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/__init__.py +0 -0
  81. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/build_data_module.py +0 -0
  82. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/buildext.py +0 -0
  83. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/get_bind_key.py +0 -0
  84. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/get_license_info.py +0 -0
  85. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/get_platform_name.py +0 -0
  86. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/merge.py +0 -0
  87. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/repack.py +0 -0
  88. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/helper/superuntime.py +0 -0
  89. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/license.tri +0 -0
  90. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/packer.py +0 -0
  91. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/platforms/darwin/x86_64/_pytransform.dylib +0 -0
  92. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/platforms/linux/x86/_pytransform.so +0 -0
  93. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/platforms/linux/x86_64/_pytransform.so +0 -0
  94. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/platforms/windows/x86/_pytransform.dll +0 -0
  95. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/platforms/windows/x86_64/_pytransform.dll +0 -0
  96. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/plugins/README.md +0 -0
  97. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/plugins/check_ntp_time.py +0 -0
  98. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/polyfills/__init__.py +0 -0
  99. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/polyfills/argparse.py +0 -0
  100. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/product.key +0 -0
  101. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/project.py +0 -0
  102. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/protect_code.pt +0 -0
  103. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/protect_code2.pt +0 -0
  104. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/public.key +0 -0
  105. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/public_capsule.zip +0 -0
  106. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pyarmor-deprecated.py +0 -0
  107. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pyarmor-webui.py +0 -0
  108. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pyarmor.py +0 -0
  109. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pyimcore.py +0 -0
  110. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pyshield.key +0 -0
  111. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pyshield.lic +0 -0
  112. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/pytransform.py +0 -0
  113. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/reform.py +0 -0
  114. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/register.py +0 -0
  115. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/sppmode.py +0 -0
  116. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor/utils.py +0 -0
  117. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor.egg-info/SOURCES.txt +0 -0
  118. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor.egg-info/dependency_links.txt +0 -0
  119. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor.egg-info/entry_points.txt +0 -0
  120. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor.egg-info/requires.txt +0 -0
  121. {pyarmor-8.5.10 → pyarmor-8.5.11}/pyarmor.egg-info/top_level.txt +0 -0
  122. {pyarmor-8.5.10 → pyarmor-8.5.11}/setup.cfg +0 -0
  123. {pyarmor-8.5.10 → pyarmor-8.5.11}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.1
2
2
  Name: pyarmor
3
- Version: 8.5.10
3
+ Version: 8.5.11
4
4
  Summary: A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
5
5
  Home-page: https://github.com/dashingsoft/pyarmor
6
6
  Author: Jondy Zhao
@@ -1,6 +1,6 @@
1
1
  import logging
2
2
 
3
- __VERSION__ = '8.5.10'
3
+ __VERSION__ = '8.5.11'
4
4
 
5
5
  logger = logging.getLogger('cli')
6
6
 
@@ -335,19 +335,7 @@ def cmd_reg(ctx, args):
335
335
 
336
336
 
337
337
  def cmd_man(ctx, args):
338
- pkgpath = os.path.join(os.path.dirname(__file__), '..', 'man')
339
- if not os.path.exists(pkgpath):
340
- from subprocess import check_output
341
- check_output([
342
- sys.executable, '-m', 'pip', 'install',
343
- '--disable-pip-version-check', 'pyarmor.man'
344
- ])
345
-
346
- from pyarmor.man.cli import main_entry
347
- try:
348
- main_entry(args)
349
- except KeyboardInterrupt:
350
- logging.info('Quit from Pyarmor.Man, Bye-Bye')
338
+ logging.info('This feature is still developing ...')
351
339
 
352
340
 
353
341
  def main_parser():
@@ -40,7 +40,7 @@ def __pyarmor__():
40
40
 
41
41
  def format_system():
42
42
  plat = platform.system().lower()
43
- plat = ('windows' if plat.startswith('cygwin') else
43
+ plat = ('cygwin' if plat.startswith('cygwin') else
44
44
  'linux' if plat.startswith('linux') else
45
45
  'freebsd' if plat.startswith(
46
46
  ('freebsd', 'openbsd', 'isilon onefs')) else plat)
@@ -209,12 +209,20 @@ class Context(object):
209
209
  return cfg
210
210
 
211
211
  def _named_config(self, name, encoding=None):
212
- flist = [os.path.join(x, name)
213
- for x in (self.global_path, self.local_path)]
212
+ nlist = []
213
+ if self.cfg.getboolean('builder', 'propagate_package_options'):
214
+ i = name.find('.')
215
+ while i > -1:
216
+ nlist.append(name[:i])
217
+ i = name.find('.', i+1)
218
+ nlist.append(name)
219
+ flist = [os.path.join(b, a)
220
+ for a in nlist
221
+ for b in (self.global_path, self.local_path)]
214
222
  return self._read_config(flist, encoding=encoding)
215
223
 
216
224
  def read_token(self):
217
- for filename in (self.license_token, self.license_group_token):
225
+ for filename in (self.license_group_token, self.license_token):
218
226
  if os.path.exists(filename):
219
227
  with open(filename, 'rb') as f:
220
228
  return f.read()
@@ -269,7 +277,8 @@ class Context(object):
269
277
  if self.cfg.has_section(extra_sect):
270
278
  options.update(self.cfg.items(extra_sect))
271
279
  if name:
272
- cfg = self._named_config(name + '.ruler')
280
+ # If input path is '.', package name will start with '..'
281
+ cfg = self._named_config(name.strip('.') + '.ruler')
273
282
  if cfg.has_section(sect):
274
283
  options.update(cfg.items(sect))
275
284
  return options
Binary file
Binary file
@@ -3,7 +3,7 @@
3
3
  ;; Pyarmor version
4
4
  major = 8
5
5
  minor = 5
6
- patch = 10
6
+ patch = 11
7
7
 
8
8
  ;; Compatible core version
9
9
  cli.core = 6.5.3
@@ -102,6 +102,11 @@ rft_dev_mode = 0
102
102
  ;; Export module and classes
103
103
  ; rft_export_names = pkg.mod pkg.mod.cls pkg.mod.attr
104
104
 
105
+ ;; How to reform import statement
106
+ ;; 0 Convert import statement to security form
107
+ ;; 1 Simple rename the imported name
108
+ rft_simple_import = 0
109
+
105
110
  ;; Extra paths to find dependent package
106
111
  ; pypaths =
107
112
 
@@ -115,6 +120,13 @@ rft_dev_mode = 0
115
120
  ;; Group device flag for machine id
116
121
  group_device_flag = 22
117
122
 
123
+ ;; Whether propagate package private configuration to module
124
+ ;;
125
+ ;; If enable, "pkg.mod" will inherit "pkg" configuration
126
+ ;;
127
+ ;; Otherwise, "pkg.mod" doesn't merge "pkg" configuration
128
+ propagate_package_options = 0
129
+
118
130
  ;;
119
131
  ;; Part 2: global/local/module level options
120
132
  ;;
@@ -398,7 +410,7 @@ enable_comprehension = 1
398
410
 
399
411
  [windows.x86_64.bcc]
400
412
  cc = clang.exe
401
- cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables --target=x86_64-elf-windows -c
413
+ cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables --target=x86_64-elf-windows -c -DENABLE_BCC_MEMSET
402
414
 
403
415
  [windows.x86.bcc]
404
416
  cc = clang.exe
@@ -417,7 +429,7 @@ cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables
417
429
  cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-stack-protector -shared -nostdlib -Tlinux.armv7.ldscript
418
430
 
419
431
  [darwin.x86_64.bcc]
420
- cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables --target=x86_64-elf-gnu_linux -fPIC -c
432
+ cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables --target=x86_64-elf-gnu_linux -fPIC -c -DENABLE_BCC_MEMSET
421
433
 
422
434
  [darwin.aarch64.bcc]
423
435
  cflags = -O3 -Wno-unsequenced -fno-asynchronous-unwind-tables -fno-unwind-tables --target=arm64-macho-darwin -fPIC -fno-addrsig -fno-stack-protector -shared -nostdlib -lsystem
@@ -151,6 +151,11 @@ class Register(object):
151
151
  def register_regfile(self, regfile, clean=True):
152
152
  from zipfile import ZipFile
153
153
 
154
+ for x in (self.ctx.license_group_token, self.ctx.license_token):
155
+ if os.path.exists(x):
156
+ logger.info('remove old token "%s"', x)
157
+ os.remove(x)
158
+
154
159
  path = self.ctx.reg_path
155
160
  with ZipFile(regfile, 'r') as f:
156
161
  for item in ('license.lic', '.pyarmor_capsule.zip'):
@@ -1,6 +1,6 @@
1
1
  from sys import platform
2
2
 
3
- version = '8.5.10'
3
+ version = '8.5.11'
4
4
 
5
5
  # The corresponding version of pytransform.so
6
6
  core_version = 'r52.6'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 1.1
2
2
  Name: pyarmor
3
- Version: 8.5.10
3
+ Version: 8.5.11
4
4
  Summary: A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
5
5
  Home-page: https://github.com/dashingsoft/pyarmor
6
6
  Author: Jondy Zhao
Binary file
Binary file
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes