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
@@ -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
  """ Assignment related nodes.
19
5
 
20
6
  The most simple assignment statement ``a = b`` is what we have here. All others
@@ -179,20 +165,7 @@ class StatementAssignmentVariableMixin(object):
179
165
  # is such a code for the type shape.
180
166
  return True
181
167
 
182
- def _transferState(self, result):
183
- self.variable_trace.assign_node = result
184
- result.variable_trace = self.variable_trace
185
- self.variable_trace = None
186
- result.parent = self.parent
187
-
188
- def _considerSpecialization(self, old_source):
189
- # Specialize if possible, might have become that way only recently.
190
- # return driven, pylint: disable=too-many-return-statements
191
- source = self.subnode_source
192
-
193
- if source is old_source:
194
- return self, None, None
195
-
168
+ def _considerSpecialization(self, old_source, source):
196
169
  if source.isCompileTimeConstant():
197
170
  result = makeStatementAssignmentVariableConstant(
198
171
  source=source,
@@ -202,8 +175,6 @@ class StatementAssignmentVariableMixin(object):
202
175
  source_ref=self.source_ref,
203
176
  )
204
177
 
205
- self._transferState(result)
206
-
207
178
  return (
208
179
  result,
209
180
  "new_statements",
@@ -219,8 +190,6 @@ class StatementAssignmentVariableMixin(object):
219
190
  source_ref=self.source_ref,
220
191
  )
221
192
 
222
- self._transferState(result)
223
-
224
193
  return (
225
194
  result,
226
195
  "new_statements",
@@ -235,8 +204,6 @@ class StatementAssignmentVariableMixin(object):
235
204
  source_ref=self.source_ref,
236
205
  )
237
206
 
238
- self._transferState(result)
239
-
240
207
  return (
241
208
  result,
242
209
  "new_statements",
@@ -251,8 +218,6 @@ class StatementAssignmentVariableMixin(object):
251
218
  source_ref=self.source_ref,
252
219
  )
253
220
 
254
- self._transferState(result)
255
-
256
221
  return (
257
222
  result,
258
223
  "new_statements",
@@ -267,8 +232,6 @@ class StatementAssignmentVariableMixin(object):
267
232
  source_ref=self.source_ref,
268
233
  )
269
234
 
270
- self._transferState(result)
271
-
272
235
  return (
273
236
  result,
274
237
  "new_statements",
@@ -285,6 +248,10 @@ class StatementAssignmentVariableMixin(object):
285
248
  def hasVeryTrustedValue(self):
286
249
  """Does this assignment node have a very trusted value."""
287
250
 
251
+ @abstractmethod
252
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
253
+ """Set the value trace for the assignment form."""
254
+
288
255
 
289
256
  class StatementAssignmentVariableGeneric(
290
257
  StatementAssignmentVariableMixin, StatementAssignmentVariableGenericBase
@@ -404,17 +371,26 @@ Removed assignment of %s from itself which is known to be defined."""
404
371
  % variable.getDescription(),
405
372
  )
406
373
 
374
+ if source is old_source:
375
+ result = self, None, None
376
+ else:
377
+ result = self._considerSpecialization(old_source, source)
378
+ result[0].parent = self.parent
379
+
380
+ result[0].computeStatementAssignmentTraceUpdate(trace_collection, source)
381
+
382
+ return result
383
+
384
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
407
385
  # Set-up the trace to the trace collection, so future references will
408
386
  # find this assignment.
409
387
  self.variable_trace = trace_collection.onVariableSet(
410
- variable=variable, version=self.variable_version, assign_node=self
388
+ variable=self.variable, version=self.variable_version, assign_node=self
411
389
  )
412
390
 
413
391
  # TODO: Determine from future use of assigned variable, if this is needed at all.
414
392
  trace_collection.removeKnowledge(source)
415
393
 
416
- return self._considerSpecialization(old_source)
417
-
418
394
  def hasVeryTrustedValue(self):
419
395
  """Does this assignment node have a very trusted value."""
420
396
  return self.subnode_source.hasVeryTrustedValue()
