Nuitka-winsvc 2.4.1__cp311-cp311-win_amd64.whl → 2.4.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 (32) hide show
  1. {Nuitka_winsvc-2.4.1.dist-info → Nuitka_winsvc-2.4.5.dist-info}/METADATA +1 -1
  2. {Nuitka_winsvc-2.4.1.dist-info → Nuitka_winsvc-2.4.5.dist-info}/RECORD +32 -32
  3. {Nuitka_winsvc-2.4.1.dist-info → Nuitka_winsvc-2.4.5.dist-info}/WHEEL +1 -1
  4. nuitka/HardImportRegistry.py +1 -0
  5. nuitka/Progress.py +2 -1
  6. nuitka/Tracing.py +1 -0
  7. nuitka/Version.py +1 -1
  8. nuitka/__past__.py +5 -0
  9. nuitka/build/SconsCaching.py +1 -1
  10. nuitka/build/include/nuitka/helpers.h +5 -1
  11. nuitka/build/include/nuitka/prelude.h +0 -5
  12. nuitka/build/include/nuitka/unfreezing.h +6 -0
  13. nuitka/build/static_src/HelpersFiles.c +2 -2
  14. nuitka/build/static_src/InspectPatcher.c +14 -2
  15. nuitka/build/static_src/MainProgram.c +8 -8
  16. nuitka/build/static_src/MetaPathBasedLoader.c +40 -33
  17. nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +1 -1
  18. nuitka/build/static_src/OnefileBootstrap.c +71 -5
  19. nuitka/code_generation/Emission.py +1 -1
  20. nuitka/code_generation/Indentation.py +1 -1
  21. nuitka/code_generation/ModuleCodes.py +1 -1
  22. nuitka/code_generation/templates/CodeTemplatesConstants.py +16 -0
  23. nuitka/code_generation/templates/CodeTemplatesModules.py +24 -6
  24. nuitka/freezer/IncludedDataFiles.py +3 -1
  25. nuitka/plugins/Plugins.py +1 -1
  26. nuitka/plugins/standard/standard.nuitka-package.config.yml +27 -3
  27. nuitka/tree/SourceHandling.py +1 -1
  28. {Nuitka_winsvc-2.4.1.data → Nuitka_winsvc-2.4.5.data}/scripts/nuitka-run.cmd +0 -0
  29. {Nuitka_winsvc-2.4.1.data → Nuitka_winsvc-2.4.5.data}/scripts/nuitka.cmd +0 -0
  30. {Nuitka_winsvc-2.4.1.dist-info → Nuitka_winsvc-2.4.5.dist-info}/LICENSE.txt +0 -0
  31. {Nuitka_winsvc-2.4.1.dist-info → Nuitka_winsvc-2.4.5.dist-info}/entry_points.txt +0 -0
  32. {Nuitka_winsvc-2.4.1.dist-info → Nuitka_winsvc-2.4.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: 2.4.1
3
+ Version: 2.4.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,36 +1,36 @@
1
- Nuitka_winsvc-2.4.1.data/scripts/nuitka-run.cmd,sha256=ymcs9S9XtjCwZ7-oOj1gLisLaIj8uIxn-1mb0mTxWUI,924
2
- Nuitka_winsvc-2.4.1.data/scripts/nuitka.cmd,sha256=G-3yCOmURvmaYtciOLW4cMRGEcutzcsea4qDJqfezg0,1061
1
+ Nuitka_winsvc-2.4.5.data/scripts/nuitka-run.cmd,sha256=ymcs9S9XtjCwZ7-oOj1gLisLaIj8uIxn-1mb0mTxWUI,924
2
+ Nuitka_winsvc-2.4.5.data/scripts/nuitka.cmd,sha256=G-3yCOmURvmaYtciOLW4cMRGEcutzcsea4qDJqfezg0,1061
3
3
  nuitka/Builtins.py,sha256=IPBD00YlX9eNfKyKxyGRukVmwtoiaeJ4YLNdm1LoLOo,7560
4
4
  nuitka/BytecodeCaching.py,sha256=KFVx1wDKEG8bydgerI6k2YK6VXIZLmTfMxgZmUhkBWo,5787
5
5
  nuitka/Bytecodes.py,sha256=BFKfgzCHUb8-qs1VZcjaKpCwBMt7UKgkT8POEsYljLQ,3891
6
6
  nuitka/CacheCleanup.py,sha256=hFAQDCli0fg6h_TyXS4QU_Cl6_s8Wfy7YObArCj8xPs,1962
7
7
  nuitka/Constants.py,sha256=M240_yWAlS3WNrhjbGkd5SDZiDsHxWFxA0LYsKsW2fo,11181
8
8
  nuitka/Errors.py,sha256=Yw8-RTf7SEel-0ddEQAcvM9MwF6Es-l1X9wOkPRuEQg,2570
9
- nuitka/HardImportRegistry.py,sha256=nhdd9XlGf3iT-VXe9J4H7kw88i7VGV4yB_wFtcDfqR8,12020
9
+ nuitka/HardImportRegistry.py,sha256=a6kBsQICBQdxcnrJ-dArbUtMlYFNvlA32MHyvgpnlJg,12050
10
10
  nuitka/MainControl.py,sha256=hZ3_6zYI01j_xIUMONklCMxhnZR6ahJk7JaR_SWbibY,39044
11
11
  nuitka/ModuleRegistry.py,sha256=z1kdwF6DABgfu06I_KjoUmNHOx4PYd0rQpUwNYp92Fk,9122
12
12
  nuitka/OptionParsing.py,sha256=9vQP7BQbw9S30CWfg4ruqTi5hYu0KYV6IlCU2DfAIfc,65672
13
13
  nuitka/Options.py,sha256=dNIPSk2g5i4fWB3nRkFYrJE92V_LMYyQTBI0pXC_0MI,81506
14
14
  nuitka/OutputDirectories.py,sha256=sBX7_B7QogcKTHlTRY2Bfv7O9oi4EpYB2EcXyNRTiXM,5560
15
15
  nuitka/PostProcessing.py,sha256=VPZ6lBsTvMvLEHsWxOZw6ewo9gVEUF8C5LYZL5N04_Q,15373
16
- nuitka/Progress.py,sha256=GvQwzjCa7_WehXlC2S3F8s9IpaJLudgPAftpkzHwXL8,6805
16
+ nuitka/Progress.py,sha256=aAbGYqGtLuMsJ0_VdrllglCvaK2IP_ySR-cq-gmPK70,6855
17
17
  nuitka/PythonFlavors.py,sha256=byvv_b2iizbXmCqPb-4XTfIfdHSrQEngKppuAeE0hmc,10806
18
18
  nuitka/PythonOperators.py,sha256=YsVvyhiSk7QgbPIIwzln2qmHRopAgS7LvdyXb6x7dAE,4093
19
19
  nuitka/PythonVersions.py,sha256=DIfHyr3fJyIfD_IOL574xd71ehC4oFC-hVxEE2LU7P0,15046
20
20
  nuitka/Serialization.py,sha256=s_ChVkRqMmzZNj5EwWUKnRM7_bKnXPH49KHBJEVelRk,9525
21
21
  nuitka/SourceCodeReferences.py,sha256=quGcd9Kg3FjYwsSDDv49MWi_Yec2AurRp-cVspo5qqk,4703
22
- nuitka/Tracing.py,sha256=VWyCuu12WnPLhfNthJ_ypE0KOYhRcMgkViSu0X4vJSA,13477
22
+ nuitka/Tracing.py,sha256=OVxuhIVm78EWZtY9cl031a7DCei6uTbFOi2LBrZDiOY,13558
23
23
  nuitka/TreeXML.py,sha256=KGsCEB9Tu1HUNQd10AMWoYX82Qxso_DUfoiet4AiRoc,3654
24
24
  nuitka/Variables.py,sha256=53u-p0l58lrBg8nNSYd5DjR3AOGezMayUM7C05vANVM,15470
25
- nuitka/Version.py,sha256=iobP2vdf7cbtj0dXFseubAzMCT9TVs-8rNNJ3x4_SV4,2466
25
+ nuitka/Version.py,sha256=IyKx0tToPrQN_onQRk4UWY9ZyEinLRFVBoXq3XhXXuc,2466
26
26
  nuitka/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
27
27
  nuitka/__main__.py,sha256=dp8HcyiviRrEVm1OWjffOIy0DvkT4iW8R9wCjGpxwT8,7810
28
- nuitka/__past__.py,sha256=x9W6PDKU2SOY2Qbeu5kgiwgJ5edjG4BUPhdA-6qQ7mY,5604
28
+ nuitka/__past__.py,sha256=c9HaNn4DHQU3x1ip7aVSzdQqNAzDojYmr2KfMHbqmSQ,5739
29
29
  nuitka/build/Backend.scons,sha256=C7gVOIVLJygXlBVmjlF4maF9l_PPk8bUI1TKu9ECmpo,36890
30
30
  nuitka/build/CCompilerVersion.scons,sha256=Rs68LndV5ItFvA6W1_aEE9fXumAMXjUfP35kE1ma6Gg,8562
31
31
  nuitka/build/DataComposerInterface.py,sha256=xWrgCLG6PXoZsFjuTxc0f4XCSu80CDwYXmLJevp9VTw,3486
32
32
  nuitka/build/Onefile.scons,sha256=bGIq7NAR81aB_Rhnwn7vdMgjFF0E6BggGoUyf8TAOXY,17908
33
- nuitka/build/SconsCaching.py,sha256=XfPJxt2K1SqKwR_docnXw3pWijcoQZW02Xk-o0BBfJQ,15449
33
+ nuitka/build/SconsCaching.py,sha256=q62nXoMrqvZ4ZFc2hHBzKzIVxsbaE_TVRmsE-UlogHU,15466
34
34
  nuitka/build/SconsCompilerSettings.py,sha256=NS6-Xko6qQ_JbDXxGqDZHdeof1i_zwiItahKaPkqVzY,36447
35
35
  nuitka/build/SconsHacks.py,sha256=KvcjESBRMRcwAWZN5S09JbZNs9WAc7HvPXIiRRgJE0c,5802
36
36
  nuitka/build/SconsInterface.py,sha256=LmudNBGDrOLY1aRy8md6XBq-6hh9gMvRYf8HHGRMms4,18650
@@ -59,18 +59,18 @@ nuitka/build/include/nuitka/exceptions.h,sha256=XqzBCtpM7kDp0oovuacJNCUsd0htA1kL
59
59
  nuitka/build/include/nuitka/filesystem_paths.h,sha256=paPi3W-a0Vr5-CKJM_e7MgqIdtushqTYTP6uPqfNsBY,3792
60
60
  nuitka/build/include/nuitka/freelists.h,sha256=AOEbSqw8U7C3FAI-1iSnzdNPKSrUIM_h9vCfp1CpTQo,6774
61
61
  nuitka/build/include/nuitka/hedley.h,sha256=HHRA7HwPkxD3WBynZVSXxTc3HKaDK6f35srMJC894fs,86326
62
- nuitka/build/include/nuitka/helpers.h,sha256=XTzV353c__kGfB4hP6BOrGVgZ0vfIibYjCYRlSq0Nn0,17072
62
+ nuitka/build/include/nuitka/helpers.h,sha256=1Sny9MFu4AFUh16Vva6Fp86JP9Ye6NTAPIy26-GEJ88,17211
63
63
  nuitka/build/include/nuitka/importing.h,sha256=bY-c5SlSFmpQEeY6Q-dc8oHjefzvr2YYN8R9eWkk8gc,6268
64
64
  nuitka/build/include/nuitka/incbin.h,sha256=TRcdv5KUprIKXyKr4SBYFvOVFdIKWm_dyfdlEYxqJMM,12979
65
65
  nuitka/build/include/nuitka/jit_sources.h,sha256=DzJmqlSa-68fDQi7vFdZcNY64-Zv4SuvALrbVjvjheY,1086
66
- nuitka/build/include/nuitka/prelude.h,sha256=leOTqCrvr-98covTE4dGNP0e5RCogeRiXmwFtQofnHE,17753
66
+ nuitka/build/include/nuitka/prelude.h,sha256=3_04SnAlefdwUjVyw8mXmg5XqlDt2SfAOh3vYpORTpk,17602
67
67
  nuitka/build/include/nuitka/printing.h,sha256=amEzk4wEpzqo_wDe97feM0eJXaopTq92-BHLc0DF9eY,3334
68
68
  nuitka/build/include/nuitka/python_pgo.h,sha256=1gJNr_iGYPVCLWJ212GQJRuk_XreLysUXRd-anGwbNU,1811
69
69
  nuitka/build/include/nuitka/safe_string_ops.h,sha256=b-PSnlG7cCk4sygpu4xq5glvHR9jWO0ct7891ixsNX0,2421
70
70
  nuitka/build/include/nuitka/threading.h,sha256=d7XGBInJs0_X4U7aWqhEi66MDXpXxCvF7T6w_3C-qTk,3890
71
71
  nuitka/build/include/nuitka/tracing.h,sha256=CDlBOTJBNbA1V-1RyjoEbARg6UwBOfliR9pDfhcDxf8,3447
72
72
  nuitka/build/include/nuitka/type_aliases.h,sha256=AmtskVnDx2H5uJuSCWS9dpdE90en_KNs1RhhWd4QtSo,1145
73
- nuitka/build/include/nuitka/unfreezing.h,sha256=JkZF7ZpL7zPzmXgJ4w3jXPYz9csYldxQEXMtKWgJN74,3133
73
+ nuitka/build/include/nuitka/unfreezing.h,sha256=9SgdGb49u38PcAxJLrxuT77hX3vbhgiAmmfh_edy5E0,3350
74
74
  nuitka/build/include/nuitka/helper/attributes.h,sha256=Kyk5E4LFK8CahHzF6mHJzBcKVWhQZ_AzeZNZTqUAJvE,3913
75
75
  nuitka/build/include/nuitka/helper/boolean.h,sha256=VQkjl4w12qL-6ch6xfg-Icn4byhmwSZaoENvFfPuS2A,2692
76
76
  nuitka/build/include/nuitka/helper/bytearrays.h,sha256=nOWP8PCrM9j4DA0YHPDeBsnAB35tjhs42VQ3LxHtV6g,1233
@@ -449,7 +449,7 @@ nuitka/build/static_src/HelpersDumpBacktraces.c,sha256=YLLaUz69cqK1D6H-7WsN6bXgP
449
449
  nuitka/build/static_src/HelpersEnvironmentVariables.c,sha256=NFeGsWd6Z8TgvtbAWAITXK0fSOnoDPjbywjQpbo4j5k,2194
450
450
  nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c,sha256=gH3eizvT_9-hagDwFkHl5I2lxxIVa4G7GQkRJQSY7yY,2979
451
451
  nuitka/build/static_src/HelpersExceptions.c,sha256=ZLlSOG1c3s-TVM-U7COaNL1dDij-11ven1s-yiTKfZw,10646
452
- nuitka/build/static_src/HelpersFiles.c,sha256=hNGwL5p-wkOCxowyrh63zUF2ZEyyTXW_FzNMGHlTNls,8379
452
+ nuitka/build/static_src/HelpersFiles.c,sha256=KG3_OkqlkupVTs0meN43NhAlOAh30OJE2a4yJW_v5gU,8349
453
453
  nuitka/build/static_src/HelpersFilesystemPaths.c,sha256=rQ66z6vBrzktpOUoC3myQjLyOjMgUge5GbtW05qRz2Y,30635
454
454
  nuitka/build/static_src/HelpersFloats.c,sha256=0Gq3_hD25Jsg7WClqsq1o0f0JSDg--ROBON9oKoUIoU,2719
455
455
  nuitka/build/static_src/HelpersHeapStorage.c,sha256=UKucPIeZlW6sbzKnm2A9QKYTkKcv-jIJs2GDgsopsCc,1837
@@ -504,13 +504,13 @@ nuitka/build/static_src/HelpersSlices.c,sha256=cNCJUMPMY9BnEhK8fTSNnuSaf0NXnrSHo
504
504
  nuitka/build/static_src/HelpersStrings.c,sha256=-WLwXGcKdErdMLNNPT8seMdm9LOTLW2oJi9LscVACqU,32301
505
505
  nuitka/build/static_src/HelpersTuples.c,sha256=9yVThC0PIcHYadFLyPdf16Bs204TmE2gzTClKClvM8w,4481
506
506
  nuitka/build/static_src/HelpersTypes.c,sha256=vpGmy_oIY-Q19aSSsaYMur5orvkCWsL5rBP6BJ1OdXg,6916
507
- nuitka/build/static_src/InspectPatcher.c,sha256=NJCesU-b9Sut_Qrz7wMTJf4g3HT-Mw8XkkyNjc6vE1s,14331
508
- nuitka/build/static_src/MainProgram.c,sha256=Y3BDX-AsrkUqlM40LpRz6zwR8YXAaatHHkAEcgx1uXM,57506
509
- nuitka/build/static_src/MetaPathBasedLoader.c,sha256=JsRdDMlcz6XF_JOutw85v2HRJfXlELKw6uTh2VIFcRs,66951
507
+ nuitka/build/static_src/InspectPatcher.c,sha256=mQ0U_CyOC8I06X7DJ4qeDimFEljb2WHngB-Kf-qDwQ0,14752
508
+ nuitka/build/static_src/MainProgram.c,sha256=9ZqsMt-hF1w0cWupY_zXxqBskwtoTIXe0BPXqbm7a08,57450
509
+ nuitka/build/static_src/MetaPathBasedLoader.c,sha256=5vQfHpj84_fIb5grJpvVyepOv9706mARJsBVviwsXhY,67088
510
510
  nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c,sha256=Ja17tBwGgt6jVF8Hr8Wvhx0NKarqJ6IL7d149latRR0,5082
511
511
  nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c,sha256=K5zaC-z7r47DZiQbn4-aYvmm0AEYd3hCAeXw8Xtw9ew,6651
512
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c,sha256=D6m3LaeKj2oIu5wlCSVxJdlWW0CYgJ4bsNzFnllntlM,22881
513
- nuitka/build/static_src/OnefileBootstrap.c,sha256=8bescNcWknZiI1rwq1eqhWv645xA3-XXNUL0Ax4AxMA,38190
512
+ nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c,sha256=-Jd5ixaJcRbywWlkeLiGjBYwcXXq2KMiTzWngeuaF6Y,22875
513
+ nuitka/build/static_src/OnefileBootstrap.c,sha256=bQRAVpDwoN5TYlPUjtIs0didVnkxAjlywMdzwMwA3rw,40142
514
514
  nuitka/build/static_src/OnefileSplashScreen.cpp,sha256=SkDvJ9AqdiZvqHHuNxRFMvdMpnynGwaB0oDG4JaG4bs,8050
515
515
  nuitka/code_generation/AsyncgenCodes.py,sha256=WoPhZ374EZ_VY4ioTTDGqoASL4Y--7WC8u9LDVxoruo,6491
516
516
  nuitka/code_generation/AttributeCodes.py,sha256=9rp8iBP4lV33xde5eJmomF2rfmGddR3LRqTjAT8WHu0,10948
@@ -531,7 +531,7 @@ nuitka/code_generation/Contexts.py,sha256=i-dCvjRcIJNWRgg1Lm-CilyU0aqCfQTIXlFOmU
531
531
  nuitka/code_generation/CoroutineCodes.py,sha256=SR6PdDs0LXmCqvhQ5s0DzWi7ekM_Yejhxo_GygRnSLs,8589
532
532
  nuitka/code_generation/CtypesCodes.py,sha256=xHzHupSa4fei5uEq6dMhDYPFNTel5xVvLcGpDHfHDMo,1607
533
533
  nuitka/code_generation/DictCodes.py,sha256=KYrBWGddv0dlYj8elhIhav6UzjrgLijNEFpyXv7mj0w,28942
534
- nuitka/code_generation/Emission.py,sha256=S9sUFglkEqebcDgJS5cSSLdHn6wi7fA2_1qA3xbGs08,2159
534
+ nuitka/code_generation/Emission.py,sha256=ZVrcUo8IE7Kfpv2vEqBkPycJq8Yngen8Nm6YD0cAS4s,2159
535
535
  nuitka/code_generation/ErrorCodes.py,sha256=iSI0c4j922EwyYFH1Jq38evFDqZsFVvpydZg_R-nNTA,9289
536
536
  nuitka/code_generation/EvalCodes.py,sha256=kgc_A5fDJVlonDYmVhpVfX3iw5bRqwZj0EI_1_2LRc8,12983
537
537
  nuitka/code_generation/ExceptionCodes.py,sha256=6qAOt5gjDy6sVgwSHIr8ld-gaX00GSd_xwLZU5-DPHI,9243
@@ -544,7 +544,7 @@ nuitka/code_generation/GlobalConstants.py,sha256=jYSbJzqrgWtkXUJIe-UQr-mglMziOHb
544
544
  nuitka/code_generation/GlobalsLocalsCodes.py,sha256=VmTlxEE3vRsKuLGoM55KaTz-hHvECZYw7QDTSPMOPoU,6997
545
545
  nuitka/code_generation/IdCodes.py,sha256=kCjuVPNEXHTZRJ3ztopxfQHH2aTjKG9WxQ3lemCE7Us,1870
546
546
  nuitka/code_generation/ImportCodes.py,sha256=WCOqoqb2oNhOiuajFShaCa3QwpZa_OSHuzUO0-nvzVk,14727
547
- nuitka/code_generation/Indentation.py,sha256=0PTfuCfvT_QimQDMnAOLjbqgKz88F5R0yduT4nR2Xiw,1409
547
+ nuitka/code_generation/Indentation.py,sha256=4YXz4LUfWKuZVE4rUDEcSPyAe144t0ouV2BHhhEq4wE,1409
548
548
  nuitka/code_generation/IndexCodes.py,sha256=0vK-o0bC7hTZOfRw6lbc5CMxfBHtQxLZCFJyGSgl-MQ,1574
549
549
  nuitka/code_generation/InjectCCodes.py,sha256=EqJ6-OCOQ6NhrHmDZKLHqZVymXv-pu0v4qFUZlKTs1k,1066
550
550
  nuitka/code_generation/IntegerCodes.py,sha256=mZMWhwv3V-MIeV5qDstO9FtUyN8xLvn4Tyo7eMU_Dts,3567
@@ -557,7 +557,7 @@ nuitka/code_generation/LoaderCodes.py,sha256=9tAMRrEQGeWRfCKCvLZOAKZ02FgAL3JU5jN
557
557
  nuitka/code_generation/LocalsDictCodes.py,sha256=w6yiRbuVwJE2EmMasWZNYF2dsbv4owDkzn9O7xvHjS0,10792
558
558
  nuitka/code_generation/LoopCodes.py,sha256=eGXAoz6aXR-buzVz2MfAdphAkbBW4vur2bDTA2C835Y,3174
559
559
  nuitka/code_generation/MatchCodes.py,sha256=UiV2O7O-blu-wE0ZjzhotyAfR8Wa3ciZfRwaO8o2N24,2210
560
- nuitka/code_generation/ModuleCodes.py,sha256=DkTKn5kEF7vwb7_5hUjPF72gvxroc0f7Cx4-_dmo4kk,6956
560
+ nuitka/code_generation/ModuleCodes.py,sha256=7ux3cqsKcnkD3QP-1mFK2LXiidJ06DPNYicmgrLT8Pw,6953
561
561
  nuitka/code_generation/Namify.py,sha256=XoCzDL49VRrhPfaHdFokuSE1LH7dbla9sEbSgZKvyws,8336
562
562
  nuitka/code_generation/NetworkxCodes.py,sha256=W_Zd_JOpwg7yJ6NCguhOzsA3dD-F92sU7HvK3zeRw7E,1860
563
563
  nuitka/code_generation/OperationCodes.py,sha256=E3jXDpjLdztCpxWFF0DcRkJKDdO1z5C3qCaI_SqGS_s,12733
@@ -591,7 +591,7 @@ nuitka/code_generation/c_types/CTypePyObjectPointers.py,sha256=tCMn81AvwTPOJWT64
591
591
  nuitka/code_generation/c_types/CTypeVoids.py,sha256=oVHEa-7GVjp6bZEycei9j_cSkEt9p4PnkESxF2meA-c,2886
592
592
  nuitka/code_generation/c_types/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
593
593
  nuitka/code_generation/templates/CodeTemplatesAsyncgens.py,sha256=exms_JURf6hjfkNU4O1d8DTXsjOqArLcZrNXX-oEXoI,2948
594
- nuitka/code_generation/templates/CodeTemplatesConstants.py,sha256=8PBv8I3Hp3Wgu_F-Bnx8RlJ8kNsp-QnBKm5Fxa7SFDA,9614
594
+ nuitka/code_generation/templates/CodeTemplatesConstants.py,sha256=HUKwWcZ5TRRvih0_k9Me8DA29RsY2oY__svpf7ISzFg,10118
595
595
  nuitka/code_generation/templates/CodeTemplatesCoroutines.py,sha256=ETCq5cbhvOxm5qZ5reynszi5TfzAuPx0BgNMPVgLOlE,3040
596
596
  nuitka/code_generation/templates/CodeTemplatesExceptions.py,sha256=ORYYjz0OBYnjb_K1GIJE2IcCcrsSTfHCaz2tnKiTrGc,2439
597
597
  nuitka/code_generation/templates/CodeTemplatesFrames.py,sha256=QP6fABpLbYYiPpuvyjOX6Ke9k49_dWVoO33VjAbfcpw,6483
@@ -599,7 +599,7 @@ nuitka/code_generation/templates/CodeTemplatesFunction.py,sha256=aGrIgdCm6Bl4Tfc
599
599
  nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py,sha256=_zhGgLbxUzEbqcNmDJ1OQG0K2nfVqTytU4Q7pHZoBkA,3390
600
600
  nuitka/code_generation/templates/CodeTemplatesIterators.py,sha256=JFSVdRpnUFp6-0EaXEwFeTvm08TO7wG6jA8NLyoR_mc,2408
601
601
  nuitka/code_generation/templates/CodeTemplatesLoader.py,sha256=W19mYZeYH-i-09A-_lgTomBPSVEr78D0JnTHo8cRm5c,4565
602
- nuitka/code_generation/templates/CodeTemplatesModules.py,sha256=WrXJLd4fgoFc6kJPcshTJj4dH2atFtafLuXH8kHAHK8,23071
602
+ nuitka/code_generation/templates/CodeTemplatesModules.py,sha256=GG1tJZkVUSwHmx67fMHGDuUIyZKr45pDqsUvJGr8yWw,23585
603
603
  nuitka/code_generation/templates/CodeTemplatesVariables.py,sha256=6mzXWxxoUR3-yV05PwKGFECxF7EtzhofZisnoege3_4,7199
604
604
  nuitka/code_generation/templates/TemplateDebugWrapper.py,sha256=aeOpufKeOR3iMo63-FK_akKVwb_aNEo_I9ASB2GLmhs,2507
605
605
  nuitka/code_generation/templates/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
@@ -653,7 +653,7 @@ nuitka/freezer/DllDependenciesMacOS.py,sha256=oNJLqFnVaoGAHmRzLKsyABN0b_LU0jAESP
653
653
  nuitka/freezer/DllDependenciesPosix.py,sha256=FKzKDuVAViqI00CfADzqgYAJZqB416VaSS-MtApjjJs,7468
654
654
  nuitka/freezer/DllDependenciesWin32.py,sha256=K5_NGi_tl8_Oky9T198YlkbFjrPylzFPe7W-3kVfbZU,6837
655
655
  nuitka/freezer/ImportDetection.py,sha256=zJtJk-8rmHW-BngN5W6WPhQu6vHLsX9nbDSysytp_0k,11999
656
- nuitka/freezer/IncludedDataFiles.py,sha256=qLAuzEZED2XLmKSpBV4jeSHSZdbVfDt-I3Rkj32d56U,19702
656
+ nuitka/freezer/IncludedDataFiles.py,sha256=dFdZim30aD6TPaYHYMOa2a1DZlLDSqpsB4TwWWZbCIk,19771
657
657
  nuitka/freezer/IncludedEntryPoints.py,sha256=GRlGRaKHSOalp7tuWEgd8dC-Iaay8GpEI90phCd1Gww,12137
658
658
  nuitka/freezer/Onefile.py,sha256=GMEQysedmlLyn2sSkPrId13RY1sNY3n87qEn7LVCd7Y,10551
659
659
  nuitka/freezer/Standalone.py,sha256=hUz9ocsBTVyxjAgBEhV0WxiZlRJJB6yDuMG6QbbGTaI,13155
@@ -776,7 +776,7 @@ nuitka/optimizations/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSk
776
776
  nuitka/pgo/PGO.py,sha256=9oSnX1hXeuECPOujz4vadlGI6-wFYICWjdTBrE04G9c,4932
777
777
  nuitka/pgo/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
778
778
  nuitka/plugins/PluginBase.py,sha256=wNw8uTrBGyT-nEA55DvwwEGNUGvpw5zeSAokysZZSQY,57699
779
- nuitka/plugins/Plugins.py,sha256=kxYFTOwyyUBT1Su3GiBCin7I1aYtvG9Cjurb9byp76g,63971
779
+ nuitka/plugins/Plugins.py,sha256=3WZELyiJ1FS0hZZlo0IikhfQqb3z9UDQcMv-CoDIAj4,63971
780
780
  nuitka/plugins/YamlPluginBase.py,sha256=chUVAyth-W19CMBlypK66Jxk_DSZLHYx5hbdP3DBaPk,4215
781
781
  nuitka/plugins/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
782
782
  nuitka/plugins/standard/AntiBloatPlugin.py,sha256=RdNVtJbGlcnMTvIqemgjYlNt7X-58jFuF4ekVkCzokc,33231
@@ -809,7 +809,7 @@ nuitka/plugins/standard/TransformersPlugin.py,sha256=6Ex9lNg5OupnXhFPKq5ozDOikIb
809
809
  nuitka/plugins/standard/TrioPlugin.py,sha256=fIz_UTQfwBnl6MY4-XI4eKHPPsMeksPWYjnJU10mOb8,1107
810
810
  nuitka/plugins/standard/UpxPlugin.py,sha256=1I3WouiEmKQAvTkzhgmJ2FRjDKHC0oH9onENntmFphg,5668
811
811
  nuitka/plugins/standard/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
812
- nuitka/plugins/standard/standard.nuitka-package.config.yml,sha256=XrIikbx2U_rc0XXO248l2OWgKhHqFmEpVFNCgECxG-4,251986
812
+ nuitka/plugins/standard/standard.nuitka-package.config.yml,sha256=BCsyizt6HVmZwcK92WdZG8xnvBvjScTVFDjQB6Zn4pA,252874
813
813
  nuitka/plugins/standard/stdlib2.nuitka-package.config.yml,sha256=DRazC20zLXbc71ZMRu9kEA8N4Xe8Iry2sHNsUlbx4FE,2357
814
814
  nuitka/plugins/standard/stdlib3.nuitka-package.config.yml,sha256=LNFxB5sNVEmEntZaAUw8T5EuedLtfClhZLjuRsDOFPA,13637
815
815
  nuitka/plugins/standard/DillPlugin/DillPlugin.c,sha256=RbyX_UPvVZ00nN2bnIBVFoZ8xSZZ5YFJqVB6Qwg9GSo,1688
@@ -910,7 +910,7 @@ nuitka/tree/ReformulationTryFinallyStatements.py,sha256=p5agDmBt5lXoTejNDrpwbYGN
910
910
  nuitka/tree/ReformulationWhileLoopStatements.py,sha256=glgMVBAqPlE9StLkbiztGkxLYy7GE6tfVcrS_sZYLqs,5707
911
911
  nuitka/tree/ReformulationWithStatements.py,sha256=TPePwTcl1GaNBH5PAIIqrZrscX-DfZzNT2_0Nyx5q90,14108
912
912
  nuitka/tree/ReformulationYieldExpressions.py,sha256=dczTXGt5MQBSJK4CGUyTjH8YPqX8AzFDEkGi0TcXaAU,3852
913
- nuitka/tree/SourceHandling.py,sha256=RJLd4CP2OnueZbAeYCYlVrxB5GxDOLQE6be9NwEYYpE,13873
913
+ nuitka/tree/SourceHandling.py,sha256=5LoBdrhXeXd90KMCXS3KuJtffpqsjyzulvYqQ_5iovo,13877
914
914
  nuitka/tree/SyntaxErrors.py,sha256=tCliyBaI4Obd1-pHVBosvmlNWnCgQWfyGwA5ygIc4nc,3790
915
915
  nuitka/tree/TreeHelpers.py,sha256=oIQN6ZWwddhH6AcfINfdLPm_3rnq2M4T0OBOqvrW52s,23423
916
916
  nuitka/tree/VariableClosure.py,sha256=__5uNIE-nZcII9Z7CTDKOyFV_KE1J-eNOuj3WbAVYEg,19781
@@ -946,9 +946,9 @@ nuitka/utils/WindowsFileUsage.py,sha256=S6zm_4JQzaSyVmOoLdZDEq--SObR-CHofH4cvs__
946
946
  nuitka/utils/WindowsResources.py,sha256=npt3jbcTgh1M5G6jyEv6uFqiZIf84XEea3wXQ_sXGdM,19837
947
947
  nuitka/utils/Yaml.py,sha256=osd2K6G4XxSpzzTA-KzYoN8n2OF11zgB-4QxgJOig8M,7206
948
948
  nuitka/utils/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
949
- Nuitka_winsvc-2.4.1.dist-info/LICENSE.txt,sha256=ZWq74m8T3pVbRFjCBu74q_4GyW11rCqtYB_1vZ4rQ88,11348
950
- Nuitka_winsvc-2.4.1.dist-info/METADATA,sha256=M-Tn-fbG7Jt-3hoPuv6uXdAs_Piab2vRqaqtevZpGKY,4961
951
- Nuitka_winsvc-2.4.1.dist-info/WHEEL,sha256=SXv4eJlzP0RNHYKzGRJ91eDhAFO0Eo2_AdrKMJ52XEE,101
952
- Nuitka_winsvc-2.4.1.dist-info/entry_points.txt,sha256=jeBnijqxZ4U0WpNEdtaogpNMNlv5jw8H7yMOsf2isFc,308
953
- Nuitka_winsvc-2.4.1.dist-info/top_level.txt,sha256=TRrfKxSYukbo1yzTGfwyH7wVzhDpKlwQsLjhIr15yqY,7
954
- Nuitka_winsvc-2.4.1.dist-info/RECORD,,
949
+ Nuitka_winsvc-2.4.5.dist-info/LICENSE.txt,sha256=ZWq74m8T3pVbRFjCBu74q_4GyW11rCqtYB_1vZ4rQ88,11348
950
+ Nuitka_winsvc-2.4.5.dist-info/METADATA,sha256=pN67O6Tt-VyJ91JTL43YNtXiWWVZtSxlG6anxugyg6Q,4961
951
+ Nuitka_winsvc-2.4.5.dist-info/WHEEL,sha256=SAw8ns6kJWJnXnbRE00TtcpGWx44Z3WvjJsDRxwIxr8,101
952
+ Nuitka_winsvc-2.4.5.dist-info/entry_points.txt,sha256=jeBnijqxZ4U0WpNEdtaogpNMNlv5jw8H7yMOsf2isFc,308
953
+ Nuitka_winsvc-2.4.5.dist-info/top_level.txt,sha256=TRrfKxSYukbo1yzTGfwyH7wVzhDpKlwQsLjhIr15yqY,7
954
+ Nuitka_winsvc-2.4.5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (71.1.0)
2
+ Generator: setuptools (72.1.0)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp311-cp311-win_amd64
5
5
 
@@ -120,6 +120,7 @@ hard_modules_trust_with_side_effects = set(
120
120
  [
121
121
  "site",
122
122
  "tensorflow",
123
+ "importlib_metadata",
123
124
  # TODO: Disabled for now, keyword only arguments and star list argument are
124
125
  # having ordering issues for call matching and code generation.
125
126
  # "networkx.utils.decorators"
nuitka/Progress.py CHANGED
@@ -83,7 +83,8 @@ class NuitkaProgressBar(object):
83
83
 
84
84
  @contextmanager
85
85
  def withExternalWritingPause(self):
86
- with self.tqdm.external_write_mode():
86
+ # spell-checker: ignore nolock
87
+ with self.tqdm.external_write_mode(nolock=True):
87
88
  yield
88
89
 
89
90
 
nuitka/Tracing.py CHANGED
@@ -20,6 +20,7 @@ import sys
20
20
  import textwrap
21
21
  import traceback
22
22
 
23
+ from nuitka.__past__ import BrokenPipeError # pylint: disable=redefined-builtin
23
24
  from nuitka.utils.Utils import isWin32Windows
24
25
 
25
26
  # Written by Options module.
nuitka/Version.py CHANGED
@@ -20,7 +20,7 @@
20
20
  """
21
21
 
22
22
  version_string = """\
23
- Nuitka V2.4.1
23
+ Nuitka V2.4.5
24
24
  Copyright (C) 2024 Kay Hayen."""
25
25
 
26
26
 
nuitka/__past__.py CHANGED
@@ -168,6 +168,11 @@ try:
168
168
  except NameError:
169
169
  BaseExceptionGroup = None
170
170
 
171
+ try:
172
+ BrokenPipeError = BrokenPipeError # pylint: disable=I0021,redefined-builtin
173
+ except NameError:
174
+ BrokenPipeError = OSError
175
+
171
176
  try:
172
177
  _md5()
173
178
  except ValueError:
@@ -279,7 +279,7 @@ def _getCcacheStatistics(ccache_logfile):
279
279
  # can be matched against it.
280
280
  commands = {}
281
281
 
282
- for line in getFileContentByLine(ccache_logfile):
282
+ for line in getFileContentByLine(ccache_logfile, encoding="utf8"):
283
283
  match = re_command.match(line)
284
284
 
285
285
  if match:
@@ -162,7 +162,7 @@ extern PyObject *BUILTIN_OPEN(PyThreadState *tstate, PyObject *file_name, PyObje
162
162
  // Small helper to open files with few arguments in C.
163
163
  extern PyObject *BUILTIN_OPEN_BINARY_READ_SIMPLE(PyThreadState *tstate, PyObject *filename);
164
164
  extern PyObject *BUILTIN_OPEN_SIMPLE(PyThreadState *tstate, PyObject *filename, char const *mode, bool buffering,
165
- PyObject *encoding, bool close_fd);
165
+ PyObject *encoding);
166
166
 
167
167
  // Small helper to read file contents with few arguments in C.
168
168
  extern PyObject *GET_FILE_BYTES(PyThreadState *tstate, PyObject *filename);
@@ -294,7 +294,11 @@ extern PyObject *BUILTIN_LONG2(PyThreadState *tstate, PyObject *value, PyObject
294
294
  // For the constant loading:
295
295
 
296
296
  // Call this to initialize all common constants pre-main.
297
+ #if defined(_NUITKA_MODULE) && PYTHON_VERSION >= 0x3c0
298
+ extern void createGlobalConstants(PyThreadState *tstate, PyObject *real_module_name);
299
+ #else
297
300
  extern void createGlobalConstants(PyThreadState *tstate);
301
+ #endif
298
302
 
299
303
  // Call this to check of common constants are still intact.
300
304
  #ifndef __NUITKA_NO_ASSERT__
@@ -459,11 +459,6 @@ static inline PyObject *_Py_XNewRef(PyObject *obj) {
459
459
  #define NuitkaType_HasFeatureClass(descr) (1)
460
460
  #endif
461
461
 
462
- // For newer Python, this API was moved to global state
463
- #if PYTHON_VERSION >= 0x3c0
464
- #define _Py_PackageContext (_PyRuntime.imports.pkgcontext)
465
- #endif
466
-
467
462
  // Our replacement for "PyType_IsSubtype"
468
463
  extern bool Nuitka_Type_IsSubtype(PyTypeObject *a, PyTypeObject *b);
469
464
 
@@ -58,6 +58,12 @@ struct Nuitka_MetaPathBasedLoaderEntry {
58
58
  extern void registerMetaPathBasedLoader(struct Nuitka_MetaPathBasedLoaderEntry *loader_entries,
59
59
  unsigned char **bytecode_data);
60
60
 
61
+ // For module mode, embedded modules may have to be shifted to below the
62
+ // namespace they are loaded into.
63
+ #ifdef _NUITKA_MODULE
64
+ extern void updateMetaPathBasedLoaderModuleRoot(char const *module_root_name);
65
+ #endif
66
+
61
67
  /* Create a loader object responsible for a package. */
62
68
  extern PyObject *Nuitka_Loader_New(struct Nuitka_MetaPathBasedLoaderEntry const *entry);
63
69
 
@@ -10,7 +10,7 @@
10
10
 
11
11
  // Small helper to open files with few arguments.
12
12
  PyObject *BUILTIN_OPEN_SIMPLE(PyThreadState *tstate, PyObject *filename, char const *mode, bool buffering,
13
- PyObject *encoding, bool close_fd) {
13
+ PyObject *encoding) {
14
14
  PyObject *mode_obj = Nuitka_String_FromString(mode);
15
15
  PyObject *buffering_obj = buffering ? const_int_pos_1 : const_int_0;
16
16
 
@@ -38,7 +38,7 @@ PyObject *BUILTIN_OPEN_SIMPLE(PyThreadState *tstate, PyObject *filename, char co
38
38
  PyObject *mode_obj2 = PyUnicode_FromString("wb");
39
39
 
40
40
  PyObject *binary_stream =
41
- BUILTIN_OPEN(tstate, filename, mode_obj2, buffering_obj, NULL, NULL, NULL, BOOL_FROM(close_fd), NULL);
41
+ BUILTIN_OPEN(tstate, filename, mode_obj2, buffering_obj, NULL, NULL, NULL, NULL, NULL);
42
42
 
43
43
  Py_DECREF(mode_obj2);
44
44
 
@@ -258,8 +258,20 @@ class GeneratorWrapperEnhanced(_old_GeneratorWrapper):\n\
258
258
  if gen.gi_code.co_flags & 0x0020:\n\
259
259
  self._GeneratorWrapper__isgen = True\n\
260
260
  \n\
261
- types._GeneratorWrapper = GeneratorWrapperEnhanced\
262
- ";
261
+ types._GeneratorWrapper = GeneratorWrapperEnhanced\n"
262
+ #if PYTHON_VERSION >= 0x3b0
263
+ "\
264
+ import inspect\n\
265
+ _old_get_code_position = inspect._get_code_position\n\
266
+ def _get_code_position(code, instruction_index):\n\
267
+ try:\n\
268
+ return _old_get_code_position(code, instruction_index)\n\
269
+ except StopIteration:\n\
270
+ return None, None, None, None\n\
271
+ inspect._get_code_position=_get_code_position\n\
272
+ "
273
+ #endif
274
+ ;
263
275
 
264
276
  PyObject *wrapper_enhancement_code_object = Py_CompileString(wrapper_enhancement_code, "<exec>", Py_file_input);
265
277
  CHECK_OBJECT(wrapper_enhancement_code_object);
@@ -850,7 +850,7 @@ static void setInputOutputHandles(PyThreadState *tstate) {
850
850
  #else
851
851
  PyObject *filename = getExpandedTemplatePath(NUITKA_FORCED_STDOUT_PATH);
852
852
  #endif
853
- PyObject *stdout_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", SYSFLAG_UNBUFFERED != 1, encoding, false);
853
+ PyObject *stdout_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", SYSFLAG_UNBUFFERED != 1, encoding);
854
854
  if (unlikely(stdout_file == NULL)) {
855
855
  PyErr_PrintEx(1);
856
856
  Py_Exit(1);
@@ -867,7 +867,7 @@ static void setInputOutputHandles(PyThreadState *tstate) {
867
867
  #else
868
868
  PyObject *filename = getExpandedTemplatePath(NUITKA_FORCED_STDERR_PATH);
869
869
  #endif
870
- PyObject *stderr_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", false, encoding, false);
870
+ PyObject *stderr_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", false, encoding);
871
871
  if (unlikely(stderr_file == NULL)) {
872
872
  PyErr_PrintEx(1);
873
873
  Py_Exit(1);
@@ -888,19 +888,19 @@ static void setInputOutputHandles(PyThreadState *tstate) {
888
888
  if (shallSetOutputHandleToNull("stdin")) {
889
889
  // CPython core requires stdin to be buffered due to methods usage, and it won't matter
890
890
  // here much.
891
- PyObject *stdin_file = BUILTIN_OPEN_SIMPLE(tstate, devnull_filename, "r", true, encoding, false);
891
+ PyObject *stdin_file = BUILTIN_OPEN_SIMPLE(tstate, devnull_filename, "r", true, encoding);
892
892
 
893
893
  setStdinHandle(tstate, stdin_file);
894
894
  }
895
895
 
896
896
  if (shallSetOutputHandleToNull("stdout")) {
897
- PyObject *stdout_file = BUILTIN_OPEN_SIMPLE(tstate, devnull_filename, "w", false, encoding, false);
897
+ PyObject *stdout_file = BUILTIN_OPEN_SIMPLE(tstate, devnull_filename, "w", false, encoding);
898
898
 
899
899
  setStdoutHandle(tstate, stdout_file);
900
900
  }
901
901
 
902
902
  if (shallSetOutputHandleToNull("stderr")) {
903
- PyObject *stderr_file = BUILTIN_OPEN_SIMPLE(tstate, devnull_filename, "w", false, encoding, false);
903
+ PyObject *stderr_file = BUILTIN_OPEN_SIMPLE(tstate, devnull_filename, "w", false, encoding);
904
904
 
905
905
  setStderrHandle(tstate, stderr_file);
906
906
  }
@@ -1470,7 +1470,7 @@ orig_argv = argv;
1470
1470
  // platform ones in the future.
1471
1471
  PyObject *encoding = NULL;
1472
1472
 
1473
- PyObject *stdout_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", SYSFLAG_UNBUFFERED != 1, encoding, false);
1473
+ PyObject *stdout_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", SYSFLAG_UNBUFFERED != 1, encoding);
1474
1474
  if (unlikely(stdout_file == NULL)) {
1475
1475
  PyErr_PrintEx(1);
1476
1476
  Py_Exit(1);
@@ -1487,7 +1487,7 @@ orig_argv = argv;
1487
1487
  // platform ones in the future.
1488
1488
  PyObject *encoding = NULL;
1489
1489
 
1490
- PyObject *stderr_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", SYSFLAG_UNBUFFERED != 1, encoding, false);
1490
+ PyObject *stderr_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "w", SYSFLAG_UNBUFFERED != 1, encoding);
1491
1491
  if (unlikely(stderr_file == NULL)) {
1492
1492
  PyErr_PrintEx(1);
1493
1493
  Py_Exit(1);
@@ -1506,7 +1506,7 @@ orig_argv = argv;
1506
1506
 
1507
1507
  // CPython core requires stdin to be buffered due to methods usage, and it won't matter
1508
1508
  // here much.
1509
- PyObject *stdin_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "r", true, encoding, false);
1509
+ PyObject *stdin_file = BUILTIN_OPEN_SIMPLE(tstate, filename, "r", true, encoding);
1510
1510
 
1511
1511
  Py_DECREF(filename);
1512
1512
 
@@ -1962,6 +1962,42 @@ PyObject *Nuitka_Loader_New(struct Nuitka_MetaPathBasedLoaderEntry const *entry)
1962
1962
  return (PyObject *)result;
1963
1963
  }
1964
1964
 
1965
+ #ifdef _NUITKA_MODULE
1966
+ void updateMetaPathBasedLoaderModuleRoot(char const *module_root_name) {
1967
+ assert(module_root_name != NULL);
1968
+ char const *last_dot = strrchr(module_root_name, '.');
1969
+
1970
+ if (last_dot != NULL) {
1971
+ struct Nuitka_MetaPathBasedLoaderEntry *current = loader_entries;
1972
+ assert(current);
1973
+
1974
+ while (current->name != NULL) {
1975
+ if ((current->flags & NUITKA_TRANSLATED_FLAG) != 0) {
1976
+ current->name = UN_TRANSLATE(current->name);
1977
+ current->flags -= NUITKA_TRANSLATED_FLAG;
1978
+ }
1979
+
1980
+ char name[2048];
1981
+
1982
+ if (strcmp(last_dot + 1, current->name) == 0) {
1983
+ copyStringSafeN(name, module_root_name, last_dot - module_root_name + 1, sizeof(name));
1984
+ appendStringSafe(name, current->name, sizeof(name));
1985
+
1986
+ current->name = strdup(name);
1987
+ } else if (strncmp(last_dot + 1, current->name, strlen(last_dot + 1)) == 0 &&
1988
+ current->name[strlen(last_dot + 1)] == '.') {
1989
+ copyStringSafeN(name, module_root_name, last_dot - module_root_name + 1, sizeof(name));
1990
+ appendStringSafe(name, current->name, sizeof(name));
1991
+
1992
+ current->name = strdup(name);
1993
+ }
1994
+
1995
+ current++;
1996
+ }
1997
+ }
1998
+ }
1999
+ #endif
2000
+
1965
2001
  void registerMetaPathBasedLoader(struct Nuitka_MetaPathBasedLoaderEntry *_loader_entries,
1966
2002
  unsigned char **bytecode_data) {
1967
2003
  // Do it only once.
@@ -1977,43 +2013,14 @@ void registerMetaPathBasedLoader(struct Nuitka_MetaPathBasedLoaderEntry *_loader
1977
2013
  PySys_WriteStderr("Setup nuitka compiled module/bytecode/extension importer.\n");
1978
2014
  }
1979
2015
 
1980
- #ifdef _NUITKA_MODULE
1981
- if (_Py_PackageContext != NULL) {
1982
- char const *last_dot = strrchr(_Py_PackageContext, '.');
1983
-
1984
- if (last_dot != NULL) {
1985
- struct Nuitka_MetaPathBasedLoaderEntry *current = _loader_entries;
1986
- assert(current);
1987
-
1988
- while (current->name != NULL) {
1989
- if ((current->flags & NUITKA_TRANSLATED_FLAG) != 0) {
1990
- current->name = UN_TRANSLATE(current->name);
1991
- current->flags -= NUITKA_TRANSLATED_FLAG;
1992
- }
1993
-
1994
- char name[2048];
1995
-
1996
- if (strcmp(last_dot + 1, current->name) == 0) {
1997
- copyStringSafeN(name, _Py_PackageContext, last_dot - _Py_PackageContext + 1, sizeof(name));
1998
- appendStringSafe(name, current->name, sizeof(name));
1999
-
2000
- current->name = strdup(name);
2001
- } else if (strncmp(last_dot + 1, current->name, strlen(last_dot + 1)) == 0 &&
2002
- current->name[strlen(last_dot + 1)] == '.') {
2003
- copyStringSafeN(name, _Py_PackageContext, last_dot - _Py_PackageContext + 1, sizeof(name));
2004
- appendStringSafe(name, current->name, sizeof(name));
2005
-
2006
- current->name = strdup(name);
2007
- }
2016
+ loader_entries = _loader_entries;
2008
2017
 
2009
- current++;
2010
- }
2011
- }
2018
+ #if defined(_NUITKA_MODULE) && PYTHON_VERSION < 0x3c0
2019
+ if (_Py_PackageContext != NULL) {
2020
+ updateMetaPathBasedLoaderModuleRoot(_Py_PackageContext);
2012
2021
  }
2013
2022
  #endif
2014
2023
 
2015
- loader_entries = _loader_entries;
2016
-
2017
2024
  Nuitka_PyType_Ready(&Nuitka_Loader_Type, NULL, true, false, false, false, false);
2018
2025
 
2019
2026
  #ifdef _NUITKA_EXE
@@ -186,7 +186,7 @@ static PyObject *Nuitka_ResourceReaderFiles_read_text(struct Nuitka_ResourceRead
186
186
  return NULL;
187
187
  }
188
188
 
189
- PyObject *file_object = BUILTIN_OPEN_SIMPLE(tstate, file_name, "r", true, encoding, true);
189
+ PyObject *file_object = BUILTIN_OPEN_SIMPLE(tstate, file_name, "r", true, encoding);
190
190
 
191
191
  Py_DECREF(file_name);
192
192
 
@@ -814,20 +814,86 @@ extern bool checkSplashScreen(void);
814
814
  #endif
815
815
 
816
816
  #ifdef _WIN32
817
+
818
+ static bool containsWStringAny(wchar_t const *source, wchar_t const *characters) {
819
+ while (*characters) {
820
+ if (wcschr(source, *characters) != NULL) {
821
+ return true;
822
+ }
823
+
824
+ characters++;
825
+ }
826
+
827
+ return false;
828
+ }
829
+
817
830
  static wchar_t *getCommandLineForChildProcess(void) {
831
+
832
+ wchar_t *orig_command_line = GetCommandLineW();
833
+ #if defined(_NUITKA_EXPERIMENTAL_DEBUG_ONEFILE_HANDLING)
834
+ wprintf(L"Command line was '%ls'\n", orig_command_line);
835
+ #endif
836
+
818
837
  int argc;
819
- LPWSTR *argv = CommandLineToArgvW(GetCommandLineW(), &argc);
838
+ LPWSTR *argv = CommandLineToArgvW(orig_command_line, &argc);
820
839
  assert(argv != NULL);
821
840
  assert(argc > 0);
822
841
 
823
842
  static wchar_t result[32768];
824
843
  result[0] = 0;
825
844
 
826
- appendWStringSafeW(result, getBinaryPath(), sizeof(result) / sizeof(wchar_t));
845
+ argv[0] = getBinaryPath();
846
+
847
+ for (int i = 0; i < argc; i++) {
848
+ if (i >= 1) {
849
+ appendWCharSafeW(result, L' ', sizeof(result) / sizeof(wchar_t));
850
+ }
851
+
852
+ bool needs_quote = containsWStringAny(argv[i], L" \t\n\v\"");
827
853
 
828
- for (int i = 1; i < argc; i++) {
829
- appendWCharSafeW(result, L' ', sizeof(result) / sizeof(wchar_t));
830
- appendWStringSafeW(result, argv[i], sizeof(result) / sizeof(wchar_t));
854
+ #if defined(_NUITKA_EXPERIMENTAL_DEBUG_ONEFILE_HANDLING)
855
+ wprintf(L"Command line arg %d was '%ls' needs quoting %ls\n", i, argv[i], needs_quote ? L"yes" : L"no");
856
+ #endif
857
+
858
+ if (needs_quote) {
859
+ appendWCharSafeW(result, L'"', sizeof(result) / sizeof(wchar_t));
860
+
861
+ wchar_t const *current = argv[i];
862
+
863
+ for (;;) {
864
+ int backslash_count = 0;
865
+
866
+ while (*current == L'\\') {
867
+ current++;
868
+ backslash_count += 1;
869
+ }
870
+
871
+ if (*current == 0) {
872
+ for (int j = 0; j < backslash_count * 2; j++) {
873
+ appendWCharSafeW(result, L'\\', sizeof(result) / sizeof(wchar_t));
874
+ }
875
+
876
+ break;
877
+ } else if (*current == L'"') {
878
+ for (int j = 0; j < backslash_count * 2 + 1; j++) {
879
+ appendWCharSafeW(result, L'\\', sizeof(result) / sizeof(wchar_t));
880
+ }
881
+ } else {
882
+ for (int j = 0; j < backslash_count; j++) {
883
+ appendWCharSafeW(result, L'\\', sizeof(result) / sizeof(wchar_t));
884
+ }
885
+ }
886
+
887
+ appendWCharSafeW(result, *current, sizeof(result) / sizeof(wchar_t));
888
+
889
+ current++;
890
+ }
891
+
892
+ appendWCharSafeW(result, L'"', sizeof(result) / sizeof(wchar_t));
893
+
894
+ } else {
895
+ appendWStringSafeW(result, argv[i], sizeof(result) / sizeof(wchar_t));
896
+ }
831
897
  }
832
898
 
833
899
  #if defined(_NUITKA_EXPERIMENTAL_DEBUG_ONEFILE_HANDLING)
@@ -50,7 +50,7 @@ def withSubCollector(emit, context):
50
50
  for local_declaration in local_declarations:
51
51
  emit(indented(local_declaration))
52
52
 
53
- sub_emit.emitTo(emit, level=1)
53
+ sub_emit.emitTo(emit, level=4)
54
54
 
55
55
  emit("}")
56
56
  else:
@@ -14,7 +14,7 @@ def _indentedCode(codes, prefix):
14
14
  )
15
15
 
16
16
 
17
- def indented(codes, level=1, vert_block=False):
17
+ def indented(codes, level=4, vert_block=False):
18
18
  if type(codes) is str:
19
19
  codes = codes.split("\n")
20
20
 
@@ -152,7 +152,7 @@ def getModuleCode(
152
152
  "module_codes": indented(module_codes.codes),
153
153
  "module_exit": module_exit,
154
154
  "module_code_objects_decl": indented(module_code_objects_decl, 0),
155
- "module_code_objects_init": indented(module_code_objects_init, 1),
155
+ "module_code_objects_init": indented(module_code_objects_init),
156
156
  "constants_count": context.getConstantsCount(),
157
157
  "module_const_blob_name": module_const_blob_name,
158
158
  "module_dll_entry_point": module_dll_entry_point,
@@ -62,7 +62,11 @@ extern void setDistributionsMetadata(PyThreadState *tstate, PyObject *metadata_i
62
62
  // We provide the sys.version info shortcut as a global value here for ease of use.
63
63
  PyObject *Py_SysVersionInfo = NULL;
64
64
 
65
+ #if defined(_NUITKA_MODULE) && PYTHON_VERSION >= 0x3c0
66
+ static void _createGlobalConstants(PyThreadState *tstate, PyObject *real_module_name) {
67
+ #else
65
68
  static void _createGlobalConstants(PyThreadState *tstate) {
69
+ #endif
66
70
  // We provide the sys.version info shortcut as a global value here for ease of use.
67
71
  Py_SysVersionInfo = Nuitka_SysGetObject("version_info");
68
72
 
@@ -216,11 +220,15 @@ static void _createGlobalConstants(PyThreadState *tstate) {
216
220
  #ifdef _NUITKA_MODULE
217
221
  PyObject *main_name;
218
222
 
223
+ #if PYTHON_VERSION < 0x3c0
219
224
  if (_Py_PackageContext != NULL) {
220
225
  main_name = Nuitka_String_FromString(_Py_PackageContext);
221
226
  } else {
222
227
  main_name = Nuitka_String_FromString(%(module_name_cstr)s);
223
228
  }
229
+ #else
230
+ main_name = real_module_name;
231
+ #endif
224
232
  #else
225
233
  PyObject *main_name = Nuitka_String_FromString("__main__");
226
234
  #endif
@@ -244,7 +252,11 @@ void checkGlobalConstants(void) {
244
252
  }
245
253
  #endif
246
254
 
255
+ #if defined(_NUITKA_MODULE) && PYTHON_VERSION >= 0x3c0
256
+ void createGlobalConstants(PyThreadState *tstate, PyObject *real_module_name) {
257
+ #else
247
258
  void createGlobalConstants(PyThreadState *tstate) {
259
+ #endif
248
260
  if (Nuitka_sentinel_value == NULL) {
249
261
  #if PYTHON_VERSION < 0x300
250
262
  Nuitka_sentinel_value = PyCObject_FromVoidPtr(NULL, NULL);
@@ -256,7 +268,11 @@ void createGlobalConstants(PyThreadState *tstate) {
256
268
 
257
269
  Py_SET_REFCNT_IMMORTAL(Nuitka_sentinel_value);
258
270
 
271
+ #if defined(_NUITKA_MODULE) && PYTHON_VERSION >= 0x3c0
272
+ _createGlobalConstants(tstate, real_module_name);
273
+ #else
259
274
  _createGlobalConstants(tstate);
275
+ #endif
260
276
  }
261
277
  }
262
278
  """
@@ -251,6 +251,11 @@ static PyMethodDef _method_def_create_compiled_function = {
251
251
 
252
252
  #endif
253
253
 
254
+ // Actual name might be different when loaded as a package.
255
+ #if defined(_NUITKA_MODULE) && %(is_top)d
256
+ static char const *module_full_name = %(module_name_cstr)s;
257
+ #endif
258
+
254
259
  // Internal entry point for module code.
255
260
  PyObject *modulecode_%(module_identifier)s(PyThreadState *tstate, PyObject *module, struct Nuitka_MetaPathBasedLoaderEntry const *loader_entry) {
256
261
  // Report entry to PGO.
@@ -259,6 +264,8 @@ PyObject *modulecode_%(module_identifier)s(PyThreadState *tstate, PyObject *modu
259
264
  // Store the module for future use.
260
265
  module_%(module_identifier)s = module;
261
266
 
267
+ moduledict_%(module_identifier)s = MODULE_DICT(module_%(module_identifier)s);
268
+
262
269
  // Modules can be loaded again in case of errors, avoid the init being done again.
263
270
  static bool init_done = false;
264
271
 
@@ -272,8 +279,18 @@ PyObject *modulecode_%(module_identifier)s(PyThreadState *tstate, PyObject *modu
272
279
  #endif
273
280
  // Initialize the constant values used.
274
281
  _initBuiltinModule();
275
- createGlobalConstants(tstate);
276
282
 
283
+ #if PYTHON_VERSION >= 0x3c0
284
+ PyObject *real_module_name = PyObject_GetAttrString(module, "__name__");
285
+ CHECK_OBJECT(real_module_name);
286
+ module_full_name = strdup(Nuitka_String_AsString(real_module_name));
287
+ #endif
288
+
289
+ #if PYTHON_VERSION >= 0x3c0
290
+ createGlobalConstants(tstate, real_module_name);
291
+ #else
292
+ createGlobalConstants(tstate);
293
+ #endif
277
294
  /* Initialize the compiled types of Nuitka. */
278
295
  _initCompiledCellType();
279
296
  _initCompiledGeneratorType();
@@ -293,6 +310,10 @@ PyObject *modulecode_%(module_identifier)s(PyThreadState *tstate, PyObject *modu
293
310
  PRINT_STRING("%(module_identifier)s: Calling setupMetaPathBasedLoader().\n");
294
311
  #endif
295
312
  setupMetaPathBasedLoader(tstate);
313
+ #if PYTHON_VERSION >= 0x3c0
314
+ updateMetaPathBasedLoaderModuleRoot(module_full_name);
315
+ #endif
316
+
296
317
 
297
318
  #if PYTHON_VERSION >= 0x300
298
319
  patchInspectModule(tstate);
@@ -318,8 +339,6 @@ PyObject *modulecode_%(module_identifier)s(PyThreadState *tstate, PyObject *modu
318
339
 
319
340
  // PRINT_STRING("in init%(module_identifier)s\n");
320
341
 
321
- moduledict_%(module_identifier)s = MODULE_DICT(module_%(module_identifier)s);
322
-
323
342
  #ifdef _NUITKA_PLUGIN_DILL_ENABLED
324
343
  {
325
344
  char const *module_name_c;
@@ -540,9 +559,6 @@ static struct PyModuleDef mdef_%(module_identifier)s = {
540
559
  };
541
560
  #endif
542
561
 
543
- // Actual name might be different when loaded as a package.
544
- static char const *module_full_name = %(module_name_cstr)s;
545
-
546
562
  #if PYTHON_VERSION < 0x300
547
563
  static void onModuleFileValueRelease(void *v) {
548
564
  if (orig_dunder_file_value != NULL) {
@@ -609,11 +625,13 @@ static int %(module_dll_entry_point)s_slot(PyObject *module) {
609
625
  #endif
610
626
 
611
627
  NUITKA_MODULE_INIT_FUNCTION (%(module_dll_entry_point)s)(void) {
628
+ #if PYTHON_VERSION < 0x3c0
612
629
  if (_Py_PackageContext != NULL) {
613
630
  if (strcmp(module_full_name, _Py_PackageContext) != 0) {
614
631
  module_full_name = strdup(_Py_PackageContext);
615
632
  }
616
633
  }
634
+ #endif
617
635
 
618
636
  #if PYTHON_VERSION < 0x300
619
637
  PyObject *module = Py_InitModule4(
@@ -356,6 +356,8 @@ def _addIncludedDataFilesFromFileOptions():
356
356
  else:
357
357
  rel_path = os.path.join(dest_path, relpath(filename, source_path))
358
358
 
359
+ rel_path = os.path.normpath(rel_path)
360
+
359
361
  if containsPathElements(rel_path, default_ignored_dirs):
360
362
  continue
361
363
 
@@ -378,7 +380,7 @@ def _addIncludedDataFilesFromFileOptions():
378
380
 
379
381
  for included_datafile in makeIncludedDataDirectory(
380
382
  source_path=source_path,
381
- dest_path=dest_path,
383
+ dest_path=os.path.normpath(dest_path),
382
384
  reason="specified data dir '%s' on command line" % source_path,
383
385
  tracer=options_logger,
384
386
  tags="user",
nuitka/plugins/Plugins.py CHANGED
@@ -425,7 +425,7 @@ class Plugins(object):
425
425
  except Exception:
426
426
  plugin.warning(
427
427
  "Problem locating '%s' for implicit imports of '%s'."
428
- % (module.getFullName(), full_name)
428
+ % (full_name, module.getFullName())
429
429
  )
430
430
  raise
431
431
 
@@ -160,10 +160,14 @@
160
160
  - depends:
161
161
  - 'apt_pkg'
162
162
 
163
- - module-name: 'arcade' # checksum: 3f9f0b7d
163
+ - module-name: 'arcade' # checksum: 12848707
164
164
  data-files:
165
165
  dirs:
166
- - 'resources'
166
+ - 'resources/system'
167
+ anti-bloat:
168
+ - no-auto-follow:
169
+ 'examples': 'Arcade examples are not be available unless you do "--include-module=acade.examples"'
170
+ 'experimental': 'Experimental features of Arcade will not be available unless you do "--include-module=acade.experimental"'
167
171
 
168
172
  - module-name: 'aspose' # checksum: 9babf530
169
173
  data-files:
@@ -2136,6 +2140,11 @@
2136
2140
  prefixes:
2137
2141
  - 'libusb'
2138
2142
 
2143
+ - module-name: 'license-expression' # checksum: 810a705a
2144
+ data-files:
2145
+ dirs:
2146
+ - 'data'
2147
+
2139
2148
  - module-name: 'lightgbm' # checksum: 38422ad6
2140
2149
  data-files:
2141
2150
  dirs:
@@ -2599,6 +2608,12 @@
2599
2608
  'from IPython.utils.path import get_ipython_cache_dir': 'raise ImportError'
2600
2609
  when: 'not use_ipython'
2601
2610
 
2611
+ - module-name: 'numba.core.entrypoints' # checksum: 84d4c71e
2612
+ anti-bloat:
2613
+ - description: 'avoid importlib backport usage'
2614
+ replacements:
2615
+ 'if PYVERSION': '"if " + repr(sys.version_info[:2])'
2616
+
2602
2617
  - module-name: 'numba.cuda' # checksum: 3173fc81
2603
2618
  anti-bloat:
2604
2619
  - description: 'remove numba testing reference'
@@ -3380,6 +3395,13 @@
3380
3395
  replacements_plain:
3381
3396
  'if name == "testing":': 'if False:'
3382
3397
 
3398
+ - module-name: 'pandera' # checksum: 6ac5aa4f
3399
+ anti-bloat:
3400
+ - description: 'remove dask reference'
3401
+ no-auto-follow:
3402
+ 'dask': 'ignore'
3403
+ when: 'not use_dask'
3404
+
3383
3405
  - module-name: 'panel' # checksum: 87b79d62
3384
3406
  data-files:
3385
3407
  dirs:
@@ -3953,7 +3975,7 @@
3953
3975
  - 'pycrfsuite._dumpparser'
3954
3976
  - 'pycrfsuite._logparser'
3955
3977
 
3956
- - module-name: 'pydantic' # checksum: fb2935eb
3978
+ - module-name: 'pydantic' # checksum: 190f6343
3957
3979
  implicit-imports:
3958
3980
  - depends:
3959
3981
  - 'pydantic.typing'
@@ -3975,6 +3997,8 @@
3975
3997
  - 'pydantic.class_validators'
3976
3998
  - 'pydantic.networks'
3977
3999
  - 'pydantic.errors'
4000
+ # Not part of their general lazy loader, the aboves should become that.
4001
+ - 'pydantic.deprecated.decorator'
3978
4002
 
3979
4003
  - module-name: 'pydantic.errors' # checksum: edc1c868
3980
4004
  implicit-imports:
@@ -374,7 +374,7 @@ def parsePyIFile(module_name, pyi_filename):
374
374
  if dot_count > 0:
375
375
  if origin_name:
376
376
  origin_name = module_name.getRelativePackageName(
377
- level=dot_count
377
+ level=dot_count - 1
378
378
  ).getChildNamed(origin_name)
379
379
  else:
380
380
  origin_name = module_name.getRelativePackageName(