Nuitka-winsvc 2.0.5__cp311-cp311-win_amd64.whl → 2.1__cp311-cp311-win_amd64.whl

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.

Potentially problematic release.


This version of Nuitka-winsvc might be problematic. Click here for more details.

Files changed (653) hide show
  1. {Nuitka_winsvc-2.0.5.data → Nuitka_winsvc-2.1.data}/scripts/nuitka-run.bat +9 -9
  2. {Nuitka_winsvc-2.0.5.data → Nuitka_winsvc-2.1.data}/scripts/nuitka.bat +15 -15
  3. {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/METADATA +1 -1
  4. Nuitka_winsvc-2.1.dist-info/RECORD +920 -0
  5. nuitka/Builtins.py +18 -17
  6. nuitka/BytecodeCaching.py +20 -19
  7. nuitka/Bytecodes.py +19 -17
  8. nuitka/CacheCleanup.py +22 -22
  9. nuitka/Constants.py +19 -17
  10. nuitka/Errors.py +19 -17
  11. nuitka/HardImportRegistry.py +20 -17
  12. nuitka/MainControl.py +31 -19
  13. nuitka/ModuleRegistry.py +40 -20
  14. nuitka/OptionParsing.py +67 -44
  15. nuitka/Options.py +42 -17
  16. nuitka/OutputDirectories.py +19 -17
  17. nuitka/PostProcessing.py +19 -17
  18. nuitka/Progress.py +19 -17
  19. nuitka/PythonFlavors.py +22 -18
  20. nuitka/PythonOperators.py +18 -17
  21. nuitka/PythonVersions.py +19 -17
  22. nuitka/Serialization.py +21 -25
  23. nuitka/SourceCodeReferences.py +19 -17
  24. nuitka/Tracing.py +33 -20
  25. nuitka/TreeXML.py +19 -17
  26. nuitka/Variables.py +19 -17
  27. nuitka/Version.py +2 -2
  28. nuitka/__init__.py +5 -4
  29. nuitka/__main__.py +18 -17
  30. nuitka/__past__.py +18 -17
  31. nuitka/build/Backend.scons +18 -21
  32. nuitka/build/CCompilerVersion.scons +17 -17
  33. nuitka/build/DataComposerInterface.py +19 -17
  34. nuitka/build/Onefile.scons +18 -21
  35. nuitka/build/SconsCaching.py +24 -43
  36. nuitka/build/SconsCompilerSettings.py +25 -29
  37. nuitka/build/SconsHacks.py +19 -17
  38. nuitka/build/SconsInterface.py +20 -25
  39. nuitka/build/SconsProgress.py +19 -17
  40. nuitka/build/SconsSpawn.py +40 -29
  41. nuitka/build/SconsUtils.py +85 -20
  42. nuitka/build/__init__.py +5 -4
  43. nuitka/build/include/nuitka/allocator.h +17 -17
  44. nuitka/build/include/nuitka/builtins.h +17 -17
  45. nuitka/build/include/nuitka/calling.h +17 -17
  46. nuitka/build/include/nuitka/checkers.h +17 -18
  47. nuitka/build/include/nuitka/checksum_tools.h +14 -15
  48. nuitka/build/include/nuitka/compiled_asyncgen.h +17 -17
  49. nuitka/build/include/nuitka/compiled_cell.h +17 -17
  50. nuitka/build/include/nuitka/compiled_coroutine.h +17 -17
  51. nuitka/build/include/nuitka/compiled_frame.h +17 -17
  52. nuitka/build/include/nuitka/compiled_function.h +17 -17
  53. nuitka/build/include/nuitka/compiled_generator.h +17 -17
  54. nuitka/build/include/nuitka/compiled_method.h +16 -17
  55. nuitka/build/include/nuitka/constants.h +17 -18
  56. nuitka/build/include/nuitka/constants_blob.h +17 -17
  57. nuitka/build/include/nuitka/environment_variables.h +16 -16
  58. nuitka/build/include/nuitka/environment_variables_system.h +17 -18
  59. nuitka/build/include/nuitka/exception_groups.h +17 -18
  60. nuitka/build/include/nuitka/exceptions.h +17 -17
  61. nuitka/build/include/nuitka/filesystem_paths.h +17 -18
  62. nuitka/build/include/nuitka/freelists.h +16 -17
  63. nuitka/build/include/nuitka/helper/attributes.h +17 -17
  64. nuitka/build/include/nuitka/helper/boolean.h +17 -17
  65. nuitka/build/include/nuitka/helper/bytearrays.h +17 -17
  66. nuitka/build/include/nuitka/helper/bytes.h +14 -15
  67. nuitka/build/include/nuitka/helper/calling_generated.h +17 -17
  68. nuitka/build/include/nuitka/helper/comparisons_eq.h +17 -17
  69. nuitka/build/include/nuitka/helper/comparisons_ge.h +17 -17
  70. nuitka/build/include/nuitka/helper/comparisons_gt.h +17 -17
  71. nuitka/build/include/nuitka/helper/comparisons_le.h +17 -17
  72. nuitka/build/include/nuitka/helper/comparisons_lt.h +17 -17
  73. nuitka/build/include/nuitka/helper/comparisons_ne.h +17 -17
  74. nuitka/build/include/nuitka/helper/complex.h +17 -17
  75. nuitka/build/include/nuitka/helper/dictionaries.h +17 -17
  76. nuitka/build/include/nuitka/helper/floats.h +17 -18
  77. nuitka/build/include/nuitka/helper/import_hard.h +17 -17
  78. nuitka/build/include/nuitka/helper/indexes.h +17 -18
  79. nuitka/build/include/nuitka/helper/ints.h +17 -18
  80. nuitka/build/include/nuitka/helper/iterators.h +17 -17
  81. nuitka/build/include/nuitka/helper/lists.h +17 -18
  82. nuitka/build/include/nuitka/helper/lists_generated.h +17 -17
  83. nuitka/build/include/nuitka/helper/mappings.h +17 -18
  84. nuitka/build/include/nuitka/helper/operations.h +17 -17
  85. nuitka/build/include/nuitka/helper/operations_binary_add.h +17 -17
  86. nuitka/build/include/nuitka/helper/operations_binary_bitand.h +17 -17
  87. nuitka/build/include/nuitka/helper/operations_binary_bitor.h +17 -17
  88. nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +17 -17
  89. nuitka/build/include/nuitka/helper/operations_binary_divmod.h +17 -17
  90. nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +17 -17
  91. nuitka/build/include/nuitka/helper/operations_binary_lshift.h +17 -17
  92. nuitka/build/include/nuitka/helper/operations_binary_matmult.h +17 -17
  93. nuitka/build/include/nuitka/helper/operations_binary_mod.h +17 -17
  94. nuitka/build/include/nuitka/helper/operations_binary_mult.h +17 -17
  95. nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +17 -17
  96. nuitka/build/include/nuitka/helper/operations_binary_pow.h +17 -17
  97. nuitka/build/include/nuitka/helper/operations_binary_rshift.h +17 -17
  98. nuitka/build/include/nuitka/helper/operations_binary_sub.h +17 -17
  99. nuitka/build/include/nuitka/helper/operations_binary_truediv.h +17 -17
  100. nuitka/build/include/nuitka/helper/operations_builtin_types.h +17 -17
  101. nuitka/build/include/nuitka/helper/operations_inplace_add.h +17 -17
  102. nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +17 -17
  103. nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +17 -17
  104. nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +17 -17
  105. nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +17 -17
  106. nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +17 -17
  107. nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +17 -17
  108. nuitka/build/include/nuitka/helper/operations_inplace_mod.h +17 -17
  109. nuitka/build/include/nuitka/helper/operations_inplace_mult.h +17 -17
  110. nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +17 -17
  111. nuitka/build/include/nuitka/helper/operations_inplace_pow.h +17 -17
  112. nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +17 -17
  113. nuitka/build/include/nuitka/helper/operations_inplace_sub.h +17 -17
  114. nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
  115. nuitka/build/include/nuitka/helper/raising.h +17 -17
  116. nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
  117. nuitka/build/include/nuitka/helper/richcomparisons.h +14 -14
  118. nuitka/build/include/nuitka/helper/sequences.h +13 -13
  119. nuitka/build/include/nuitka/helper/sets.h +11 -12
  120. nuitka/build/include/nuitka/helper/slices.h +17 -17
  121. nuitka/build/include/nuitka/helper/strings.h +16 -17
  122. nuitka/build/include/nuitka/helper/subscripts.h +17 -17
  123. nuitka/build/include/nuitka/helper/tuples.h +17 -18
  124. nuitka/build/include/nuitka/helpers.h +17 -17
  125. nuitka/build/include/nuitka/importing.h +17 -17
  126. nuitka/build/include/nuitka/prelude.h +17 -17
  127. nuitka/build/include/nuitka/printing.h +17 -17
  128. nuitka/build/include/nuitka/python_pgo.h +17 -18
  129. nuitka/build/include/nuitka/safe_string_ops.h +17 -18
  130. nuitka/build/include/nuitka/threading.h +17 -17
  131. nuitka/build/include/nuitka/tracing.h +17 -17
  132. nuitka/build/include/nuitka/unfreezing.h +17 -17
  133. nuitka/build/static_src/CompiledAsyncgenType.c +17 -17
  134. nuitka/build/static_src/CompiledCellType.c +17 -18
  135. nuitka/build/static_src/CompiledCodeHelpers.c +17 -17
  136. nuitka/build/static_src/CompiledCoroutineType.c +17 -17
  137. nuitka/build/static_src/CompiledFrameType.c +17 -18
  138. nuitka/build/static_src/CompiledFunctionType.c +17 -18
  139. nuitka/build/static_src/CompiledGeneratorType.c +17 -18
  140. nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +17 -17
  141. nuitka/build/static_src/CompiledMethodType.c +17 -17
  142. nuitka/build/static_src/HelpersAllocator.c +17 -17
  143. nuitka/build/static_src/HelpersAttributes.c +16 -18
  144. nuitka/build/static_src/HelpersBuiltin.c +17 -17
  145. nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
  146. nuitka/build/static_src/HelpersBytes.c +17 -18
  147. nuitka/build/static_src/HelpersCalling.c +17 -17
  148. nuitka/build/static_src/HelpersCallingGenerated.c +17 -17
  149. nuitka/build/static_src/HelpersChecksumTools.c +17 -18
  150. nuitka/build/static_src/HelpersClasses.c +17 -17
  151. nuitka/build/static_src/HelpersComparisonEq.c +17 -17
  152. nuitka/build/static_src/HelpersComparisonEqUtils.c +17 -17
  153. nuitka/build/static_src/HelpersComparisonGe.c +17 -17
  154. nuitka/build/static_src/HelpersComparisonGt.c +17 -17
  155. nuitka/build/static_src/HelpersComparisonLe.c +17 -17
  156. nuitka/build/static_src/HelpersComparisonLt.c +17 -17
  157. nuitka/build/static_src/HelpersComparisonNe.c +17 -17
  158. nuitka/build/static_src/HelpersConstantsBlob.c +17 -17
  159. nuitka/build/static_src/HelpersDeepcopy.c +17 -17
  160. nuitka/build/static_src/HelpersDictionaries.c +17 -17
  161. nuitka/build/static_src/HelpersDictionariesGenerated.c +16 -17
  162. nuitka/build/static_src/HelpersDumpBacktraces.c +17 -18
  163. nuitka/build/static_src/HelpersEnvironmentVariables.c +17 -17
  164. nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +17 -17
  165. nuitka/build/static_src/HelpersExceptions.c +17 -18
  166. nuitka/build/static_src/HelpersFiles.c +17 -17
  167. nuitka/build/static_src/HelpersFilesystemPaths.c +17 -17
  168. nuitka/build/static_src/HelpersFloats.c +17 -17
  169. nuitka/build/static_src/HelpersHeapStorage.c +17 -17
  170. nuitka/build/static_src/HelpersImport.c +17 -17
  171. nuitka/build/static_src/HelpersImportHard.c +17 -17
  172. nuitka/build/static_src/HelpersLists.c +17 -18
  173. nuitka/build/static_src/HelpersListsGenerated.c +17 -17
  174. nuitka/build/static_src/HelpersMappings.c +17 -17
  175. nuitka/build/static_src/HelpersMatching.c +17 -18
  176. nuitka/build/static_src/HelpersOperationBinaryAdd.c +17 -17
  177. nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +17 -17
  178. nuitka/build/static_src/HelpersOperationBinaryBitand.c +17 -17
  179. nuitka/build/static_src/HelpersOperationBinaryBitor.c +17 -17
  180. nuitka/build/static_src/HelpersOperationBinaryBitxor.c +17 -17
  181. nuitka/build/static_src/HelpersOperationBinaryDivmod.c +17 -17
  182. nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
  183. nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +17 -17
  184. nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +17 -18
  185. nuitka/build/static_src/HelpersOperationBinaryLshift.c +17 -17
  186. nuitka/build/static_src/HelpersOperationBinaryMatmult.c +17 -17
  187. nuitka/build/static_src/HelpersOperationBinaryMod.c +17 -17
  188. nuitka/build/static_src/HelpersOperationBinaryMult.c +17 -17
  189. nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +17 -17
  190. nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +17 -17
  191. nuitka/build/static_src/HelpersOperationBinaryPow.c +17 -17
  192. nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
  193. nuitka/build/static_src/HelpersOperationBinaryRshift.c +17 -17
  194. nuitka/build/static_src/HelpersOperationBinarySub.c +17 -17
  195. nuitka/build/static_src/HelpersOperationBinaryTruediv.c +17 -17
  196. nuitka/build/static_src/HelpersOperationInplaceAdd.c +17 -17
  197. nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +17 -17
  198. nuitka/build/static_src/HelpersOperationInplaceBitand.c +17 -17
  199. nuitka/build/static_src/HelpersOperationInplaceBitor.c +17 -17
  200. nuitka/build/static_src/HelpersOperationInplaceBitxor.c +17 -17
  201. nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +17 -17
  202. nuitka/build/static_src/HelpersOperationInplaceLshift.c +17 -17
  203. nuitka/build/static_src/HelpersOperationInplaceMatmult.c +17 -17
  204. nuitka/build/static_src/HelpersOperationInplaceMod.c +17 -17
  205. nuitka/build/static_src/HelpersOperationInplaceMult.c +17 -17
  206. nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +17 -17
  207. nuitka/build/static_src/HelpersOperationInplacePow.c +17 -17
  208. nuitka/build/static_src/HelpersOperationInplaceRshift.c +17 -17
  209. nuitka/build/static_src/HelpersOperationInplaceSub.c +17 -17
  210. nuitka/build/static_src/HelpersOperationInplaceTruediv.c +17 -17
  211. nuitka/build/static_src/HelpersProfiling.c +17 -17
  212. nuitka/build/static_src/HelpersPythonPgo.c +17 -17
  213. nuitka/build/static_src/HelpersRaising.c +17 -17
  214. nuitka/build/static_src/HelpersSafeStrings.c +17 -17
  215. nuitka/build/static_src/HelpersSequences.c +17 -18
  216. nuitka/build/static_src/HelpersSlices.c +17 -18
  217. nuitka/build/static_src/HelpersStrings.c +17 -17
  218. nuitka/build/static_src/HelpersTuples.c +17 -17
  219. nuitka/build/static_src/HelpersTypes.c +17 -18
  220. nuitka/build/static_src/InspectPatcher.c +17 -17
  221. nuitka/build/static_src/MainProgram.c +17 -17
  222. nuitka/build/static_src/MetaPathBasedLoader.c +18 -18
  223. nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +17 -17
  224. nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
  225. nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +17 -18
  226. nuitka/build/static_src/OnefileBootstrap.c +17 -17
  227. nuitka/build/static_src/OnefileSplashScreen.cpp +17 -18
  228. nuitka/code_generation/AsyncgenCodes.py +19 -17
  229. nuitka/code_generation/AttributeCodes.py +19 -17
  230. nuitka/code_generation/BinaryOperationHelperDefinitions.py +19 -17
  231. nuitka/code_generation/BranchCodes.py +19 -17
  232. nuitka/code_generation/BuiltinCodes.py +19 -17
  233. nuitka/code_generation/CallCodes.py +19 -17
  234. nuitka/code_generation/ClassCodes.py +19 -17
  235. nuitka/code_generation/CodeGeneration.py +19 -17
  236. nuitka/code_generation/CodeHelperSelection.py +19 -17
  237. nuitka/code_generation/CodeHelpers.py +19 -17
  238. nuitka/code_generation/CodeObjectCodes.py +19 -17
  239. nuitka/code_generation/ComparisonCodes.py +19 -17
  240. nuitka/code_generation/ComparisonHelperDefinitions.py +19 -17
  241. nuitka/code_generation/ConditionalCodes.py +19 -17
  242. nuitka/code_generation/ConstantCodes.py +19 -17
  243. nuitka/code_generation/Contexts.py +19 -17
  244. nuitka/code_generation/CoroutineCodes.py +19 -17
  245. nuitka/code_generation/CtypesCodes.py +19 -17
  246. nuitka/code_generation/DictCodes.py +19 -17
  247. nuitka/code_generation/Emission.py +19 -17
  248. nuitka/code_generation/ErrorCodes.py +19 -17
  249. nuitka/code_generation/EvalCodes.py +19 -17
  250. nuitka/code_generation/ExceptionCodes.py +19 -17
  251. nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +19 -17
  252. nuitka/code_generation/ExpressionCodes.py +19 -17
  253. nuitka/code_generation/FrameCodes.py +19 -17
  254. nuitka/code_generation/FunctionCodes.py +19 -17
  255. nuitka/code_generation/GeneratorCodes.py +19 -17
  256. nuitka/code_generation/GlobalConstants.py +19 -17
  257. nuitka/code_generation/GlobalsLocalsCodes.py +19 -17
  258. nuitka/code_generation/IdCodes.py +19 -17
  259. nuitka/code_generation/ImportCodes.py +19 -17
  260. nuitka/code_generation/Indentation.py +19 -17
  261. nuitka/code_generation/IndexCodes.py +19 -17
  262. nuitka/code_generation/InjectCCodes.py +14 -12
  263. nuitka/code_generation/IntegerCodes.py +19 -17
  264. nuitka/code_generation/IteratorCodes.py +19 -17
  265. nuitka/code_generation/LabelCodes.py +19 -17
  266. nuitka/code_generation/LineNumberCodes.py +19 -17
  267. nuitka/code_generation/ListCodes.py +19 -17
  268. nuitka/code_generation/LoaderCodes.py +19 -17
  269. nuitka/code_generation/LocalsDictCodes.py +19 -17
  270. nuitka/code_generation/LoopCodes.py +19 -17
  271. nuitka/code_generation/MatchCodes.py +19 -17
  272. nuitka/code_generation/ModuleCodes.py +19 -17
  273. nuitka/code_generation/Namify.py +19 -17
  274. nuitka/code_generation/OperationCodes.py +21 -25
  275. nuitka/code_generation/PackageResourceCodes.py +19 -17
  276. nuitka/code_generation/PrintCodes.py +19 -17
  277. nuitka/code_generation/PythonAPICodes.py +19 -17
  278. nuitka/code_generation/RaisingCodes.py +19 -17
  279. nuitka/code_generation/Reports.py +19 -17
  280. nuitka/code_generation/ReturnCodes.py +19 -17
  281. nuitka/code_generation/SetCodes.py +19 -17
  282. nuitka/code_generation/SliceCodes.py +19 -17
  283. nuitka/code_generation/StringCodes.py +19 -17
  284. nuitka/code_generation/SubscriptCodes.py +19 -17
  285. nuitka/code_generation/TryCodes.py +19 -17
  286. nuitka/code_generation/TupleCodes.py +19 -17
  287. nuitka/code_generation/VariableCodes.py +19 -17
  288. nuitka/code_generation/VariableDeclarations.py +19 -17
  289. nuitka/code_generation/YieldCodes.py +19 -17
  290. nuitka/code_generation/__init__.py +5 -4
  291. nuitka/code_generation/c_types/CTypeBases.py +19 -17
  292. nuitka/code_generation/c_types/CTypeBooleans.py +19 -17
  293. nuitka/code_generation/c_types/CTypeCFloats.py +19 -17
  294. nuitka/code_generation/c_types/CTypeCLongs.py +19 -17
  295. nuitka/code_generation/c_types/CTypeModuleDictVariables.py +19 -17
  296. nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +19 -17
  297. nuitka/code_generation/c_types/CTypeNuitkaInts.py +19 -17
  298. nuitka/code_generation/c_types/CTypeNuitkaVoids.py +19 -17
  299. nuitka/code_generation/c_types/CTypePyObjectPointers.py +19 -17
  300. nuitka/code_generation/c_types/CTypeVoids.py +19 -17
  301. nuitka/code_generation/c_types/__init__.py +5 -4
  302. nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +18 -17
  303. nuitka/code_generation/templates/CodeTemplatesConstants.py +18 -17
  304. nuitka/code_generation/templates/CodeTemplatesCoroutines.py +18 -17
  305. nuitka/code_generation/templates/CodeTemplatesExceptions.py +18 -17
  306. nuitka/code_generation/templates/CodeTemplatesFrames.py +18 -17
  307. nuitka/code_generation/templates/CodeTemplatesFunction.py +18 -17
  308. nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +18 -17
  309. nuitka/code_generation/templates/CodeTemplatesIterators.py +18 -17
  310. nuitka/code_generation/templates/CodeTemplatesLoader.py +18 -17
  311. nuitka/code_generation/templates/CodeTemplatesModules.py +18 -17
  312. nuitka/code_generation/templates/CodeTemplatesVariables.py +18 -17
  313. nuitka/code_generation/templates/TemplateDebugWrapper.py +19 -17
  314. nuitka/code_generation/templates/__init__.py +5 -4
  315. nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +17 -17
  316. nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +17 -17
  317. nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +17 -17
  318. nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +17 -17
  319. nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +17 -17
  320. nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +17 -17
  321. nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +17 -17
  322. nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +17 -17
  323. nuitka/code_generation/templates_c/HelperImportHard.c.j2 +17 -17
  324. nuitka/code_generation/templates_c/HelperLongTools.c.j2 +17 -17
  325. nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +6 -6
  326. nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +17 -17
  327. nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +17 -17
  328. nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +17 -17
  329. nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +17 -17
  330. nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +17 -17
  331. nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +17 -17
  332. nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +17 -17
  333. nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +17 -17
  334. nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +17 -17
  335. nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +17 -17
  336. nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +17 -17
  337. nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +17 -17
  338. nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +17 -17
  339. nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +17 -17
  340. nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +17 -17
  341. nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +17 -17
  342. nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +17 -17
  343. nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +17 -17
  344. nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +17 -17
  345. nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +17 -17
  346. nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +17 -17
  347. nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +17 -17
  348. nuitka/containers/Namedtuples.py +19 -17
  349. nuitka/containers/OrderedSetsFallback.py +19 -17
  350. nuitka/containers/__init__.py +5 -4
  351. nuitka/distutils/Build.py +18 -17
  352. nuitka/distutils/DistutilCommands.py +19 -17
  353. nuitka/distutils/__init__.py +5 -4
  354. nuitka/finalizations/Finalization.py +19 -17
  355. nuitka/finalizations/FinalizeMarkups.py +20 -21
  356. nuitka/finalizations/__init__.py +5 -4
  357. nuitka/freezer/DependsExe.py +19 -17
  358. nuitka/freezer/DllDependenciesCommon.py +19 -17
  359. nuitka/freezer/DllDependenciesMacOS.py +19 -17
  360. nuitka/freezer/DllDependenciesPosix.py +18 -17
  361. nuitka/freezer/DllDependenciesWin32.py +20 -18
  362. nuitka/freezer/ImportDetection.py +19 -17
  363. nuitka/freezer/IncludedDataFiles.py +22 -17
  364. nuitka/freezer/IncludedEntryPoints.py +19 -17
  365. nuitka/freezer/Onefile.py +19 -17
  366. nuitka/freezer/Standalone.py +19 -17
  367. nuitka/freezer/__init__.py +5 -4
  368. nuitka/importing/IgnoreListing.py +19 -17
  369. nuitka/importing/ImportCache.py +19 -17
  370. nuitka/importing/ImportResolving.py +19 -17
  371. nuitka/importing/Importing.py +20 -18
  372. nuitka/importing/PreloadedPackages.py +19 -17
  373. nuitka/importing/Recursion.py +19 -17
  374. nuitka/importing/StandardLibrary.py +19 -17
  375. nuitka/importing/__init__.py +5 -4
  376. nuitka/nodes/AsyncgenNodes.py +19 -17
  377. nuitka/nodes/AttributeLookupNodes.py +19 -17
  378. nuitka/nodes/AttributeNodes.py +19 -17
  379. nuitka/nodes/AttributeNodesGenerated.py +18 -17
  380. nuitka/nodes/BuiltinAllNodes.py +19 -17
  381. nuitka/nodes/BuiltinAnyNodes.py +19 -17
  382. nuitka/nodes/BuiltinComplexNodes.py +19 -17
  383. nuitka/nodes/BuiltinDecodingNodes.py +19 -17
  384. nuitka/nodes/BuiltinDecoratorNodes.py +19 -17
  385. nuitka/nodes/BuiltinDictNodes.py +19 -17
  386. nuitka/nodes/BuiltinFormatNodes.py +19 -17
  387. nuitka/nodes/BuiltinHashNodes.py +19 -17
  388. nuitka/nodes/BuiltinInputNodes.py +19 -17
  389. nuitka/nodes/BuiltinIntegerNodes.py +19 -17
  390. nuitka/nodes/BuiltinIteratorNodes.py +19 -17
  391. nuitka/nodes/BuiltinLenNodes.py +19 -17
  392. nuitka/nodes/BuiltinNextNodes.py +19 -17
  393. nuitka/nodes/BuiltinOpenNodes.py +19 -17
  394. nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +19 -17
  395. nuitka/nodes/BuiltinRangeNodes.py +19 -17
  396. nuitka/nodes/BuiltinRefNodes.py +19 -17
  397. nuitka/nodes/BuiltinSumNodes.py +19 -17
  398. nuitka/nodes/BuiltinTypeNodes.py +19 -17
  399. nuitka/nodes/BuiltinVarsNodes.py +19 -17
  400. nuitka/nodes/BytesNodes.py +19 -17
  401. nuitka/nodes/CallNodes.py +19 -17
  402. nuitka/nodes/Checkers.py +19 -17
  403. nuitka/nodes/ChildrenHavingMixins.py +125 -17
  404. nuitka/nodes/ClassNodes.py +19 -17
  405. nuitka/nodes/CodeObjectSpecs.py +19 -17
  406. nuitka/nodes/ComparisonNodes.py +19 -17
  407. nuitka/nodes/ConditionalNodes.py +19 -17
  408. nuitka/nodes/ConstantRefNodes.py +19 -17
  409. nuitka/nodes/ContainerMakingNodes.py +19 -17
  410. nuitka/nodes/ContainerOperationNodes.py +19 -17
  411. nuitka/nodes/CoroutineNodes.py +19 -17
  412. nuitka/nodes/CtypesNodes.py +19 -17
  413. nuitka/nodes/DictionaryNodes.py +19 -17
  414. nuitka/nodes/ExceptionNodes.py +19 -17
  415. nuitka/nodes/ExecEvalNodes.py +19 -17
  416. nuitka/nodes/ExpressionBases.py +19 -17
  417. nuitka/nodes/ExpressionBasesGenerated.py +18 -17
  418. nuitka/nodes/ExpressionShapeMixins.py +19 -17
  419. nuitka/nodes/FrameNodes.py +19 -17
  420. nuitka/nodes/FunctionAttributeNodes.py +19 -17
  421. nuitka/nodes/FunctionNodes.py +20 -18
  422. nuitka/nodes/FutureSpecs.py +19 -17
  423. nuitka/nodes/GeneratorNodes.py +19 -17
  424. nuitka/nodes/GlobalsLocalsNodes.py +19 -17
  425. nuitka/nodes/HardImportNodesGenerated.py +103 -17
  426. nuitka/nodes/ImportHardNodes.py +19 -17
  427. nuitka/nodes/ImportNodes.py +19 -17
  428. nuitka/nodes/IndicatorMixins.py +19 -17
  429. nuitka/nodes/InjectCNodes.py +19 -17
  430. nuitka/nodes/IterationHandles.py +19 -17
  431. nuitka/nodes/KeyValuePairNodes.py +19 -17
  432. nuitka/nodes/ListOperationNodes.py +19 -17
  433. nuitka/nodes/LocalsDictNodes.py +19 -17
  434. nuitka/nodes/LocalsScopes.py +19 -17
  435. nuitka/nodes/LoopNodes.py +25 -17
  436. nuitka/nodes/MatchNodes.py +19 -17
  437. nuitka/nodes/ModuleAttributeNodes.py +19 -17
  438. nuitka/nodes/ModuleNodes.py +27 -17
  439. nuitka/nodes/NodeBases.py +24 -18
  440. nuitka/nodes/NodeMakingHelpers.py +21 -19
  441. nuitka/nodes/NodeMetaClasses.py +19 -18
  442. nuitka/nodes/OperatorNodes.py +19 -17
  443. nuitka/nodes/OperatorNodesUnary.py +19 -17
  444. nuitka/nodes/OsSysNodes.py +34 -17
  445. nuitka/nodes/OutlineNodes.py +19 -17
  446. nuitka/nodes/PackageMetadataNodes.py +19 -17
  447. nuitka/nodes/PackageResourceNodes.py +19 -17
  448. nuitka/nodes/PrintNodes.py +19 -17
  449. nuitka/nodes/ReturnNodes.py +19 -17
  450. nuitka/nodes/SideEffectNodes.py +19 -17
  451. nuitka/nodes/SliceNodes.py +19 -17
  452. nuitka/nodes/StatementBasesGenerated.py +18 -17
  453. nuitka/nodes/StatementNodes.py +19 -17
  454. nuitka/nodes/StrNodes.py +19 -17
  455. nuitka/nodes/StringConcatenationNodes.py +19 -17
  456. nuitka/nodes/SubscriptNodes.py +19 -17
  457. nuitka/nodes/TryNodes.py +19 -17
  458. nuitka/nodes/TypeMatchNodes.py +19 -17
  459. nuitka/nodes/TypeNodes.py +19 -17
  460. nuitka/nodes/VariableAssignNodes.py +97 -59
  461. nuitka/nodes/VariableDelNodes.py +19 -17
  462. nuitka/nodes/VariableNameNodes.py +19 -17
  463. nuitka/nodes/VariableRefNodes.py +27 -17
  464. nuitka/nodes/VariableReleaseNodes.py +19 -17
  465. nuitka/nodes/YieldNodes.py +19 -17
  466. nuitka/nodes/__init__.py +5 -4
  467. nuitka/nodes/shapes/BuiltinTypeShapes.py +18 -17
  468. nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
  469. nuitka/nodes/shapes/ShapeMixins.py +19 -17
  470. nuitka/nodes/shapes/StandardShapes.py +18 -17
  471. nuitka/nodes/shapes/__init__.py +5 -4
  472. nuitka/optimizations/BytecodeDemotion.py +19 -17
  473. nuitka/optimizations/FunctionInlining.py +19 -17
  474. nuitka/optimizations/Graphs.py +19 -17
  475. nuitka/optimizations/Optimization.py +19 -17
  476. nuitka/optimizations/OptimizeBuiltinCalls.py +19 -17
  477. nuitka/optimizations/Tags.py +19 -17
  478. nuitka/optimizations/TraceCollections.py +20 -18
  479. nuitka/optimizations/ValueTraces.py +40 -24
  480. nuitka/optimizations/__init__.py +5 -4
  481. nuitka/pgo/PGO.py +19 -17
  482. nuitka/pgo/__init__.py +5 -4
  483. nuitka/plugins/PluginBase.py +197 -51
  484. nuitka/plugins/Plugins.py +20 -18
  485. nuitka/plugins/__init__.py +5 -4
  486. nuitka/plugins/standard/AntiBloatPlugin.py +59 -31
  487. nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +19 -17
  488. nuitka/plugins/standard/DataFilesPlugin.py +28 -18
  489. nuitka/plugins/standard/DelvewheelPlugin.py +23 -20
  490. nuitka/plugins/standard/DillPlugin/DillPlugin.c +17 -17
  491. nuitka/plugins/standard/DillPlugin/dill-postLoad.py +21 -18
  492. nuitka/plugins/standard/DillPlugin.py +19 -17
  493. nuitka/plugins/standard/DllFilesPlugin.py +52 -22
  494. nuitka/plugins/standard/EnumPlugin.py +19 -17
  495. nuitka/plugins/standard/EventletPlugin.py +19 -17
  496. nuitka/plugins/standard/GeventPlugin.py +19 -17
  497. nuitka/plugins/standard/GiPlugin.py +19 -17
  498. nuitka/plugins/standard/GlfwPlugin.py +19 -17
  499. nuitka/plugins/standard/ImplicitImports.py +28 -19
  500. nuitka/plugins/standard/KivyPlugin.py +19 -17
  501. nuitka/plugins/standard/MatplotlibPlugin.py +19 -17
  502. nuitka/plugins/standard/MultiprocessingPlugin.py +19 -17
  503. nuitka/plugins/standard/NumpyPlugin.py +19 -17
  504. nuitka/plugins/standard/OptionsNannyPlugin.py +19 -17
  505. nuitka/plugins/standard/PbrPlugin.py +19 -17
  506. nuitka/plugins/standard/PkgResourcesPlugin.py +19 -17
  507. nuitka/plugins/standard/PmwPlugin.py +19 -17
  508. nuitka/plugins/standard/PySidePyQtPlugin.py +19 -17
  509. nuitka/plugins/standard/PywebViewPlugin.py +19 -17
  510. nuitka/plugins/standard/TensorflowPlugin.py +19 -17
  511. nuitka/plugins/standard/TkinterPlugin.py +19 -17
  512. nuitka/plugins/standard/TorchPlugin.py +19 -17
  513. nuitka/plugins/standard/TransformersPlugin.py +19 -17
  514. nuitka/plugins/standard/TrioPlugin.py +17 -15
  515. nuitka/plugins/standard/UpxPlugin.py +20 -18
  516. nuitka/plugins/standard/__init__.py +5 -4
  517. nuitka/plugins/standard/standard.nuitka-package.config.yml +52 -2
  518. nuitka/reports/CompilationReportReader.py +19 -17
  519. nuitka/reports/LicenseReport.rst.j2 +17 -17
  520. nuitka/reports/Reports.py +74 -21
  521. nuitka/reports/__init__.py +5 -4
  522. nuitka/specs/BuiltinBytesOperationSpecs.py +18 -17
  523. nuitka/specs/BuiltinDictOperationSpecs.py +18 -17
  524. nuitka/specs/BuiltinListOperationSpecs.py +18 -17
  525. nuitka/specs/BuiltinParameterSpecs.py +19 -17
  526. nuitka/specs/BuiltinStrOperationSpecs.py +18 -17
  527. nuitka/specs/BuiltinTypeOperationSpecs.py +18 -17
  528. nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
  529. nuitka/specs/HardImportSpecs.py +27 -19
  530. nuitka/specs/ParameterSpecs.py +19 -17
  531. nuitka/specs/__init__.py +5 -4
  532. nuitka/tools/Basics.py +19 -17
  533. nuitka/tools/__init__.py +5 -4
  534. nuitka/tools/commercial/__init__.py +7 -6
  535. nuitka/tools/data_composer/DataComposer.py +19 -17
  536. nuitka/tools/data_composer/__init__.py +5 -4
  537. nuitka/tools/data_composer/__main__.py +18 -17
  538. nuitka/tools/environments/CreateEnvironment.py +19 -17
  539. nuitka/tools/environments/Virtualenv.py +19 -17
  540. nuitka/tools/environments/__init__.py +5 -4
  541. nuitka/tools/general/__init__.py +5 -4
  542. nuitka/tools/general/dll_report/__init__.py +5 -4
  543. nuitka/tools/general/dll_report/__main__.py +17 -17
  544. nuitka/tools/general/find_module/FindModuleCode.py +19 -17
  545. nuitka/tools/general/find_module/__init__.py +5 -4
  546. nuitka/tools/onefile_compressor/OnefileCompressor.py +20 -18
  547. nuitka/tools/onefile_compressor/__init__.py +5 -4
  548. nuitka/tools/onefile_compressor/__main__.py +18 -17
  549. nuitka/tools/podman/Podman.py +19 -17
  550. nuitka/tools/podman/__init__.py +5 -4
  551. nuitka/tools/podman/__main__.py +18 -17
  552. nuitka/tools/profiler/__init__.py +5 -4
  553. nuitka/tools/profiler/__main__.py +18 -17
  554. nuitka/tools/scanning/DisplayPackageDLLs.py +19 -17
  555. nuitka/tools/scanning/DisplayPackageData.py +19 -17
  556. nuitka/tools/scanning/__init__.py +5 -4
  557. nuitka/tools/specialize/CTypeDescriptions.py +18 -17
  558. nuitka/tools/specialize/Common.py +18 -17
  559. nuitka/tools/specialize/SpecializeC.py +19 -17
  560. nuitka/tools/specialize/SpecializePython.py +20 -17
  561. nuitka/tools/specialize/__init__.py +5 -4
  562. nuitka/tools/testing/Common.py +25 -27
  563. nuitka/tools/testing/Constructs.py +19 -17
  564. nuitka/tools/testing/OutputComparison.py +19 -17
  565. nuitka/tools/testing/Pythons.py +19 -17
  566. nuitka/tools/testing/RuntimeTracing.py +18 -17
  567. nuitka/tools/testing/SearchModes.py +19 -17
  568. nuitka/tools/testing/Valgrind.py +19 -17
  569. nuitka/tools/testing/__init__.py +5 -4
  570. nuitka/tools/testing/check_reference_counts/__init__.py +5 -4
  571. nuitka/tools/testing/check_reference_counts/__main__.py +17 -17
  572. nuitka/tools/testing/compare_with_cpython/__init__.py +5 -4
  573. nuitka/tools/testing/compare_with_cpython/__main__.py +17 -17
  574. nuitka/tools/testing/find_sxs_modules/__init__.py +5 -4
  575. nuitka/tools/testing/find_sxs_modules/__main__.py +17 -17
  576. nuitka/tools/testing/measure_construct_performance/__init__.py +5 -4
  577. nuitka/tools/testing/measure_construct_performance/__main__.py +17 -17
  578. nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
  579. nuitka/tools/testing/run_nuitka_tests/__main__.py +17 -17
  580. nuitka/tools/watch/GitHub.py +18 -17
  581. nuitka/tools/watch/__init__.py +5 -4
  582. nuitka/tools/watch/__main__.py +20 -19
  583. nuitka/tree/Building.py +19 -17
  584. nuitka/tree/ComplexCallHelperFunctions.py +19 -17
  585. nuitka/tree/Extractions.py +19 -17
  586. nuitka/tree/InternalModule.py +19 -17
  587. nuitka/tree/Operations.py +19 -17
  588. nuitka/tree/ReformulationAssertStatements.py +19 -17
  589. nuitka/tree/ReformulationAssignmentStatements.py +19 -17
  590. nuitka/tree/ReformulationBooleanExpressions.py +19 -17
  591. nuitka/tree/ReformulationCallExpressions.py +19 -17
  592. nuitka/tree/ReformulationClasses.py +19 -17
  593. nuitka/tree/ReformulationClasses3.py +19 -17
  594. nuitka/tree/ReformulationComparisonExpressions.py +19 -17
  595. nuitka/tree/ReformulationContractionExpressions.py +19 -17
  596. nuitka/tree/ReformulationDictionaryCreation.py +19 -17
  597. nuitka/tree/ReformulationExecStatements.py +18 -17
  598. nuitka/tree/ReformulationForLoopStatements.py +19 -17
  599. nuitka/tree/ReformulationFunctionStatements.py +19 -17
  600. nuitka/tree/ReformulationImportStatements.py +19 -17
  601. nuitka/tree/ReformulationLambdaExpressions.py +19 -17
  602. nuitka/tree/ReformulationMatchStatements.py +19 -17
  603. nuitka/tree/ReformulationMultidist.py +19 -17
  604. nuitka/tree/ReformulationNamespacePackages.py +19 -17
  605. nuitka/tree/ReformulationPrintStatements.py +19 -17
  606. nuitka/tree/ReformulationSequenceCreation.py +19 -17
  607. nuitka/tree/ReformulationSubscriptExpressions.py +19 -17
  608. nuitka/tree/ReformulationTryExceptStatements.py +19 -17
  609. nuitka/tree/ReformulationTryFinallyStatements.py +19 -17
  610. nuitka/tree/ReformulationWhileLoopStatements.py +19 -17
  611. nuitka/tree/ReformulationWithStatements.py +19 -17
  612. nuitka/tree/ReformulationYieldExpressions.py +19 -17
  613. nuitka/tree/SourceHandling.py +22 -19
  614. nuitka/tree/SyntaxErrors.py +19 -17
  615. nuitka/tree/TreeHelpers.py +19 -17
  616. nuitka/tree/VariableClosure.py +19 -17
  617. nuitka/tree/__init__.py +5 -4
  618. nuitka/utils/AppDirs.py +30 -18
  619. nuitka/utils/CStrings.py +19 -17
  620. nuitka/utils/CommandLineOptions.py +19 -17
  621. nuitka/utils/Distributions.py +34 -22
  622. nuitka/utils/Download.py +20 -18
  623. nuitka/utils/Execution.py +22 -18
  624. nuitka/utils/FileOperations.py +44 -18
  625. nuitka/utils/Hashing.py +19 -17
  626. nuitka/utils/Images.py +19 -17
  627. nuitka/utils/Importing.py +31 -18
  628. nuitka/utils/InstalledPythons.py +19 -17
  629. nuitka/utils/InstanceCounters.py +19 -17
  630. nuitka/utils/Jinja2.py +19 -17
  631. nuitka/utils/Json.py +19 -17
  632. nuitka/utils/MacOSApp.py +19 -17
  633. nuitka/utils/MemoryUsage.py +19 -17
  634. nuitka/utils/ModuleNames.py +19 -17
  635. nuitka/utils/ReExecute.py +19 -17
  636. nuitka/utils/Rest.py +19 -17
  637. nuitka/utils/SharedLibraries.py +19 -17
  638. nuitka/utils/Shebang.py +19 -17
  639. nuitka/utils/Signing.py +19 -17
  640. nuitka/utils/SlotMetaClasses.py +19 -17
  641. nuitka/utils/StaticLibraries.py +19 -17
  642. nuitka/utils/ThreadedExecutor.py +18 -17
  643. nuitka/utils/Timing.py +19 -17
  644. nuitka/utils/Utils.py +19 -17
  645. nuitka/utils/WindowsFileUsage.py +18 -17
  646. nuitka/utils/WindowsResources.py +19 -17
  647. nuitka/utils/Yaml.py +19 -17
  648. nuitka/utils/__init__.py +5 -4
  649. Nuitka_winsvc-2.0.5.dist-info/RECORD +0 -920
  650. {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/LICENSE.txt +0 -0
  651. {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/WHEEL +0 -0
  652. {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/entry_points.txt +0 -0
  653. {Nuitka_winsvc-2.0.5.dist-info → Nuitka_winsvc-2.1.dist-info}/top_level.txt +0 -0
nuitka/OptionParsing.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Command line options of Nuitka.
19
5
 
20
6
  These provide only the optparse options to use, and the mechanic to actually
@@ -425,9 +411,8 @@ data_group.add_option(
425
411
  Include data files from complete directory in the distribution. This is
426
412
  recursive. Check '--include-data-files' with patterns if you want non-recursive
427
413
  inclusion. An example would be '--include-data-dir=/path/some_dir=data/some_dir'
428
- for plain copy, of the whole directory. All files are copied, if you want to
429
- exclude files you need to remove them beforehand, or use '--noinclude-data-files'
430
- option to remove them. Default empty.""",
414
+ for plain copy, of the whole directory. All non-code files are copied, if you
415
+ want to use '--noinclude-data-files' option to remove them. Default empty.""",
431
416
  )
432
417
 
433
418
  data_group.add_option(
@@ -723,6 +708,34 @@ Defaults to off.""",
723
708
 
724
709
  del output_group
725
710
 
711
+ deployment_group = parser.add_option_group("Deployment control")
712
+
713
+ deployment_group.add_option(
714
+ "--deployment",
715
+ action="store_true",
716
+ dest="is_deployment",
717
+ default=False,
718
+ help="""\
719
+ Disable code aimed at making finding compatibility issues easier. This
720
+ will e.g. prevent execution with "-c" argument, which is often used by
721
+ code that attempts run a module, and causes a program to start itself
722
+ over and over potentially. Disable once you deploy to end users, for
723
+ finding typical issues, this is very helpful during development. Default
724
+ off.""",
725
+ )
726
+
727
+ deployment_group.add_option(
728
+ "--no-deployment-flag",
729
+ action="append",
730
+ dest="no_deployment_flags",
731
+ metavar="FLAG",
732
+ default=[],
733
+ help="""\
734
+ Keep deployment mode, but disable selectively parts of it. Errors from
735
+ deployment mode will output these identifiers. Default empty.""",
736
+ )
737
+
738
+ del deployment_group
726
739
 
727
740
  debug_group = parser.add_option_group("Debug features")
728
741
 
@@ -752,6 +765,7 @@ debug_group.add_option(
752
765
  action="store_true",
753
766
  dest="profile",
754
767
  default=False,
768
+ github_action=False,
755
769
  help="""\
756
770
  Enable vmprof based profiling of time spent. Not working currently. Defaults to off.""",
757
771
  )
@@ -761,6 +775,7 @@ debug_group.add_option(
761
775
  action="store_true",
762
776
  dest="internal_graph",
763
777
  default=False,
778
+ github_action=False,
764
779
  help="""\
765
780
  Create graph of optimization process internals, do not use for whole programs, but only
766
781
  for small test cases. Defaults to off.""",
@@ -781,6 +796,7 @@ debug_group.add_option(
781
796
  action="store_true",
782
797
  dest="recompile_c_only",
783
798
  default=False,
799
+ github_action=False,
784
800
  help="""\
785
801
  This is not incremental compilation, but for Nuitka development only. Takes
786
802
  existing files and simply compile them as C again. Allows compiling edited
@@ -798,29 +814,6 @@ debug_group.add_option(
798
814
  help="Write the internal program structure, result of optimization in XML form to given filename.",
799
815
  )
800
816
 
801
- debug_group.add_option(
802
- "--deployment",
803
- action="store_true",
804
- dest="is_deployment",
805
- default=False,
806
- help="""\
807
- Disable code aimed at making finding compatibility issues easier. This
808
- will e.g. prevent execution with "-c" argument, which is often used by
809
- code that attempts run a module, and causes a program to start itself
810
- over and over potentially. Default off.""",
811
- )
812
-
813
- debug_group.add_option(
814
- "--no-deployment-flag",
815
- action="append",
816
- dest="no_deployment_flags",
817
- metavar="FLAG",
818
- default=[],
819
- help="""\
820
- Keep deployment mode, but disable selectively parts of it. Errors from
821
- deployment mode will output these identifiers. Default empty.""",
822
- )
823
-
824
817
  debug_group.add_option(
825
818
  "--experimental",
826
819
  action="append",
@@ -868,6 +861,7 @@ debug_group.add_option(
868
861
  action="store_true",
869
862
  dest="generate_c_only",
870
863
  default=False,
864
+ github_action=False,
871
865
  help="""\
872
866
  Generate only C source code, and do not compile it to binary or module. This
873
867
  is for debugging and code coverage analysis that doesn't waste CPU. Defaults to
@@ -1212,6 +1206,7 @@ tracing_group.add_option(
1212
1206
  action="store_false",
1213
1207
  dest="progress_bar",
1214
1208
  default=True,
1209
+ github_action=False,
1215
1210
  help="""Disable progress bars. Defaults to off.""",
1216
1211
  )
1217
1212
 
@@ -1220,6 +1215,7 @@ tracing_group.add_option(
1220
1215
  action="store_true",
1221
1216
  dest="show_progress",
1222
1217
  default=False,
1218
+ github_action=False,
1223
1219
  help="""Obsolete: Provide progress information and statistics.
1224
1220
  Disables normal progress bar. Defaults to off.""",
1225
1221
  )
@@ -1238,6 +1234,7 @@ tracing_group.add_option(
1238
1234
  action="store_true",
1239
1235
  dest="show_inclusion",
1240
1236
  default=False,
1237
+ github_action=False,
1241
1238
  help="""\
1242
1239
  Provide information for included modules and DLLs
1243
1240
  Obsolete: You should use '--report' file instead. Defaults to off.""",
@@ -1249,6 +1246,7 @@ tracing_group.add_option(
1249
1246
  dest="show_inclusion_output",
1250
1247
  metavar="PATH",
1251
1248
  default=None,
1249
+ github_action=False,
1252
1250
  help="""\
1253
1251
  Where to output '--show-modules', should be a filename. Default is standard output.""",
1254
1252
  )
@@ -1258,6 +1256,7 @@ tracing_group.add_option(
1258
1256
  action="store_true",
1259
1257
  dest="verbose",
1260
1258
  default=False,
1259
+ github_action=False,
1261
1260
  help="""\
1262
1261
  Output details of actions taken, esp. in optimizations. Can become a lot.
1263
1262
  Defaults to off.""",
@@ -1269,6 +1268,7 @@ tracing_group.add_option(
1269
1268
  dest="verbose_output",
1270
1269
  metavar="PATH",
1271
1270
  default=None,
1271
+ github_action=False,
1272
1272
  help="""\
1273
1273
  Where to output from '--verbose', should be a filename. Default is standard output.""",
1274
1274
  )
@@ -1994,7 +1994,14 @@ def _considerGithubWorkflowOptions(phase):
1994
1994
 
1995
1995
  import json
1996
1996
 
1997
- early_names = "main", "script-name", "enable-plugins", "disable-plugins"
1997
+ early_names = (
1998
+ "main",
1999
+ "script-name",
2000
+ "enable-plugin",
2001
+ "enable-plugins",
2002
+ "disable-plugin",
2003
+ "disable-plugins",
2004
+ )
1998
2005
 
1999
2006
  def filterByName(key):
2000
2007
  # Not for Nuitka at all.
@@ -2179,3 +2186,19 @@ def runSpecialCommandsFromOptions(options):
2179
2186
  report_filename=os.path.expanduser(options.compilation_report_filename),
2180
2187
  )
2181
2188
  sys.exit(0)
2189
+
2190
+
2191
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
2192
+ # integrates with CPython, but also works on its own.
2193
+ #
2194
+ # Licensed under the Apache License, Version 2.0 (the "License");
2195
+ # you may not use this file except in compliance with the License.
2196
+ # You may obtain a copy of the License at
2197
+ #
2198
+ # http://www.apache.org/licenses/LICENSE-2.0
2199
+ #
2200
+ # Unless required by applicable law or agreed to in writing, software
2201
+ # distributed under the License is distributed on an "AS IS" BASIS,
2202
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2203
+ # See the License for the specific language governing permissions and
2204
+ # limitations under the License.
nuitka/Options.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Options module
19
5
 
20
6
  This exposes the choices made by the user. Defaults will be applied here, and
@@ -445,6 +431,29 @@ Error, the Python from Windows app store is not supported.""",
445
431
  if shallCreateAppBundle():
446
432
  options.is_standalone = True
447
433
 
434
+ if isMacOS():
435
+ macos_target_arch = getMacOSTargetArch()
436
+
437
+ if macos_target_arch == "universal":
438
+ Tracing.options_logger.sysexit(
439
+ "Cannot create universal macOS binaries (yet), please pick an arch and create two binaries."
440
+ )
441
+
442
+ if (options.macos_target_arch or "native") != "native":
443
+ from nuitka.utils.SharedLibraries import (
444
+ hasUniversalOrMatchingMacOSArchitecture,
445
+ )
446
+
447
+ if not hasUniversalOrMatchingMacOSArchitecture(
448
+ os.path.realpath(sys.executable)
449
+ ):
450
+ Tracing.options_logger.sysexit(
451
+ """\
452
+ Cannot cross compile to other arch, using non-universal Python binaries \
453
+ for macOS. Please install the "universal" Python package as offered on \
454
+ the Python download page."""
455
+ )
456
+
448
457
  # Standalone implies no_site build unless overridden, therefore put it
449
458
  # at start of flags, so "site" can override it.
450
459
  if options.is_standalone:
@@ -2397,3 +2406,19 @@ def getModuleParameter(module_name, parameter_name):
2397
2406
  return module_option_value
2398
2407
 
2399
2408
  return None
2409
+
2410
+
2411
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
2412
+ # integrates with CPython, but also works on its own.
2413
+ #
2414
+ # Licensed under the Apache License, Version 2.0 (the "License");
2415
+ # you may not use this file except in compliance with the License.
2416
+ # You may obtain a copy of the License at
2417
+ #
2418
+ # http://www.apache.org/licenses/LICENSE-2.0
2419
+ #
2420
+ # Unless required by applicable law or agreed to in writing, software
2421
+ # distributed under the License is distributed on an "AS IS" BASIS,
2422
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2423
+ # See the License for the specific language governing permissions and
2424
+ # limitations under the License.
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Directories and paths to for output of Nuitka.
19
5
 
20
6
  There are two major outputs, the build directory *.build and for
@@ -167,3 +153,19 @@ def getPgoRunExecutable():
167
153
 
168
154
  def getPgoRunInputFilename():
169
155
  return getPgoRunExecutable() + ".nuitka-pgo"
156
+
157
+
158
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
159
+ # integrates with CPython, but also works on its own.
160
+ #
161
+ # Licensed under the Apache License, Version 2.0 (the "License");
162
+ # you may not use this file except in compliance with the License.
163
+ # You may obtain a copy of the License at
164
+ #
165
+ # http://www.apache.org/licenses/LICENSE-2.0
166
+ #
167
+ # Unless required by applicable law or agreed to in writing, software
168
+ # distributed under the License is distributed on an "AS IS" BASIS,
169
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
170
+ # See the License for the specific language governing permissions and
171
+ # limitations under the License.
nuitka/PostProcessing.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Postprocessing tasks for create binaries or modules.
19
5
 
20
6
  """
@@ -444,3 +430,19 @@ __name__ = ...
444
430
  The created compiled binary is larger than 1.8GB and therefore may not be
445
431
  executable by Windows due to its limitations."""
446
432
  )
433
+
434
+
435
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
436
+ # integrates with CPython, but also works on its own.
437
+ #
438
+ # Licensed under the Apache License, Version 2.0 (the "License");
439
+ # you may not use this file except in compliance with the License.
440
+ # You may obtain a copy of the License at
441
+ #
442
+ # http://www.apache.org/licenses/LICENSE-2.0
443
+ #
444
+ # Unless required by applicable law or agreed to in writing, software
445
+ # distributed under the License is distributed on an "AS IS" BASIS,
446
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
447
+ # See the License for the specific language governing permissions and
448
+ # limitations under the License.
nuitka/Progress.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Progress bars in Nuitka.
19
5
 
20
6
  This is responsible for wrapping the rendering of progress bar and emitting tracing
@@ -232,3 +218,19 @@ def withNuitkaDownloadProgressBar(*args, **kwargs):
232
218
 
233
219
  with NuitkaDownloadProgressBar(*args, **kwargs) as progress_bar:
234
220
  yield progress_bar.onProgress
221
+
222
+
223
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
224
+ # integrates with CPython, but also works on its own.
225
+ #
226
+ # Licensed under the Apache License, Version 2.0 (the "License");
227
+ # you may not use this file except in compliance with the License.
228
+ # You may obtain a copy of the License at
229
+ #
230
+ # http://www.apache.org/licenses/LICENSE-2.0
231
+ #
232
+ # Unless required by applicable law or agreed to in writing, software
233
+ # distributed under the License is distributed on an "AS IS" BASIS,
234
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
235
+ # See the License for the specific language governing permissions and
236
+ # limitations under the License.
nuitka/PythonFlavors.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Python flavors specifics.
19
5
 
20
6
  This abstracts the Python variants from different people. There is not just
@@ -202,7 +188,7 @@ def isWinPython():
202
188
  if _is_win_python is None:
203
189
  for element in sys.path:
204
190
  if os.path.basename(element) == "site-packages":
205
- if os.path.exists(os.path.join(element, "winpython")):
191
+ if os.path.exists(os.path.join(element, "WinPython")):
206
192
  _is_win_python = True
207
193
  break
208
194
  else:
@@ -317,6 +303,8 @@ def isManyLinuxPython():
317
303
 
318
304
 
319
305
  def isGithubActionsPython():
306
+ # spell-checker: ignore hostedtoolcache
307
+
320
308
  return os.getenv("GITHUB_ACTIONS") == "true" and getSystemPrefixPath().startswith(
321
309
  "/opt/hostedtoolcache/Python"
322
310
  )
@@ -362,3 +350,19 @@ def getPythonFlavorName():
362
350
  return "Manylinux Python"
363
351
  else:
364
352
  return "Unknown"
353
+
354
+
355
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
356
+ # integrates with CPython, but also works on its own.
357
+ #
358
+ # Licensed under the Apache License, Version 2.0 (the "License");
359
+ # you may not use this file except in compliance with the License.
360
+ # You may obtain a copy of the License at
361
+ #
362
+ # http://www.apache.org/licenses/LICENSE-2.0
363
+ #
364
+ # Unless required by applicable law or agreed to in writing, software
365
+ # distributed under the License is distributed on an "AS IS" BASIS,
366
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
367
+ # See the License for the specific language governing permissions and
368
+ # limitations under the License.
nuitka/PythonOperators.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Python operator tables
19
5
 
20
6
  These are mostly used to resolve the operator in the module operator and to know the list
@@ -143,3 +129,18 @@ def matchException(left, right):
143
129
 
144
130
 
145
131
  all_comparison_functions["exception_match"] = matchException
132
+
133
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
134
+ # integrates with CPython, but also works on its own.
135
+ #
136
+ # Licensed under the Apache License, Version 2.0 (the "License");
137
+ # you may not use this file except in compliance with the License.
138
+ # You may obtain a copy of the License at
139
+ #
140
+ # http://www.apache.org/licenses/LICENSE-2.0
141
+ #
142
+ # Unless required by applicable law or agreed to in writing, software
143
+ # distributed under the License is distributed on an "AS IS" BASIS,
144
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
145
+ # See the License for the specific language governing permissions and
146
+ # limitations under the License.
nuitka/PythonVersions.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Python version specifics.
19
5
 
20
6
  This abstracts the Python version decisions. This makes decisions based on
@@ -483,3 +469,19 @@ def getModuleLinkerLibs():
483
469
  result = [entry[2:] for entry in result.split() if entry.startswith("-l:")]
484
470
 
485
471
  return result
472
+
473
+
474
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
475
+ # integrates with CPython, but also works on its own.
476
+ #
477
+ # Licensed under the Apache License, Version 2.0 (the "License");
478
+ # you may not use this file except in compliance with the License.
479
+ # You may obtain a copy of the License at
480
+ #
481
+ # http://www.apache.org/licenses/LICENSE-2.0
482
+ #
483
+ # Unless required by applicable law or agreed to in writing, software
484
+ # distributed under the License is distributed on an "AS IS" BASIS,
485
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
486
+ # See the License for the specific language governing permissions and
487
+ # limitations under the License.
nuitka/Serialization.py CHANGED
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Write and read constants data files and provide identifiers.
19
5
 
20
6
  """
@@ -43,7 +29,7 @@ from nuitka.Builtins import (
43
29
  from nuitka.code_generation.Namify import namifyConstant
44
30
  from nuitka.containers.OrderedSets import OrderedSet
45
31
  from nuitka.PythonVersions import python_version
46
- from nuitka.utils.FileOperations import openTextFile
32
+ from nuitka.utils.FileOperations import openPickleFile
47
33
 
48
34
 
49
35
  class BuiltinAnonValue(object):
@@ -140,13 +126,7 @@ class ConstantStreamWriter(object):
140
126
  self.count = 0
141
127
 
142
128
  filename = os.path.join(OutputDirectories.getSourceDirectoryPath(), filename)
143
- self.file = openTextFile(filename, "wb")
144
- if python_version < 0x300:
145
- self.pickle = pickle.Pickler(self.file, -1)
146
- else:
147
- self.pickle = pickle._Pickler( # pylint: disable=I0021,protected-access
148
- self.file, -1
149
- )
129
+ self.file, self.pickle = openPickleFile(filename, "wb")
150
130
 
151
131
  self.pickle.dispatch[type] = _pickleAnonValues
152
132
  self.pickle.dispatch[type(Ellipsis)] = _pickleAnonValues
@@ -274,3 +254,19 @@ class ConstantAccessor(object):
274
254
  self.constants_writer.close()
275
255
 
276
256
  return len(self.constants)
257
+
258
+
259
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
260
+ # integrates with CPython, but also works on its own.
261
+ #
262
+ # Licensed under the Apache License, Version 2.0 (the "License");
263
+ # you may not use this file except in compliance with the License.
264
+ # You may obtain a copy of the License at
265
+ #
266
+ # http://www.apache.org/licenses/LICENSE-2.0
267
+ #
268
+ # Unless required by applicable law or agreed to in writing, software
269
+ # distributed under the License is distributed on an "AS IS" BASIS,
270
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
271
+ # See the License for the specific language governing permissions and
272
+ # limitations under the License.
@@ -1,20 +1,6 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
3
- # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
- # integrates with CPython, but also works on its own.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
18
4
  """ Source code reference record.
19
5
 
20
6
  All the information to lookup line and file of a code location, together with
@@ -172,3 +158,19 @@ class SourceCodeReferenceInternal(SourceCodeReference):
172
158
 
173
159
  def fromFilename(filename):
174
160
  return SourceCodeReference.fromFilenameAndLine(filename=filename, line=1)
161
+
162
+
163
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
164
+ # integrates with CPython, but also works on its own.
165
+ #
166
+ # Licensed under the Apache License, Version 2.0 (the "License");
167
+ # you may not use this file except in compliance with the License.
168
+ # You may obtain a copy of the License at
169
+ #
170
+ # http://www.apache.org/licenses/LICENSE-2.0
171
+ #
172
+ # Unless required by applicable law or agreed to in writing, software
173
+ # distributed under the License is distributed on an "AS IS" BASIS,
174
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
175
+ # See the License for the specific language governing permissions and
176
+ # limitations under the License.