@@ -594,12 +570,18 @@ Assignment raises exception in assigned value, removed assignment.""",
594
570
 
595
571
  # Set-up the trace to the trace collection, so future references will
596
572
  # find this assignment.
573
+ # Note: Keep this aligned with computeStatementAssignmentTraceUpdate
597
574
  self.variable_trace = trace_collection.onVariableSet(
598
575
  variable=variable, version=self.variable_version, assign_node=self
599
576
  )
600
577
 
601
578
  return self, None, None
602
579
 
580
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
581
+ self.variable_trace = trace_collection.onVariableSet(
582
+ variable=self.variable, version=self.variable_version, assign_node=self
583
+ )
584
+
603
585
  @staticmethod
604
586
  def hasVeryTrustedValue():
605
587
  """Does this assignment node have a very trusted value."""
@@ -642,6 +624,7 @@ class StatementAssignmentVariableConstantMutable(
642
624
 
643
625
  # Set-up the trace to the trace collection, so future references will
644
626
  # find this assignment.
627
+ # Note: Keep this aligned with computeStatementAssignmentTraceUpdate
645
628
  self.variable_trace = trace_collection.onVariableSet(
646
629
  variable=variable, version=self.variable_version, assign_node=self
647
630
  )
@@ -682,6 +665,11 @@ class StatementAssignmentVariableConstantMutable(
682
665
 
683
666
  return self, None, None
684
667
 
668
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
669
+ self.variable_trace = trace_collection.onVariableSet(
670
+ variable=self.variable, version=self.variable_version, assign_node=self
671
+ )
672
+
685
673
  @staticmethod
686
674
  def hasVeryTrustedValue():
687
675
  """Does this assignment node have a very trusted value."""
@@ -785,12 +773,18 @@ class StatementAssignmentVariableConstantImmutable(
785
773
  % self.getVariableName(),
786
774
  )
787
775
 
776
+ # Note: Keep this aligned with computeStatementAssignmentTraceUpdate
788
777
  self.variable_trace = trace_collection.onVariableSetToUnescapableValue(
789
778
  variable=variable, version=self.variable_version, assign_node=self
790
779
  )
791
780
 
792
781
  return self, None, None
793
782
 
783
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
784
+ self.variable_trace = trace_collection.onVariableSetToUnescapableValue(
785
+ variable=self.variable, version=self.variable_version, assign_node=self
786
+ )
787
+
794
788
  @staticmethod
795
789
  def hasVeryTrustedValue():
796
790
  """Does this assignment node have a very trusted value."""
@@ -868,12 +862,18 @@ class StatementAssignmentVariableHardValue(
868
862
  Assignment raises exception in assigned value, removed assignment.""",
869
863
  )
870
864
 
865
+ # Note: Keep this aligned with computeStatementAssignmentTraceUpdate
871
866
  self.variable_trace = trace_collection.onVariableSetToVeryTrustedValue(
872
867
  variable=variable, version=self.variable_version, assign_node=self
873
868
  )
874
869
 
875
870
  return self, None, None
876
871
 
872
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
873
+ self.variable_trace = trace_collection.onVariableSetToVeryTrustedValue(
874
+ variable=self.variable, version=self.variable_version, assign_node=self
875
+ )
876
+
877
877
  @staticmethod
878
878
  def hasVeryTrustedValue():
879
879
  """Does this assignment node have a very trusted value."""
