Nuitka-winsvc 2.5.6__cp311-cp311-win_amd64.whl → 2.6.5__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 (701) hide show
  1. {Nuitka_winsvc-2.5.6.data → Nuitka_winsvc-2.6.5.data}/scripts/nuitka-run.cmd +1 -1
  2. {Nuitka_winsvc-2.5.6.data → Nuitka_winsvc-2.6.5.data}/scripts/nuitka.cmd +1 -1
  3. {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/METADATA +36 -24
  4. Nuitka_winsvc-2.6.5.dist-info/RECORD +992 -0
  5. {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/WHEEL +1 -1
  6. nuitka/Builtins.py +1 -1
  7. nuitka/BytecodeCaching.py +15 -4
  8. nuitka/Bytecodes.py +1 -1
  9. nuitka/CacheCleanup.py +1 -1
  10. nuitka/Constants.py +1 -1
  11. nuitka/Errors.py +1 -1
  12. nuitka/HardImportRegistry.py +1 -1
  13. nuitka/MainControl.py +93 -94
  14. nuitka/ModuleRegistry.py +19 -4
  15. nuitka/OptionParsing.py +86 -17
  16. nuitka/Options.py +230 -106
  17. nuitka/OutputDirectories.py +5 -3
  18. nuitka/PostProcessing.py +76 -27
  19. nuitka/Progress.py +1 -1
  20. nuitka/PythonFlavors.py +24 -3
  21. nuitka/PythonOperators.py +1 -1
  22. nuitka/PythonVersions.py +8 -4
  23. nuitka/Serialization.py +1 -1
  24. nuitka/SourceCodeReferences.py +1 -1
  25. nuitka/Tracing.py +2 -1
  26. nuitka/TreeXML.py +1 -1
  27. nuitka/Variables.py +1 -1
  28. nuitka/Version.py +2 -2
  29. nuitka/__init__.py +1 -1
  30. nuitka/__main__.py +4 -1
  31. nuitka/__past__.py +1 -1
  32. nuitka/build/Backend.scons +44 -66
  33. nuitka/build/CCompilerVersion.scons +2 -1
  34. nuitka/build/DataComposerInterface.py +2 -1
  35. nuitka/build/Offsets.scons +644 -0
  36. nuitka/build/Onefile.scons +5 -13
  37. nuitka/build/SconsCaching.py +9 -7
  38. nuitka/build/SconsCompilerSettings.py +57 -35
  39. nuitka/build/SconsHacks.py +3 -3
  40. nuitka/build/SconsInterface.py +86 -58
  41. nuitka/build/SconsProgress.py +12 -5
  42. nuitka/build/SconsSpawn.py +3 -3
  43. nuitka/build/SconsUtils.py +20 -1
  44. nuitka/build/__init__.py +1 -1
  45. nuitka/build/include/nuitka/allocator.h +3 -1
  46. nuitka/build/include/nuitka/builtins.h +1 -1
  47. nuitka/build/include/nuitka/calling.h +1 -1
  48. nuitka/build/include/nuitka/checkers.h +1 -1
  49. nuitka/build/include/nuitka/checksum_tools.h +1 -1
  50. nuitka/build/include/nuitka/compiled_asyncgen.h +4 -2
  51. nuitka/build/include/nuitka/compiled_cell.h +1 -1
  52. nuitka/build/include/nuitka/compiled_coroutine.h +3 -2
  53. nuitka/build/include/nuitka/compiled_frame.h +6 -13
  54. nuitka/build/include/nuitka/compiled_function.h +2 -3
  55. nuitka/build/include/nuitka/compiled_generator.h +3 -2
  56. nuitka/build/include/nuitka/compiled_method.h +1 -1
  57. nuitka/build/include/nuitka/constants.h +5 -1
  58. nuitka/build/include/nuitka/constants_blob.h +1 -1
  59. nuitka/build/include/nuitka/debug_settings.h +1 -1
  60. nuitka/build/include/nuitka/environment_variables.h +1 -1
  61. nuitka/build/include/nuitka/environment_variables_system.h +1 -1
  62. nuitka/build/include/nuitka/exception_groups.h +1 -1
  63. nuitka/build/include/nuitka/exceptions.h +2 -2
  64. nuitka/build/include/nuitka/filesystem_paths.h +4 -1
  65. nuitka/build/include/nuitka/freelists.h +2 -2
  66. nuitka/build/include/nuitka/helper/attributes.h +1 -1
  67. nuitka/build/include/nuitka/helper/boolean.h +1 -1
  68. nuitka/build/include/nuitka/helper/bytearrays.h +1 -1
  69. nuitka/build/include/nuitka/helper/bytes.h +1 -1
  70. nuitka/build/include/nuitka/helper/calling_generated.h +1 -1
  71. nuitka/build/include/nuitka/helper/comparisons_dual_eq.h +1 -1
  72. nuitka/build/include/nuitka/helper/comparisons_dual_ge.h +1 -1
  73. nuitka/build/include/nuitka/helper/comparisons_dual_gt.h +1 -1
  74. nuitka/build/include/nuitka/helper/comparisons_dual_le.h +1 -1
  75. nuitka/build/include/nuitka/helper/comparisons_dual_lt.h +1 -1
  76. nuitka/build/include/nuitka/helper/comparisons_dual_ne.h +1 -1
  77. nuitka/build/include/nuitka/helper/comparisons_eq.h +1 -1
  78. nuitka/build/include/nuitka/helper/comparisons_ge.h +1 -1
  79. nuitka/build/include/nuitka/helper/comparisons_gt.h +1 -1
  80. nuitka/build/include/nuitka/helper/comparisons_le.h +1 -1
  81. nuitka/build/include/nuitka/helper/comparisons_lt.h +1 -1
  82. nuitka/build/include/nuitka/helper/comparisons_ne.h +1 -1
  83. nuitka/build/include/nuitka/helper/complex.h +1 -1
  84. nuitka/build/include/nuitka/helper/dictionaries.h +1 -1
  85. nuitka/build/include/nuitka/helper/floats.h +1 -1
  86. nuitka/build/include/nuitka/helper/import_hard.h +1 -1
  87. nuitka/build/include/nuitka/helper/indexes.h +1 -1
  88. nuitka/build/include/nuitka/helper/ints.h +1 -1
  89. nuitka/build/include/nuitka/helper/iterators.h +1 -1
  90. nuitka/build/include/nuitka/helper/lists.h +1 -1
  91. nuitka/build/include/nuitka/helper/lists_generated.h +1 -1
  92. nuitka/build/include/nuitka/helper/mappings.h +1 -1
  93. nuitka/build/include/nuitka/helper/operations.h +1 -1
  94. nuitka/build/include/nuitka/helper/operations_binary_add.h +1 -1
  95. nuitka/build/include/nuitka/helper/operations_binary_bitand.h +1 -1
  96. nuitka/build/include/nuitka/helper/operations_binary_bitor.h +1 -1
  97. nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +1 -1
  98. nuitka/build/include/nuitka/helper/operations_binary_divmod.h +1 -1
  99. nuitka/build/include/nuitka/helper/operations_binary_dual_add.h +1 -1
  100. nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +1 -1
  101. nuitka/build/include/nuitka/helper/operations_binary_lshift.h +1 -1
  102. nuitka/build/include/nuitka/helper/operations_binary_matmult.h +1 -1
  103. nuitka/build/include/nuitka/helper/operations_binary_mod.h +1 -1
  104. nuitka/build/include/nuitka/helper/operations_binary_mult.h +1 -1
  105. nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +1 -1
  106. nuitka/build/include/nuitka/helper/operations_binary_pow.h +1 -1
  107. nuitka/build/include/nuitka/helper/operations_binary_rshift.h +1 -1
  108. nuitka/build/include/nuitka/helper/operations_binary_sub.h +1 -1
  109. nuitka/build/include/nuitka/helper/operations_binary_truediv.h +1 -1
  110. nuitka/build/include/nuitka/helper/operations_builtin_types.h +1 -1
  111. nuitka/build/include/nuitka/helper/operations_inplace_add.h +1 -1
  112. nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +1 -1
  113. nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +1 -1
  114. nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +1 -1
  115. nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +1 -1
  116. nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +1 -1
  117. nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +1 -1
  118. nuitka/build/include/nuitka/helper/operations_inplace_mod.h +1 -1
  119. nuitka/build/include/nuitka/helper/operations_inplace_mult.h +1 -1
  120. nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +1 -1
  121. nuitka/build/include/nuitka/helper/operations_inplace_pow.h +1 -1
  122. nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +1 -1
  123. nuitka/build/include/nuitka/helper/operations_inplace_sub.h +1 -1
  124. nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +1 -1
  125. nuitka/build/include/nuitka/helper/raising.h +1 -1
  126. nuitka/build/include/nuitka/helper/rangeobjects.h +1 -1
  127. nuitka/build/include/nuitka/helper/richcomparisons.h +1 -1
  128. nuitka/build/include/nuitka/helper/sequences.h +1 -1
  129. nuitka/build/include/nuitka/helper/sets.h +1 -1
  130. nuitka/build/include/nuitka/helper/slices.h +1 -1
  131. nuitka/build/include/nuitka/helper/strings.h +1 -1
  132. nuitka/build/include/nuitka/helper/subscripts.h +1 -1
  133. nuitka/build/include/nuitka/helper/tuples.h +1 -1
  134. nuitka/build/include/nuitka/helpers.h +1 -43
  135. nuitka/build/include/nuitka/importing.h +1 -1
  136. nuitka/build/include/nuitka/jit_sources.h +1 -1
  137. nuitka/build/include/nuitka/prelude.h +10 -10
  138. nuitka/build/include/nuitka/printing.h +1 -1
  139. nuitka/build/include/nuitka/python_pgo.h +1 -1
  140. nuitka/build/include/nuitka/safe_string_ops.h +1 -1
  141. nuitka/build/include/nuitka/threading.h +1 -1
  142. nuitka/build/include/nuitka/tracing.h +1 -1
  143. nuitka/build/include/nuitka/type_aliases.h +2 -2
  144. nuitka/build/include/nuitka/unfreezing.h +1 -1
  145. nuitka/build/inline_copy/pefile/LICENSE.txt +21 -0
  146. nuitka/build/inline_copy/pefile/ordlookup/__init__.py +41 -0
  147. nuitka/build/inline_copy/pefile/ordlookup/oleaut32.py +400 -0
  148. nuitka/build/inline_copy/pefile/ordlookup/ws2_32.py +120 -0
  149. nuitka/build/inline_copy/pefile/pefile.py +8034 -0
  150. nuitka/build/static_src/CompiledAsyncgenType.c +80 -75
  151. nuitka/build/static_src/CompiledCellType.c +2 -1
  152. nuitka/build/static_src/CompiledCodeHelpers.c +10 -28
  153. nuitka/build/static_src/CompiledCoroutineType.c +30 -40
  154. nuitka/build/static_src/CompiledFrameType.c +63 -5
  155. nuitka/build/static_src/CompiledFunctionType.c +11 -13
  156. nuitka/build/static_src/CompiledGeneratorType.c +56 -13
  157. nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +1 -1
  158. nuitka/build/static_src/CompiledMethodType.c +2 -1
  159. nuitka/build/static_src/GenerateHeadersMain.c +30 -0
  160. nuitka/build/static_src/HelpersAllocator.c +1 -1
  161. nuitka/build/static_src/HelpersAttributes.c +5 -2
  162. nuitka/build/static_src/HelpersBuiltin.c +1 -1
  163. nuitka/build/static_src/HelpersBuiltinTypeMethods.c +1 -1
  164. nuitka/build/static_src/HelpersBytes.c +1 -1
  165. nuitka/build/static_src/HelpersCalling.c +1 -1
  166. nuitka/build/static_src/HelpersCallingGenerated.c +6 -16
  167. nuitka/build/static_src/HelpersChecksumTools.c +1 -1
  168. nuitka/build/static_src/HelpersClasses.c +1 -1
  169. nuitka/build/static_src/HelpersComparisonDualEq.c +1 -1
  170. nuitka/build/static_src/HelpersComparisonDualGe.c +1 -1
  171. nuitka/build/static_src/HelpersComparisonDualGt.c +1 -1
  172. nuitka/build/static_src/HelpersComparisonDualLe.c +1 -1
  173. nuitka/build/static_src/HelpersComparisonDualLt.c +1 -1
  174. nuitka/build/static_src/HelpersComparisonDualNe.c +1 -1
  175. nuitka/build/static_src/HelpersComparisonEq.c +1 -1
  176. nuitka/build/static_src/HelpersComparisonEqUtils.c +1 -1
  177. nuitka/build/static_src/HelpersComparisonGe.c +1 -1
  178. nuitka/build/static_src/HelpersComparisonGt.c +1 -1
  179. nuitka/build/static_src/HelpersComparisonLe.c +1 -1
  180. nuitka/build/static_src/HelpersComparisonLt.c +1 -1
  181. nuitka/build/static_src/HelpersComparisonNe.c +1 -1
  182. nuitka/build/static_src/HelpersConsole.c +2 -2
  183. nuitka/build/static_src/HelpersConstantsBlob.c +199 -50
  184. nuitka/build/static_src/HelpersDeepcopy.c +3 -1
  185. nuitka/build/static_src/HelpersDictionaries.c +1 -1
  186. nuitka/build/static_src/HelpersDictionariesGenerated.c +1 -1
  187. nuitka/build/static_src/HelpersDumpBacktraces.c +1 -1
  188. nuitka/build/static_src/HelpersEnvironmentVariables.c +1 -1
  189. nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +1 -1
  190. nuitka/build/static_src/HelpersExceptions.c +1 -1
  191. nuitka/build/static_src/HelpersFiles.c +18 -10
  192. nuitka/build/static_src/HelpersFilesystemPaths.c +36 -16
  193. nuitka/build/static_src/HelpersFloats.c +1 -1
  194. nuitka/build/static_src/HelpersHeapStorage.c +1 -1
  195. nuitka/build/static_src/HelpersImport.c +1 -1
  196. nuitka/build/static_src/HelpersImportHard.c +1 -1
  197. nuitka/build/static_src/HelpersJitSources.c +1 -1
  198. nuitka/build/static_src/HelpersLists.c +2 -1
  199. nuitka/build/static_src/HelpersListsGenerated.c +1 -1
  200. nuitka/build/static_src/HelpersMappings.c +1 -1
  201. nuitka/build/static_src/HelpersMatching.c +1 -1
  202. nuitka/build/static_src/HelpersOperationBinaryAdd.c +1 -1
  203. nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +1 -1
  204. nuitka/build/static_src/HelpersOperationBinaryBitand.c +1 -1
  205. nuitka/build/static_src/HelpersOperationBinaryBitor.c +1 -1
  206. nuitka/build/static_src/HelpersOperationBinaryBitxor.c +1 -1
  207. nuitka/build/static_src/HelpersOperationBinaryDivmod.c +1 -1
  208. nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +1 -1
  209. nuitka/build/static_src/HelpersOperationBinaryDualAdd.c +1 -1
  210. nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +1 -1
  211. nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +1 -1
  212. nuitka/build/static_src/HelpersOperationBinaryLshift.c +1 -1
  213. nuitka/build/static_src/HelpersOperationBinaryMatmult.c +1 -1
  214. nuitka/build/static_src/HelpersOperationBinaryMod.c +1 -1
  215. nuitka/build/static_src/HelpersOperationBinaryMult.c +1 -1
  216. nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +1 -1
  217. nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +1 -1
  218. nuitka/build/static_src/HelpersOperationBinaryPow.c +1 -1
  219. nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +1 -1
  220. nuitka/build/static_src/HelpersOperationBinaryRshift.c +1 -1
  221. nuitka/build/static_src/HelpersOperationBinarySub.c +1 -1
  222. nuitka/build/static_src/HelpersOperationBinaryTruediv.c +1 -1
  223. nuitka/build/static_src/HelpersOperationInplaceAdd.c +1 -1
  224. nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +1 -1
  225. nuitka/build/static_src/HelpersOperationInplaceBitand.c +1 -1
  226. nuitka/build/static_src/HelpersOperationInplaceBitor.c +1 -1
  227. nuitka/build/static_src/HelpersOperationInplaceBitxor.c +1 -1
  228. nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +1 -1
  229. nuitka/build/static_src/HelpersOperationInplaceLshift.c +1 -1
  230. nuitka/build/static_src/HelpersOperationInplaceMatmult.c +1 -1
  231. nuitka/build/static_src/HelpersOperationInplaceMod.c +1 -1
  232. nuitka/build/static_src/HelpersOperationInplaceMult.c +1 -1
  233. nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +1 -1
  234. nuitka/build/static_src/HelpersOperationInplacePow.c +1 -1
  235. nuitka/build/static_src/HelpersOperationInplaceRshift.c +1 -1
  236. nuitka/build/static_src/HelpersOperationInplaceSub.c +1 -1
  237. nuitka/build/static_src/HelpersOperationInplaceTruediv.c +1 -1
  238. nuitka/build/static_src/HelpersProfiling.c +1 -1
  239. nuitka/build/static_src/HelpersPythonPgo.c +5 -2
  240. nuitka/build/static_src/HelpersRaising.c +1 -1
  241. nuitka/build/static_src/HelpersSafeStrings.c +1 -1
  242. nuitka/build/static_src/HelpersSequences.c +1 -1
  243. nuitka/build/static_src/HelpersSlices.c +1 -1
  244. nuitka/build/static_src/HelpersStrings.c +1 -1
  245. nuitka/build/static_src/HelpersTuples.c +1 -1
  246. nuitka/build/static_src/HelpersTypes.c +5 -5
  247. nuitka/build/static_src/InspectPatcher.c +2 -1
  248. nuitka/build/static_src/MainProgram.c +30 -6
  249. nuitka/build/static_src/MetaPathBasedLoader.c +19 -11
  250. nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +1 -1
  251. nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +1 -1
  252. nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +17 -4
  253. nuitka/build/static_src/OnefileBootstrap.c +6 -4
  254. nuitka/build/static_src/OnefileSplashScreen.cpp +1 -1
  255. nuitka/code_generation/AsyncgenCodes.py +5 -6
  256. nuitka/code_generation/AttributeCodes.py +1 -1
  257. nuitka/code_generation/BinaryOperationHelperDefinitions.py +1 -1
  258. nuitka/code_generation/BranchCodes.py +1 -1
  259. nuitka/code_generation/BuiltinCodes.py +15 -5
  260. nuitka/code_generation/CallCodes.py +1 -1
  261. nuitka/code_generation/ClassCodes.py +1 -1
  262. nuitka/code_generation/CodeGeneration.py +23 -17
  263. nuitka/code_generation/CodeHelperSelection.py +1 -1
  264. nuitka/code_generation/CodeHelpers.py +1 -1
  265. nuitka/code_generation/CodeObjectCodes.py +19 -2
  266. nuitka/code_generation/ComparisonCodes.py +1 -1
  267. nuitka/code_generation/ComparisonHelperDefinitions.py +1 -1
  268. nuitka/code_generation/ConditionalCodes.py +1 -1
  269. nuitka/code_generation/ConstantCodes.py +1 -1
  270. nuitka/code_generation/Contexts.py +52 -39
  271. nuitka/code_generation/CoroutineCodes.py +4 -5
  272. nuitka/code_generation/CtypesCodes.py +1 -1
  273. nuitka/code_generation/DictCodes.py +1 -1
  274. nuitka/code_generation/Emission.py +1 -1
  275. nuitka/code_generation/ErrorCodes.py +1 -1
  276. nuitka/code_generation/EvalCodes.py +1 -1
  277. nuitka/code_generation/ExceptionCodes.py +1 -1
  278. nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +1 -1
  279. nuitka/code_generation/ExpressionCodes.py +1 -1
  280. nuitka/code_generation/FrameCodes.py +26 -17
  281. nuitka/code_generation/FunctionCodes.py +9 -15
  282. nuitka/code_generation/GeneratorCodes.py +9 -10
  283. nuitka/code_generation/GlobalConstants.py +6 -4
  284. nuitka/code_generation/GlobalsLocalsCodes.py +1 -1
  285. nuitka/code_generation/IdCodes.py +1 -1
  286. nuitka/code_generation/ImportCodes.py +1 -1
  287. nuitka/code_generation/Indentation.py +1 -1
  288. nuitka/code_generation/IndexCodes.py +1 -1
  289. nuitka/code_generation/InjectCCodes.py +1 -1
  290. nuitka/code_generation/IntegerCodes.py +1 -1
  291. nuitka/code_generation/IteratorCodes.py +1 -1
  292. nuitka/code_generation/JitCodes.py +1 -1
  293. nuitka/code_generation/LabelCodes.py +1 -1
  294. nuitka/code_generation/LineNumberCodes.py +1 -1
  295. nuitka/code_generation/ListCodes.py +1 -1
  296. nuitka/code_generation/LoaderCodes.py +1 -1
  297. nuitka/code_generation/LocalsDictCodes.py +1 -1
  298. nuitka/code_generation/LoopCodes.py +1 -1
  299. nuitka/code_generation/MatchCodes.py +1 -1
  300. nuitka/code_generation/ModuleCodes.py +31 -4
  301. nuitka/code_generation/Namify.py +4 -1
  302. nuitka/code_generation/NetworkxCodes.py +1 -1
  303. nuitka/code_generation/OperationCodes.py +1 -1
  304. nuitka/code_generation/PackageResourceCodes.py +4 -10
  305. nuitka/code_generation/PrintCodes.py +1 -1
  306. nuitka/code_generation/PythonAPICodes.py +1 -1
  307. nuitka/code_generation/RaisingCodes.py +1 -1
  308. nuitka/code_generation/Reports.py +1 -1
  309. nuitka/code_generation/ReturnCodes.py +1 -1
  310. nuitka/code_generation/SetCodes.py +1 -1
  311. nuitka/code_generation/SliceCodes.py +1 -1
  312. nuitka/code_generation/StringCodes.py +1 -1
  313. nuitka/code_generation/SubscriptCodes.py +1 -1
  314. nuitka/code_generation/TensorflowCodes.py +1 -1
  315. nuitka/code_generation/TryCodes.py +1 -1
  316. nuitka/code_generation/TupleCodes.py +1 -1
  317. nuitka/code_generation/TypeAliasCodes.py +4 -3
  318. nuitka/code_generation/VariableCodes.py +1 -1
  319. nuitka/code_generation/VariableDeclarations.py +1 -1
  320. nuitka/code_generation/YieldCodes.py +1 -1
  321. nuitka/code_generation/__init__.py +1 -1
  322. nuitka/code_generation/c_types/CTypeBases.py +1 -1
  323. nuitka/code_generation/c_types/CTypeBooleans.py +1 -1
  324. nuitka/code_generation/c_types/CTypeCFloats.py +1 -1
  325. nuitka/code_generation/c_types/CTypeCLongs.py +1 -1
  326. nuitka/code_generation/c_types/CTypeModuleDictVariables.py +1 -1
  327. nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +1 -1
  328. nuitka/code_generation/c_types/CTypeNuitkaInts.py +1 -1
  329. nuitka/code_generation/c_types/CTypeNuitkaVoids.py +1 -1
  330. nuitka/code_generation/c_types/CTypePyObjectPointers.py +1 -1
  331. nuitka/code_generation/c_types/CTypeVoids.py +1 -1
  332. nuitka/code_generation/c_types/__init__.py +1 -1
  333. nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +1 -1
  334. nuitka/code_generation/templates/CodeTemplatesConstants.py +2 -2
  335. nuitka/code_generation/templates/CodeTemplatesCoroutines.py +1 -1
  336. nuitka/code_generation/templates/CodeTemplatesExceptions.py +1 -1
  337. nuitka/code_generation/templates/CodeTemplatesFrames.py +21 -25
  338. nuitka/code_generation/templates/CodeTemplatesFunction.py +1 -1
  339. nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +3 -3
  340. nuitka/code_generation/templates/CodeTemplatesIterators.py +1 -1
  341. nuitka/code_generation/templates/CodeTemplatesLoader.py +26 -3
  342. nuitka/code_generation/templates/CodeTemplatesModules.py +21 -8
  343. nuitka/code_generation/templates/CodeTemplatesVariables.py +1 -1
  344. nuitka/code_generation/templates/TemplateDebugWrapper.py +1 -1
  345. nuitka/code_generation/templates/__init__.py +1 -1
  346. nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +1 -1
  347. nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +1 -1
  348. nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +1 -1
  349. nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +21 -1
  350. nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +1 -1
  351. nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +1 -1
  352. nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +1 -1
  353. nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +1 -1
  354. nuitka/code_generation/templates_c/HelperImportHard.c.j2 +1 -1
  355. nuitka/code_generation/templates_c/HelperLongTools.c.j2 +1 -1
  356. nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +1 -1
  357. nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +1 -1
  358. nuitka/code_generation/templates_c/HelperOperationBinaryDual.c.j2 +1 -1
  359. nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +1 -1
  360. nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +1 -1
  361. nuitka/code_generation/templates_c/HelperOperationComparisonDual.c.j2 +1 -1
  362. nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +1 -1
  363. nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +1 -1
  364. nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +1 -1
  365. nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +1 -1
  366. nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +1 -1
  367. nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +1 -1
  368. nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +1 -1
  369. nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +1 -1
  370. nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +1 -1
  371. nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +1 -1
  372. nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +1 -1
  373. nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +1 -1
  374. nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +1 -1
  375. nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +1 -1
  376. nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +1 -1
  377. nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +1 -1
  378. nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +1 -1
  379. nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +1 -1
  380. nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +1 -1
  381. nuitka/containers/Namedtuples.py +1 -1
  382. nuitka/containers/OrderedSetsFallback.py +1 -1
  383. nuitka/containers/__init__.py +1 -1
  384. nuitka/distutils/Build.py +1 -1
  385. nuitka/distutils/DistutilCommands.py +2 -2
  386. nuitka/distutils/__init__.py +1 -1
  387. nuitka/finalizations/Finalization.py +1 -1
  388. nuitka/finalizations/FinalizeMarkups.py +1 -1
  389. nuitka/finalizations/__init__.py +1 -1
  390. nuitka/freezer/DependsExe.py +2 -1
  391. nuitka/freezer/DllDependenciesCommon.py +1 -1
  392. nuitka/freezer/DllDependenciesMacOS.py +8 -3
  393. nuitka/freezer/DllDependenciesPosix.py +23 -4
  394. nuitka/freezer/DllDependenciesWin32.py +112 -25
  395. nuitka/freezer/ImportDetection.py +1 -1
  396. nuitka/freezer/IncludedDataFiles.py +2 -2
  397. nuitka/freezer/IncludedEntryPoints.py +9 -1
  398. nuitka/freezer/Onefile.py +13 -15
  399. nuitka/freezer/Standalone.py +16 -4
  400. nuitka/freezer/__init__.py +1 -1
  401. nuitka/importing/IgnoreListing.py +1 -1
  402. nuitka/importing/ImportCache.py +1 -1
  403. nuitka/importing/ImportResolving.py +1 -1
  404. nuitka/importing/Importing.py +6 -4
  405. nuitka/importing/PreloadedPackages.py +1 -1
  406. nuitka/importing/Recursion.py +37 -12
  407. nuitka/importing/StandardLibrary.py +1 -1
  408. nuitka/importing/__init__.py +1 -1
  409. nuitka/nodes/AsyncgenNodes.py +1 -1
  410. nuitka/nodes/AttributeLookupNodes.py +1 -1
  411. nuitka/nodes/AttributeNodes.py +1 -1
  412. nuitka/nodes/AttributeNodesGenerated.py +1 -1
  413. nuitka/nodes/BuiltinAllNodes.py +1 -1
  414. nuitka/nodes/BuiltinAnyNodes.py +1 -1
  415. nuitka/nodes/BuiltinComplexNodes.py +1 -1
  416. nuitka/nodes/BuiltinDecodingNodes.py +1 -1
  417. nuitka/nodes/BuiltinDecoratorNodes.py +1 -1
  418. nuitka/nodes/BuiltinDictNodes.py +1 -1
  419. nuitka/nodes/BuiltinFormatNodes.py +1 -1
  420. nuitka/nodes/BuiltinHashNodes.py +1 -1
  421. nuitka/nodes/BuiltinInputNodes.py +1 -1
  422. nuitka/nodes/BuiltinIntegerNodes.py +1 -1
  423. nuitka/nodes/BuiltinIteratorNodes.py +1 -1
  424. nuitka/nodes/BuiltinLenNodes.py +1 -1
  425. nuitka/nodes/BuiltinNextNodes.py +1 -1
  426. nuitka/nodes/BuiltinOpenNodes.py +1 -1
  427. nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +1 -1
  428. nuitka/nodes/BuiltinRangeNodes.py +1 -1
  429. nuitka/nodes/BuiltinRefNodes.py +1 -1
  430. nuitka/nodes/BuiltinSumNodes.py +1 -1
  431. nuitka/nodes/BuiltinTypeNodes.py +1 -1
  432. nuitka/nodes/BuiltinVarsNodes.py +1 -1
  433. nuitka/nodes/BytesNodes.py +1 -1
  434. nuitka/nodes/CallNodes.py +1 -1
  435. nuitka/nodes/Checkers.py +1 -1
  436. nuitka/nodes/ChildrenHavingMixins.py +240 -16
  437. nuitka/nodes/ClassNodes.py +1 -1
  438. nuitka/nodes/CodeObjectSpecs.py +4 -4
  439. nuitka/nodes/ComparisonNodes.py +1 -1
  440. nuitka/nodes/ConditionalNodes.py +1 -1
  441. nuitka/nodes/ConstantRefNodes.py +1 -1
  442. nuitka/nodes/ContainerMakingNodes.py +1 -1
  443. nuitka/nodes/ContainerOperationNodes.py +1 -1
  444. nuitka/nodes/CoroutineNodes.py +1 -1
  445. nuitka/nodes/CtypesNodes.py +1 -1
  446. nuitka/nodes/DictionaryNodes.py +1 -1
  447. nuitka/nodes/ExceptionNodes.py +1 -1
  448. nuitka/nodes/ExecEvalNodes.py +1 -1
  449. nuitka/nodes/ExpressionBases.py +1 -1
  450. nuitka/nodes/ExpressionBasesGenerated.py +1 -1
  451. nuitka/nodes/ExpressionShapeMixins.py +1 -1
  452. nuitka/nodes/FrameNodes.py +19 -7
  453. nuitka/nodes/FunctionAttributeNodes.py +1 -1
  454. nuitka/nodes/FunctionNodes.py +8 -1
  455. nuitka/nodes/FutureSpecs.py +34 -2
  456. nuitka/nodes/GeneratorNodes.py +1 -1
  457. nuitka/nodes/GlobalsLocalsNodes.py +1 -1
  458. nuitka/nodes/HardImportNodesGenerated.py +140 -56
  459. nuitka/nodes/ImportHardNodes.py +1 -1
  460. nuitka/nodes/ImportNodes.py +1 -1
  461. nuitka/nodes/IndicatorMixins.py +1 -1
  462. nuitka/nodes/InjectCNodes.py +1 -1
  463. nuitka/nodes/IterationHandles.py +1 -1
  464. nuitka/nodes/KeyValuePairNodes.py +1 -1
  465. nuitka/nodes/ListOperationNodes.py +1 -1
  466. nuitka/nodes/LocalsDictNodes.py +1 -1
  467. nuitka/nodes/LocalsScopes.py +1 -1
  468. nuitka/nodes/LoopNodes.py +1 -1
  469. nuitka/nodes/MatchNodes.py +1 -1
  470. nuitka/nodes/ModuleAttributeNodes.py +1 -1
  471. nuitka/nodes/ModuleNodes.py +23 -9
  472. nuitka/nodes/NetworkxNodes.py +1 -1
  473. nuitka/nodes/NodeBases.py +1 -1
  474. nuitka/nodes/NodeMakingHelpers.py +1 -1
  475. nuitka/nodes/NodeMetaClasses.py +1 -1
  476. nuitka/nodes/OperatorNodes.py +1 -1
  477. nuitka/nodes/OperatorNodesUnary.py +1 -1
  478. nuitka/nodes/OsSysNodes.py +1 -1
  479. nuitka/nodes/OutlineNodes.py +1 -1
  480. nuitka/nodes/PackageMetadataNodes.py +4 -2
  481. nuitka/nodes/PackageResourceNodes.py +42 -7
  482. nuitka/nodes/PrintNodes.py +1 -1
  483. nuitka/nodes/ReturnNodes.py +1 -1
  484. nuitka/nodes/SideEffectNodes.py +1 -1
  485. nuitka/nodes/SliceNodes.py +1 -1
  486. nuitka/nodes/StatementBasesGenerated.py +1 -1
  487. nuitka/nodes/StatementNodes.py +1 -1
  488. nuitka/nodes/StrNodes.py +1 -1
  489. nuitka/nodes/StringConcatenationNodes.py +1 -1
  490. nuitka/nodes/SubscriptNodes.py +1 -1
  491. nuitka/nodes/TensorflowNodes.py +1 -1
  492. nuitka/nodes/TryNodes.py +1 -1
  493. nuitka/nodes/TypeMatchNodes.py +1 -1
  494. nuitka/nodes/TypeNodes.py +4 -4
  495. nuitka/nodes/VariableAssignNodes.py +1 -1
  496. nuitka/nodes/VariableDelNodes.py +1 -1
  497. nuitka/nodes/VariableNameNodes.py +1 -1
  498. nuitka/nodes/VariableRefNodes.py +1 -1
  499. nuitka/nodes/VariableReleaseNodes.py +1 -1
  500. nuitka/nodes/YieldNodes.py +1 -1
  501. nuitka/nodes/__init__.py +1 -1
  502. nuitka/nodes/shapes/BuiltinTypeShapes.py +1 -1
  503. nuitka/nodes/shapes/ControlFlowDescriptions.py +1 -1
  504. nuitka/nodes/shapes/IteratorShapes.py +1 -1
  505. nuitka/nodes/shapes/ShapeMixins.py +1 -1
  506. nuitka/nodes/shapes/StandardShapes.py +1 -1
  507. nuitka/nodes/shapes/__init__.py +1 -1
  508. nuitka/optimizations/BytecodeDemotion.py +1 -1
  509. nuitka/optimizations/FunctionInlining.py +1 -1
  510. nuitka/optimizations/Graphs.py +1 -1
  511. nuitka/optimizations/Optimization.py +1 -1
  512. nuitka/optimizations/OptimizeBuiltinCalls.py +1 -1
  513. nuitka/optimizations/Tags.py +1 -1
  514. nuitka/optimizations/TraceCollections.py +1 -1
  515. nuitka/optimizations/ValueTraces.py +1 -1
  516. nuitka/optimizations/__init__.py +1 -1
  517. nuitka/pgo/PGO.py +1 -1
  518. nuitka/pgo/__init__.py +1 -1
  519. nuitka/plugins/PluginBase.py +91 -16
  520. nuitka/plugins/Plugins.py +58 -15
  521. nuitka/plugins/YamlPluginBase.py +1 -1
  522. nuitka/plugins/__init__.py +1 -1
  523. nuitka/plugins/standard/AntiBloatPlugin.py +138 -66
  524. nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +2 -1
  525. nuitka/plugins/standard/DataFilesPlugin.py +2 -2
  526. nuitka/plugins/standard/DelvewheelPlugin.py +2 -1
  527. nuitka/plugins/standard/DillPlugin/DillPlugin.c +1 -1
  528. nuitka/plugins/standard/DillPlugin/dill-postLoad.py +1 -1
  529. nuitka/plugins/standard/DillPlugin.py +2 -2
  530. nuitka/plugins/standard/DllFilesPlugin.py +2 -12
  531. nuitka/plugins/standard/EnumPlugin.py +2 -2
  532. nuitka/plugins/standard/EventletPlugin.py +2 -1
  533. nuitka/plugins/standard/GeventPlugin.py +2 -1
  534. nuitka/plugins/standard/GiPlugin.py +2 -1
  535. nuitka/plugins/standard/GlfwPlugin.py +2 -1
  536. nuitka/plugins/standard/ImplicitImports.py +7 -6
  537. nuitka/plugins/standard/KivyPlugin.py +2 -1
  538. nuitka/plugins/standard/MatplotlibPlugin.py +2 -1
  539. nuitka/plugins/standard/MultiprocessingPlugin.py +2 -1
  540. nuitka/plugins/standard/NumpyPlugin.py +2 -1
  541. nuitka/plugins/standard/OptionsNannyPlugin.py +2 -2
  542. nuitka/plugins/standard/PbrPlugin.py +2 -2
  543. nuitka/plugins/standard/PkgResourcesPlugin.py +2 -1
  544. nuitka/plugins/standard/PlaywrightPlugin.py +10 -15
  545. nuitka/plugins/standard/PmwPlugin.py +2 -1
  546. nuitka/plugins/standard/PySidePyQtPlugin.py +25 -15
  547. nuitka/plugins/standard/PywebViewPlugin.py +2 -1
  548. nuitka/plugins/standard/SpacyPlugin.py +2 -1
  549. nuitka/plugins/standard/TensorflowPlugin.py +2 -1
  550. nuitka/plugins/standard/TkinterPlugin.py +15 -2
  551. nuitka/plugins/standard/TorchPlugin.py +2 -1
  552. nuitka/plugins/standard/TransformersPlugin.py +2 -2
  553. nuitka/plugins/standard/TrioPlugin.py +2 -1
  554. nuitka/plugins/standard/UpxPlugin.py +2 -1
  555. nuitka/plugins/standard/__init__.py +1 -1
  556. nuitka/plugins/standard/standard.nuitka-package.config.yml +257 -89
  557. nuitka/reports/CompilationReportReader.py +5 -1
  558. nuitka/reports/LicenseReport.rst.j2 +1 -1
  559. nuitka/reports/Reports.py +30 -3
  560. nuitka/reports/__init__.py +1 -1
  561. nuitka/specs/BuiltinBytesOperationSpecs.py +1 -1
  562. nuitka/specs/BuiltinDictOperationSpecs.py +1 -1
  563. nuitka/specs/BuiltinListOperationSpecs.py +1 -1
  564. nuitka/specs/BuiltinParameterSpecs.py +1 -1
  565. nuitka/specs/BuiltinStrOperationSpecs.py +1 -1
  566. nuitka/specs/BuiltinTypeOperationSpecs.py +1 -1
  567. nuitka/specs/BuiltinUnicodeOperationSpecs.py +1 -1
  568. nuitka/specs/HardImportSpecs.py +10 -2
  569. nuitka/specs/ParameterSpecs.py +17 -2
  570. nuitka/specs/__init__.py +1 -1
  571. nuitka/tools/Basics.py +1 -1
  572. nuitka/tools/__init__.py +1 -1
  573. nuitka/tools/commercial/__init__.py +1 -1
  574. nuitka/tools/data_composer/DataComposer.py +125 -1
  575. nuitka/tools/data_composer/__init__.py +1 -1
  576. nuitka/tools/data_composer/__main__.py +1 -1
  577. nuitka/tools/environments/CreateEnvironment.py +1 -1
  578. nuitka/tools/environments/Virtualenv.py +1 -1
  579. nuitka/tools/environments/__init__.py +1 -1
  580. nuitka/tools/general/__init__.py +1 -1
  581. nuitka/tools/general/dll_report/__init__.py +1 -1
  582. nuitka/tools/general/dll_report/__main__.py +1 -1
  583. nuitka/tools/general/find_module/FindModuleCode.py +6 -3
  584. nuitka/tools/general/find_module/__init__.py +1 -1
  585. nuitka/tools/general/generate_header/GenerateHeader.py +73 -0
  586. nuitka/tools/general/generate_header/__init__.py +19 -0
  587. nuitka/tools/onefile_compressor/OnefileCompressor.py +1 -1
  588. nuitka/tools/onefile_compressor/__init__.py +1 -1
  589. nuitka/tools/onefile_compressor/__main__.py +1 -1
  590. nuitka/tools/podman/Podman.py +1 -1
  591. nuitka/tools/podman/__init__.py +1 -1
  592. nuitka/tools/podman/__main__.py +4 -2
  593. nuitka/tools/profiler/__init__.py +1 -1
  594. nuitka/tools/profiler/__main__.py +1 -1
  595. nuitka/tools/scanning/DisplayPackageDLLs.py +42 -20
  596. nuitka/tools/scanning/DisplayPackageData.py +1 -1
  597. nuitka/tools/scanning/__init__.py +1 -1
  598. nuitka/tools/specialize/CTypeDescriptions.py +1 -1
  599. nuitka/tools/specialize/Common.py +1 -1
  600. nuitka/tools/specialize/SpecializeC.py +1 -1
  601. nuitka/tools/specialize/SpecializePython.py +7 -3
  602. nuitka/tools/specialize/__init__.py +1 -1
  603. nuitka/tools/testing/Common.py +140 -19
  604. nuitka/tools/testing/Constructs.py +1 -1
  605. nuitka/tools/testing/OutputComparison.py +5 -4
  606. nuitka/tools/testing/Pythons.py +1 -1
  607. nuitka/tools/testing/RuntimeTracing.py +1 -1
  608. nuitka/tools/testing/SearchModes.py +1 -1
  609. nuitka/tools/testing/Valgrind.py +1 -1
  610. nuitka/tools/testing/__init__.py +1 -1
  611. nuitka/tools/testing/check_reference_counts/__init__.py +1 -1
  612. nuitka/tools/testing/check_reference_counts/__main__.py +6 -2
  613. nuitka/tools/testing/compare_with_cpython/__init__.py +1 -1
  614. nuitka/tools/testing/compare_with_cpython/__main__.py +51 -14
  615. nuitka/tools/testing/find_sxs_modules/__init__.py +1 -1
  616. nuitka/tools/testing/find_sxs_modules/__main__.py +1 -1
  617. nuitka/tools/testing/measure_construct_performance/__init__.py +1 -1
  618. nuitka/tools/testing/measure_construct_performance/__main__.py +1 -1
  619. nuitka/tools/testing/run_nuitka_tests/__init__.py +1 -1
  620. nuitka/tools/testing/run_nuitka_tests/__main__.py +1 -1
  621. nuitka/tools/watch/AutoStage.py +1 -1
  622. nuitka/tools/watch/Common.py +55 -0
  623. nuitka/tools/watch/Conda.py +125 -0
  624. nuitka/tools/watch/GitHub.py +1 -1
  625. nuitka/tools/watch/Pacman.py +73 -0
  626. nuitka/tools/watch/Pipenv.py +143 -0
  627. nuitka/tools/watch/__init__.py +1 -1
  628. nuitka/tools/watch/__main__.py +124 -266
  629. nuitka/tree/Building.py +5 -7
  630. nuitka/tree/ComplexCallHelperFunctions.py +1 -1
  631. nuitka/tree/Extractions.py +1 -1
  632. nuitka/tree/FutureSpecState.py +71 -0
  633. nuitka/tree/InternalModule.py +1 -1
  634. nuitka/tree/Operations.py +1 -1
  635. nuitka/tree/ReformulationAssertStatements.py +1 -1
  636. nuitka/tree/ReformulationAssignmentStatements.py +3 -3
  637. nuitka/tree/ReformulationBooleanExpressions.py +1 -1
  638. nuitka/tree/ReformulationCallExpressions.py +1 -1
  639. nuitka/tree/ReformulationClasses.py +1 -1
  640. nuitka/tree/ReformulationClasses3.py +1 -1
  641. nuitka/tree/ReformulationComparisonExpressions.py +1 -1
  642. nuitka/tree/ReformulationContractionExpressions.py +3 -1
  643. nuitka/tree/ReformulationDictionaryCreation.py +3 -3
  644. nuitka/tree/ReformulationExecStatements.py +1 -1
  645. nuitka/tree/ReformulationForLoopStatements.py +1 -1
  646. nuitka/tree/ReformulationFunctionStatements.py +2 -2
  647. nuitka/tree/ReformulationImportStatements.py +5 -52
  648. nuitka/tree/ReformulationLambdaExpressions.py +2 -1
  649. nuitka/tree/ReformulationMatchStatements.py +1 -1
  650. nuitka/tree/ReformulationMultidist.py +2 -2
  651. nuitka/tree/ReformulationNamespacePackages.py +28 -6
  652. nuitka/tree/ReformulationPrintStatements.py +1 -1
  653. nuitka/tree/ReformulationSequenceCreation.py +1 -1
  654. nuitka/tree/ReformulationSubscriptExpressions.py +1 -1
  655. nuitka/tree/ReformulationTryExceptStatements.py +1 -1
  656. nuitka/tree/ReformulationTryFinallyStatements.py +1 -1
  657. nuitka/tree/ReformulationWhileLoopStatements.py +1 -1
  658. nuitka/tree/ReformulationWithStatements.py +1 -1
  659. nuitka/tree/ReformulationYieldExpressions.py +1 -1
  660. nuitka/tree/SourceHandling.py +57 -18
  661. nuitka/tree/SyntaxErrors.py +1 -1
  662. nuitka/tree/TreeHelpers.py +24 -10
  663. nuitka/tree/VariableClosure.py +1 -1
  664. nuitka/tree/__init__.py +1 -1
  665. nuitka/utils/AppDirs.py +5 -2
  666. nuitka/utils/CStrings.py +1 -1
  667. nuitka/utils/CommandLineOptions.py +2 -2
  668. nuitka/utils/Distributions.py +197 -15
  669. nuitka/utils/Download.py +14 -6
  670. nuitka/utils/Execution.py +43 -14
  671. nuitka/utils/FileOperations.py +43 -10
  672. nuitka/utils/Hashing.py +1 -1
  673. nuitka/utils/Images.py +8 -2
  674. nuitka/utils/Importing.py +1 -1
  675. nuitka/utils/InlineCopies.py +1 -1
  676. nuitka/utils/InstalledPythons.py +1 -1
  677. nuitka/utils/InstanceCounters.py +1 -1
  678. nuitka/utils/Jinja2.py +1 -1
  679. nuitka/utils/Json.py +2 -2
  680. nuitka/utils/MacOSApp.py +4 -3
  681. nuitka/utils/MemoryUsage.py +1 -1
  682. nuitka/utils/ModuleNames.py +1 -1
  683. nuitka/utils/PackageResources.py +1 -1
  684. nuitka/utils/ReExecute.py +1 -1
  685. nuitka/utils/Rest.py +1 -1
  686. nuitka/utils/SharedLibraries.py +52 -7
  687. nuitka/utils/Shebang.py +1 -1
  688. nuitka/utils/Signing.py +2 -4
  689. nuitka/utils/SlotMetaClasses.py +1 -1
  690. nuitka/utils/StaticLibraries.py +29 -1
  691. nuitka/utils/ThreadedExecutor.py +1 -1
  692. nuitka/utils/Timing.py +1 -1
  693. nuitka/utils/Utils.py +1 -1
  694. nuitka/utils/WindowsFileUsage.py +1 -1
  695. nuitka/utils/WindowsResources.py +3 -1
  696. nuitka/utils/Yaml.py +1 -1
  697. nuitka/utils/__init__.py +1 -1
  698. Nuitka_winsvc-2.5.6.dist-info/RECORD +0 -978
  699. {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/LICENSE.txt +0 -0
  700. {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/entry_points.txt +0 -0
  701. {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/top_level.txt +0 -0
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to take advantage of pylint or PyDev annotations.
@@ -26,6 +26,7 @@ from nuitka.plugins.PluginBase import NuitkaPluginBase
26
26
  class NuitkaPluginPylintEclipseAnnotations(NuitkaPluginBase):
27
27
  plugin_name = "pylint-warnings"
28
28
  plugin_desc = "Support PyLint / PyDev linting source markers."
29
+ plugin_category = "feature"
29
30
 
30
31
  def __init__(self):
31
32
  self.line_annotations = {}
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to find data files.
@@ -23,8 +23,8 @@ from nuitka.utils.FileOperations import (
23
23
 
24
24
  class NuitkaPluginDataFileCollector(NuitkaYamlPluginBase):
25
25
  plugin_name = "data-files"
26
-
27
26
  plugin_desc = "Include data files specified by package configuration files."
27
+ plugin_category = "core"
28
28
 
29
29
  @classmethod
30
30
  def isRelevant(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Support for delvewheel, details in below class definitions.
@@ -28,6 +28,7 @@ class NuitkaPluginDelvewheel(NuitkaPluginBase):
28
28
  plugin_desc = (
29
29
  "Required for 'support' of delvewheel using packages in standalone mode."
30
30
  )
31
+ plugin_category = "core"
31
32
 
32
33
  def __init__(self):
33
34
  # Special DLL directories if detected for a module.
@@ -1,4 +1,4 @@
1
- // Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ // Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
  // C code for use when the dill-plugin is active
4
4
 
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  # Plugin dill-compat has this as post load code for the "dill" package.
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to make dill module work for compiled stuff.
@@ -13,8 +13,8 @@ class NuitkaPluginDillWorkarounds(NuitkaPluginBase):
13
13
  """This is to make dill module work with compiled methods."""
14
14
 
15
15
  plugin_name = "dill-compat"
16
-
17
16
  plugin_desc = "Required for 'dill' package compatibility."
17
+ plugin_category = "package-support"
18
18
 
19
19
  @staticmethod
20
20
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to tell Nuitka about DLLs needed for standalone imports.
@@ -30,8 +30,8 @@ from nuitka.utils.Utils import isFreeBSD, isLinux, isMacOS, isWin32Windows
30
30
 
31
31
  class NuitkaPluginDllFiles(NuitkaYamlPluginBase):
32
32
  plugin_name = "dll-files"
33
-
34
33
  plugin_desc = "Include DLLs as per package configuration files."
34
+ plugin_category = "core"
35
35
 
36
36
  @staticmethod
37
37
  def isAlwaysEnabled():
@@ -375,16 +375,6 @@ conditions are missing, or this version of the module needs treatment added."""
375
375
  package_name=None,
376
376
  reason="needed by 'iptc'",
377
377
  )
378
- elif full_name == "coincurve._libsecp256k1" and isWin32Windows():
379
- yield self.makeDllEntryPoint(
380
- source_path=os.path.join(
381
- module.getCompileTimeDirectory(), "libsecp256k1.dll"
382
- ),
383
- dest_path=os.path.join(full_name.getPackageName(), "libsecp256k1.dll"),
384
- module_name=full_name,
385
- package_name=full_name.getPackageName(),
386
- reason="needed by 'coincurve._libsecp256k1'",
387
- )
388
378
  # TODO: This should be its own plugin.
389
379
  elif (
390
380
  full_name
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to make enum module work when compiled.
@@ -16,8 +16,8 @@ class NuitkaPluginEnumWorkarounds(NuitkaPluginBase):
16
16
  """This is to make enum module work when compiled with Nuitka."""
17
17
 
18
18
  plugin_name = "enum-compat"
19
-
20
19
  plugin_desc = "Required for Python2 and 'enum' package."
20
+ plugin_category = "package-support"
21
21
 
22
22
  @classmethod
23
23
  def isRelevant(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Details see below in class definition.
@@ -12,6 +12,7 @@ class NuitkaPluginEventlet(NuitkaPluginBase):
12
12
 
13
13
  plugin_name = "eventlet"
14
14
  plugin_desc = "Support for including 'eventlet' dependencies and its need for 'dns' package monkey patching."
15
+ plugin_category = "package-support"
15
16
 
16
17
  # TODO: Change this to Yaml configuration.
17
18
 
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Details see below in class definition.
@@ -13,6 +13,7 @@ class NuitkaPluginGevent(NuitkaPluginBase):
13
13
 
14
14
  plugin_name = "gevent"
15
15
  plugin_desc = "Required by the 'gevent' package."
16
+ plugin_category = "package-support"
16
17
 
17
18
  # TODO: Change this to Yaml configuration.
18
19
 
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Support for gi typelib files and DLLs
@@ -12,6 +12,7 @@ from nuitka.plugins.PluginBase import NuitkaPluginBase, standalone_only
12
12
  class NuitkaPluginGi(NuitkaPluginBase):
13
13
  plugin_name = "gi"
14
14
  plugin_desc = "Support for GI package typelib dependency."
15
+ plugin_category = "package-support"
15
16
 
16
17
  @staticmethod
17
18
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Support for glfw, details in below class definitions.
@@ -31,6 +31,7 @@ class NuitkaPluginGlfw(NuitkaPluginBase):
31
31
  plugin_desc = (
32
32
  "Required for 'OpenGL' (PyOpenGL) and 'glfw' package in standalone mode."
33
33
  )
34
+ plugin_category = "package-support"
34
35
 
35
36
  @staticmethod
36
37
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to tell Nuitka about implicit imports.
@@ -22,10 +22,10 @@ from nuitka.utils.Utils import isMacOS, isWin32Windows
22
22
 
23
23
  class NuitkaPluginImplicitImports(NuitkaYamlPluginBase):
24
24
  plugin_name = "implicit-imports"
25
-
26
25
  plugin_desc = (
27
26
  "Provide implicit imports of package as per package configuration files."
28
27
  )
28
+ plugin_category = "core"
29
29
 
30
30
  def __init__(self):
31
31
  NuitkaYamlPluginBase.__init__(self)
@@ -87,7 +87,8 @@ class NuitkaPluginImplicitImports(NuitkaYamlPluginBase):
87
87
  def _resolveImplicitImportsConfig(self, full_name, dependency):
88
88
  if "(" in dependency:
89
89
  value = self.evaluateExpression(
90
- full_name=full_name,
90
+ config_module_name=full_name,
91
+ module_name=full_name,
91
92
  expression=dependency,
92
93
  config_name="depends value",
93
94
  extra_context=None,
@@ -121,8 +122,8 @@ class NuitkaPluginImplicitImports(NuitkaYamlPluginBase):
121
122
  dependency = full_name.getChildNamed(dependency[1:]).asString()
122
123
  elif full_name.getPackageName() is None:
123
124
  # Not a package, potentially a naming conflict, when
124
- # compiling with "--module" something that matches a PyPI
125
- # name.
125
+ # compiling with "--mode=module" something that matches a
126
+ # PyPI name.
126
127
  continue
127
128
  else:
128
129
  dependency = full_name.getSiblingNamed(dependency[1:]).asString()
@@ -418,7 +419,7 @@ __file__ = (__nuitka_binary_dir + '%ssite.py') if '__nuitka_binary_dir' in dict(
418
419
  # Special handling for huggingface that uses the source code variant
419
420
  # of lazy module. spell-checker: ignore huggingface
420
421
  if (
421
- "__getattr__, __dir__, __all__ = _attach(__name__, submodules=[], submod_attrs=_SUBMOD_ATTRS)"
422
+ "_attach(__name__, submodules=[], submod_attrs=_SUBMOD_ATTRS)"
422
423
  in source_code
423
424
  ):
424
425
  huggingface_hub_lazy_loader_info = self.queryRuntimeInformationSingle(
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Details see below in class definition.
@@ -13,6 +13,7 @@ class NuitkaPluginKivy(NuitkaPluginBase):
13
13
 
14
14
  plugin_name = "kivy"
15
15
  plugin_desc = "Required by 'kivy' package."
16
+ plugin_category = "package-support"
16
17
 
17
18
  @staticmethod
18
19
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Matplotlib standard plugin module. """
@@ -35,6 +35,7 @@ class NuitkaPluginMatplotlib(NuitkaPluginBase):
35
35
 
36
36
  plugin_name = "matplotlib" # Nuitka knows us by this name
37
37
  plugin_desc = "Required for 'matplotlib' module."
38
+ plugin_category = "package-support"
38
39
 
39
40
  @staticmethod
40
41
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to make multiprocessing and joblib work well.
@@ -38,6 +38,7 @@ class NuitkaPluginMultiprocessingWorkarounds(NuitkaPluginBase):
38
38
 
39
39
  plugin_name = "multiprocessing"
40
40
  plugin_desc = "Required by Python's 'multiprocessing' module."
41
+ plugin_category = "package-support"
41
42
 
42
43
  @classmethod
43
44
  def isRelevant(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Details see below in class definition.
@@ -12,6 +12,7 @@ class NuitkaPluginNumpy(NuitkaPluginBase):
12
12
 
13
13
  plugin_name = "numpy" # Nuitka knows us by this name
14
14
  plugin_desc = "Deprecated, was once required by the numpy package"
15
+ plugin_category = "package-support,obsolete"
15
16
 
16
17
  @classmethod
17
18
  def isDeprecated(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to tell user about needed or useful options for packages.
@@ -19,10 +19,10 @@ from nuitka.utils.Utils import isMacOS
19
19
 
20
20
  class NuitkaPluginOptionsNanny(NuitkaYamlPluginBase):
21
21
  plugin_name = "options-nanny"
22
-
23
22
  plugin_desc = (
24
23
  "Inform the user about potential problems as per package configuration files."
25
24
  )
25
+ plugin_category = "core"
26
26
 
27
27
  @staticmethod
28
28
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to make pbr module work when compiled.
@@ -15,8 +15,8 @@ class NuitkaPluginPbrWorkarounds(NuitkaPluginBase):
15
15
  """This is to make pbr module work when compiled with Nuitka."""
16
16
 
17
17
  plugin_name = "pbr-compat"
18
-
19
18
  plugin_desc = "Required by the 'pbr' package in standalone mode."
19
+ plugin_category = "package-support"
20
20
 
21
21
  @classmethod
22
22
  def isRelevant(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to handle pkg_resource special needs.
@@ -18,6 +18,7 @@ from nuitka.utils.Utils import withNoDeprecationWarning
18
18
  class NuitkaPluginResources(NuitkaPluginBase):
19
19
  plugin_name = "pkg-resources"
20
20
  plugin_desc = "Workarounds for 'pkg_resources'."
21
+ plugin_category = "package-support"
21
22
 
22
23
  def __init__(self):
23
24
  with withNoDeprecationWarning():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kevin Rodriguez <mailto:turcioskevinr@gmail.com> find license text at end of file
1
+ # Copyright 2025, Kevin Rodriguez <mailto:turcioskevinr@gmail.com> find license text at end of file
2
2
 
3
3
 
4
4
  """ Plugin for Playwright.
@@ -11,12 +11,16 @@ import os
11
11
  from nuitka.Options import isStandaloneMode
12
12
  from nuitka.plugins.PluginBase import NuitkaPluginBase
13
13
 
14
+ # We use chrom to identify either chrome or chromium
15
+ # spell-checker: ignore chrom
16
+
14
17
 
15
18
  class NuitkaPluginPlaywright(NuitkaPluginBase):
16
19
  """This class represents the main logic of the plugin."""
17
20
 
18
21
  plugin_name = "playwright"
19
22
  plugin_desc = "Required by 'playwright' package."
23
+ plugin_category = "package-support"
20
24
 
21
25
  def __init__(self, include_browsers):
22
26
  self.include_browsers = list(include_browsers)
@@ -38,8 +42,9 @@ class NuitkaPluginPlaywright(NuitkaPluginBase):
38
42
  dest="include_browsers",
39
43
  default=[],
40
44
  help="""\
41
- Playwright browser to include. Can be specified multiple times. use "all" to include all installed browsers.
42
- """,
45
+ Playwright browser to include by name. Can be specified multiple
46
+ times. Use "all" to include all installed browsers or use "none"
47
+ to exclude all browsers.""",
43
48
  )
44
49
 
45
50
  def _getPlaywrightPath(self):
@@ -109,24 +114,14 @@ class NuitkaPluginPlaywright(NuitkaPluginBase):
109
114
  self.installed_browsers[browser.name] = browser
110
115
 
111
116
  def considerDataFiles(self, module):
112
-
113
117
  if module.getFullName() != "playwright":
114
118
  return
115
119
 
116
- if not self.include_browsers:
117
-
118
- self.sysexit(
119
- "No browsers included. Use the option '--playwright-include-browser=browser_name' to include one. Use 'all' to include all installed ones." # pylint: disable=C0301
120
- )
121
-
122
120
  self.getInstalledPlaywrightBrowsers()
123
121
 
124
- if not self.installed_browsers:
125
- self.sysexit(
126
- "Error, no browsers found in the registry, if you're using playwright, make sure to install a browser."
127
- )
128
-
129
122
  self.info("Including browsers: %s" % ", ".join(self.include_browsers))
123
+ if "none" in self.include_browsers:
124
+ return
130
125
  if "all" in self.include_browsers:
131
126
  self.include_browsers = self.installed_browsers
132
127
  elif "ffmpeg" not in self.include_browsers and any(
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Plugin to pre-process PMW for inclusion.
@@ -59,6 +59,7 @@ files = [
59
59
  class NuitkaPluginPmw(NuitkaPluginBase):
60
60
  plugin_name = "pmw-freezer"
61
61
  plugin_desc = "Required by the 'Pmw' package."
62
+ plugin_category = "package-support"
62
63
 
63
64
  def __init__(self, need_blt, need_color):
64
65
  self.need_blt = need_blt
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Standard plug-in to make PyQt and PySide work well in standalone mode.
@@ -25,19 +25,14 @@ from nuitka.plugins.Plugins import (
25
25
  )
26
26
  from nuitka.PythonFlavors import isAnacondaPython
27
27
  from nuitka.PythonVersions import python_version
28
- from nuitka.utils.Distributions import (
29
- getDistributionFromModuleName,
30
- getDistributionInstallerName,
31
- getDistributionName,
32
- )
28
+ from nuitka.utils.Distributions import getDistributionFromModuleName
33
29
  from nuitka.utils.FileOperations import getFileList, listDir
34
30
  from nuitka.utils.ModuleNames import ModuleName
35
31
  from nuitka.utils.Utils import getArchitecture, isMacOS, isWin32Windows
36
32
 
37
33
 
38
34
  class NuitkaPluginQtBindingsPluginBase(NuitkaPluginBase):
39
- # We are a bit detail rich and caching a bunch,
40
- # pylint: disable=too-many-instance-attributes
35
+ plugin_category = "package-support,qt-binding"
41
36
 
42
37
  # Automatically suppress detectors for any other toolkit
43
38
  plugin_gui_toolkit = True
@@ -48,17 +43,20 @@ class NuitkaPluginQtBindingsPluginBase(NuitkaPluginBase):
48
43
  warned_about = set()
49
44
 
50
45
  def __init__(self, include_qt_plugins, noinclude_qt_plugins, no_qt_translations):
51
- self.distribution = getDistributionFromModuleName(self.binding_name)
46
+ self.binding_package_name = ModuleName(self.binding_name)
47
+
48
+ # TODO: Find a more dedicated slot, where the module path will be fully
49
+ # setup to do this. Plugins should be called before compilation for a
50
+ # chance to error out like this.
51
+ self.distribution = getDistributionFromModuleName(
52
+ self.binding_package_name, prefer_shorter_distribution_name=True
53
+ )
52
54
 
53
55
  if self.distribution is None:
54
56
  self.sysexit(
55
57
  "Error, failed to locate the %s installation." % self.binding_name
56
58
  )
57
59
 
58
- self.distribution_name = getDistributionName(self.distribution)
59
-
60
- self.installer_name = getDistributionInstallerName(self.distribution_name)
61
-
62
60
  # Qt plugin directories found.
63
61
  self.qt_plugins_dirs = None
64
62
 
@@ -91,8 +89,6 @@ class NuitkaPluginQtBindingsPluginBase(NuitkaPluginBase):
91
89
  self.web_engine_done_binaries = False
92
90
  self.web_engine_done_data = False
93
91
 
94
- self.binding_package_name = ModuleName(self.binding_name)
95
-
96
92
  # Allow to specify none.
97
93
  if self.qt_plugins == set(["none"]):
98
94
  self.qt_plugins = set()
@@ -778,6 +774,11 @@ Prefix = .
778
774
  if self.binding_name in ("PySide6", "PyQt6"):
779
775
  used_frameworks += ["QtOpenGL", "QtDBus"]
780
776
 
777
+ # Newer PySide6 needs even more.
778
+ if self.binding_name == "PySide6" and self._getBindingVersion() >= (6, 8, 0):
779
+ used_frameworks.append("QtQmlMeta")
780
+ used_frameworks.append("QtQmlWorkerScript")
781
+
781
782
  for used_framework in used_frameworks:
782
783
  yield self.makeIncludedAppBundleFramework(
783
784
  source_path=os.path.join(self._getQtInformation().data_path, "lib"),
@@ -1437,11 +1438,20 @@ Support for PyQt6 is not perfect, e.g. Qt threading does not work, so prefer PyS
1437
1438
  )
1438
1439
 
1439
1440
 
1441
+ class NuitkaPluginDetectorPyQt6Plugins(NuitkaPluginBase):
1442
+ detector_for = NuitkaPluginPyQt6Plugins
1443
+
1444
+ def onModuleDiscovered(self, module):
1445
+ if module.getFullName() == NuitkaPluginPyQt6Plugins.binding_name + ".QtCore":
1446
+ self.warnUnusedPlugin("Standalone mode support and Qt plugins.")
1447
+
1448
+
1440
1449
  class NuitkaPluginNoQt(NuitkaPluginBase):
1441
1450
  """This is a plugins for suppression of all Qt binding plugins."""
1442
1451
 
1443
1452
  plugin_name = "no-qt"
1444
1453
  plugin_desc = "Disable inclusion of all Qt bindings."
1454
+ plugin_category = "package-support"
1445
1455
 
1446
1456
  warned_about = set()
1447
1457
 
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Details see below in class definition.
@@ -17,6 +17,7 @@ class NuitkaPluginPywebview(NuitkaPluginBase):
17
17
 
18
18
  plugin_name = "pywebview"
19
19
  plugin_desc = "Required by the 'webview' package (pywebview on PyPI)."
20
+ plugin_category = "package-support"
20
21
 
21
22
  @staticmethod
22
23
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Plugin for spacy.
@@ -19,6 +19,7 @@ class NuitkaPluginSpacy(NuitkaPluginBase):
19
19
 
20
20
  plugin_name = "spacy"
21
21
  plugin_desc = "Required by 'spacy' package."
22
+ plugin_category = "package-support"
22
23
 
23
24
  def __init__(self, include_language_models):
24
25
  self.include_language_models = tuple(
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Deprecated tensorflow plugin.
@@ -12,6 +12,7 @@ class NuitkaPluginTensorflow(NuitkaPluginBase):
12
12
 
13
13
  plugin_name = "tensorflow"
14
14
  plugin_desc = "Deprecated, was once required by the tensorflow package"
15
+ plugin_category = "package-support,obsolete"
15
16
 
16
17
  @classmethod
17
18
  def isDeprecated(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Details see below in class definition.
@@ -13,7 +13,7 @@ from nuitka.PythonFlavors import isHomebrewPython
13
13
  from nuitka.PythonVersions import getSystemPrefixPath, getTkInterVersion
14
14
  from nuitka.utils.Utils import isMacOS, isWin32Windows
15
15
 
16
- # spell-checker: ignore tkinterdnd,tkdnd,tcltk
16
+ # spell-checker: ignore tkinterdnd,tkdnd,tcltk,tcltest
17
17
 
18
18
 
19
19
  def _isTkInterModule(module):
@@ -56,6 +56,8 @@ class NuitkaPluginTkinter(NuitkaPluginBase):
56
56
 
57
57
  plugin_name = "tk-inter" # Nuitka knows us by this name
58
58
  plugin_desc = "Required by Python's Tk modules."
59
+ plugin_category = "package-support"
60
+
59
61
  # Automatically suppress detectors for any other toolkit
60
62
  plugin_gui_toolkit = True
61
63
 
@@ -271,6 +273,17 @@ that works, report a bug."""
271
273
  ignore_dirs=(
272
274
  ("opt0.4", "http1.0") if isMacOS() and shallCreateAppBundle() else ()
273
275
  ),
276
+ # TODO: Not very version robust, may we ought to
277
+ # become able to ignore files by pattern.
278
+ ignore_filenames=(
279
+ "tcltest-2.3.6.tm",
280
+ "tcltest-2.3.8.tm",
281
+ "tcltest-2.4.0.tm",
282
+ "tcltest-2.5.0.tm",
283
+ "tcltest-2.5.3.tm",
284
+ "tcltest-2.5.5.tm",
285
+ "tcltest-2.5.8.tm",
286
+ ),
274
287
  dest_path="tcl",
275
288
  reason="Tcl needed for tkinter usage",
276
289
  tags="tcl",
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
1
+ # Copyright 2025, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
2
2
 
3
3
 
4
4
  """ Deprecated torch plugin.
@@ -12,6 +12,7 @@ class NuitkaPluginTorch(NuitkaPluginBase):
12
12
 
13
13
  plugin_name = "torch"
14
14
  plugin_desc = "Deprecated, was once required by the torch package"
15
+ plugin_category = "package-support,obsolete"
15
16
 
16
17
  @classmethod
17
18
  def isDeprecated(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Plugin to provide transformers implicit dependencies.
@@ -10,8 +10,8 @@ from nuitka.plugins.PluginBase import NuitkaPluginBase
10
10
 
11
11
  class NuitkaPluginTransformers(NuitkaPluginBase):
12
12
  plugin_name = "transformers"
13
-
14
13
  plugin_desc = "Provide implicit imports for transformers package."
14
+ plugin_category = "package-support"
15
15
 
16
16
  @staticmethod
17
17
  def isAlwaysEnabled():
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """ Deprecated trio plugin.
@@ -10,6 +10,7 @@ from nuitka.plugins.PluginBase import NuitkaPluginBase
10
10
  class NuitkaPluginTrio(NuitkaPluginBase):
11
11
  plugin_name = "trio"
12
12
  plugin_desc = "Deprecated, was once required by the 'trio' package"
13
+ plugin_category = "package-support,obsolete"
13
14
 
14
15
  @classmethod
15
16
  def isDeprecated(cls):
@@ -1,4 +1,4 @@
1
- # Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
1
+ # Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
2
2
 
3
3
 
4
4
  """UPX plugin. """
@@ -24,6 +24,7 @@ class NuitkaPluginUpx(NuitkaPluginBase):
24
24
 
25
25
  plugin_name = "upx" # Nuitka knows us by this name
26
26
  plugin_desc = "Compress created binaries with UPX automatically."
27
+ plugin_category = "integration"
27
28
 
28
29
  def __init__(self, upx_path, upx_nocache):
29
30
  self.upx_binary = getExecutablePath("upx", upx_path)