Nuitka-winsvc 2.1.3__cp311-cp311-win_amd64.whl → 2.1.4__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.
- {Nuitka_winsvc-2.1.3.dist-info → Nuitka_winsvc-2.1.4.dist-info}/METADATA +1 -1
- {Nuitka_winsvc-2.1.3.dist-info → Nuitka_winsvc-2.1.4.dist-info}/RECORD +21 -21
- nuitka/Options.py +1 -0
- nuitka/Version.py +1 -1
- nuitka/build/static_src/HelpersFilesystemPaths.c +11 -5
- nuitka/build/static_src/HelpersLists.c +50 -13
- nuitka/code_generation/GlobalConstants.py +2 -0
- nuitka/code_generation/ListCodes.py +1 -1
- nuitka/plugins/PluginBase.py +10 -0
- nuitka/plugins/standard/ImplicitImports.py +12 -0
- nuitka/plugins/standard/MatplotlibPlugin.py +16 -0
- nuitka/plugins/standard/OptionsNannyPlugin.py +9 -7
- nuitka/plugins/standard/standard.nuitka-package.config.yml +111 -124
- nuitka/reports/Reports.py +11 -4
- nuitka/utils/FileOperations.py +16 -0
- {Nuitka_winsvc-2.1.3.data → Nuitka_winsvc-2.1.4.data}/scripts/nuitka-run.bat +0 -0
- {Nuitka_winsvc-2.1.3.data → Nuitka_winsvc-2.1.4.data}/scripts/nuitka.bat +0 -0
- {Nuitka_winsvc-2.1.3.dist-info → Nuitka_winsvc-2.1.4.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.1.3.dist-info → Nuitka_winsvc-2.1.4.dist-info}/WHEEL +0 -0
- {Nuitka_winsvc-2.1.3.dist-info → Nuitka_winsvc-2.1.4.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.1.3.dist-info → Nuitka_winsvc-2.1.4.dist-info}/top_level.txt +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
Nuitka_winsvc-2.1.
|
|
2
|
-
Nuitka_winsvc-2.1.
|
|
1
|
+
Nuitka_winsvc-2.1.4.data/scripts/nuitka-run.bat,sha256=zzCZ6CymZcBcI_BMB1RwNIegL0JcACGwKTMeIW-aaOU,924
|
|
2
|
+
Nuitka_winsvc-2.1.4.data/scripts/nuitka.bat,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=7kFpFEWpyL9clv1LIHtIhYPJi0psItCcn0RYf4paEuA,3800
|
|
@@ -10,7 +10,7 @@ nuitka/HardImportRegistry.py,sha256=mquDn6znusONCBZkd1qSSIIseNG2B9EWc62AWIZ0ufQ,
|
|
|
10
10
|
nuitka/MainControl.py,sha256=MpUcKFw16tiXmOKtrnLArHNlp3XEjinQjwalK7Ozp1Q,38348
|
|
11
11
|
nuitka/ModuleRegistry.py,sha256=lIElF9BCVa2JmmhsBjyjAt6MSFo2vusJ71RUrkaMAQo,8616
|
|
12
12
|
nuitka/OptionParsing.py,sha256=ofKRnuwNLL-hDI7wA8kUDozbTkgi74xtKGr_x1jJFS0,64040
|
|
13
|
-
nuitka/Options.py,sha256=
|
|
13
|
+
nuitka/Options.py,sha256=5ChUTjvtxt9xTWTyXLA8CYngtCRbM2L4fAPqjmIOIiI,75581
|
|
14
14
|
nuitka/OutputDirectories.py,sha256=7hM8zVNoclTVup6StkxUuhRJ8IEHjhaKXX3lb03BmcY,5276
|
|
15
15
|
nuitka/PostProcessing.py,sha256=8IeVz3GNx4OkgEaP2HALSbZi1bFdaIicioD10l5_n3o,14940
|
|
16
16
|
nuitka/Progress.py,sha256=0QQ0cHSBMz5FNxUTPZrT4cyKfuryuDLeMPloCFWsABI,6797
|
|
@@ -22,7 +22,7 @@ nuitka/SourceCodeReferences.py,sha256=quGcd9Kg3FjYwsSDDv49MWi_Yec2AurRp-cVspo5qq
|
|
|
22
22
|
nuitka/Tracing.py,sha256=7BE6sDP5XmOWzoQnjC05ll2b5i38KLzXr2V5zI4eXX4,13335
|
|
23
23
|
nuitka/TreeXML.py,sha256=SKL4lL6Tcfu7Uetq-KaFo3q0-M18bp6Szc4eMrNwrfw,3513
|
|
24
24
|
nuitka/Variables.py,sha256=53u-p0l58lrBg8nNSYd5DjR3AOGezMayUM7C05vANVM,15470
|
|
25
|
-
nuitka/Version.py,sha256=
|
|
25
|
+
nuitka/Version.py,sha256=CmAdX3G6n2LnMYg7fWP0ZDF7afLGtlU269bDDHflPe8,2466
|
|
26
26
|
nuitka/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
27
27
|
nuitka/__main__.py,sha256=HZFjEt3fdlQLqcreBI6dlUvA53IqQMnZE4Aj5FPwu1s,6373
|
|
28
28
|
nuitka/__past__.py,sha256=x9W6PDKU2SOY2Qbeu5kgiwgJ5edjG4BUPhdA-6qQ7mY,5604
|
|
@@ -426,12 +426,12 @@ nuitka/build/static_src/HelpersEnvironmentVariables.c,sha256=NFeGsWd6Z8TgvtbAWAI
|
|
|
426
426
|
nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c,sha256=gH3eizvT_9-hagDwFkHl5I2lxxIVa4G7GQkRJQSY7yY,2979
|
|
427
427
|
nuitka/build/static_src/HelpersExceptions.c,sha256=LF_wD4iuiBxOJ4knEQlaMsXU6u7e6CsdjM0JiLPSURM,7145
|
|
428
428
|
nuitka/build/static_src/HelpersFiles.c,sha256=th2W88Qgfz7BtYVx-J273JS74mavLFyHxJDv-O4RTWA,8018
|
|
429
|
-
nuitka/build/static_src/HelpersFilesystemPaths.c,sha256=
|
|
429
|
+
nuitka/build/static_src/HelpersFilesystemPaths.c,sha256=1B3jal9mlQdtXwNoZSrISp2NLjGvV7LCagfJoCPYNl4,28806
|
|
430
430
|
nuitka/build/static_src/HelpersFloats.c,sha256=prn_PJ6OW408oVNSuRAVgUBeGh_6VmLcbImrpm_LmTQ,2455
|
|
431
431
|
nuitka/build/static_src/HelpersHeapStorage.c,sha256=MAnXlbBSrKR5hMBqEQnNOUfcDS7v0rhxcC7awaFUErw,1803
|
|
432
432
|
nuitka/build/static_src/HelpersImport.c,sha256=By3gv6XUaX6V5WeGuW11s3OJ-Q404hngLaQW4dVDU-o,16080
|
|
433
433
|
nuitka/build/static_src/HelpersImportHard.c,sha256=gCfQnlIjYgSv3vEWWKR-9xn_g43GvJLLetueRve5u0Y,16403
|
|
434
|
-
nuitka/build/static_src/HelpersLists.c,sha256=
|
|
434
|
+
nuitka/build/static_src/HelpersLists.c,sha256=_7S8vxAVvpVDp_DAoN49eA4WjoPg2poXmlKraYjXHQM,19996
|
|
435
435
|
nuitka/build/static_src/HelpersListsGenerated.c,sha256=IcKy25_HGf01NXb9nAmQ0QhdbrD8vlx-sdfe_j_QAnk,13944
|
|
436
436
|
nuitka/build/static_src/HelpersMappings.c,sha256=f3s_pCQGKeMiWD7AmdZEXGgLRvT3r-Fzgos2Yr9Gqvg,1669
|
|
437
437
|
nuitka/build/static_src/HelpersMatching.c,sha256=RZE2m2mt5jV_h4KzR9zLRxm1AOKI472TULGjrShnm-E,3587
|
|
@@ -515,7 +515,7 @@ nuitka/code_generation/ExpressionCodes.py,sha256=XEngo5BLKaV8I_h0nnFCbjl1mNDeuST
|
|
|
515
515
|
nuitka/code_generation/FrameCodes.py,sha256=4eku-4VXfWqWK6cScaFr-MjrqHYTHMu3awlUNr8bsTE,17804
|
|
516
516
|
nuitka/code_generation/FunctionCodes.py,sha256=_3uHG-fU0SubqBl3-zp8IunoQfNAuaxsYm-vRJrthQ0,28337
|
|
517
517
|
nuitka/code_generation/GeneratorCodes.py,sha256=LztRxayhsc8mWkvPA9_WIaOU2Ld2q-ZNpuaZTZBnL1g,7828
|
|
518
|
-
nuitka/code_generation/GlobalConstants.py,sha256=
|
|
518
|
+
nuitka/code_generation/GlobalConstants.py,sha256=w3_igsJm-jR6f60cklLoyepjehzOKOyYmGRWknKEi60,6384
|
|
519
519
|
nuitka/code_generation/GlobalsLocalsCodes.py,sha256=VUP7sYWwtU6R7pMOejTjtEtHjSssItKhxy-WTdUruDo,6985
|
|
520
520
|
nuitka/code_generation/IdCodes.py,sha256=kCjuVPNEXHTZRJ3ztopxfQHH2aTjKG9WxQ3lemCE7Us,1870
|
|
521
521
|
nuitka/code_generation/ImportCodes.py,sha256=5h-UHd2E0EB480rzX2e_Oc4qD38m9jZrRnkvT-lgN6M,14684
|
|
@@ -526,7 +526,7 @@ nuitka/code_generation/IntegerCodes.py,sha256=mZMWhwv3V-MIeV5qDstO9FtUyN8xLvn4Ty
|
|
|
526
526
|
nuitka/code_generation/IteratorCodes.py,sha256=TQAgoIaV4zZck91CfmyL74uJKdv6fG8AJkxL5-qWShY,12211
|
|
527
527
|
nuitka/code_generation/LabelCodes.py,sha256=53aDcH6YJPLbr2CYvRMoSbcCc9qyIXy0aq5oPjEd2cg,2055
|
|
528
528
|
nuitka/code_generation/LineNumberCodes.py,sha256=pLche-cwZiQLYdU-CwnGm0_kE58SH_9kdPuGORfe8S0,2645
|
|
529
|
-
nuitka/code_generation/ListCodes.py,sha256=
|
|
529
|
+
nuitka/code_generation/ListCodes.py,sha256=_gQAH3tTCM_KQAOn0gh3Bxj4CUeoAAHwFM1q2a_xxnM,16152
|
|
530
530
|
nuitka/code_generation/LoaderCodes.py,sha256=3WvIV-9OwLBltHI4WCXehg0TOp-9ELMCl5ILQKXWJdo,6658
|
|
531
531
|
nuitka/code_generation/LocalsDictCodes.py,sha256=pUkUhT4lMuG-vvYas7vqqpdq0ra6c_69fEcOAKwn4mo,10016
|
|
532
532
|
nuitka/code_generation/LoopCodes.py,sha256=eGXAoz6aXR-buzVz2MfAdphAkbBW4vur2bDTA2C835Y,3174
|
|
@@ -744,7 +744,7 @@ nuitka/optimizations/ValueTraces.py,sha256=m_d8JbsGWFbnxuV58sOPVPtnU-Rh6Br3pAAtA
|
|
|
744
744
|
nuitka/optimizations/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
745
745
|
nuitka/pgo/PGO.py,sha256=9oSnX1hXeuECPOujz4vadlGI6-wFYICWjdTBrE04G9c,4932
|
|
746
746
|
nuitka/pgo/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
747
|
-
nuitka/plugins/PluginBase.py,sha256=
|
|
747
|
+
nuitka/plugins/PluginBase.py,sha256=40ViJaWkVcO8STEtEVydwOIhNNXE8Jnx3TpHkpyOSMw,56921
|
|
748
748
|
nuitka/plugins/Plugins.py,sha256=6wOakwXv24G0rnvEyzafZF5xLT84Y_gx5fp5ToOwxEI,59723
|
|
749
749
|
nuitka/plugins/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
750
750
|
nuitka/plugins/standard/AntiBloatPlugin.py,sha256=cgEC5sM5yXVBnScn7kXvq_wIxrNP8HoGqJ6I2aQ52hg,30408
|
|
@@ -758,12 +758,12 @@ nuitka/plugins/standard/EventletPlugin.py,sha256=Wj3YDAior_de5-d7-X7L-aE4-aTk5CX
|
|
|
758
758
|
nuitka/plugins/standard/GeventPlugin.py,sha256=_cKREOuAXiKCYpjH5fcRfRT6lHhfz0JgcYhOzMOiw2Y,1913
|
|
759
759
|
nuitka/plugins/standard/GiPlugin.py,sha256=699BiowDSOw01T0XY7UDAjhUyNUoJpIPKiUET6GK14c,4017
|
|
760
760
|
nuitka/plugins/standard/GlfwPlugin.py,sha256=DaWEfMhLdxzd12IqLTi4qb6R2sCAu_aQjI0cfuneZ8c,4854
|
|
761
|
-
nuitka/plugins/standard/ImplicitImports.py,sha256=
|
|
761
|
+
nuitka/plugins/standard/ImplicitImports.py,sha256=WsOa1krRImS0zBkPox9RYi38u3otpicn1ey9ul65-FE,32261
|
|
762
762
|
nuitka/plugins/standard/KivyPlugin.py,sha256=FGpyxlRRQhsKYktLwI0B41EF28lZGHPLBvAeUlyyfrw,5024
|
|
763
|
-
nuitka/plugins/standard/MatplotlibPlugin.py,sha256=
|
|
763
|
+
nuitka/plugins/standard/MatplotlibPlugin.py,sha256=Em8zs9k8hvQ5PsXsFYDGZCwySwXYNLXvkW73-wPoJpk,8823
|
|
764
764
|
nuitka/plugins/standard/MultiprocessingPlugin.py,sha256=EzWhHHFM0036v4ku2dhFvB1CCjwm_VCveJDEUL5MyrQ,7080
|
|
765
765
|
nuitka/plugins/standard/NumpyPlugin.py,sha256=mAzhziM_7o-SKxnKtGp7CBhWV86Jvs5OLMbHTQNFJoE,1220
|
|
766
|
-
nuitka/plugins/standard/OptionsNannyPlugin.py,sha256=
|
|
766
|
+
nuitka/plugins/standard/OptionsNannyPlugin.py,sha256=k7ttYEuq6x2ByuMhCBenS92g9-e2RlUkLBos7eXa4Ag,7433
|
|
767
767
|
nuitka/plugins/standard/PbrPlugin.py,sha256=RtLGO3_35qrecTadPVm_IqdBmd0mNylLoMKvXD0MTx0,1940
|
|
768
768
|
nuitka/plugins/standard/PkgResourcesPlugin.py,sha256=fTLt0V8E8zxCIIHl66hA8tLOV5IVwEA2UEPESWTMa3g,4875
|
|
769
769
|
nuitka/plugins/standard/PmwPlugin.py,sha256=CmmjIfjp7E-HCeuYVXyB0gJJDEMGSgPXl-aRn-Dvt4o,7042
|
|
@@ -776,14 +776,14 @@ nuitka/plugins/standard/TransformersPlugin.py,sha256=9MAbtousSksrIzHbYjW-UPlsIXf
|
|
|
776
776
|
nuitka/plugins/standard/TrioPlugin.py,sha256=5tIrmbLsuEn_koP4S9F2CuOEw6kyAQ7NyOESPtsF54Q,1106
|
|
777
777
|
nuitka/plugins/standard/UpxPlugin.py,sha256=1I3WouiEmKQAvTkzhgmJ2FRjDKHC0oH9onENntmFphg,5668
|
|
778
778
|
nuitka/plugins/standard/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
779
|
-
nuitka/plugins/standard/standard.nuitka-package.config.yml,sha256=
|
|
779
|
+
nuitka/plugins/standard/standard.nuitka-package.config.yml,sha256=LIwy_lGqeSFIm_cOLbtebNiuYxWZNK3UFBkOEs5l_7c,230668
|
|
780
780
|
nuitka/plugins/standard/stdlib2.nuitka-package.config.yml,sha256=AUjtaX5pUWpvPru9WiTjvKDFeISY4XXv-UDO25MdrAM,2352
|
|
781
781
|
nuitka/plugins/standard/stdlib3.nuitka-package.config.yml,sha256=Y_vbnb_R_q3sHjtUUgOkxpIi1cBaS9DAX38gTb7yk68,12392
|
|
782
782
|
nuitka/plugins/standard/DillPlugin/DillPlugin.c,sha256=XEr9N_2U2vKOEhTnth3UyIHTYowgKWfin_8jS1jaMXA,1646
|
|
783
783
|
nuitka/plugins/standard/DillPlugin/dill-postLoad.py,sha256=WICFdsvx5ZZKqgfX-GuYWqsuL7avFDqxlFk6UA3qihk,9826
|
|
784
784
|
nuitka/reports/CompilationReportReader.py,sha256=0tviyGwsHIw-qxGRnCxCNIJshir61KdGMMCA3hYaIXk,2287
|
|
785
785
|
nuitka/reports/LicenseReport.rst.j2,sha256=CPxGcCfBlYXRDHUOOuzVs-bcVj8IQ5kA4GAn5ayRIzc,2089
|
|
786
|
-
nuitka/reports/Reports.py,sha256=
|
|
786
|
+
nuitka/reports/Reports.py,sha256=vqYGWGoVlp3I22M1RMhzH71cbx0NHmI0HWynToYwf-k,27497
|
|
787
787
|
nuitka/reports/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
788
788
|
nuitka/specs/BuiltinBytesOperationSpecs.py,sha256=IHSeni5fD47sh2mlPOlFRIBU5BYYgB8jRIDATtLse0I,5943
|
|
789
789
|
nuitka/specs/BuiltinDictOperationSpecs.py,sha256=QY7acLh6R9HgWhiAc82qWB1LULJ4DQF5-SdsCIV98wE,2818
|
|
@@ -887,7 +887,7 @@ nuitka/utils/CommandLineOptions.py,sha256=yrJuW2Ze4UlfN_fzsxFDSd9l_UZDikave-fb1a
|
|
|
887
887
|
nuitka/utils/Distributions.py,sha256=GoiF7fgTd1w-lXFjKZJFv0fX0Ogt8LfMLPsCxH0WsVg,14981
|
|
888
888
|
nuitka/utils/Download.py,sha256=Gq9f3f067umOThrvjPjMw5vULCszDv9yXYjfJVn1gBg,6413
|
|
889
889
|
nuitka/utils/Execution.py,sha256=b16XvcrFcTu4pXaQJERlAglA0y4s6cUCWrPACZXpoPw,13185
|
|
890
|
-
nuitka/utils/FileOperations.py,sha256=
|
|
890
|
+
nuitka/utils/FileOperations.py,sha256=4J35kEVrf6lE4P7g_xC9it4Al_pVmN_waFWT5vsfVOE,41401
|
|
891
891
|
nuitka/utils/Hashing.py,sha256=vOFVzPNqAJw7NNZ1Hxe0rllnKO-HGwd6n5N3R_2WgQM,3753
|
|
892
892
|
nuitka/utils/Images.py,sha256=r9EGodHskO-_u2mWnZojZUNMhDlcZxgHg31UgsxE2j0,2395
|
|
893
893
|
nuitka/utils/Importing.py,sha256=BC2Sae_aiZs4mmQx7MeXdsRDOtZYtMbAvXlA2Ng_3Wk,10121
|
|
@@ -912,9 +912,9 @@ nuitka/utils/WindowsFileUsage.py,sha256=UglAr8IbR1IGOysHMEuBUT-tnwF3tTcR80fNGSMl
|
|
|
912
912
|
nuitka/utils/WindowsResources.py,sha256=npt3jbcTgh1M5G6jyEv6uFqiZIf84XEea3wXQ_sXGdM,19837
|
|
913
913
|
nuitka/utils/Yaml.py,sha256=aeYsCj6mM8uYiMSg0TIkVSKsa-8lYzJXmfpbyLRsMi4,7014
|
|
914
914
|
nuitka/utils/__init__.py,sha256=TkW50aBd9haxBi-DXHM71oVA31d5oPeL06ZwuBSkPqo,865
|
|
915
|
-
Nuitka_winsvc-2.1.
|
|
916
|
-
Nuitka_winsvc-2.1.
|
|
917
|
-
Nuitka_winsvc-2.1.
|
|
918
|
-
Nuitka_winsvc-2.1.
|
|
919
|
-
Nuitka_winsvc-2.1.
|
|
920
|
-
Nuitka_winsvc-2.1.
|
|
915
|
+
Nuitka_winsvc-2.1.4.dist-info/LICENSE.txt,sha256=ZWq74m8T3pVbRFjCBu74q_4GyW11rCqtYB_1vZ4rQ88,11348
|
|
916
|
+
Nuitka_winsvc-2.1.4.dist-info/METADATA,sha256=S7FqQT_d0tEJ1_h0oAEU5S1_j8MZzLc8Bw_vPUukqGE,4909
|
|
917
|
+
Nuitka_winsvc-2.1.4.dist-info/WHEEL,sha256=nSybvzWlmdJnHiUQSY-d7V1ycwEVUTqXiTvr2eshg44,102
|
|
918
|
+
Nuitka_winsvc-2.1.4.dist-info/entry_points.txt,sha256=jeBnijqxZ4U0WpNEdtaogpNMNlv5jw8H7yMOsf2isFc,308
|
|
919
|
+
Nuitka_winsvc-2.1.4.dist-info/top_level.txt,sha256=TRrfKxSYukbo1yzTGfwyH7wVzhDpKlwQsLjhIr15yqY,7
|
|
920
|
+
Nuitka_winsvc-2.1.4.dist-info/RECORD,,
|
nuitka/Options.py
CHANGED
|
@@ -1068,6 +1068,7 @@ make sure that is intended."""
|
|
|
1068
1068
|
and not shallMakeModule()
|
|
1069
1069
|
and not shallUseStaticLibPython()
|
|
1070
1070
|
and getSystemStaticLibPythonPath() is not None
|
|
1071
|
+
and not shallUsePythonDebug()
|
|
1071
1072
|
):
|
|
1072
1073
|
Tracing.options_logger.info(
|
|
1073
1074
|
"""Detected static libpython to exist, consider '--static-libpython=yes' for better performance, \
|
nuitka/Version.py
CHANGED
|
@@ -900,12 +900,18 @@ bool expandTemplatePath(char *target, char const *source, size_t buffer_size) {
|
|
|
900
900
|
appendStringSafe(target, home_path, buffer_size);
|
|
901
901
|
is_path = true;
|
|
902
902
|
} else if (strcasecmp(var_name, "CACHE_DIR") == 0) {
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
903
|
+
char const *xdg_cache_home = getenv("XDG_CACHE_HOME");
|
|
904
|
+
|
|
905
|
+
if (xdg_cache_home != NULL && xdg_cache_home[0] == '/') {
|
|
906
|
+
appendStringSafe(target, xdg_cache_home, buffer_size);
|
|
907
|
+
} else {
|
|
908
|
+
if (expandTemplatePath(target, "{HOME}", buffer_size - strlen(target)) == false) {
|
|
909
|
+
return false;
|
|
910
|
+
}
|
|
906
911
|
|
|
907
|
-
|
|
908
|
-
|
|
912
|
+
appendCharSafe(target, '/', buffer_size);
|
|
913
|
+
appendStringSafe(target, ".cache", buffer_size);
|
|
914
|
+
}
|
|
909
915
|
is_path = true;
|
|
910
916
|
#ifdef NUITKA_COMPANY_NAME
|
|
911
917
|
} else if (strcasecmp(var_name, "COMPANY") == 0) {
|
|
@@ -318,16 +318,16 @@ bool LIST_EXTEND_FOR_UNPACK(PyThreadState *tstate, PyObject *list, PyObject *oth
|
|
|
318
318
|
#endif
|
|
319
319
|
|
|
320
320
|
bool LIST_APPEND1(PyObject *target, PyObject *item) {
|
|
321
|
-
#if _NUITKA_EXPERIMENTAL_DISABLE_LIST_OPT
|
|
322
|
-
int res = PyList_Append(target, item);
|
|
323
|
-
Py_DECREF(item);
|
|
324
|
-
return res == 0;
|
|
325
|
-
#else
|
|
326
321
|
CHECK_OBJECT(target);
|
|
327
322
|
assert(PyList_CheckExact(target));
|
|
328
323
|
|
|
329
324
|
CHECK_OBJECT(item);
|
|
330
325
|
|
|
326
|
+
#if _NUITKA_EXPERIMENTAL_DISABLE_LIST_OPT
|
|
327
|
+
int res = PyList_Append(target, item);
|
|
328
|
+
Py_DECREF(item);
|
|
329
|
+
return res == 0;
|
|
330
|
+
#else
|
|
331
331
|
PyListObject *list = (PyListObject *)target;
|
|
332
332
|
|
|
333
333
|
Py_ssize_t cur_size = PyList_GET_SIZE(list);
|
|
@@ -346,15 +346,15 @@ bool LIST_APPEND1(PyObject *target, PyObject *item) {
|
|
|
346
346
|
}
|
|
347
347
|
|
|
348
348
|
bool LIST_APPEND0(PyObject *target, PyObject *item) {
|
|
349
|
-
#if _NUITKA_EXPERIMENTAL_DISABLE_LIST_OPT
|
|
350
|
-
int res = PyList_Append(target, item);
|
|
351
|
-
return res == 0;
|
|
352
|
-
#else
|
|
353
349
|
CHECK_OBJECT(target);
|
|
354
350
|
assert(PyList_CheckExact(target));
|
|
355
351
|
|
|
356
352
|
CHECK_OBJECT(item);
|
|
357
353
|
|
|
354
|
+
#if _NUITKA_EXPERIMENTAL_DISABLE_LIST_OPT
|
|
355
|
+
int res = PyList_Append(target, item);
|
|
356
|
+
return res == 0;
|
|
357
|
+
#else
|
|
358
358
|
PyListObject *list = (PyListObject *)target;
|
|
359
359
|
|
|
360
360
|
Py_ssize_t cur_size = PyList_GET_SIZE(list);
|
|
@@ -517,7 +517,16 @@ PyObject *LIST_INDEX3(PyThreadState *tstate, PyObject *list, PyObject *item, PyO
|
|
|
517
517
|
return NULL;
|
|
518
518
|
}
|
|
519
519
|
|
|
520
|
-
Py_ssize_t start_ssize
|
|
520
|
+
Py_ssize_t start_ssize;
|
|
521
|
+
#if PYTHON_VERSION < 0x300
|
|
522
|
+
if (PyInt_CheckExact(start_index)) {
|
|
523
|
+
start_ssize = PyInt_AS_LONG(start_index);
|
|
524
|
+
} else {
|
|
525
|
+
start_ssize = PyLong_AsSsize_t(start_index);
|
|
526
|
+
}
|
|
527
|
+
#else
|
|
528
|
+
start_ssize = PyLong_AsSsize_t(start_index);
|
|
529
|
+
#endif
|
|
521
530
|
|
|
522
531
|
return _LIST_INDEX_COMMON(tstate, (PyListObject *)list, item, start_ssize, Py_SIZE(list));
|
|
523
532
|
}
|
|
@@ -536,7 +545,16 @@ PyObject *LIST_INDEX4(PyThreadState *tstate, PyObject *list, PyObject *item, PyO
|
|
|
536
545
|
return NULL;
|
|
537
546
|
}
|
|
538
547
|
|
|
539
|
-
Py_ssize_t start_ssize
|
|
548
|
+
Py_ssize_t start_ssize;
|
|
549
|
+
#if PYTHON_VERSION < 0x300
|
|
550
|
+
if (PyInt_CheckExact(start_index)) {
|
|
551
|
+
start_ssize = PyInt_AS_LONG(start_index);
|
|
552
|
+
} else {
|
|
553
|
+
start_ssize = PyLong_AsSsize_t(start_index);
|
|
554
|
+
}
|
|
555
|
+
#else
|
|
556
|
+
start_ssize = PyLong_AsSsize_t(start_index);
|
|
557
|
+
#endif
|
|
540
558
|
|
|
541
559
|
PyObject *stop_index = Nuitka_Number_IndexAsLong(stop);
|
|
542
560
|
|
|
@@ -548,7 +566,16 @@ PyObject *LIST_INDEX4(PyThreadState *tstate, PyObject *list, PyObject *item, PyO
|
|
|
548
566
|
return NULL;
|
|
549
567
|
}
|
|
550
568
|
|
|
551
|
-
Py_ssize_t stop_ssize
|
|
569
|
+
Py_ssize_t stop_ssize;
|
|
570
|
+
#if PYTHON_VERSION < 0x300
|
|
571
|
+
if (PyInt_CheckExact(stop_index)) {
|
|
572
|
+
stop_ssize = PyInt_AS_LONG(stop_index);
|
|
573
|
+
} else {
|
|
574
|
+
stop_ssize = PyLong_AsSsize_t(stop_index);
|
|
575
|
+
}
|
|
576
|
+
#else
|
|
577
|
+
stop_ssize = PyLong_AsSsize_t(stop_index);
|
|
578
|
+
#endif
|
|
552
579
|
|
|
553
580
|
return _LIST_INDEX_COMMON(tstate, (PyListObject *)list, item, start_ssize, stop_ssize);
|
|
554
581
|
}
|
|
@@ -556,6 +583,7 @@ PyObject *LIST_INDEX4(PyThreadState *tstate, PyObject *list, PyObject *item, PyO
|
|
|
556
583
|
bool LIST_INSERT(PyThreadState *tstate, PyObject *list, PyObject *index, PyObject *item) {
|
|
557
584
|
CHECK_OBJECT(list);
|
|
558
585
|
assert(PyList_CheckExact(list));
|
|
586
|
+
CHECK_OBJECT(index);
|
|
559
587
|
CHECK_OBJECT(item);
|
|
560
588
|
|
|
561
589
|
// TODO: Avoid the clear, by having this as a variant that doesn't set the
|
|
@@ -569,7 +597,16 @@ bool LIST_INSERT(PyThreadState *tstate, PyObject *list, PyObject *index, PyObjec
|
|
|
569
597
|
return false;
|
|
570
598
|
}
|
|
571
599
|
|
|
572
|
-
Py_ssize_t index_ssize
|
|
600
|
+
Py_ssize_t index_ssize;
|
|
601
|
+
#if PYTHON_VERSION < 0x300
|
|
602
|
+
if (PyInt_CheckExact(index_long)) {
|
|
603
|
+
index_ssize = PyInt_AS_LONG(index_long);
|
|
604
|
+
} else {
|
|
605
|
+
index_ssize = PyLong_AsSsize_t(index_long);
|
|
606
|
+
}
|
|
607
|
+
#else
|
|
608
|
+
index_ssize = PyLong_AsSsize_t(index_long);
|
|
609
|
+
#endif
|
|
573
610
|
|
|
574
611
|
LIST_INSERT_CONST(list, index_ssize, item);
|
|
575
612
|
return true;
|
|
@@ -421,7 +421,7 @@ def generateListOperationRemoveCode(to_name, expression, emit, context):
|
|
|
421
421
|
# this call is also very bad.
|
|
422
422
|
emit("assert(PyList_CheckExact(%s));" % list_arg_name)
|
|
423
423
|
emit(
|
|
424
|
-
|
|
424
|
+
"%s = PyObject_CallMethodObjArgs(%s, const_str_plain_remove, %s, NULL);"
|
|
425
425
|
% (result_name, list_arg_name, value_arg_name)
|
|
426
426
|
)
|
|
427
427
|
|
nuitka/plugins/PluginBase.py
CHANGED
|
@@ -136,6 +136,7 @@ def _getEvaluationContext():
|
|
|
136
136
|
"deployment": isDeploymentMode(),
|
|
137
137
|
# Querying package versions.
|
|
138
138
|
"version": _getPackageVersion,
|
|
139
|
+
"version_str": _getPackageVersionStr,
|
|
139
140
|
"get_dist_name": _getDistributionNameFromPackageName,
|
|
140
141
|
"plugin": _isPluginActive,
|
|
141
142
|
"no_asserts": hasPythonFlagNoAsserts(),
|
|
@@ -272,6 +273,15 @@ def _getPackageVersion(distribution_name):
|
|
|
272
273
|
return _package_versions[distribution_name]
|
|
273
274
|
|
|
274
275
|
|
|
276
|
+
def _getPackageVersionStr(distribution_name):
|
|
277
|
+
version = _getPackageVersion(distribution_name)
|
|
278
|
+
|
|
279
|
+
if version is not None:
|
|
280
|
+
version = ".".join(str(d) for d in version)
|
|
281
|
+
|
|
282
|
+
return version
|
|
283
|
+
|
|
284
|
+
|
|
275
285
|
def _getModuleDirectory(module_name):
|
|
276
286
|
from nuitka.importing.Importing import locateModule
|
|
277
287
|
|
|
@@ -659,12 +659,24 @@ According to Yaml 'overridden-environment-variables' configuration."""
|
|
|
659
659
|
"transformers.utils.dummy_tf_objects", # Not performance relevant.
|
|
660
660
|
"rich", # Not performance relevant and memory leaking due to empty compiled cell leaks
|
|
661
661
|
"altair.vegalite.v5.schema", # Not performance relevant.
|
|
662
|
+
"azure", # Not performance relevant.
|
|
663
|
+
)
|
|
664
|
+
|
|
665
|
+
unworthy_modulename_patterns = (
|
|
666
|
+
"tensorflow.*test", # Not performance relevant.
|
|
667
|
+
"tensorflow.**.test_util", # Not performance relevant.
|
|
662
668
|
)
|
|
663
669
|
|
|
664
670
|
def decideCompilation(self, module_name):
|
|
665
671
|
if module_name.hasOneOfNamespaces(self.unworthy_namespaces):
|
|
666
672
|
return "bytecode"
|
|
667
673
|
|
|
674
|
+
is_match, _reason = module_name.matchesToShellPatterns(
|
|
675
|
+
self.unworthy_modulename_patterns
|
|
676
|
+
)
|
|
677
|
+
if is_match:
|
|
678
|
+
return "bytecode"
|
|
679
|
+
|
|
668
680
|
def onModuleUsageLookAhead(
|
|
669
681
|
self, module_name, module_filename, module_kind, get_module_source
|
|
670
682
|
):
|
|
@@ -91,6 +91,18 @@ https://matplotlib.org/stable/users/installing/environment_variables_faq.html#en
|
|
|
91
91
|
|
|
92
92
|
return info
|
|
93
93
|
|
|
94
|
+
def getImplicitImports(self, module):
|
|
95
|
+
# Make sure the used Qt namespace is included in compilation, mostly for
|
|
96
|
+
# accelerated mode, but also to prevent people from accidentally
|
|
97
|
+
# removing it.
|
|
98
|
+
if module.getFullName() != "matplotlib":
|
|
99
|
+
return
|
|
100
|
+
|
|
101
|
+
matplotlib_info = self._getMatplotlibInfo()
|
|
102
|
+
|
|
103
|
+
# Make sure, the default backend is included.
|
|
104
|
+
yield "matplotlib.backends.backend_%s" % matplotlib_info.backend.lower()
|
|
105
|
+
|
|
94
106
|
def considerDataFiles(self, module):
|
|
95
107
|
if module.getFullName() != "matplotlib":
|
|
96
108
|
return
|
|
@@ -168,6 +180,10 @@ https://matplotlib.org/stable/users/installing/environment_variables_faq.html#en
|
|
|
168
180
|
if hasActivePlugin("tk-inter"):
|
|
169
181
|
return True, "Needed for tkinter matplotlib backend"
|
|
170
182
|
|
|
183
|
+
if module_name == "matplotlib.backends.backend_qtagg":
|
|
184
|
+
if getActiveQtPluginBindingName() is not None:
|
|
185
|
+
return True, "Needed for qt matplotlib backend"
|
|
186
|
+
|
|
171
187
|
def createPreModuleLoadCode(self, module):
|
|
172
188
|
"""Method called when a module is being imported.
|
|
173
189
|
|
|
@@ -45,26 +45,28 @@ class NuitkaPluginOptionsNanny(NuitkaPluginBase):
|
|
|
45
45
|
if support_info == "ignore":
|
|
46
46
|
return
|
|
47
47
|
|
|
48
|
-
if support_info
|
|
48
|
+
if support_info == "parameter":
|
|
49
|
+
message = "Module has parameter: " + description
|
|
50
|
+
elif support_info == "plugin":
|
|
51
|
+
message = "Module has plugin consideration: " + description
|
|
52
|
+
else:
|
|
49
53
|
if condition != "True":
|
|
50
54
|
problem_desc = (
|
|
51
|
-
"incomplete support due to untrue condition '%s'" % condition
|
|
55
|
+
" with incomplete support due to untrue condition '%s'" % condition
|
|
52
56
|
)
|
|
53
57
|
else:
|
|
54
|
-
problem_desc = "incomplete support"
|
|
58
|
+
problem_desc = " with incomplete support"
|
|
55
59
|
|
|
56
|
-
message = "Using module '%s' (version %s)
|
|
60
|
+
message = "Using module '%s' (version %s)%s: %s" % (
|
|
57
61
|
full_name,
|
|
58
62
|
".".join(str(d) for d in self.getPackageVersion(full_name)),
|
|
59
63
|
problem_desc,
|
|
60
64
|
description,
|
|
61
65
|
)
|
|
62
|
-
else:
|
|
63
|
-
message = "Module has parameter: " + description
|
|
64
66
|
|
|
65
67
|
if support_info == "error":
|
|
66
68
|
self.sysexit(message)
|
|
67
|
-
elif support_info in ("warning", "parameter"):
|
|
69
|
+
elif support_info in ("warning", "parameter", "plugin"):
|
|
68
70
|
self.warning(message)
|
|
69
71
|
elif support_info == "info":
|
|
70
72
|
self.info(message)
|
|
@@ -852,12 +852,23 @@
|
|
|
852
852
|
patterns:
|
|
853
853
|
- 'dask.yaml'
|
|
854
854
|
|
|
855
|
+
- module-name: 'dask.dataframe' # checksum: b6b8eaf
|
|
856
|
+
implicit-imports:
|
|
857
|
+
- depends:
|
|
858
|
+
- 'pyarrow._*'
|
|
859
|
+
|
|
855
860
|
- module-name: 'dask.dataframe._compat' # checksum: 78ecb250
|
|
856
861
|
anti-bloat:
|
|
857
862
|
- description: 'remove pandas.testing reference'
|
|
858
863
|
replacements_plain:
|
|
859
864
|
'import pandas.testing as tm': ''
|
|
860
865
|
|
|
866
|
+
- module-name: 'dask.dataframe.utils' # checksum: 5af31dde
|
|
867
|
+
anti-bloat:
|
|
868
|
+
- description: 'remove pandas.testing reference'
|
|
869
|
+
replacements_plain:
|
|
870
|
+
'from dask.dataframe._compat import PANDAS_GE_150, tm': ''
|
|
871
|
+
|
|
861
872
|
- module-name: 'dask.dot' # checksum: ddcb31f2
|
|
862
873
|
anti-bloat:
|
|
863
874
|
- description: 'remove IPython reference'
|
|
@@ -893,6 +904,14 @@
|
|
|
893
904
|
replacements_plain:
|
|
894
905
|
'__version__ = get_distribution(__name__).version': 'raise DistributionNotFound'
|
|
895
906
|
|
|
907
|
+
- module-name: 'deepspeed' # checksum: 5af29274
|
|
908
|
+
anti-bloat:
|
|
909
|
+
- description: 'remove setuptools usage via triton'
|
|
910
|
+
no-auto-follow:
|
|
911
|
+
'triton': 'ignore'
|
|
912
|
+
'torch.utils.cpp_extension': 'ignore'
|
|
913
|
+
when: 'not use_setuptools'
|
|
914
|
+
|
|
896
915
|
- module-name: 'delphifmx' # checksum: f818d46e
|
|
897
916
|
dlls:
|
|
898
917
|
- from_filenames:
|
|
@@ -1851,6 +1870,29 @@
|
|
|
1851
1870
|
prefixes:
|
|
1852
1871
|
- 'libusb'
|
|
1853
1872
|
|
|
1873
|
+
- module-name: 'lightgbm' # checksum: 38422ad6
|
|
1874
|
+
data-files:
|
|
1875
|
+
dirs:
|
|
1876
|
+
- 'locales'
|
|
1877
|
+
patterns:
|
|
1878
|
+
- '*.bin'
|
|
1879
|
+
- 'VERSION.txt'
|
|
1880
|
+
dlls:
|
|
1881
|
+
- from_filenames:
|
|
1882
|
+
relative_path: 'bin'
|
|
1883
|
+
prefixes:
|
|
1884
|
+
- 'lib_lightgbm'
|
|
1885
|
+
|
|
1886
|
+
- module-name: 'lightgbm.dask' # checksum: f12519e1
|
|
1887
|
+
anti-bloat:
|
|
1888
|
+
- description: 'remove docstrings'
|
|
1889
|
+
replacements_plain:
|
|
1890
|
+
" _before_kwargs, _kwargs, _after_kwargs = _base_doc.partition('**kwargs') # type: ignore": ''
|
|
1891
|
+
' {_before_kwargs}client : dask.distributed.Client or None, optional (default=None)': ''
|
|
1892
|
+
? " {' ':4}Dask client. If ``None``, ``distributed.default_client()`` will be used at runtime. The Dask client used by this class will not be saved if the model object is pickled."
|
|
1893
|
+
: ''
|
|
1894
|
+
' {_kwargs}{_after_kwargs}': ''
|
|
1895
|
+
|
|
1854
1896
|
- module-name: 'lightgbm.libpath' # checksum: f4a8da46
|
|
1855
1897
|
dlls:
|
|
1856
1898
|
- from_filenames:
|
|
@@ -1927,7 +1969,7 @@
|
|
|
1927
1969
|
- depends:
|
|
1928
1970
|
- 'markdown.extensions.*'
|
|
1929
1971
|
|
|
1930
|
-
- module-name: 'matplotlib' # checksum:
|
|
1972
|
+
- module-name: 'matplotlib' # checksum: 977975bb
|
|
1931
1973
|
anti-bloat:
|
|
1932
1974
|
- description: 'remove setuptools and pytest testing framework reference'
|
|
1933
1975
|
replacements:
|
|
@@ -1937,11 +1979,33 @@
|
|
|
1937
1979
|
'_init_tests': "'None'"
|
|
1938
1980
|
'test': "'None'"
|
|
1939
1981
|
'_get_version': "'(lambda : _version.version)'"
|
|
1982
|
+
- description: 'avoid PySide6 unless used'
|
|
1983
|
+
no-auto-follow:
|
|
1984
|
+
'PySide6': 'ignore'
|
|
1985
|
+
when: 'not use_pyside6'
|
|
1986
|
+
- description: 'avoid PySide2 unless used'
|
|
1987
|
+
no-auto-follow:
|
|
1988
|
+
'PySide2': 'ignore'
|
|
1989
|
+
when: 'not use_pyside2'
|
|
1990
|
+
- description: 'avoid PyQt5 unless used'
|
|
1991
|
+
no-auto-follow:
|
|
1992
|
+
'PyQt5': 'ignore'
|
|
1993
|
+
when: 'not use_pyqt5'
|
|
1994
|
+
- description: 'avoid PyQt6 unless used'
|
|
1995
|
+
no-auto-follow:
|
|
1996
|
+
'PyQt6': 'ignore'
|
|
1997
|
+
when: 'not use_pyqt6'
|
|
1998
|
+
|
|
1940
1999
|
implicit-imports:
|
|
1941
2000
|
- depends:
|
|
1942
2001
|
- 'matplotlib.backend_managers'
|
|
1943
2002
|
- 'matplotlib.backend_bases'
|
|
1944
2003
|
- 'mpl_toolkits'
|
|
2004
|
+
options:
|
|
2005
|
+
checks:
|
|
2006
|
+
- description: "For matplotlib a GUI tooltkit selection might be needed use, use '--enable-plugin=tk-inter|PySide6|PySide2|PyQt6|PyQt5', or use '--enable-plugin=no-qt' for headless mode."
|
|
2007
|
+
support_info: 'plugin'
|
|
2008
|
+
when: 'not macos and not (use_noqt or use_pyqt5 or use_pyqt6 or use_pyside2 or use_pyside6)'
|
|
1945
2009
|
|
|
1946
2010
|
- module-name: 'matplotlib.backend_bases' # checksum: 5954e33d
|
|
1947
2011
|
anti-bloat:
|
|
@@ -3406,6 +3470,12 @@
|
|
|
3406
3470
|
'setuptools_scm': 'ignore'
|
|
3407
3471
|
when: 'not use_setuptools'
|
|
3408
3472
|
|
|
3473
|
+
- module-name: 'pyarrow.dataset' # checksum: 37675d7a
|
|
3474
|
+
implicit-imports:
|
|
3475
|
+
- depends:
|
|
3476
|
+
- 'pyarrow._acero'
|
|
3477
|
+
- 'pyarrow._json'
|
|
3478
|
+
|
|
3409
3479
|
- module-name: 'pyarrow.lib' # checksum: 302be0c2
|
|
3410
3480
|
implicit-imports:
|
|
3411
3481
|
- depends:
|
|
@@ -5572,13 +5642,16 @@
|
|
|
5572
5642
|
'notebook': "'(lambda: None)'"
|
|
5573
5643
|
when: 'not use_ipython'
|
|
5574
5644
|
|
|
5575
|
-
- module-name: 'tensorflow' # checksum:
|
|
5645
|
+
- module-name: 'tensorflow' # checksum: 13d6e6a5
|
|
5576
5646
|
dlls:
|
|
5577
5647
|
- from_filenames:
|
|
5578
5648
|
relative_path: 'core/platform'
|
|
5579
5649
|
prefixes:
|
|
5580
5650
|
- '_cpu_feature_guard'
|
|
5581
5651
|
anti-bloat:
|
|
5652
|
+
- description: 'allow unittest inside of tensorflow, too dependent to remove'
|
|
5653
|
+
bloat-mode-overrides:
|
|
5654
|
+
'unittest': 'allow'
|
|
5582
5655
|
- description: 'remove useless distutils and test framework usage'
|
|
5583
5656
|
replacements_plain:
|
|
5584
5657
|
'import distutils as _distutils': '_distutils = None'
|
|
@@ -5593,14 +5666,12 @@
|
|
|
5593
5666
|
append_plain: |
|
|
5594
5667
|
import sys
|
|
5595
5668
|
sys.modules["tensorflow.compat"] = compat
|
|
5669
|
+
sys.modules["tensorflow.experimental"] = experimental
|
|
5596
5670
|
sys.modules["tensorflow.compat.v1"] = compat.v1
|
|
5597
5671
|
sys.modules["tensorflow.compat.v2"] = compat.v2
|
|
5598
5672
|
sys.modules["tensorflow.compat.v1.logging"] = compat.v1.logging
|
|
5599
5673
|
sys.modules["tensorflow.compat.v2.experimental"] = compat.v2.experimental
|
|
5600
5674
|
sys.modules["tensorflow.keras"] = keras
|
|
5601
|
-
sys.modules["tensorflow.keras.layers"] = keras.layers
|
|
5602
|
-
sys.modules["tensorflow.keras.activations"] = keras.activations
|
|
5603
|
-
sys.modules["tensorflow.keras.models"] = keras.models
|
|
5604
5675
|
when: 'standalone'
|
|
5605
5676
|
- description: 'remove kubernetes as default dependency'
|
|
5606
5677
|
no-auto-follow:
|
|
@@ -5613,6 +5684,12 @@
|
|
|
5613
5684
|
- 'tensorflow_estimator'
|
|
5614
5685
|
- 'keras.api._v2.keras'
|
|
5615
5686
|
|
|
5687
|
+
options:
|
|
5688
|
+
checks:
|
|
5689
|
+
- description: "'tensorflow' is not fully supported before version 2.16"
|
|
5690
|
+
support_info: 'warning'
|
|
5691
|
+
when: 'version("tensorflow") < (2,16)'
|
|
5692
|
+
|
|
5616
5693
|
- module-name: 'tensorflow._api.v1.compat.v1' # checksum: 3e84bd8b
|
|
5617
5694
|
anti-bloat:
|
|
5618
5695
|
- description: 'remove useless tensorflow testing usage'
|
|
@@ -5627,14 +5704,12 @@
|
|
|
5627
5704
|
'from . import test': 'test = None'
|
|
5628
5705
|
'from tensorflow._api.v1.compat.v2 import test': 'test = None'
|
|
5629
5706
|
|
|
5630
|
-
- module-name: 'tensorflow._api.v2.__internal__' # checksum:
|
|
5707
|
+
- module-name: 'tensorflow._api.v2.__internal__' # checksum: 92facfb8
|
|
5631
5708
|
anti-bloat:
|
|
5632
5709
|
- description: 'remove useless tensorflow testing usage'
|
|
5633
5710
|
replacements_plain:
|
|
5634
5711
|
'from . import test': 'test = None'
|
|
5635
|
-
'from . import distribute': 'distribute = None'
|
|
5636
5712
|
'from tensorflow._api.v2.__internal__ import test': 'test = None'
|
|
5637
|
-
'from tensorflow._api.v2.__internal__ import distribute': 'distribute = None'
|
|
5638
5713
|
|
|
5639
5714
|
- module-name: 'tensorflow._api.v2.compat.v1' # checksum: 53024ed1
|
|
5640
5715
|
anti-bloat:
|
|
@@ -5662,31 +5737,12 @@
|
|
|
5662
5737
|
'from . import test': 'test = None'
|
|
5663
5738
|
'from tensorflow._api.v2.compat.v2 import test': 'test = None'
|
|
5664
5739
|
|
|
5665
|
-
- module-name: 'tensorflow._api.v2.compat.v2.__internal__' # checksum:
|
|
5740
|
+
- module-name: 'tensorflow._api.v2.compat.v2.__internal__' # checksum: 970797b3
|
|
5666
5741
|
anti-bloat:
|
|
5667
5742
|
- description: 'remove useless tensorflow testing usage'
|
|
5668
5743
|
replacements_plain:
|
|
5669
|
-
# TODO: Really need to make the "un-usable" a thing
|
|
5670
5744
|
'from . import test': 'test = None'
|
|
5671
5745
|
'from tensorflow._api.v2.compat.v2.__internal__ import test': 'test = None'
|
|
5672
|
-
'from . import distribute': 'distribute = None'
|
|
5673
|
-
|
|
5674
|
-
- module-name: 'tensorflow._api.v2.compat.v2.__internal__.distribute' # checksum: a5d90e6f
|
|
5675
|
-
anti-bloat:
|
|
5676
|
-
- description: 'remove useless tensorflow testing usage'
|
|
5677
|
-
replacements_plain:
|
|
5678
|
-
'from . import multi_process_runner': 'multi_process_runner = None'
|
|
5679
|
-
'from tensorflow._api.v2.compat.v2.__internal__.distribute import combinations': 'combinations = None'
|
|
5680
|
-
'from tensorflow._api.v2.compat.v2.__internal__.distribute import interim': 'interim = None'
|
|
5681
|
-
'from tensorflow._api.v2.compat.v2.__internal__.distribute import multi_process_runner': 'multi_process_runner=None'
|
|
5682
|
-
when: 'not use_unittest'
|
|
5683
|
-
|
|
5684
|
-
- module-name: 'tensorflow._api.v2.compat.v2.__internal__.distribute.multi_process_runner' # checksum: b50f5527
|
|
5685
|
-
anti-bloat:
|
|
5686
|
-
- description: 'remove unittest reference'
|
|
5687
|
-
replacements_plain:
|
|
5688
|
-
'from tensorflow.python.distribute.multi_worker_test_base import create_cluster_spec': 'pass'
|
|
5689
|
-
when: 'not use_unittest'
|
|
5690
5746
|
|
|
5691
5747
|
- module-name: 'tensorflow._api.v2.compat.v2.compat.v1' # checksum: 31fdcb26
|
|
5692
5748
|
anti-bloat:
|
|
@@ -5737,15 +5793,6 @@
|
|
|
5737
5793
|
- 'tensorflow.contrib.boosted_trees.python.ops._boosted_trees_ops'
|
|
5738
5794
|
when: 'not win32'
|
|
5739
5795
|
|
|
5740
|
-
- module-name: 'tensorflow.contrib.eager.python.tfe' # checksum: 9ea31d00
|
|
5741
|
-
anti-bloat:
|
|
5742
|
-
- description: 'remove unittest reference'
|
|
5743
|
-
replacements_plain:
|
|
5744
|
-
'from tensorflow.python.framework.test_util import run_in_graph_and_eager_modes as run_test_in_graph_and_eager_modes': 'run_test_in_graph_and_eager_modes = None'
|
|
5745
|
-
? 'from tensorflow.python.framework.test_util import run_all_in_graph_and_eager_modes as run_all_tests_in_graph_and_eager_modes'
|
|
5746
|
-
: 'run_all_tests_in_graph_and_eager_modes = None'
|
|
5747
|
-
when: 'not use_unittest'
|
|
5748
|
-
|
|
5749
5796
|
- module-name: 'tensorflow.contrib.factorization.python.ops.factorization_ops' # checksum: 4ea2083
|
|
5750
5797
|
dlls:
|
|
5751
5798
|
- from_filenames:
|
|
@@ -5959,14 +6006,6 @@
|
|
|
5959
6006
|
replacements_plain:
|
|
5960
6007
|
'ag_logging.warning(': 'if False: ag_logging.warning('
|
|
5961
6008
|
|
|
5962
|
-
- module-name: 'tensorflow.python.autograph.impl.conversion' # checksum: fe4e1edb
|
|
5963
|
-
anti-bloat:
|
|
5964
|
-
- description: 'remove unittest usage'
|
|
5965
|
-
replacements_plain:
|
|
5966
|
-
'import unittest': ''
|
|
5967
|
-
'issubclass(owner_class, unittest.TestCase)': 'False'
|
|
5968
|
-
when: 'not use_unittest'
|
|
5969
|
-
|
|
5970
6009
|
- module-name: 'tensorflow.python.compiler.tensorrt.trt_convert' # checksum: 9471824c
|
|
5971
6010
|
implicit-imports:
|
|
5972
6011
|
- depends:
|
|
@@ -5987,90 +6026,12 @@
|
|
|
5987
6026
|
- depends:
|
|
5988
6027
|
- 'tensorflow.python.data.ops.shuffle_op'
|
|
5989
6028
|
|
|
5990
|
-
- module-name: 'tensorflow.python.distribute.combinations' # checksum: 6cb7adcb
|
|
5991
|
-
anti-bloat:
|
|
5992
|
-
- description: 'remove unittest reference'
|
|
5993
|
-
replacements_plain:
|
|
5994
|
-
'from tensorflow.python.framework import test_combinations as combinations_lib': 'combinations_lib = None'
|
|
5995
|
-
'from tensorflow.python.framework import test_util': 'test_util = None'
|
|
5996
|
-
'from tensorflow.python.framework import test_combinations': 'test_combinations = None'
|
|
5997
|
-
'import unittest': ''
|
|
5998
|
-
'from tensorflow.python.distribute import multi_worker_test_base': ''
|
|
5999
|
-
replacements:
|
|
6000
|
-
'unittest.TestLoader.testMethodPrefix': 'unittest.TestLoader.testMethodPrefix'
|
|
6001
|
-
change_function:
|
|
6002
|
-
'_test_runner': 'un-callable'
|
|
6003
|
-
'_multi_worker_test': 'un-callable'
|
|
6004
|
-
when: 'not use_unittest'
|
|
6005
|
-
|
|
6006
|
-
- module-name: 'tensorflow.python.distribute.multi_process_lib' # checksum: b7c69e56
|
|
6007
|
-
anti-bloat:
|
|
6008
|
-
- description: 'remove unittest reference'
|
|
6009
|
-
replacements_plain:
|
|
6010
|
-
'import unittest': 'unittest = None'
|
|
6011
|
-
'from tensorflow.python.eager import test': 'test = None'
|
|
6012
|
-
when: 'not use_unittest'
|
|
6013
|
-
|
|
6014
|
-
- module-name: 'tensorflow.python.distribute.multi_process_runner' # checksum: fc293e17
|
|
6015
|
-
anti-bloat:
|
|
6016
|
-
- description: 'remove useless tensorflow testing usage'
|
|
6017
|
-
replacements_plain:
|
|
6018
|
-
'from . import test': 'test = None'
|
|
6019
|
-
'from tensorflow.python.framework import test_util': 'test_util = None'
|
|
6020
|
-
'test_util.is_tsan_enabled()': 'False'
|
|
6021
|
-
'import unittest': 'unittest = None'
|
|
6022
|
-
when: 'not use_unittest'
|
|
6023
|
-
|
|
6024
|
-
- module-name: 'tensorflow.python.distribute.multi_worker_test_base' # checksum: 28f6ca1b
|
|
6025
|
-
anti-bloat:
|
|
6026
|
-
- description: 'remove useless tensorflow testing usage'
|
|
6027
|
-
replacements_plain:
|
|
6028
|
-
'import unittest': 'test = None'
|
|
6029
|
-
'from tensorflow.python.framework import test_util': 'test_util = None'
|
|
6030
|
-
'from tensorflow.python.platform import test': 'test = None'
|
|
6031
|
-
'pick_unused_port = test_util.pick_unused_port': ''
|
|
6032
|
-
append_plain: |
|
|
6033
|
-
ASSIGNED_PORTS: set()
|
|
6034
|
-
lock = threading.Lock()
|
|
6035
|
-
|
|
6036
|
-
def pick_unused_port():
|
|
6037
|
-
import portpicker
|
|
6038
|
-
global ASSIGNED_PORTS
|
|
6039
|
-
with lock:
|
|
6040
|
-
while True:
|
|
6041
|
-
try:
|
|
6042
|
-
port = portpicker.pick_unused_port()
|
|
6043
|
-
except portpicker.NoFreePortFoundError as porterror:
|
|
6044
|
-
raise unittest.SkipTest("") from porterror
|
|
6045
|
-
if port > 10000 and port not in ASSIGNED_PORTS:
|
|
6046
|
-
ASSIGNED_PORTS.add(port)
|
|
6047
|
-
logging.info("Using local port %r", port)
|
|
6048
|
-
return port
|
|
6049
|
-
when: 'not use_unittest'
|
|
6050
|
-
|
|
6051
|
-
- module-name: 'tensorflow.python.distribute.strategy_combinations' # checksum: 4c4b9841
|
|
6052
|
-
anti-bloat:
|
|
6053
|
-
- description: 'remove useless tensorflow testing usage'
|
|
6054
|
-
replacements_plain:
|
|
6055
|
-
'from tensorflow.python.distribute import test_util': 'test_util = None'
|
|
6056
|
-
'from tensorflow.python.framework import test_util as framework_test_util': 'framework_test_util = None'
|
|
6057
|
-
'from tensorflow.python.distribute import multi_process_runner': 'multi_process_runner = None'
|
|
6058
|
-
'from tensorflow.python.distribute import multi_worker_test_base': 'multi_worker_test_base = None'
|
|
6059
|
-
'import unittest': 'unittest = None'
|
|
6060
|
-
|
|
6061
6029
|
- module-name: 'tensorflow.python.framework' # checksum: 98664efa
|
|
6062
6030
|
implicit-imports:
|
|
6063
6031
|
- depends:
|
|
6064
6032
|
- 'tensorflow.python.framework.fast_tensor_util'
|
|
6065
6033
|
when: 'not win32'
|
|
6066
6034
|
|
|
6067
|
-
- module-name: 'tensorflow.python.framework.combinations' # checksum: dd5e29c2
|
|
6068
|
-
anti-bloat:
|
|
6069
|
-
- description: 'remove unittest reference'
|
|
6070
|
-
replacements_plain:
|
|
6071
|
-
'from tensorflow.python.framework import test_combinations': 'test_combinations = None'
|
|
6072
|
-
when: 'not use_unittest'
|
|
6073
|
-
|
|
6074
6035
|
- module-name: 'tensorflow.python.framework.dtypes' # checksum: 25144a68
|
|
6075
6036
|
implicit-imports:
|
|
6076
6037
|
- depends:
|
|
@@ -6098,6 +6059,13 @@
|
|
|
6098
6059
|
change_function:
|
|
6099
6060
|
'_copy_fn': "'(lambda fn: fn)'"
|
|
6100
6061
|
|
|
6062
|
+
- module-name: 'tensorflow.python.util.lazy_loader' # checksum: d4c83239
|
|
6063
|
+
anti-bloat:
|
|
6064
|
+
- description: 'reduce keras usage'
|
|
6065
|
+
replacements:
|
|
6066
|
+
'os.environ.get("TF_USE_LEGACY_KERAS", None)': 'repr(os.environ.get("TF_USE_LEGACY_KERAS", None))'
|
|
6067
|
+
'keras.__version__': 'repr(version_str("keras"))'
|
|
6068
|
+
|
|
6101
6069
|
- module-name: 'tensorflow_core' # checksum: f377875c
|
|
6102
6070
|
anti-bloat:
|
|
6103
6071
|
- description: 'remove useless distutils usage'
|
|
@@ -6121,6 +6089,13 @@
|
|
|
6121
6089
|
- depends:
|
|
6122
6090
|
- 'keras.api._v2'
|
|
6123
6091
|
|
|
6092
|
+
- module-name: 'tensorrt_libs' # checksum: cb30dde5
|
|
6093
|
+
dlls:
|
|
6094
|
+
- from_filenames:
|
|
6095
|
+
prefixes:
|
|
6096
|
+
- 'libnv'
|
|
6097
|
+
dest_path: '.'
|
|
6098
|
+
|
|
6124
6099
|
- module-name: 'text_unidecode' # checksum: e24d920b
|
|
6125
6100
|
data-files:
|
|
6126
6101
|
patterns:
|
|
@@ -6136,6 +6111,13 @@
|
|
|
6136
6111
|
- depends:
|
|
6137
6112
|
- '._*'
|
|
6138
6113
|
|
|
6114
|
+
- module-name: 'tf_keras.src' # checksum: 9760fd72
|
|
6115
|
+
anti-bloat:
|
|
6116
|
+
- description: 'remove unittest reference'
|
|
6117
|
+
replacements_plain:
|
|
6118
|
+
'from keras.src.testing_infra import test_utils': 'test_utils = None'
|
|
6119
|
+
when: 'not use_unittest'
|
|
6120
|
+
|
|
6139
6121
|
- module-name: 'tf_keras.src.utils.vis_utils' # checksum: 7d07a2d1
|
|
6140
6122
|
anti-bloat:
|
|
6141
6123
|
- description: 'remove IPython reference'
|
|
@@ -6682,7 +6664,7 @@
|
|
|
6682
6664
|
'load_cuda_kernels': 'un-callable'
|
|
6683
6665
|
when: 'not use_setuptools'
|
|
6684
6666
|
|
|
6685
|
-
- module-name: 'transformers.models.deformable_detr.
|
|
6667
|
+
- module-name: 'transformers.models.deformable_detr.modeling_deformable_detr' # checksum: baab8e6b
|
|
6686
6668
|
anti-bloat:
|
|
6687
6669
|
- description: 'remove setuptools usage'
|
|
6688
6670
|
change_function:
|
|
@@ -7269,6 +7251,11 @@
|
|
|
7269
7251
|
'import dask.array as dask_array': 'raise ImportError'
|
|
7270
7252
|
when: 'not use_dask'
|
|
7271
7253
|
|
|
7254
|
+
- module-name: 'xarray.core.nputils' # checksum: 46ca5d07
|
|
7255
|
+
data-files:
|
|
7256
|
+
include-metadata:
|
|
7257
|
+
- 'numpy'
|
|
7258
|
+
|
|
7272
7259
|
- module-name: 'xarray.core.parallel' # checksum: 37f8ca49
|
|
7273
7260
|
anti-bloat:
|
|
7274
7261
|
- description: 'remove optional dask usage'
|
nuitka/reports/Reports.py
CHANGED
|
@@ -49,7 +49,11 @@ from nuitka.utils.Distributions import (
|
|
|
49
49
|
getDistributionsFromModuleName,
|
|
50
50
|
getDistributionVersion,
|
|
51
51
|
)
|
|
52
|
-
from nuitka.utils.FileOperations import
|
|
52
|
+
from nuitka.utils.FileOperations import (
|
|
53
|
+
getReportPath,
|
|
54
|
+
putBinaryFileContents,
|
|
55
|
+
putTextFileContents,
|
|
56
|
+
)
|
|
53
57
|
from nuitka.utils.Jinja2 import getTemplate
|
|
54
58
|
from nuitka.utils.MemoryUsage import getMemoryInfos
|
|
55
59
|
from nuitka.utils.Utils import getArchitecture, getOS
|
|
@@ -643,10 +647,13 @@ def writeCompilationReport(report_filename, report_input_data, diffable):
|
|
|
643
647
|
),
|
|
644
648
|
)
|
|
645
649
|
|
|
650
|
+
contents = TreeXML.toString(root)
|
|
651
|
+
|
|
652
|
+
if type(contents) is not bytes:
|
|
653
|
+
contents = contents.encode("utf8")
|
|
654
|
+
|
|
646
655
|
try:
|
|
647
|
-
|
|
648
|
-
filename=report_filename, contents=TreeXML.toString(root), encoding="utf8"
|
|
649
|
-
)
|
|
656
|
+
putBinaryFileContents(filename=report_filename, contents=contents)
|
|
650
657
|
except OSError as e:
|
|
651
658
|
reports_logger.warning(
|
|
652
659
|
"Compilation report write to file '%s' failed due to: %s."
|
nuitka/utils/FileOperations.py
CHANGED
|
@@ -818,6 +818,22 @@ def putTextFileContents(filename, contents, encoding=None):
|
|
|
818
818
|
_writeContents(output_file)
|
|
819
819
|
|
|
820
820
|
|
|
821
|
+
def putBinaryFileContents(filename, contents):
|
|
822
|
+
"""Write a binary file from given contents.
|
|
823
|
+
|
|
824
|
+
Args:
|
|
825
|
+
filename: str with the file to be created
|
|
826
|
+
contents: bytes that should be written into the file
|
|
827
|
+
|
|
828
|
+
Returns:
|
|
829
|
+
None
|
|
830
|
+
"""
|
|
831
|
+
|
|
832
|
+
with withFileLock("writing file %s" % filename):
|
|
833
|
+
with openTextFile(filename, "wb") as output_file:
|
|
834
|
+
output_file.write(contents)
|
|
835
|
+
|
|
836
|
+
|
|
821
837
|
def changeTextFileContents(filename, contents, encoding=None, compare_only=False):
|
|
822
838
|
"""Write a text file from given contents.
|
|
823
839
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|