@@ -916,7 +916,9 @@ class StatementAssignmentVariableFromVariable(
916
916
 
917
917
  # Assigning from and to the same variable, can be optimized away
918
918
  # immediately, there is no point in doing it. Exceptions are of course
919
- # module variables that collide with built-in names.
919
+ # module variables that collide with built-in names. TODO: In
920
+ # specialization this could be considered right away as its own node
921
+ # type, waiting for it to compute like this.
920
922
  if not variable.isModuleVariable() and old_source.getVariable() is variable:
921
923
  # A variable access that has a side effect, must be preserved,
922
924
  # so it can e.g. raise an exception, otherwise we can be fully
@@ -947,13 +949,8 @@ Removed assignment of %s from itself which is known to be defined."""
947
949
  # Let assignment source may re-compute first.
948
950
  source = trace_collection.onExpression(self.subnode_source)
949
951
 
950
- if source.isExpressionVariableRef():
951
- self.variable_trace = trace_collection.onVariableSetAliasing(
952
- variable=variable,
953
- version=self.variable_version,
954
- assign_node=self,
955
- source=source,
956
- )
952
+ if source is old_source:
953
+ result = self, None, None
957
954
  else:
958
955
  if source.willRaiseAnyException():
959
956
  result = makeStatementExpressionOnlyReplacementNode(
@@ -967,17 +964,33 @@ Removed assignment of %s from itself which is known to be defined."""
967
964
  Assignment raises exception in assigned variable access, removed assignment.""",
968
965
  )
969
966
 
967
+ result = self._considerSpecialization(old_source, source)
968
+ result[0].parent = self.parent
969
+
970
+ result[0].computeStatementAssignmentTraceUpdate(trace_collection, source)
971
+
972
+ return result
973
+
974
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
975
+ if source.isExpressionVariableRef():
976
+ self.variable_trace = trace_collection.onVariableSetAliasing(
977
+ variable=self.variable,
978
+ version=self.variable_version,
979
+ assign_node=self,
980
+ source=source,
981
+ )
982
+ else:
970
983
  # Set-up the trace to the trace collection, so future references will
971
- # find this assignment.
984
+ # find this assignment. TODO: We should for non-variables make sure we do
985
+ # always specialize, since this is no longer a variable once it was
986
+ # resolved.
972
987
  self.variable_trace = trace_collection.onVariableSet(
973
- variable=variable, version=self.variable_version, assign_node=self
988
+ variable=self.variable, version=self.variable_version, assign_node=self
974
989
  )
975
990
 
976
991
  # TODO: Determine from future use of assigned variable, if this is needed at all.
977
992
  trace_collection.removeKnowledge(source)
978
993
 
979
- return self._considerSpecialization(old_source)
980
-
981
994
  @staticmethod
982
995
  def hasVeryTrustedValue():
983
996
  """Does this assignment node have a very trusted value."""
@@ -1033,17 +1046,26 @@ Removed assignment of %s from itself which is known to be defined."""
1033
1046
  # Let assignment source may re-compute first.
1034
1047
  source = trace_collection.onExpression(self.subnode_source)
1035
1048
 
1049
+ if source is old_source:
1050
+ result = self, None, None
1051
+ else:
1052
+ result = self._considerSpecialization(old_source, source)
1053
+ result[0].parent = self.parent
1054
+
1055
+ result[0].computeStatementAssignmentTraceUpdate(trace_collection, source)
1056
+
1057
+ return result
1058
+
1059
+ def computeStatementAssignmentTraceUpdate(self, trace_collection, source):
1036
1060
  # Set-up the trace to the trace collection, so future references will
1037
1061
  # find this assignment.
1038
1062
  self.variable_trace = trace_collection.onVariableSet(
1039
- variable=variable, version=self.variable_version, assign_node=self
1063
+ variable=self.variable, version=self.variable_version, assign_node=self
1040
1064
  )
1041
1065
 
1042
1066
  # TODO: Determine from future use of assigned variable, if this is needed at all.
1043
1067
  trace_collection.removeKnowledge(source)
1044
1068
 
1045
- return self._considerSpecialization(old_source)
1046
-
1047
1069
  @staticmethod
1048
1070
  def hasVeryTrustedValue():
1049
1071
  """Does this assignment node have a very trusted value."""
@@ -1136,3 +1158,19 @@ def makeStatementAssignmentVariable(
1136
1158
  variable_version=variable_version,
1137
1159
  source_ref=source_ref,
1138
1160
  )
1161
+
1162
+
1163
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
1164
+ # integrates with CPython, but also works on its own.
1165
+ #
1166
+ # Licensed under the Apache License, Version 2.0 (the "License");
1167
+ # you may not use this file except in compliance with the License.
1168
+ # You may obtain a copy of the License at
1169
+ #
1170
+ # http://www.apache.org/licenses/LICENSE-2.0
1171
+ #
1172
+ # Unless required by applicable law or agreed to in writing, software
1173
+ # distributed under the License is distributed on an "AS IS" BASIS,
1174
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1175
+ # See the License for the specific language governing permissions and
1176
+ # 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
  """ Nodes for variable deletion
19
5
 
20
6
  These refer to resolved variable objects.
@@ -316,3 +302,19 @@ def makeStatementDelVariable(variable, tolerant, source_ref, version=None):
316
302
  return StatementDelVariableIntolerant(
317
303
  variable=variable, version=version, source_ref=source_ref
318
304
  )
305
+
306
+
307
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
308
+ # integrates with CPython, but also works on its own.
309
+ #
310
+ # Licensed under the Apache License, Version 2.0 (the "License");
311
+ # you may not use this file except in compliance with the License.
312
+ # You may obtain a copy of the License at
313
+ #
314
+ # http://www.apache.org/licenses/LICENSE-2.0
315
+ #
316
+ # Unless required by applicable law or agreed to in writing, software
317
+ # distributed under the License is distributed on an "AS IS" BASIS,
318
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
319
+ # See the License for the specific language governing permissions and
320
+ # 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
  """ Nodes for named variable reference, assignment, and deletion
19
5
 
20
6
  x = ...
@@ -149,3 +135,19 @@ class ExpressionVariableLocalNameRef(ExpressionVariableNameRef):
149
135
  @staticmethod
150
136
  def needsFallback():
151
137
  return False
138
+
139
+
140
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
141
+ # integrates with CPython, but also works on its own.
142
+ #
143
+ # Licensed under the Apache License, Version 2.0 (the "License");
144
+ # you may not use this file except in compliance with the License.
145
+ # You may obtain a copy of the License at
146
+ #
147
+ # http://www.apache.org/licenses/LICENSE-2.0
148
+ #
149
+ # Unless required by applicable law or agreed to in writing, software
150
+ # distributed under the License is distributed on an "AS IS" BASIS,
151
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
152
+ # See the License for the specific language governing permissions and
153
+ # 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
  """ Node for variable references.
19
5
 
20
6
  These represent all variable references in the node tree. Can be in assignments
@@ -384,6 +370,10 @@ class ExpressionVariableRef(ExpressionVariableRefBase):
384
370
  def isExpressionVariableRef():
385
371
  return True
386
372
 
373
+ @staticmethod
374
+ def isExpressionVariableRefOrTempVariableRef():
375
+ return True
376
+
387
377
  def getDetails(self):
388
378
  return {"variable": self.variable}
389
379
 
@@ -710,6 +700,10 @@ class ExpressionTempVariableRef(
710
700
  def isExpressionTempVariableRef():
711
701
  return True
712
702
 
703
+ @staticmethod
704
+ def isExpressionVariableRefOrTempVariableRef():
705
+ return True
706
+
713
707
  @classmethod
714
708
  def fromXML(cls, provider, source_ref, **args):
715
709
  assert cls is ExpressionTempVariableRef, cls
@@ -856,3 +850,19 @@ class ExpressionTempVariableRef(
856
850
  def isKnownToBeIterableAtMin(count):
857
851
  # TODO: See through the variable current trace.
858
852
  return None
853
+
854
+
855
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
856
+ # integrates with CPython, but also works on its own.
857
+ #
858
+ # Licensed under the Apache License, Version 2.0 (the "License");
859
+ # you may not use this file except in compliance with the License.
860
+ # You may obtain a copy of the License at
861
+ #
862
+ # http://www.apache.org/licenses/LICENSE-2.0
863
+ #
864
+ # Unless required by applicable law or agreed to in writing, software
865
+ # distributed under the License is distributed on an "AS IS" BASIS,
866
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
867
+ # See the License for the specific language governing permissions and
868
+ # 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
  """ Nodes for variable release
19
5
 
20
6
  These refer to resolved variable objects.
@@ -149,3 +135,19 @@ def makeStatementsReleaseVariables(variables, source_ref):
149
135
  makeStatementReleaseVariable(variable=variable, source_ref=source_ref)
150
136
  for variable in variables
151
137
  )
