Nuitka-winsvc 1.9.3__cp312-cp312-win_amd64.whl → 1.9.5__cp312-cp312-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.
Files changed (31) hide show
  1. {Nuitka_winsvc-1.9.3.dist-info → Nuitka_winsvc-1.9.5.dist-info}/METADATA +1 -1
  2. {Nuitka_winsvc-1.9.3.dist-info → Nuitka_winsvc-1.9.5.dist-info}/RECORD +31 -31
  3. nuitka/MainControl.py +4 -4
  4. nuitka/PythonFlavors.py +13 -0
  5. nuitka/PythonVersions.py +0 -1
  6. nuitka/Version.py +1 -1
  7. nuitka/build/SconsCompilerSettings.py +3 -0
  8. nuitka/build/SconsUtils.py +21 -11
  9. nuitka/build/static_src/HelpersDictionariesGenerated.c +1 -1
  10. nuitka/build/static_src/MainProgram.c +0 -1
  11. nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +11 -0
  12. nuitka/code_generation/templates/CodeTemplatesModules.py +15 -1
  13. nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +1 -1
  14. nuitka/distutils/DistutilCommands.py +3 -1
  15. nuitka/nodes/PackageMetadataNodes.py +4 -3
  16. nuitka/plugins/PluginBase.py +4 -9
  17. nuitka/plugins/standard/DillPlugin.py +1 -22
  18. nuitka/plugins/standard/ImplicitImports.py +1 -0
  19. nuitka/plugins/standard/OptionsNannyPlugin.py +1 -1
  20. nuitka/plugins/standard/standard.nuitka-package.config.yml +34 -8
  21. nuitka/reports/Reports.py +12 -0
  22. nuitka/utils/Distributions.py +7 -14
  23. nuitka/utils/FileOperations.py +15 -0
  24. nuitka/utils/Utils.py +8 -0
  25. nuitka/utils/WindowsResources.py +6 -1
  26. {Nuitka_winsvc-1.9.3.data → Nuitka_winsvc-1.9.5.data}/scripts/nuitka-run.bat +0 -0
  27. {Nuitka_winsvc-1.9.3.data → Nuitka_winsvc-1.9.5.data}/scripts/nuitka.bat +0 -0
  28. {Nuitka_winsvc-1.9.3.dist-info → Nuitka_winsvc-1.9.5.dist-info}/LICENSE.txt +0 -0
  29. {Nuitka_winsvc-1.9.3.dist-info → Nuitka_winsvc-1.9.5.dist-info}/WHEEL +0 -0
  30. {Nuitka_winsvc-1.9.3.dist-info → Nuitka_winsvc-1.9.5.dist-info}/entry_points.txt +0 -0
  31. {Nuitka_winsvc-1.9.3.dist-info → Nuitka_winsvc-1.9.5.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Nuitka-winsvc
3
- Version: 1.9.3
3
+ Version: 1.9.5
4
4
  Summary: Nuitka but support compile as Windows service
5
5
  Home-page: https://github.com/tabris17/Nuitka-winsvc
6
6
  Author: tabris17
@@ -1,5 +1,5 @@
1
- Nuitka_winsvc-1.9.3.data/scripts/nuitka-run.bat,sha256=ueVuKYMLV9dfqkkspy_F-2cpoZginLFiPDJAaj4fKYk,901
2
- Nuitka_winsvc-1.9.3.data/scripts/nuitka.bat,sha256=0wNE1iEysZFW4i7Tlo5TL5e_fv4jDoyAzMo_LTnjv_Y,1038
1
+ Nuitka_winsvc-1.9.5.data/scripts/nuitka-run.bat,sha256=ueVuKYMLV9dfqkkspy_F-2cpoZginLFiPDJAaj4fKYk,901
2
+ Nuitka_winsvc-1.9.5.data/scripts/nuitka.bat,sha256=0wNE1iEysZFW4i7Tlo5TL5e_fv4jDoyAzMo_LTnjv_Y,1038
3
3
  nuitka/Builtins.py,sha256=API_eSf5QF-gVXcQYKTzv5Un5GSPcOVEFCy4nDT3JNw,7528
4
4
  nuitka/BytecodeCaching.py,sha256=HwdXL8IYrgvnIIg_QyWXTGsUBI9U-fB_AxxAMc5o1FM,5810
5
5
  nuitka/Bytecodes.py,sha256=yfpxDfJrYTGzGQpx9-UJ4MLUp8FTViI3dF0vcwfBC7A,3767
@@ -7,22 +7,22 @@ nuitka/CacheCleanup.py,sha256=O8I7rCN7mcidgIJnTMHxf-sldx4v-XSFHF1pxN0x41c,1884
7
7
  nuitka/Constants.py,sha256=PXaNIDJnZAe7en6-BiaDGZ0b98BrhSeFg-BjqJt4Grw,11148
8
8
  nuitka/Errors.py,sha256=9KcyRVPQwozQ2jL8of5rb-I8bojBqoogZWnYZC-ZKzQ,2446
9
9
  nuitka/HardImportRegistry.py,sha256=0cHxOOfsz4hv48d_oaqR-aLAwAOhTQ-MDlAQeLZWo_A,10182
10
- nuitka/MainControl.py,sha256=ajXLvusCgQ5aVTdo3qkgd3I2hZpC6p4qGtV3rZhIbMg,37536
10
+ nuitka/MainControl.py,sha256=qDQGJx6LqpYG42HEStpHIau437JWnjIOml4y_djmK-8,37638
11
11
  nuitka/ModuleRegistry.py,sha256=Hq6dcnyR228oENzo1g_f3OL9oXvLMY-NZ7x8UjxuSCU,7397
12
12
  nuitka/OptionParsing.py,sha256=Ro_CfOHA-6ok_rTnH975DOK2YKgDLLdg6vVoruQoLR0,60538
13
13
  nuitka/Options.py,sha256=gBPPrLoXufuBZOzFhQxNo2EtpK1nk-DK6RtEA0Zx-K0,69744
14
14
  nuitka/OutputDirectories.py,sha256=kK-2IobI4u2KfyAHqY_W2IDo2-Vgd80NwSrhvlBH_6A,5022
15
15
  nuitka/PostProcessing.py,sha256=JutKXQevVTRAGiJA1yE-RnZ2uwzQzaXgxsVEcEHNwLc,14546
16
16
  nuitka/Progress.py,sha256=9nGTAZ46rQJ4KIcgNGQKZ9sEGJzK4trLbtvaeLJLIQg,6764
17
- nuitka/PythonFlavors.py,sha256=h5cmsou_RFt00KzF2pAN9WhwZqk4HHjrghfv0c8ga3Y,8007
17
+ nuitka/PythonFlavors.py,sha256=K-bi2FEKjoGo6DrZ6Rs-BSSt1EsvdIuNhNFdYfKfJAY,8307
18
18
  nuitka/PythonOperators.py,sha256=ZURjxq01Kei9hL5WPCjrHCFhrL15rZF9rJt1HHjEITA,4061
19
- nuitka/PythonVersions.py,sha256=WePYHoPR2mNHEShGutwDnrNxo_Bx6ndtdcIaDcEdCd8,14285
19
+ nuitka/PythonVersions.py,sha256=LEFWUK4I9smD4twa6W5lcMminLE8F8oJZCRYu7Ie-0w,14270
20
20
  nuitka/Serialization.py,sha256=cPrVs7kSlHXiw-c3ar2B09k45fE1-Ex_AHT0X9vkBno,9173
21
21
  nuitka/SourceCodeReferences.py,sha256=hO9Cl-QYVTG9TspnW9_xkUbFOoVKFQt7JKD9AubXfmM,4670
22
22
  nuitka/Tracing.py,sha256=QjrkJoE5cqEnJ50ZHdscrVLOZPJm8_3pixYNlAlB7cg,12641
23
23
  nuitka/TreeXML.py,sha256=3gnyHOhUcxpGEBEel_drPW89Uysf9hkFzkb2y19-KlA,3480
24
24
  nuitka/Variables.py,sha256=dcEA7KAk2NASioIQjsF2VERYvjqNopKvw0PrYf6y2hw,15212
25
- nuitka/Version.py,sha256=ENT6xDWwR-61D_kLIrnN0kkz42etxTXS7ca5dqxBNBw,2388
25
+ nuitka/Version.py,sha256=RKt8ciwhQ152w0Cg634MtbjqVBkZIVF_U4vBAjScesQ,2388
26
26
  nuitka/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
27
27
  nuitka/__main__.py,sha256=6zt6foxHGZkh0EkdVkPjtqOAQedxiMsvKsgj1GUqT94,6129
28
28
  nuitka/__past__.py,sha256=fFm9_sAB580usi_aHrAHeGezskD7Ayq7plBVzqMrOQ8,5390
@@ -31,12 +31,12 @@ nuitka/build/CCompilerVersion.scons,sha256=Su58Ok1ZFD3cTheiknLvnTMkjI7G3h1p7llcp
31
31
  nuitka/build/DataComposerInterface.py,sha256=UE_1aGp5xgvmSPCIaQB95vyRgioqHFVv_zTzodvvoww,3452
32
32
  nuitka/build/Onefile.scons,sha256=InXgUoAMjcT7V8Q42d1QIDh2ZNtU_hHxf5OcQCTwAYA,17593
33
33
  nuitka/build/SconsCaching.py,sha256=vPNG_ke7JRQ4BPdrrnbsbI2hGP7u9FcMUmcnH2IqV-M,15772
34
- nuitka/build/SconsCompilerSettings.py,sha256=u7_vPrAoFDKqVpp5m8VKfbVJEQ2VB7sQVaRb2jlGTLI,34942
34
+ nuitka/build/SconsCompilerSettings.py,sha256=2OzRareP-vkl1YDrcscmvTNpOcQAvnwIStW-aI8iKVg,35047
35
35
  nuitka/build/SconsHacks.py,sha256=8rD2pua3uW9LMOurul1Xl7GUEqoR59okCg0e5RYY5eQ,5559
36
36
  nuitka/build/SconsInterface.py,sha256=DwOyOjorA53HVqqWUv9ruvaFMZh04aeJHWT23yZN3_E,16400
37
37
  nuitka/build/SconsProgress.py,sha256=iOYJlVt31-Ruyo7TqgNuRkDW3XxD25PRRuBNyCVrvEA,2671
38
38
  nuitka/build/SconsSpawn.py,sha256=OZGIhbMbjhdAYo9NgTF_rqGztJHbdmOxtqd22e1tE1Y,12649
39
- nuitka/build/SconsUtils.py,sha256=XmbDO_8VcV4Zf9fMub0-pXz3U0PalWDNU-VwRL5CeEg,24343
39
+ nuitka/build/SconsUtils.py,sha256=oAM8xrjC0iHxy42DYzofs08yB0vPTx1oJBIQkU7Ix8w,24746
40
40
  nuitka/build/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
41
41
  nuitka/build/include/nuitka/allocator.h,sha256=ZBVucEwyBQfXYo6aVh2whGQnFTVImoCQshMCKrgrtUQ,7972
42
42
  nuitka/build/include/nuitka/builtins.h,sha256=fZ3C5RJe_W11yB-mDKUtcTgeey_LaCSGW2PS-iT7UTA,3470
@@ -420,7 +420,7 @@ nuitka/build/static_src/HelpersComparisonNe.c,sha256=I4e6CvaVdpRzYZ04bf3mD5lCaOf
420
420
  nuitka/build/static_src/HelpersConstantsBlob.c,sha256=LKcoc5L4LgePNtxG-G9SmbS3mlSkkttWWq5VYQhei2U,36747
421
421
  nuitka/build/static_src/HelpersDeepcopy.c,sha256=Pe-gd797Fg4MTF0FmvemYV7a30KMjyVQ4U9RHs3d3Aw,20332
422
422
  nuitka/build/static_src/HelpersDictionaries.c,sha256=D0e8cGTWpwDvlASz3WsPlwnTvz5JofJoal2QMWEMzCM,39555
423
- nuitka/build/static_src/HelpersDictionariesGenerated.c,sha256=AC68rbbsKAFSn680zmRynBqnq2w5iiWWjiU-KoYgyqs,26583
423
+ nuitka/build/static_src/HelpersDictionariesGenerated.c,sha256=aFzQZLuxIRftWu01X0U1UtpVs3LtLznXolhmIwqNzXM,26592
424
424
  nuitka/build/static_src/HelpersExceptions.c,sha256=8bKbTG0UbOCT1YYfVhYA7g-dxCgkaeS9Ov7UxPKy0uw,7116
425
425
  nuitka/build/static_src/HelpersFiles.c,sha256=NCQPNlyNOPx9WnfqAcNvCRhPYPBr_HNPTiixYG9j1bw,7641
426
426
  nuitka/build/static_src/HelpersFilesystemPaths.c,sha256=1hMtN2T1ulOyv8qqVmtrfy1N8Kfhb8iGG60imUBeKsg,28328
@@ -477,11 +477,11 @@ nuitka/build/static_src/HelpersStrings.c,sha256=2d_dTc1yBsothBwDW_kAzBi7OooFiKyX
477
477
  nuitka/build/static_src/HelpersTuples.c,sha256=g7Rm5PkuzTHKN8i_eUoCZDb3u0S9A8sjLN6eRYxubmg,4037
478
478
  nuitka/build/static_src/HelpersTypes.c,sha256=izc0qjeJlYn9lph-P1TsD_SPeBGhaIbrqWG9c00Chjg,5599
479
479
  nuitka/build/static_src/InspectPatcher.c,sha256=qLlhdd7KwSz_VVT-QAqBrl8c5VE-8NkKwFk_DB1vN6w,12107
480
- nuitka/build/static_src/MainProgram.c,sha256=hSNJtHCpv8sJMy0tlYQhbuoDNQHUnaV-m4yrxR4wcG0,52661
480
+ nuitka/build/static_src/MainProgram.c,sha256=3CNavXG290Lbtilw90H6fX-RPFllhAMN4Js7Ob50QP8,52610
481
481
  nuitka/build/static_src/MetaPathBasedLoader.c,sha256=RjL4cpSer3gTM0JqwLQ00poOdtf5jcY7LIoyjIU6Knk,63235
482
482
  nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c,sha256=jzKD-Qg6wG1NsiMYAy5XQp6GRvk0gQ1P8a9JrFi8ntI,4798
483
483
  nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c,sha256=QjXTcPYrEdJCTffiEbu_-3SnxpBn73b3Fc93WvVO20g,6622
484
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c,sha256=ndph7GjDZjeuj7i88F63GCM87HEne37duUfKzqqh-mg,21361
484
+ nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c,sha256=H6vtnpCSCM0cSe9nrtNx0BNHjW6zcmyyVVQ0ojiQcSY,21867
485
485
  nuitka/build/static_src/OnefileBootstrap.c,sha256=X8AE-vZ5m0ZC8eHWzh1lEzXv1HefgD0K0Tp-XrDIO20,37047
486
486
  nuitka/build/static_src/OnefileSplashScreen.cpp,sha256=bOcTFq4Nbs9nxtOJKhTdydSYiKC_Odbe_IF1IpFBe10,8021
487
487
  nuitka/code_generation/AsyncgenCodes.py,sha256=tymRkGr9sOEPZZxPbmaAhg_CXtugIVzWzYNPGcYfuzI,6458
@@ -567,7 +567,7 @@ nuitka/code_generation/templates/CodeTemplatesFunction.py,sha256=CNQi1wHTP_7uO8w
567
567
  nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py,sha256=8BwEathqo8x9uiRtsdlrFKnR__4gnNJCdIhrtoLdS54,3337
568
568
  nuitka/code_generation/templates/CodeTemplatesIterators.py,sha256=VBgVHoAWhAryHS09QOdFo0R1WCSxZY_ThMIi0_a1yGc,2377
569
569
  nuitka/code_generation/templates/CodeTemplatesLoader.py,sha256=ejXbuOJal4r7xiUFkeosQCxydF2dshkMl6m4e4ISlG0,4503
570
- nuitka/code_generation/templates/CodeTemplatesModules.py,sha256=U6k781uU6UFAMtOuQ3MH1mY0QA5jJy15ldVy0M6nzSA,20746
570
+ nuitka/code_generation/templates/CodeTemplatesModules.py,sha256=SVkO5gsA48Xg9tJAslvCYt6oDz8ai8-RdiNgPRmQs7A,21115
571
571
  nuitka/code_generation/templates/CodeTemplatesVariables.py,sha256=Bci9l_bl0VniyHGN0KJAl-2WuhJ-KzNbC2WfwY_Gnyc,6768
572
572
  nuitka/code_generation/templates/TemplateDebugWrapper.py,sha256=0A9EH36wvCHkIRc-8aJFZVz0mkuh52Gfsa0NTwAfSb0,2475
573
573
  nuitka/code_generation/templates/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
@@ -578,7 +578,7 @@ nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2,s
578
578
  nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2,sha256=hcXS7Nq3Pjpa8yK_KfXS96MuX5Sxw41VqWIF0TnWk2U,1905
579
579
  nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2,sha256=5rvW8oQwdmdYKPaNQcB2tpX4Vr8SoInWHvqMfVeWclM,1843
580
580
  nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2,sha256=QCsqiRNT3e-O8nA6n66OWWKB9KrZbXd7UCMFL64KE3o,2856
581
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2,sha256=2xlTtlGd_DrkQ21GhQElJPGqOL5WWQgkbBRfC4jXs1M,13765
581
+ nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2,sha256=e-iG-XuVZIntGDThn9LQGwEA80rcGVy0y9DzNZarpzc,13774
582
582
  nuitka/code_generation/templates_c/HelperImportHard.c.j2,sha256=2xLdu2T5wQgfMbcpvM1tsvvehocEMUF0Izt-3aWoqOs,2044
583
583
  nuitka/code_generation/templates_c/HelperLongTools.c.j2,sha256=ONJg3NJwvp2aoOr8jJpb0e_HSeUVLRLmShNbKIH-L2E,2762
584
584
  nuitka/code_generation/templates_c/HelperObjectTools.c.j2,sha256=NtA_GIE5xHJg4INUbxkTS2MGdUM9pbCzpoUM4c3BVZ8,1544
@@ -610,7 +610,7 @@ nuitka/containers/OrderedSets.py,sha256=tS4BfTkzZuIJqYd5KgT8vzOJXmw691JQR9Id8WOy
610
610
  nuitka/containers/OrderedSetsFallback.py,sha256=T67vTxWdWe0JEMhvfeQsXpE6X_ZweoIOz1DOxsDDcGc,4397
611
611
  nuitka/containers/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
612
612
  nuitka/distutils/Build.py,sha256=GKvbs4q_xczpnMq-hWR12iP0tv4uEblgJiA9w1l13B4,2269
613
- nuitka/distutils/DistutilCommands.py,sha256=a3e4fRZ1AqGbYALABVTc-JxSjpHwDTQPepFoOLeBu-Y,14676
613
+ nuitka/distutils/DistutilCommands.py,sha256=SRnPAU3vI_3r61HJbPb_MpbwhlFzqYojNZUyoBmlEdk,14727
614
614
  nuitka/distutils/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
615
615
  nuitka/finalizations/Finalization.py,sha256=XhTDD_gRtzJFvG7TtOKVAcdVANa_Q0wFx2q3Pjno-u8,1224
616
616
  nuitka/finalizations/FinalizeMarkups.py,sha256=KcO5e4oh3A7UZMXEbBxPxjLrhvgixHQ8IJwASbCmgy8,6111
@@ -704,7 +704,7 @@ nuitka/nodes/OperatorNodes.py,sha256=0KP0pZhOVw-4vRFdJ4doYOsVGxrzO51ljs3lnsaxbqg
704
704
  nuitka/nodes/OperatorNodesUnary.py,sha256=jn67kN7VrTPkpLi90Ae2STGwmXBr_c9y4Jzz33MxzQQ,8942
705
705
  nuitka/nodes/OsSysNodes.py,sha256=Lf0tCb9-8-EEW3ACQWCSOWfqHFD3sZFNtt7wBs_gDfQ,4202
706
706
  nuitka/nodes/OutlineNodes.py,sha256=f4YNDlblKC8d1AHVGI0Kb1BhJzPGtHPKnWz9UOuBrBo,12435
707
- nuitka/nodes/PackageMetadataNodes.py,sha256=Q_J6ugoiTOJDURJqYo0IXsH2EyvGpcCuDEimFzWebZg,34720
707
+ nuitka/nodes/PackageMetadataNodes.py,sha256=jdvNbw8h5jSES1SuHm1T_4DHdBMProB_tzwWjvaii_o,34766
708
708
  nuitka/nodes/PackageResourceNodes.py,sha256=ZijBGYgA06iPEnjRc0iavWNwz3PbyFJkZjXp6hW9Tbc,12208
709
709
  nuitka/nodes/PrintNodes.py,sha256=5QEvrX9ONOLIMVgojxBmQRUg6JRq0-w-_SjMBAibY8w,3407
710
710
  nuitka/nodes/ReturnNodes.py,sha256=i5vHloxJ5reYQa9bAcOdRmr6Bw8GeoGjHz5WPq6kfL4,6772
@@ -741,26 +741,26 @@ nuitka/optimizations/ValueTraces.py,sha256=VcdxfSwaVvfavj4bMucGKnUHLPcZays4AInK9
741
741
  nuitka/optimizations/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
742
742
  nuitka/pgo/PGO.py,sha256=_clue7LpdJCfqNLu2l8diVwqPll8AzxFBNSp_EOty7M,4899
743
743
  nuitka/pgo/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
744
- nuitka/plugins/PluginBase.py,sha256=zaQSIk_k5UB-FxdRQ_9uVylonXmoLI6A2W8SZgVjl7g,43130
744
+ nuitka/plugins/PluginBase.py,sha256=4Yt9AhSUBvary8nxSvEGewRAvnfyJ3ADsWs82kS40xY,43029
745
745
  nuitka/plugins/Plugins.py,sha256=kNjzDAWOY3rsjCzOFgqctj-ArNyGTnNehRuG6VUlwi0,59215
746
746
  nuitka/plugins/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
747
747
  nuitka/plugins/standard/AntiBloatPlugin.py,sha256=Vg_J6j2dn173yLMYdiqlpQ8-3ri0pDNk_e62o0z1W8Q,26766
748
748
  nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py,sha256=Qmad4nTfbVd-XogAYeVTIhV94uw2wGrpJpFzMYxOV_A,3477
749
749
  nuitka/plugins/standard/DataFilesPlugin.py,sha256=yaB_jLBGyPIl85_Sy7fnC14iuD1mN5U6swkQPAKhggY,10383
750
750
  nuitka/plugins/standard/DelvewheelPlugin.py,sha256=DxMPCIv4j03LI_CqIW3RatsB4e0B3YpkmEKySAkjnPU,5017
751
- nuitka/plugins/standard/DillPlugin.py,sha256=HEvkrbNZR2gcgREUNEuldGmokjsfpWebAYJfTLn_FrA,2446
751
+ nuitka/plugins/standard/DillPlugin.py,sha256=wItDo1v-B5dbGApvzuayDwiPvAr5zR5Rhx7UA5T_GK0,1725
752
752
  nuitka/plugins/standard/DllFilesPlugin.py,sha256=wSGGfic_3jQJo8hKKdjJHZiuZezpoRXdrFiLygUSmwk,15334
753
753
  nuitka/plugins/standard/EnumPlugin.py,sha256=F8YTbMSP3llBVfDvgTo_7x9VUDQwxBskHuF9iSu1hto,2062
754
754
  nuitka/plugins/standard/EventletPlugin.py,sha256=k12dCxirk7GyAfb9Sibo8YcuUX3curjj8aBjyzp631M,1905
755
755
  nuitka/plugins/standard/GeventPlugin.py,sha256=6c58pK1HLrUGjIil-KuTEINSwWNN8VYa1jHeyG2qXug,1880
756
756
  nuitka/plugins/standard/GiPlugin.py,sha256=ug_tQIJ29Yg9J0x4sy4G5nu4SfYIsw7WdRv4giC_LDU,3989
757
757
  nuitka/plugins/standard/GlfwPlugin.py,sha256=mzjlEtQl_MOoMujaehaEYWLGiaVDEZ6YvIJa-zML7Bk,4821
758
- nuitka/plugins/standard/ImplicitImports.py,sha256=51th3zgrixPhXijkNJjKkWwwa43uHZyUF04kHDsbWZM,28348
758
+ nuitka/plugins/standard/ImplicitImports.py,sha256=WqwrY8hZXoaWqakEe1uR0-slKxmQ8xANNuB6WBMJtDs,28447
759
759
  nuitka/plugins/standard/KivyPlugin.py,sha256=JbY-D4SnSNNnJMd63Zub-h44uh681tVY8BdzpmZf8_o,4991
760
760
  nuitka/plugins/standard/MatplotlibPlugin.py,sha256=Sg4v9FfHZVChLaux4PBI24x0X9VkmkvaDhqKfKQAb9U,7828
761
761
  nuitka/plugins/standard/MultiprocessingPlugin.py,sha256=qwMNEG-mOTv8dIQsem6m5oTzcWv-WutkrueLYwJcxss,7047
762
762
  nuitka/plugins/standard/NumpyPlugin.py,sha256=tZx2CMT0mSm47Hti3LiNQNr19OWFS-PLiRbvNLBkyrw,1187
763
- nuitka/plugins/standard/OptionsNannyPlugin.py,sha256=BBE5OmiWtxQAD_Wj4M49EW9hHQsw3yTBJGSboskOGc4,7056
763
+ nuitka/plugins/standard/OptionsNannyPlugin.py,sha256=7N4RVwgAwAqhpvwd6dfU2FXPLEsco2zkRGCOvjqUX-U,7057
764
764
  nuitka/plugins/standard/PbrPlugin.py,sha256=7j9hXRn7NTXG_5yVuYumlEfGG07jZSGN2L2AFzW_aBY,1917
765
765
  nuitka/plugins/standard/PkgResourcesPlugin.py,sha256=ku_WIbiuP2l2n5BjDFmA1d0GnZ7gIygUNkAR6czLkys,4682
766
766
  nuitka/plugins/standard/PmwPlugin.py,sha256=OBvO1JO1NufBN0tFLUcAO33quHH9hhJ1WWNZov9D-cg,7009
@@ -773,12 +773,12 @@ nuitka/plugins/standard/TransformersPlugin.py,sha256=XRUBuSkv7-yUb9HJ8QyM4J8cCM-
773
773
  nuitka/plugins/standard/TrioPlugin.py,sha256=1zkgZP5KFJ4xXhnh2poTD3zXv7ywBEeNE9hfYEbgVG8,1073
774
774
  nuitka/plugins/standard/UpxPlugin.py,sha256=bdYp-nBs3mI-fUeZ_icnRzW3TtTk3wSYJQWjlr5UEBA,5640
775
775
  nuitka/plugins/standard/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
776
- nuitka/plugins/standard/standard.nuitka-package.config.yml,sha256=dKoms7uNn4TxqFoNiO1-hbg1naE0v7Pk7GUY_ZHxZLc,190006
776
+ nuitka/plugins/standard/standard.nuitka-package.config.yml,sha256=yUa0hi-QtWXufzm6OwuQtiFObhAMF1hI5WpwTGE4yCo,190760
777
777
  nuitka/plugins/standard/stdlib2.nuitka-package.config.yml,sha256=ZQOgPAmYq0sqpi2Hn2D6tmKyHN9FurrPfhG8XpTxbyw,2067
778
778
  nuitka/plugins/standard/stdlib3.nuitka-package.config.yml,sha256=j3Zxxcd2PRsCirzGTSkbAJ5v-Cp_cqExGOFEExK51uk,11122
779
779
  nuitka/reports/CompilationReportReader.py,sha256=6EYWAZm8ELDWaob-WK0CNVwmAnB_HMKv3i_DZIznFpo,1887
780
780
  nuitka/reports/LicenseReport.rst.j2,sha256=Hr7NBNb-bB3nnAx254QACjYhzOeqceMHQ0B3wwrd6WU,2239
781
- nuitka/reports/Reports.py,sha256=IJgQDfO_wjeEdweaSpVgmEKs1kYrdKDd-NA0RsiKhUA,24116
781
+ nuitka/reports/Reports.py,sha256=NY56pN-53msKRoWBhE28AkvI6sulqu1sX7AgOAfhKU4,24483
782
782
  nuitka/reports/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
783
783
  nuitka/specs/BuiltinBytesOperationSpecs.py,sha256=0U_m1RGWiZlTxE5wL24FBn2IRV3EobuDKmTQaiRgeUw,5911
784
784
  nuitka/specs/BuiltinDictOperationSpecs.py,sha256=q-v1S9S_7RulsOWRGTzMOUoBOgA4Wky8uI035Osx324,2786
@@ -878,10 +878,10 @@ nuitka/tree/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
878
878
  nuitka/utils/AppDirs.py,sha256=fPTyhbEq2ejabLXUA8YrtfvdYWTCyTxRRZBsj0yuXfU,2677
879
879
  nuitka/utils/CStrings.py,sha256=bXkTDDfnJrJU7yuXMXrl04_q_kayjoEQllHXFgRENdI,4115
880
880
  nuitka/utils/CommandLineOptions.py,sha256=XVnmW7W2c9I1x6NBVxh0eZ-RxOOgxHAsD-vvlgZKnpc,5373
881
- nuitka/utils/Distributions.py,sha256=Lfsywuh0UKDhV-a7wWaFFsSTISUCXxi7Z0UjU-Rp3EE,13106
881
+ nuitka/utils/Distributions.py,sha256=7qhBmy645WVkaDPjD-7vDWCDRqbNJG4RQblGcLAVtsA,12943
882
882
  nuitka/utils/Download.py,sha256=adG_dxO8s8YfEOOQz_DRRj3VfZxs8dXpFR5sc9IrTnc,6396
883
883
  nuitka/utils/Execution.py,sha256=AMOP7urD1k3U2I4reowzJU0LiOSzzNNrXeDg2UNUZrw,12780
884
- nuitka/utils/FileOperations.py,sha256=byYMFCrkI1llcbx-pJUGXLWbtPDwND3H79K3q4w8UeA,39596
884
+ nuitka/utils/FileOperations.py,sha256=UN9gSkmsZuKthds9l4bBkvW59S50GbVeC_TZLQpAPZw,39971
885
885
  nuitka/utils/Hashing.py,sha256=q5Ugfw3rp3wo26EfnpkcYC7YzXtTn6CcfJ0G8zeKrOw,2867
886
886
  nuitka/utils/Images.py,sha256=kLF0VjQSjwVRpFigBU1jcWFaTgU9nXEEU9-jMLCWmp4,2362
887
887
  nuitka/utils/Importing.py,sha256=uwjNdsmTQ6SEjMqbMYUig75EYvgN_yM7eNY_G_DBynk,9743
@@ -901,14 +901,14 @@ nuitka/utils/SlotMetaClasses.py,sha256=KpmEp9dsnZs_tL1Lli9Kn1gqt2Hx6U6RxquI5k9Np
901
901
  nuitka/utils/StaticLibraries.py,sha256=2j0vufNxc7Epf7nTyjPDB4oRxIoB70rt8q3EuJqdPLM,6207
902
902
  nuitka/utils/ThreadedExecutor.py,sha256=AeSRZn_S015dgeHF7u7lclQCQORI_-XVKPULwn2Pga4,2602
903
903
  nuitka/utils/Timing.py,sha256=WyW2Kf9YTXLy9oheE2B5EZjyOEY8cotYNOIy_TFHfUY,2772
904
- nuitka/utils/Utils.py,sha256=BLRHnDXPPmuIZzP9x-oYCx0ei81RV572HH7CF6xBHeM,11093
904
+ nuitka/utils/Utils.py,sha256=RH2PGCi4C8l5TqG4cftNu5f4UGnr9_ZKTrWMIEDHiNU,11360
905
905
  nuitka/utils/WindowsFileUsage.py,sha256=-HWxgeimCX2pz6oAUI0T7wSJN1tbk8XyIzPywdd0owc,10574
906
- nuitka/utils/WindowsResources.py,sha256=LI0_h3TU10X64hbD7qd8j8LaOtFJwVqmG-qpFuxUh4g,19539
906
+ nuitka/utils/WindowsResources.py,sha256=Nf4DRlj7bQrdDXPNKqujqZCbppNx7xrdHuUP7pjVixc,19804
907
907
  nuitka/utils/Yaml.py,sha256=qf1IANYYNNS7gM3GEy4M_I9_2WELkd8MFHsxc5rgfco,6371
908
908
  nuitka/utils/__init__.py,sha256=iZG7yicSsBwC9oGrAFAJSzSlj0bmpyijEHyrTKLQ8GM,833
909
- Nuitka_winsvc-1.9.3.dist-info/LICENSE.txt,sha256=ZWq74m8T3pVbRFjCBu74q_4GyW11rCqtYB_1vZ4rQ88,11348
910
- Nuitka_winsvc-1.9.3.dist-info/METADATA,sha256=O1pxwZRQybJWc023Run9xoZOxrj-VcW3CHB8suCPZsY,4909
911
- Nuitka_winsvc-1.9.3.dist-info/WHEEL,sha256=j9Aissza3750LQHFAQyYerNjmkEON1-8w_RaZNFtKSs,102
912
- Nuitka_winsvc-1.9.3.dist-info/entry_points.txt,sha256=jeBnijqxZ4U0WpNEdtaogpNMNlv5jw8H7yMOsf2isFc,308
913
- Nuitka_winsvc-1.9.3.dist-info/top_level.txt,sha256=TRrfKxSYukbo1yzTGfwyH7wVzhDpKlwQsLjhIr15yqY,7
914
- Nuitka_winsvc-1.9.3.dist-info/RECORD,,
909
+ Nuitka_winsvc-1.9.5.dist-info/LICENSE.txt,sha256=ZWq74m8T3pVbRFjCBu74q_4GyW11rCqtYB_1vZ4rQ88,11348
910
+ Nuitka_winsvc-1.9.5.dist-info/METADATA,sha256=q6DRRcC-cNfYgWHUBZTkSzTpttjwoB-owHGGnvn3DsM,4909
911
+ Nuitka_winsvc-1.9.5.dist-info/WHEEL,sha256=j9Aissza3750LQHFAQyYerNjmkEON1-8w_RaZNFtKSs,102
912
+ Nuitka_winsvc-1.9.5.dist-info/entry_points.txt,sha256=jeBnijqxZ4U0WpNEdtaogpNMNlv5jw8H7yMOsf2isFc,308
913
+ Nuitka_winsvc-1.9.5.dist-info/top_level.txt,sha256=TRrfKxSYukbo1yzTGfwyH7wVzhDpKlwQsLjhIr15yqY,7
914
+ Nuitka_winsvc-1.9.5.dist-info/RECORD,,
nuitka/MainControl.py CHANGED
@@ -65,6 +65,7 @@ from nuitka.Progress import (
65
65
  )
66
66
  from nuitka.PythonFlavors import (
67
67
  isApplePython,
68
+ isArchPackagePython,
68
69
  isDebianPackagePython,
69
70
  isFedoraPackagePython,
70
71
  isNuitkaPython,
@@ -608,13 +609,12 @@ def runSconsBackend():
608
609
 
609
610
  if isDebianPackagePython():
610
611
  options["debian_python"] = asBoolStr(True)
611
-
612
612
  if isFedoraPackagePython():
613
613
  options["fedora_python"] = asBoolStr(True)
614
-
614
+ if isArchPackagePython():
615
+ options["arch_python"] = asBoolStr(True)
615
616
  if isApplePython():
616
617
  options["apple_python"] = asBoolStr(True)
617
-
618
618
  if isPyenvPython():
619
619
  options["pyenv_python"] = asBoolStr(True)
620
620
 
@@ -1091,7 +1091,7 @@ not use compiled code while it exists."""
1091
1091
 
1092
1092
  # Execute the module immediately if option was given.
1093
1093
  if Options.shallExecuteImmediately():
1094
- general.info("Launching '%s'" % run_filename)
1094
+ general.info("Launching '%s'." % run_filename)
1095
1095
 
1096
1096
  if Options.shallMakeModule():
1097
1097
  executeModule(
nuitka/PythonFlavors.py CHANGED
@@ -34,6 +34,7 @@ from nuitka.utils.FileOperations import (
34
34
  )
35
35
  from nuitka.utils.Utils import (
36
36
  isAndroidBasedLinux,
37
+ isArchBasedLinux,
37
38
  isFedoraBasedLinux,
38
39
  isLinux,
39
40
  isMacOS,
@@ -237,6 +238,16 @@ def isFedoraPackagePython():
237
238
  return system_prefix_path == "/usr"
238
239
 
239
240
 
241
+ def isArchPackagePython():
242
+ """Is the Python from a Fedora package."""
243
+ if not isArchBasedLinux():
244
+ return False
245
+
246
+ system_prefix_path = getSystemPrefixPath()
247
+
248
+ return system_prefix_path == "/usr"
249
+
250
+
240
251
  def isCPythonOfficialPackage():
241
252
  """Official CPython download, kind of hard to detect since self-compiled doesn't change much."""
242
253
 
@@ -277,6 +288,8 @@ def getPythonFlavorName():
277
288
  return "Debian Python"
278
289
  elif isFedoraPackagePython():
279
290
  return "Fedora Python"
291
+ elif isArchPackagePython():
292
+ return "Arch Python"
280
293
  elif isHomebrewPython():
281
294
  return "Homebrew Python"
282
295
  elif isApplePython():
nuitka/PythonVersions.py CHANGED
@@ -37,7 +37,6 @@ def getSupportedPythonVersions():
37
37
  return (
38
38
  "2.6",
39
39
  "2.7",
40
- "3.3",
41
40
  "3.4",
42
41
  "3.5",
43
42
  "3.6",
nuitka/Version.py CHANGED
@@ -20,7 +20,7 @@
20
20
  """
21
21
 
22
22
  version_string = """\
23
- Nuitka V1.9.3
23
+ Nuitka V1.9.5
24
24
  Copyright (C) 2023 Kay Hayen."""
25
25
 
26
26
 
@@ -164,6 +164,9 @@ def _enableLtoSettings(
164
164
  elif env.fedora_python:
165
165
  lto_mode = True
166
166
  reason = "known to be supported (Fedora Python)"
167
+ elif env.arch_python:
168
+ lto_mode = True
169
+ reason = "known to be supported (Arch Python)"
167
170
  elif (
168
171
  env.debian_python
169
172
  and env.gcc_mode
@@ -30,8 +30,13 @@ from nuitka.__past__ import basestring, unicode
30
30
  from nuitka.containers.OrderedDicts import OrderedDict
31
31
  from nuitka.Tracing import scons_details_logger, scons_logger
32
32
  from nuitka.utils.Execution import executeProcess
33
- from nuitka.utils.FileOperations import getFileContentByLine, openTextFile
34
- from nuitka.utils.Utils import isLinux, isMacOS, isPosixWindows
33
+ from nuitka.utils.FileOperations import (
34
+ getFileContentByLine,
35
+ getWindowsShortPathName,
36
+ isFilesystemEncodable,
37
+ openTextFile,
38
+ )
39
+ from nuitka.utils.Utils import isLinux, isMacOS, isPosixWindows, isWin32Windows
35
40
 
36
41
 
37
42
  def initScons():
@@ -238,6 +243,7 @@ def createEnvironment(
238
243
  env.nuitka_python = getArgumentBool("nuitka_python", False)
239
244
  env.debian_python = getArgumentBool("debian_python", False)
240
245
  env.fedora_python = getArgumentBool("fedora_python", False)
246
+ env.arch_python = getArgumentBool("arch_python", False)
241
247
  env.msys2_mingw_python = getArgumentBool("msys2_mingw_python", False)
242
248
  env.anaconda_python = getArgumentBool("anaconda_python", False)
243
249
  env.pyenv_python = getArgumentBool("pyenv_python", False)
@@ -542,32 +548,36 @@ def scanSourceDir(env, dirname, plugins):
542
548
  # name.
543
549
  added_path = False
544
550
 
545
- for filename in sorted(os.listdir(dirname)):
546
- if filename.endswith(".h") and plugins and not added_path:
551
+ for filename_base in sorted(os.listdir(dirname)):
552
+ if filename_base.endswith(".h") and plugins and not added_path:
547
553
  # Adding path for source paths on the fly, spell-checker: ignore cpppath
548
554
  env.Append(CPPPATH=[dirname])
549
555
  added_path = True
550
556
 
551
557
  # Only C files are of interest here.
552
- if not filename.endswith((".c", "cpp")) or not filename.startswith(
558
+ if not filename_base.endswith((".c", "cpp")) or not filename_base.startswith(
553
559
  ("module.", "__", "plugin.")
554
560
  ):
555
561
  continue
556
562
 
557
- filename = os.path.join(dirname, filename)
563
+ filename = os.path.join(dirname, filename_base)
558
564
 
559
- target_file = filename
565
+ target_filename = filename
566
+
567
+ if isWin32Windows() and not isFilesystemEncodable(filename_base):
568
+ target_filename = getWindowsShortPathName(target_filename)
569
+ target_filename = os.path.normcase(target_filename)
560
570
 
561
571
  # We pretend to use C++ if no C11 compiler is present.
562
572
  if env.c11_mode:
563
- yield filename
573
+ yield target_filename
564
574
  else:
565
575
  if filename.endswith(".c"):
566
- target_file += "pp" # .cpp" suffix then
576
+ target_filename += "pp" # .cpp" suffix then
567
577
 
568
- os.rename(filename, target_file)
578
+ os.rename(filename, target_filename)
569
579
 
570
- yield target_file
580
+ yield target_filename
571
581
 
572
582
 
573
583
  def makeCLiteral(value):
@@ -727,7 +727,7 @@ static PyObject *COPY_DICT_KW(PyObject *dict_value) {
727
727
 
728
728
  Py_INCREF(value);
729
729
  PyObject *key = *key_ptr;
730
- if (is_unicode) {
730
+ if (is_unicode == false) {
731
731
  if (unlikely(!checkKeywordType(key))) {
732
732
  had_kw_error = true;
733
733
  }
@@ -1524,7 +1524,6 @@ orig_argv = argv;
1524
1524
 
1525
1525
  CALL_FUNCTION_WITH_KEYARGS(tstate, main_function, kw_args);
1526
1526
  }
1527
- static int loky_joblib_parent_pid_arg = 0;
1528
1527
 
1529
1528
  int exit_code = HANDLE_PROGRAM_EXIT(tstate);
1530
1529
 
@@ -221,6 +221,16 @@ static PyObject *Nuitka_ResourceReaderFiles_read_text(struct Nuitka_ResourceRead
221
221
  return result;
222
222
  }
223
223
 
224
+ static PyObject *Nuitka_ResourceReaderFiles_exists(struct Nuitka_ResourceReaderFilesObject *files, PyObject *args,
225
+ PyObject *kwds) {
226
+
227
+ PyThreadState *tstate = PyThreadState_GET();
228
+ PyObject *file_name = _Nuitka_ResourceReaderFiles_GetPath(tstate, files);
229
+ PyObject *result = OS_PATH_FILE_EXISTS(tstate, file_name);
230
+ Py_DECREF(file_name);
231
+ return result;
232
+ }
233
+
224
234
  // @abc.abstractmethod
225
235
  // def is_dir(self) -> bool:
226
236
  // """
@@ -451,6 +461,7 @@ static PyMethodDef Nuitka_ResourceReaderFiles_methods[] = {
451
461
  {"iterdir", (PyCFunction)Nuitka_ResourceReaderFiles_iterdir, METH_NOARGS, NULL},
452
462
  {"read_bytes", (PyCFunction)Nuitka_ResourceReaderFiles_read_bytes, METH_NOARGS, NULL},
453
463
  {"read_text", (PyCFunction)Nuitka_ResourceReaderFiles_read_text, METH_VARARGS | METH_KEYWORDS, NULL},
464
+ {"exists", (PyCFunction)Nuitka_ResourceReaderFiles_exists, METH_NOARGS, NULL},
454
465
  {"is_dir", (PyCFunction)Nuitka_ResourceReaderFiles_is_dir, METH_NOARGS, NULL},
455
466
  {"is_file", (PyCFunction)Nuitka_ResourceReaderFiles_is_file, METH_NOARGS, NULL},
456
467
  {"joinpath", (PyCFunction)Nuitka_ResourceReaderFiles_joinpath, METH_VARARGS | METH_KEYWORDS, NULL},
@@ -313,7 +313,21 @@ PyObject *modulecode_%(module_identifier)s(PyThreadState *tstate, PyObject *modu
313
313
  moduledict_%(module_identifier)s = MODULE_DICT(module_%(module_identifier)s);
314
314
 
315
315
  #ifdef _NUITKA_PLUGIN_DILL_ENABLED
316
- registerDillPluginTables(tstate, loader_entry->name, &_method_def_reduce_compiled_function, &_method_def_create_compiled_function);
316
+ {
317
+ char const *module_name_c;
318
+ if (loader_entry != NULL) {
319
+ module_name_c = loader_entry->name;
320
+ } else {
321
+ PyObject *module_name = GET_STRING_DICT_VALUE(moduledict_%(module_identifier)s, (Nuitka_StringObject *)const_str_plain___name__);
322
+ module_name_c = Nuitka_String_AsString(module_name);
323
+ }
324
+
325
+ registerDillPluginTables(tstate, module_name_c, &_method_def_reduce_compiled_function, &_method_def_create_compiled_function);
326
+ }
327
+
328
+
329
+
330
+
317
331
  #endif
318
332
 
319
333
  // Set "__compiled__" to what version information we have.
@@ -201,7 +201,7 @@ else
201
201
  {% endif %}
202
202
  PyObject *key = *key_ptr;
203
203
  {% if per_key_code %}
204
- if (is_unicode) {
204
+ if (is_unicode == false) {
205
205
  {{ per_key_code }}
206
206
  }
207
207
  {% endif %}
@@ -323,7 +323,9 @@ class build(distutils.command.build.build):
323
323
  for option, value in toml_options.get("nuitka", {}).items():
324
324
  command.extend(self._parseOptionsEntry(option, value))
325
325
 
326
- for option, value in toml_options.get("tool.nuitka", {}).items():
326
+ for option, value in (
327
+ toml_options.get("tool", {}).get("nuitka", {}).items()
328
+ ):
327
329
  command.extend(self._parseOptionsEntry(option, value))
328
330
 
329
331
  # Process any extra options from setuptools
@@ -85,9 +85,10 @@ class ExpressionPkgResourcesRequireCall(ExpressionPkgResourcesRequireCallBase):
85
85
  resources_module.extern.packaging.requirements.InvalidRequirement
86
86
  )
87
87
  except AttributeError:
88
- InvalidRequirement = (
89
- resources_module.packaging.requirements.InvalidRequirement
90
- )
88
+ # Debian removes "extern.packaging" in some versions
89
+ import packaging
90
+
91
+ InvalidRequirement = packaging.requirements.InvalidRequirement
91
92
 
92
93
  args = tuple(
93
94
  element.getCompileTimeConstant() for element in self.subnode_requirements
@@ -1211,18 +1211,13 @@ except ImportError:
1211
1211
  "no_annotations": hasPythonFlagNoAnnotations(),
1212
1212
  # Querying package properties
1213
1213
  "has_builtin_module": isBuiltinModuleName,
1214
+ # Architectures
1215
+ "arch_x86": getArchitecture() == "x86",
1216
+ "arch_amd64": getArchitecture() == "x86_64",
1217
+ "arch_arm64": getArchitecture() == "arm64",
1214
1218
  }
1215
1219
  )
1216
1220
 
1217
- if isWin32Windows() or isMacOS():
1218
- context.update(
1219
- {
1220
- "arch_x86": getArchitecture() == "x86",
1221
- "arch_amd64": getArchitecture() == "x86_64",
1222
- "arch_arm64": getArchitecture() == "arm64",
1223
- }
1224
- )
1225
-
1226
1221
  versions = getTestExecutionPythonVersions()
1227
1222
 
1228
1223
  for version in versions:
@@ -48,25 +48,4 @@ Extending "dill" for compiled types to be pickle-able as well.""",
48
48
  return {"_NUITKA_PLUGIN_DILL_ENABLED": "1"}
49
49
 
50
50
  def getExtraCodeFiles(self):
51
- return {"DillPlugin.c": extra_code}
52
-
53
-
54
- extra_code = r"""
55
- #include "nuitka/prelude.h"
56
-
57
- void registerDillPluginTables(PyThreadState *tstate, char const *module_name, PyMethodDef *reduce_compiled_function, PyMethodDef *create_compiled_function) {
58
- PyObject *function_tables = PyObject_GetAttrString((PyObject *)builtin_module, "compiled_function_tables");
59
-
60
- if (function_tables == NULL) {
61
- CLEAR_ERROR_OCCURRED(tstate);
62
-
63
- function_tables = MAKE_DICT_EMPTY();
64
- PyObject_SetAttrString((PyObject *)builtin_module, "compiled_function_tables", function_tables);
65
- }
66
-
67
- PyObject *funcs = MAKE_TUPLE2_0(PyCFunction_New(reduce_compiled_function, NULL), PyCFunction_New(create_compiled_function, NULL));
68
-
69
- PyDict_SetItemString(function_tables, module_name, funcs);
70
- }
71
-
72
- """
51
+ return {"DillPlugin.c": self.getPluginDataFileContents("DillPlugin.c")}
@@ -597,6 +597,7 @@ __file__ = (__nuitka_binary_dir + '%ssite.py') if '__nuitka_binary_dir' in dict(
597
597
  "transformers.utils.dummy_pt_objects", # Not performance relevant.
598
598
  "transformers.utils.dummy_flax_objects", # Not performance relevant.
599
599
  "transformers.utils.dummy_tf_objects", # Not performance relevant.
600
+ "rich", # # Not performance relevant and memory leaking due to empty compiled cell leaks
600
601
  )
601
602
 
602
603
  def decideCompilation(self, module_name):
@@ -103,7 +103,7 @@ Otherwise a terminal window will open"""
103
103
 
104
104
  self.info(
105
105
  """\
106
- Note, when using '%s', consider using '--disable-console' option. %s. However\
106
+ Note, when using '%s', consider using '--disable-console' option. %s. However \
107
107
  for debugging, terminal output is the easiest way to see informative traceback \
108
108
  and error information, so delay this until your program working and remove \
109
109
  once you find it non-working, and use '--enable-console' to make it explicit \
@@ -1622,6 +1622,12 @@
1622
1622
  patterns:
1623
1623
  - 'intervals.msgpack'
1624
1624
 
1625
+ - module-name: 'libusb_package'
1626
+ dlls:
1627
+ - from_filenames:
1628
+ prefixes:
1629
+ - 'libusb'
1630
+
1625
1631
  - module-name: 'lightgbm.libpath'
1626
1632
  dlls:
1627
1633
  - from_filenames:
@@ -2863,6 +2869,14 @@
2863
2869
  - description: 'workaround __new__ decorator issue'
2864
2870
  append_plain: 'SharedRegistryObject.__new__ = staticmethod(SharedRegistryObject.__new__)'
2865
2871
 
2872
+ - module-name: 'pip._vendor.rich.jupyter'
2873
+ # See rich.jupyter
2874
+ anti-bloat:
2875
+ - description: 'remove IPython reference'
2876
+ change_function:
2877
+ 'display': 'un-callable'
2878
+ when: 'not use_ipython'
2879
+
2866
2880
  - module-name: 'pkg_resources'
2867
2881
  anti-bloat:
2868
2882
  - description: 'avoid using plistlib dependency on non-macOS'
@@ -3217,6 +3231,10 @@
3217
3231
  macos_bundle_as_onefile: 'yes'
3218
3232
  when: 'macos and use_pyqt5'
3219
3233
 
3234
+ import-hacks:
3235
+ - acceptable-missing-dlls:
3236
+ - 'libqpdf'
3237
+
3220
3238
  - module-name: 'PyQt6'
3221
3239
  options:
3222
3240
  checks:
@@ -3411,7 +3429,19 @@
3411
3429
  from PySide6 import QtCore
3412
3430
  orig_disconnect = QtCore.SignalInstance.disconnect
3413
3431
  QtCore.SignalInstance.disconnect = patched_disconnect
3414
- when: 'version("PySide6") < (6,6)'
3432
+
3433
+ def patched_connect(self, receiver, type=None):
3434
+ type = type or QtCore.Qt.ConnectionType.AutoConnection
3435
+ if hasattr(receiver, "im_func"):
3436
+ if hasattr(receiver.im_func, "__compiled__"):
3437
+ patched_connect._protected = getattr(patched_connect, "_protected", [])
3438
+ patched_connect._protected.append(receiver)
3439
+
3440
+ return orig_connect(self, receiver, type)
3441
+
3442
+ from PySide6 import QtCore
3443
+ orig_connect = QtCore.SignalInstance.connect
3444
+ QtCore.SignalInstance.connect = patched_connect
3415
3445
 
3416
3446
  options:
3417
3447
  checks:
@@ -4941,15 +4971,11 @@
4941
4971
  dirs:
4942
4972
  - 'static'
4943
4973
 
4944
- - module-name: 'streamlit.delta_generator'
4974
+ - module-name: 'streamlit.runtime.caching.cache_utils'
4945
4975
  anti-bloat:
4946
- - description: 'remove IPython reference'
4976
+ - description: 'remove warning for compiled functions'
4947
4977
  replacements_plain:
4948
- 'from streamlit.elements.legacy_altair import LegacyAltairMixin': ''
4949
- 'LegacyAltairMixin,': ''
4950
- 'from streamlit.elements.arrow_altair import ArrowAltairMixin': ''
4951
- 'ArrowAltairMixin,': ''
4952
- when: 'not use_ipython'
4978
+ '_LOGGER.debug(': '('
4953
4979
 
4954
4980
  - module-name: 'sv_ttk'
4955
4981
  data-files:
nuitka/reports/Reports.py CHANGED
@@ -44,8 +44,10 @@ from nuitka.Options import (
44
44
  getCompilationReportFilename,
45
45
  getCompilationReportTemplates,
46
46
  getCompilationReportUserData,
47
+ isOnefileMode,
47
48
  shallCreateDiffableCompilationReport,
48
49
  )
50
+ from nuitka.OutputDirectories import getResultRunFilename
49
51
  from nuitka.plugins.Plugins import getActivePlugins
50
52
  from nuitka.PythonFlavors import getPythonFlavorName
51
53
  from nuitka.PythonVersions import getSystemPrefixPath, python_version_full_str
@@ -194,6 +196,8 @@ def _getReportInputData(aborted):
194
196
 
195
197
  data_composer = getDataComposerReportValues()
196
198
 
199
+ output_run_filename = os.path.abspath(getResultRunFilename(onefile=isOnefileMode()))
200
+
197
201
  return dict(
198
202
  (var_name, var_value)
199
203
  for var_name, var_value in locals().items()
@@ -569,6 +573,14 @@ def writeCompilationReport(report_filename, report_input_data, diffable):
569
573
 
570
574
  _addUserDataToReport(root=root, user_data=report_input_data["user_data"])
571
575
 
576
+ python_xml_node = TreeXML.appendTreeElement(
577
+ root,
578
+ "output",
579
+ run_filename=_getCompilationReportPath(
580
+ report_input_data["output_run_filename"]
581
+ ),
582
+ )
583
+
572
584
  try:
573
585
  putTextFileContents(
574
586
  filename=report_filename, contents=TreeXML.toString(root), encoding="utf8"
@@ -28,7 +28,7 @@ from nuitka.PythonVersions import python_version
28
28
  from .FileOperations import searchPrefixPath
29
29
  from .Importing import getModuleNameAndKindFromFilenameSuffix
30
30
  from .ModuleNames import ModuleName, checkModuleName
31
- from .Utils import isLinux
31
+ from .Utils import isMacOS, isWin32Windows
32
32
 
33
33
  _package_to_distribution = None
34
34
 
@@ -82,6 +82,8 @@ def getDistributionTopLevelPackageNames(distribution):
82
82
  continue
83
83
  if first_path_element == "__pycache__":
84
84
  continue
85
+ if not checkModuleName(first_path_element) or first_path_element == ".":
86
+ continue
85
87
 
86
88
  if remainder:
87
89
  module_name = ModuleName(first_path_element)
@@ -262,23 +264,14 @@ def isDistributionPoetryPackage(distribution_name):
262
264
 
263
265
 
264
266
  def isDistributionSystemPackage(distribution_name):
265
- result = (
266
- not isDistributionPipPackage(distribution_name)
267
+ return (
268
+ not isMacOS()
269
+ and not isWin32Windows()
270
+ and not isDistributionPipPackage(distribution_name)
267
271
  and not isDistributionPoetryPackage(distribution_name)
268
272
  and not isDistributionCondaPackage(distribution_name)
269
273
  )
270
274
 
271
- # This should only ever happen on Linux, lets know when it does happen
272
- # elsewhere, since that is most probably a bug in our installer detection on
273
- # non-Linux as well.
274
- if result:
275
- assert isLinux(), (
276
- distribution_name,
277
- getDistributionInstallerName(distribution_name),
278
- )
279
-
280
- return result
281
-
282
275
 
283
276
  _pdm_dir_cache = {}
284
277
 
@@ -33,6 +33,7 @@ import stat
33
33
  import sys
34
34
  import tempfile
35
35
  import time
36
+ import unicodedata
36
37
  from contextlib import contextmanager
37
38
 
38
39
  from nuitka.__past__ import ( # pylint: disable=redefined-builtin
@@ -1386,3 +1387,17 @@ def syncFileOutput(file_handle):
1386
1387
  except AttributeError:
1387
1388
  # Too old to have "syncfs" available.
1388
1389
  return
1390
+
1391
+
1392
+ def isFilesystemEncodable(filename):
1393
+ """Decide if a filename is safe for use as a file system path with tools."""
1394
+ if os.name == "nt":
1395
+ value = (
1396
+ unicodedata.normalize("NFKD", filename)
1397
+ .encode("ascii", "ignore")
1398
+ .decode("ascii")
1399
+ )
1400
+
1401
+ return value == filename
1402
+ else:
1403
+ return True
nuitka/utils/Utils.py CHANGED
@@ -101,6 +101,8 @@ def getLinuxDistribution():
101
101
 
102
102
  if os.path.exists("/etc/os-release"):
103
103
  result, base, version = _parseOsReleaseFileContents("/etc/os-release")
104
+ elif os.path.exists("/usr/lib/os-release"):
105
+ result, base, version = _parseOsReleaseFileContents("/usr/lib/os-release")
104
106
  elif os.path.exists("/etc/SuSE-release"):
105
107
  result, base, version = _parseOsReleaseFileContents("/etc/SuSE-release")
106
108
  elif os.path.exists("/etc/issue"):
@@ -157,6 +159,12 @@ def isFedoraBasedLinux():
157
159
  return (base or dist_name) == "Fedora"
158
160
 
159
161
 
162
+ def isArchBasedLinux():
163
+ dist_name, base, _dist_version = getLinuxDistribution()
164
+
165
+ return (base or dist_name) == "Arch"
166
+
167
+
160
168
  def isAndroidBasedLinux():
161
169
  # spell-checker: ignore googlesource
162
170
  if not isLinux():
@@ -351,7 +351,7 @@ def getDefaultWindowsExecutableManifest():
351
351
  # Note: Supported OS are lied about by CPython.
352
352
  template = (
353
353
  """\
354
- <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
354
+ <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
355
355
  <assemblyIdentity type="win32" name="Mini" version="1.0.0.0"/>
356
356
  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
357
357
  <application>
@@ -362,6 +362,11 @@ def getDefaultWindowsExecutableManifest():
362
362
  <supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
363
363
  </application>
364
364
  </compatibility>
365
+ <asmv3:application>
366
+ <asmv3:windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
367
+ <ws2:longPathAware>true</ws2:longPathAware>
368
+ </asmv3:windowsSettings>
369
+ </asmv3:application>
365
370
  %s
366
371
  </assembly>
367
372
  """