138
+
139
+
140
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
141
+ # integrates with CPython, but also works on its own.
142
+ #
143
+ # Licensed under the Apache License, Version 2.0 (the "License");
144
+ # you may not use this file except in compliance with the License.
145
+ # You may obtain a copy of the License at
146
+ #
147
+ # http://www.apache.org/licenses/LICENSE-2.0
148
+ #
149
+ # Unless required by applicable law or agreed to in writing, software
150
+ # distributed under the License is distributed on an "AS IS" BASIS,
151
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
152
+ # See the License for the specific language governing permissions and
153
+ # 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
  """ Yield node.
19
5
 
20
6
  The yield node returns to the caller of the generator and therefore may execute
@@ -117,3 +103,19 @@ class ExpressionYieldFromAwaitable(ExpressionYieldBase):
117
103
  """
118
104
 
119
105
  kind = "EXPRESSION_YIELD_FROM_AWAITABLE"
106
+
107
+
108
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
109
+ # integrates with CPython, but also works on its own.
110
+ #
111
+ # Licensed under the Apache License, Version 2.0 (the "License");
112
+ # you may not use this file except in compliance with the License.
113
+ # You may obtain a copy of the License at
114
+ #
115
+ # http://www.apache.org/licenses/LICENSE-2.0
116
+ #
117
+ # Unless required by applicable law or agreed to in writing, software
118
+ # distributed under the License is distributed on an "AS IS" BASIS,
119
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
120
+ # See the License for the specific language governing permissions and
121
+ # limitations under the License.
nuitka/nodes/__init__.py CHANGED
@@ -1,5 +1,8 @@
1
- # Copyright 2023, Kay Hayen, mailto:kay.hayen@gmail.com
2
- #
1
+ # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
+
3
+
4
+ """ Dummy file to make this directory a package. """
5
+
3
6
  # Part of "Nuitka", an optimizing Python compiler that is compatible and
4
7
  # integrates with CPython, but also works on its own.
5
8
  #
@@ -14,5 +17,3 @@
14
17
  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
18
  # See the License for the specific language governing permissions and
16
19
  # limitations under the License.
17
- #
18
- """ Dummy file to make this directory a package. """
@@ -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
  """ Shapes for Python built-in types.
19
5
 
20
6
  """
@@ -4240,3 +4226,18 @@ class ShapeTypeBuiltinExceptionClass(
4240
4226
 
4241
4227
 
4242
4228
  tshape_exception_class = ShapeTypeBuiltinExceptionClass()
4229
+
4230
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
4231
+ # integrates with CPython, but also works on its own.
4232
+ #
4233
+ # Licensed under the Apache License, Version 2.0 (the "License");
4234
+ # you may not use this file except in compliance with the License.
4235
+ # You may obtain a copy of the License at
4236
+ #
4237
+ # http://www.apache.org/licenses/LICENSE-2.0
4238
+ #
4239
+ # Unless required by applicable law or agreed to in writing, software
4240
+ # distributed under the License is distributed on an "AS IS" BASIS,
4241
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
4242
+ # See the License for the specific language governing permissions and
4243
+ # 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
  """ Objects use to describe control flow escapes.
19
5
 
20
6
  Typically returned by shape operations to indicate what can and can not
@@ -195,3 +181,19 @@ class ControlFlowDescriptionMatmultUnsupported(
195
181
  ControlFlowDescriptionOperationUnsupportedBase
196
182
  ):
197
183
  pass
184
+
185
+
186
+ # Part of "Nuitka", an optimizing Python compiler that is compatible and
187
+ # integrates with CPython, but also works on its own.
188
+ #
189
+ # Licensed under the Apache License, Version 2.0 (the "License");
190
+ # you may not use this file except in compliance with the License.
191
+ # You may obtain a copy of the License at
192
+ #
193
+ # http://www.apache.org/licenses/LICENSE-2.0
194
+ #
195
+ # Unless required by applicable law or agreed to in writing, software
196
+ # distributed under the License is distributed on an "AS IS" BASIS,
197
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
198
+ # See the License for the specific language governing permissions and
199
+ # limitations under the License.