Nuitka-winsvc 2.6__cp311-cp311-win_amd64.whl → 2.6.5__cp311-cp311-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of Nuitka-winsvc might be problematic. Click here for more details.
- {Nuitka_winsvc-2.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/METADATA +1 -1
- {Nuitka_winsvc-2.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/RECORD +65 -61
- nuitka/BytecodeCaching.py +14 -3
- nuitka/ModuleRegistry.py +18 -3
- nuitka/Options.py +92 -66
- nuitka/PythonFlavors.py +15 -0
- nuitka/Version.py +1 -1
- nuitka/build/SconsCompilerSettings.py +3 -4
- nuitka/build/SconsInterface.py +2 -2
- nuitka/build/include/nuitka/compiled_frame.h +1 -1
- nuitka/build/include/nuitka/exceptions.h +1 -1
- nuitka/build/include/nuitka/type_aliases.h +1 -1
- nuitka/build/inline_copy/pefile/ordlookup/__init__.py +41 -0
- nuitka/build/inline_copy/pefile/ordlookup/oleaut32.py +400 -0
- nuitka/build/inline_copy/pefile/ordlookup/ws2_32.py +120 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +2 -11
- nuitka/build/static_src/CompiledCodeHelpers.c +4 -2
- nuitka/build/static_src/CompiledCoroutineType.c +5 -13
- nuitka/build/static_src/CompiledGeneratorType.c +0 -10
- nuitka/build/static_src/HelpersConsole.c +1 -1
- nuitka/build/static_src/HelpersTypes.c +4 -4
- nuitka/build/static_src/MainProgram.c +24 -0
- nuitka/build/static_src/MetaPathBasedLoader.c +17 -10
- nuitka/build/static_src/OnefileBootstrap.c +3 -1
- nuitka/code_generation/TypeAliasCodes.py +3 -2
- nuitka/freezer/DllDependenciesMacOS.py +7 -2
- nuitka/freezer/DllDependenciesPosix.py +22 -3
- nuitka/freezer/DllDependenciesWin32.py +1 -0
- nuitka/freezer/IncludedDataFiles.py +1 -1
- nuitka/freezer/IncludedEntryPoints.py +8 -0
- nuitka/freezer/Standalone.py +11 -2
- nuitka/importing/Importing.py +2 -1
- nuitka/nodes/ChildrenHavingMixins.py +13 -13
- nuitka/nodes/FunctionNodes.py +7 -0
- nuitka/nodes/ModuleNodes.py +21 -7
- nuitka/nodes/PackageMetadataNodes.py +3 -1
- nuitka/nodes/TypeNodes.py +3 -3
- nuitka/plugins/PluginBase.py +67 -13
- nuitka/plugins/Plugins.py +1 -1
- nuitka/plugins/standard/AntiBloatPlugin.py +136 -65
- nuitka/plugins/standard/ImplicitImports.py +3 -2
- nuitka/plugins/standard/PySidePyQtPlugin.py +13 -0
- nuitka/plugins/standard/standard.nuitka-package.config.yml +151 -53
- nuitka/reports/Reports.py +25 -2
- nuitka/tools/general/find_module/FindModuleCode.py +4 -1
- nuitka/tools/scanning/DisplayPackageDLLs.py +5 -6
- nuitka/tools/watch/__main__.py +7 -2
- nuitka/tree/Building.py +4 -6
- nuitka/tree/FutureSpecState.py +71 -0
- nuitka/tree/ReformulationAssignmentStatements.py +2 -2
- nuitka/tree/ReformulationDictionaryCreation.py +2 -2
- nuitka/tree/ReformulationFunctionStatements.py +1 -1
- nuitka/tree/ReformulationImportStatements.py +4 -51
- nuitka/tree/ReformulationMultidist.py +1 -1
- nuitka/tree/ReformulationNamespacePackages.py +27 -5
- nuitka/tree/SourceHandling.py +56 -17
- nuitka/utils/Distributions.py +26 -6
- nuitka/utils/FileOperations.py +18 -6
- nuitka/utils/StaticLibraries.py +4 -0
- {Nuitka_winsvc-2.6.data → Nuitka_winsvc-2.6.5.data}/scripts/nuitka-run.cmd +0 -0
- {Nuitka_winsvc-2.6.data → Nuitka_winsvc-2.6.5.data}/scripts/nuitka.cmd +0 -0
- {Nuitka_winsvc-2.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/WHEEL +0 -0
- {Nuitka_winsvc-2.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/top_level.txt +0 -0
|
@@ -197,10 +197,10 @@
|
|
|
197
197
|
- depends:
|
|
198
198
|
- 'apt_pkg'
|
|
199
199
|
|
|
200
|
-
- module-name: 'arcade' # checksum:
|
|
200
|
+
- module-name: 'arcade' # checksum: 25cf95c9
|
|
201
201
|
data-files:
|
|
202
202
|
- dirs:
|
|
203
|
-
- 'resources
|
|
203
|
+
- 'resources'
|
|
204
204
|
- patterns:
|
|
205
205
|
- 'VERSION'
|
|
206
206
|
anti-bloat:
|
|
@@ -512,6 +512,12 @@
|
|
|
512
512
|
'IPython': 'ignore'
|
|
513
513
|
when: 'not use_ipython'
|
|
514
514
|
|
|
515
|
+
- module-name: 'blib2to3' # checksum: a54cab2a
|
|
516
|
+
data-files:
|
|
517
|
+
- patterns:
|
|
518
|
+
- 'Grammar.txt'
|
|
519
|
+
- 'PatternGrammar.txt'
|
|
520
|
+
|
|
515
521
|
- module-name: 'bokeh' # checksum: 20c33794
|
|
516
522
|
data-files:
|
|
517
523
|
- dirs:
|
|
@@ -1493,28 +1499,25 @@
|
|
|
1493
1499
|
- dirs:
|
|
1494
1500
|
- 'templates'
|
|
1495
1501
|
|
|
1502
|
+
- module-name: 'fontTools' # checksum: 5c1ede46
|
|
1503
|
+
anti-bloat:
|
|
1504
|
+
- description: 'remove doctest reference'
|
|
1505
|
+
no-auto-follow:
|
|
1506
|
+
'doctest': 'ignore'
|
|
1507
|
+
when: 'not use_unittest'
|
|
1508
|
+
- description: 'remove cython usage'
|
|
1509
|
+
no-auto-follow:
|
|
1510
|
+
'cython': 'ignore'
|
|
1511
|
+
when: 'not use_setuptools'
|
|
1512
|
+
- description: 'remove argparse reference'
|
|
1513
|
+
no-auto-follow:
|
|
1514
|
+
'argparse': 'ignore'
|
|
1515
|
+
|
|
1496
1516
|
- module-name: 'fontTools.cu2qu.cu2qu' # checksum: 5673e8a6
|
|
1497
1517
|
implicit-imports:
|
|
1498
1518
|
- depends:
|
|
1499
1519
|
- 'fontTools.cu2qu.errors'
|
|
1500
1520
|
|
|
1501
|
-
- module-name: 'fontTools.feaLib.lexer' # checksum: d92ed463
|
|
1502
|
-
implicit-imports:
|
|
1503
|
-
- depends:
|
|
1504
|
-
- 'fontTools.feaLib.error'
|
|
1505
|
-
- 'fontTools.feaLib.location'
|
|
1506
|
-
|
|
1507
|
-
- module-name: 'fontTools.misc.bezierTools' # checksum: 7bee054
|
|
1508
|
-
implicit-imports:
|
|
1509
|
-
- depends:
|
|
1510
|
-
- 'fontTools.misc.arrayTools'
|
|
1511
|
-
- 'fontTools.misc.transform'
|
|
1512
|
-
|
|
1513
|
-
- module-name: 'fontTools.qu2cu.qu2cu' # checksum: bdfe3a4f
|
|
1514
|
-
implicit-imports:
|
|
1515
|
-
- depends:
|
|
1516
|
-
- 'fontTools.misc.bezierTools'
|
|
1517
|
-
|
|
1518
1521
|
- module-name: 'Foundation' # checksum: f269907b
|
|
1519
1522
|
options:
|
|
1520
1523
|
checks:
|
|
@@ -2033,6 +2036,17 @@
|
|
|
2033
2036
|
- depends:
|
|
2034
2037
|
- 'jarowinkler._initialize_cpp'
|
|
2035
2038
|
|
|
2039
|
+
- module-name: 'jaxlib.version' # checksum: cd20d237
|
|
2040
|
+
anti-bloat:
|
|
2041
|
+
- description: 'remove git call'
|
|
2042
|
+
change_function:
|
|
2043
|
+
# No git version after compilation of course.
|
|
2044
|
+
'_version_from_git_tree': "'None'"
|
|
2045
|
+
- description: 'remove setuptools reference'
|
|
2046
|
+
change_function:
|
|
2047
|
+
'_get_cmdclass': 'un-callable'
|
|
2048
|
+
when: 'not use_setuptools'
|
|
2049
|
+
|
|
2036
2050
|
- module-name: 'jaxtyping' # checksum: 809b3e69
|
|
2037
2051
|
data-files:
|
|
2038
2052
|
- include-metadata:
|
|
@@ -2589,6 +2603,17 @@
|
|
|
2589
2603
|
'uninstall_repl_displayhook': "'(lambda: None)'"
|
|
2590
2604
|
when: 'not use_ipython'
|
|
2591
2605
|
|
|
2606
|
+
- module-name: 'mediapipe.python._framework_bindings' # checksum: 7ab15297
|
|
2607
|
+
implicit-imports:
|
|
2608
|
+
- post-import-code:
|
|
2609
|
+
- |
|
|
2610
|
+
import sys
|
|
2611
|
+
_framework_bindings = sys.modules["mediapipe.python._framework_bindings"]
|
|
2612
|
+
_framework_bindings.__path__ = []
|
|
2613
|
+
for sub_module_name in [key for key in sys.modules.keys() if key.startswith("_framework_bindings.")]:
|
|
2614
|
+
sys.modules["mediapipe.python."+sub_module_name] = sys.modules.pop(sub_module_name)
|
|
2615
|
+
when: 'python312_or_higher and not static_libpython'
|
|
2616
|
+
|
|
2592
2617
|
- module-name: 'mercurial.encoding' # checksum: de4741d0
|
|
2593
2618
|
implicit-imports:
|
|
2594
2619
|
- depends:
|
|
@@ -2813,14 +2838,27 @@
|
|
|
2813
2838
|
- patterns:
|
|
2814
2839
|
- 'usage.txt'
|
|
2815
2840
|
|
|
2816
|
-
- module-name: 'numba' # checksum:
|
|
2841
|
+
- module-name: 'numba' # checksum: 95f3f759
|
|
2817
2842
|
parameters:
|
|
2818
2843
|
- 'name': 'disable-jit'
|
|
2819
2844
|
'values': 'value in ("yes", "no")'
|
|
2845
|
+
variables:
|
|
2846
|
+
# TODO: Limit this to the versions of numba doing it, eventually it will go
|
|
2847
|
+
# away.
|
|
2848
|
+
setup_code:
|
|
2849
|
+
- 'from numba.core import config'
|
|
2850
|
+
declarations:
|
|
2851
|
+
'numba_legacy_type_system': 'str(getattr(config, "USE_LEGACY_TYPE_SYSTEM", 1) == 1)'
|
|
2820
2852
|
anti-bloat:
|
|
2821
2853
|
- description: 'remove numba testing reference'
|
|
2822
2854
|
change_function:
|
|
2823
2855
|
'test': 'un-callable'
|
|
2856
|
+
- description: 'resolve numba legacy type config choice'
|
|
2857
|
+
global_replacements:
|
|
2858
|
+
'config.USE_LEGACY_TYPE_SYSTEM': 'get_variable("numba_legacy_type_system")'
|
|
2859
|
+
- description: 'resolve numba legacy type config choice'
|
|
2860
|
+
global_replacements_re:
|
|
2861
|
+
'(_RedirectSubpackage\s*\(\s*.*?\s*"(numba.*?)"\s*\))': '\1; import \2'
|
|
2824
2862
|
options:
|
|
2825
2863
|
checks:
|
|
2826
2864
|
- description: "Numba is not yet fully working with Nuitka standalone, try to use '--noinclude-numba-mode=nofollow', but it may fail."
|
|
@@ -2882,7 +2920,7 @@
|
|
|
2882
2920
|
replacements_plain:
|
|
2883
2921
|
'type(attr) is types.MethodType': 'isinstance(attr, types.MethodType)'
|
|
2884
2922
|
|
|
2885
|
-
- module-name: 'numpy' # checksum:
|
|
2923
|
+
- module-name: 'numpy' # checksum: 10720e3
|
|
2886
2924
|
dlls:
|
|
2887
2925
|
- from_filenames:
|
|
2888
2926
|
relative_path: '.libs'
|
|
@@ -2911,9 +2949,12 @@
|
|
|
2911
2949
|
no-auto-follow:
|
|
2912
2950
|
'numpy.distutils': 'ignore'
|
|
2913
2951
|
when: 'not use_setuptools'
|
|
2914
|
-
- description: 'avoid
|
|
2952
|
+
- description: 'avoid PyYAML dependency'
|
|
2915
2953
|
no-auto-follow:
|
|
2916
2954
|
'yaml': 'ignore'
|
|
2955
|
+
- description: 'avoid charset_normalizer dependency'
|
|
2956
|
+
no-auto-follow:
|
|
2957
|
+
'charset_normalizer': 'ignore'
|
|
2917
2958
|
implicit-imports:
|
|
2918
2959
|
- depends:
|
|
2919
2960
|
- 'numpy._mklinit'
|
|
@@ -3022,7 +3063,7 @@
|
|
|
3022
3063
|
- depends:
|
|
3023
3064
|
- 'secrets'
|
|
3024
3065
|
|
|
3025
|
-
- module-name: 'numpy.testing' # checksum:
|
|
3066
|
+
- module-name: 'numpy.testing' # checksum: 7958db4c
|
|
3026
3067
|
anti-bloat:
|
|
3027
3068
|
- description: 'remove numpy testing framework'
|
|
3028
3069
|
module_code: |
|
|
@@ -3067,6 +3108,19 @@
|
|
|
3067
3108
|
with _assert_warns_context(warning_class, name=func.__name__):
|
|
3068
3109
|
return func(*args, **kwargs)
|
|
3069
3110
|
|
|
3111
|
+
@contextmanager
|
|
3112
|
+
def _assert_no_warnings_context(name=None):
|
|
3113
|
+
yield
|
|
3114
|
+
|
|
3115
|
+
def assert_no_warnings(*args, **kwargs):
|
|
3116
|
+
if not args:
|
|
3117
|
+
return _assert_no_warnings_context()
|
|
3118
|
+
|
|
3119
|
+
func = args[0]
|
|
3120
|
+
args = args[1:]
|
|
3121
|
+
with _assert_no_warnings_context(name=func.__name__):
|
|
3122
|
+
return func(*args, **kwargs)
|
|
3123
|
+
|
|
3070
3124
|
def assert_(val, msg=''):
|
|
3071
3125
|
if not val:
|
|
3072
3126
|
try:
|
|
@@ -3178,12 +3232,17 @@
|
|
|
3178
3232
|
support_info: 'error'
|
|
3179
3233
|
when: 'version("pyobjc") < (9,)'
|
|
3180
3234
|
|
|
3181
|
-
- module-name: 'onnx' # checksum:
|
|
3182
|
-
|
|
3183
|
-
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3235
|
+
- module-name: 'onnx.onnx_cpp2py_export' # checksum: 6d25b34c
|
|
3236
|
+
implicit-imports:
|
|
3237
|
+
- post-import-code:
|
|
3238
|
+
- |
|
|
3239
|
+
import sys
|
|
3240
|
+
onnx_cpp2py_export = sys.modules["onnx.onnx_cpp2py_export"]
|
|
3241
|
+
onnx_cpp2py_export.__path__ = []
|
|
3242
|
+
|
|
3243
|
+
for sub_module_name in [key for key in sys.modules.keys() if key.startswith("onnx_cpp2py_export.")]:
|
|
3244
|
+
sys.modules["onnx."+sub_module_name] = sys.modules.pop(sub_module_name)
|
|
3245
|
+
when: 'python312_or_higher and not static_libpython'
|
|
3187
3246
|
|
|
3188
3247
|
- module-name: 'onnxruntime' # checksum: 37a94e21
|
|
3189
3248
|
dlls:
|
|
@@ -3454,7 +3513,7 @@
|
|
|
3454
3513
|
- 'libpandaegg'
|
|
3455
3514
|
dest_path: '.'
|
|
3456
3515
|
|
|
3457
|
-
- module-name: 'pandas' # checksum:
|
|
3516
|
+
- module-name: 'pandas' # checksum: b4c6897a
|
|
3458
3517
|
anti-bloat:
|
|
3459
3518
|
- description: 'remove pandas testing framework'
|
|
3460
3519
|
replacements_plain:
|
|
@@ -3465,6 +3524,7 @@
|
|
|
3465
3524
|
- description: 'avoid numba in pandas'
|
|
3466
3525
|
no-auto-follow:
|
|
3467
3526
|
'pandas.core._numba.extensions': 'no numba acceleration'
|
|
3527
|
+
'lxml': 'no stylesheet support in pandas.io.formats.xml without including lxml'
|
|
3468
3528
|
when: 'not use_numba'
|
|
3469
3529
|
|
|
3470
3530
|
- module-name: 'pandas._libs' # checksum: 582d52b9
|
|
@@ -4250,11 +4310,12 @@
|
|
|
4250
4310
|
'setuptools_scm': 'ignore'
|
|
4251
4311
|
when: 'not use_setuptools'
|
|
4252
4312
|
|
|
4253
|
-
- module-name: 'pyarrow.dataset' # checksum:
|
|
4313
|
+
- module-name: 'pyarrow.dataset' # checksum: a16a7618
|
|
4254
4314
|
implicit-imports:
|
|
4255
4315
|
- depends:
|
|
4256
4316
|
- 'pyarrow._acero'
|
|
4257
4317
|
- 'pyarrow._json'
|
|
4318
|
+
- 'pyarrow._csv'
|
|
4258
4319
|
|
|
4259
4320
|
- module-name: 'pyarrow.lib' # checksum: 302be0c2
|
|
4260
4321
|
implicit-imports:
|
|
@@ -4720,7 +4781,7 @@
|
|
|
4720
4781
|
- find-dlls-near-module:
|
|
4721
4782
|
- 'shiboken2'
|
|
4722
4783
|
|
|
4723
|
-
- module-name: 'PySide6' # checksum:
|
|
4784
|
+
- module-name: 'PySide6' # checksum: 1d5fdbbd
|
|
4724
4785
|
implicit-imports:
|
|
4725
4786
|
- post-import-code:
|
|
4726
4787
|
- |
|
|
@@ -4779,6 +4840,8 @@
|
|
|
4779
4840
|
- 'libqtquickcontrols2fluentwinui3styleimplplugin'
|
|
4780
4841
|
- 'libqtquickcontrols2fluentwinui3styleplugin'
|
|
4781
4842
|
- 'libqtwebviewquickplugin'
|
|
4843
|
+
- 'libqtquickscene3dplugin'
|
|
4844
|
+
- 'libqsqlmimer'
|
|
4782
4845
|
|
|
4783
4846
|
- module-name: 'PySide6.QtCore' # checksum: be0d99ac
|
|
4784
4847
|
implicit-imports:
|
|
@@ -5140,7 +5203,7 @@
|
|
|
5140
5203
|
- depends:
|
|
5141
5204
|
- 'scapy.layers.*'
|
|
5142
5205
|
|
|
5143
|
-
- module-name: 'scipy' # checksum:
|
|
5206
|
+
- module-name: 'scipy' # checksum: 831d0852
|
|
5144
5207
|
data-files:
|
|
5145
5208
|
- patterns:
|
|
5146
5209
|
- 'stats/_sobol_direction_numbers.npz' # for scipy.stats._sobol._initialize_direction_numbers
|
|
@@ -5163,6 +5226,10 @@
|
|
|
5163
5226
|
'torch': 'ignore'
|
|
5164
5227
|
'jax': 'ignore'
|
|
5165
5228
|
'dask': 'ignore'
|
|
5229
|
+
'matplotlib': 'ignore'
|
|
5230
|
+
'sparse': 'ignore'
|
|
5231
|
+
'ndonnx': 'ignore'
|
|
5232
|
+
'yaml': 'ignore'
|
|
5166
5233
|
bloat-mode-overrides:
|
|
5167
5234
|
'pydoc': 'allow'
|
|
5168
5235
|
|
|
@@ -5653,7 +5720,15 @@
|
|
|
5653
5720
|
replacements_plain:
|
|
5654
5721
|
"os.getenv('CONDA_PREFIX', '')": "''"
|
|
5655
5722
|
|
|
5656
|
-
- module-name: 'shiboken6' # checksum:
|
|
5723
|
+
- module-name: 'shiboken6' # checksum: ccdf53fe
|
|
5724
|
+
dlls:
|
|
5725
|
+
# Do not put these top level, some packages are really incompatible with
|
|
5726
|
+
# this library potentially
|
|
5727
|
+
- from_filenames:
|
|
5728
|
+
prefixes:
|
|
5729
|
+
- 'msvcp'
|
|
5730
|
+
when: 'win32'
|
|
5731
|
+
|
|
5657
5732
|
implicit-imports:
|
|
5658
5733
|
- depends:
|
|
5659
5734
|
- 'argparse'
|
|
@@ -5864,6 +5939,19 @@
|
|
|
5864
5939
|
'import dask.array as da': 'raise ImportError'
|
|
5865
5940
|
when: 'not use_dask'
|
|
5866
5941
|
|
|
5942
|
+
- module-name: 'sklearn' # checksum: acc187b0
|
|
5943
|
+
anti-bloat:
|
|
5944
|
+
- description: 'pandas check should not cause usage'
|
|
5945
|
+
no-auto-follow:
|
|
5946
|
+
'pandas': 'ignore'
|
|
5947
|
+
- description: 'matplotlib check should not cause usage'
|
|
5948
|
+
no-auto-follow:
|
|
5949
|
+
'matplotlib': 'ignore'
|
|
5950
|
+
- description: 'remove pytest testing framework'
|
|
5951
|
+
no-auto-follow:
|
|
5952
|
+
'pytest': 'ignore'
|
|
5953
|
+
when: 'not use_pytest'
|
|
5954
|
+
|
|
5867
5955
|
- module-name: 'sklearn._distributor_init' # checksum: 8597e1a6
|
|
5868
5956
|
dlls:
|
|
5869
5957
|
- from_filenames:
|
|
@@ -5900,6 +5988,12 @@
|
|
|
5900
5988
|
- 'sklearn.datasets.data'
|
|
5901
5989
|
- 'sklearn.datasets.descr'
|
|
5902
5990
|
|
|
5991
|
+
- module-name: 'sklearn.datasets._base' # checksum: 521f4991
|
|
5992
|
+
anti-bloat:
|
|
5993
|
+
- description: 'avoid PIL dependency for sample image testing'
|
|
5994
|
+
change_function:
|
|
5995
|
+
'load_sample_images': 'un-callable'
|
|
5996
|
+
|
|
5903
5997
|
- module-name: 'sklearn.decomposition' # checksum: 61c8cb5d
|
|
5904
5998
|
implicit-imports:
|
|
5905
5999
|
- depends:
|
|
@@ -6046,15 +6140,10 @@
|
|
|
6046
6140
|
- depends:
|
|
6047
6141
|
- 'sklearn.neighbors._quad_tree'
|
|
6048
6142
|
|
|
6049
|
-
- module-name: 'sklearn.utils' # checksum:
|
|
6143
|
+
- module-name: 'sklearn.utils' # checksum: cecf5599
|
|
6050
6144
|
data-files:
|
|
6051
6145
|
- patterns:
|
|
6052
6146
|
- '*.css'
|
|
6053
|
-
anti-bloat:
|
|
6054
|
-
- description: 'pandas and matplotlib checks should not cause usage'
|
|
6055
|
-
no-auto-follow:
|
|
6056
|
-
'pandas': 'ignore'
|
|
6057
|
-
'matplotlib': 'ignore'
|
|
6058
6147
|
implicit-imports:
|
|
6059
6148
|
- depends:
|
|
6060
6149
|
- 'sklearn.utils.arrayfuncs'
|
|
@@ -6250,6 +6339,12 @@
|
|
|
6250
6339
|
- depends:
|
|
6251
6340
|
- 'sqlalchemy.dialects.mssql.pyodbc'
|
|
6252
6341
|
|
|
6342
|
+
- module-name: 'sqlalchemy.orm' # checksum: 807b0764
|
|
6343
|
+
implicit-imports:
|
|
6344
|
+
- depends:
|
|
6345
|
+
- 'sqlalchemy.orm.*'
|
|
6346
|
+
- 'sqlalchemy.ext.*'
|
|
6347
|
+
|
|
6253
6348
|
- module-name: 'sqlalchemy.orm.util' # checksum: 629852fa
|
|
6254
6349
|
anti-bloat:
|
|
6255
6350
|
- description: 'remove pytest reference'
|
|
@@ -6294,6 +6389,11 @@
|
|
|
6294
6389
|
- 'sqlfluff.core.plugin.*'
|
|
6295
6390
|
- 'sqlfluff.rules.*'
|
|
6296
6391
|
|
|
6392
|
+
- module-name: 'sqlglot.dialects' # checksum: b0ad4de6
|
|
6393
|
+
implicit-imports:
|
|
6394
|
+
- depends:
|
|
6395
|
+
- 'sqlglot.dialects.*'
|
|
6396
|
+
|
|
6297
6397
|
- module-name: 'srsly.msgpack._packer' # checksum: ef9e3a96
|
|
6298
6398
|
implicit-imports:
|
|
6299
6399
|
- depends:
|
|
@@ -7905,13 +8005,23 @@
|
|
|
7905
8005
|
change_function:
|
|
7906
8006
|
'doctests': "'(lambda: None)'"
|
|
7907
8007
|
|
|
7908
|
-
- module-name: 'tqdm' # checksum:
|
|
8008
|
+
- module-name: 'tqdm' # checksum: f48e841d
|
|
7909
8009
|
anti-bloat:
|
|
7910
8010
|
- description: 'remove IPython reference'
|
|
7911
8011
|
change_function:
|
|
7912
8012
|
'tnrange': "'(lambda *args, **kwargs: None)'"
|
|
7913
8013
|
'tqdm_notebook': "'(lambda *args, **kwargs: None)'"
|
|
7914
8014
|
when: 'not use_ipython'
|
|
8015
|
+
- description: 'remove matplotlib reference'
|
|
8016
|
+
no-auto-follow:
|
|
8017
|
+
'matplotlib': 'ignore'
|
|
8018
|
+
- description: 'remove setuptools reference'
|
|
8019
|
+
no-auto-follow:
|
|
8020
|
+
'setuptools_scm': 'ignore'
|
|
8021
|
+
when: 'not use_setuptools'
|
|
8022
|
+
- description: 'remove pandas reference'
|
|
8023
|
+
no-auto-follow:
|
|
8024
|
+
'pandas': 'ignore'
|
|
7915
8025
|
|
|
7916
8026
|
- module-name: 'tqdm.autonotebook' # checksum: 6ac095cb
|
|
7917
8027
|
anti-bloat:
|
|
@@ -7919,18 +8029,6 @@
|
|
|
7919
8029
|
module_code: "from .std import tqdm, trange\n"
|
|
7920
8030
|
when: 'not use_ipython'
|
|
7921
8031
|
|
|
7922
|
-
- module-name: 'tqdm.std' # checksum: 2e350129
|
|
7923
|
-
anti-bloat:
|
|
7924
|
-
- no-auto-follow:
|
|
7925
|
-
'pandas': 'ignore'
|
|
7926
|
-
|
|
7927
|
-
- module-name: 'tqdm.version' # checksum: 6b612ba4
|
|
7928
|
-
anti-bloat:
|
|
7929
|
-
- description: 'remove IPython reference'
|
|
7930
|
-
no-auto-follow:
|
|
7931
|
-
'setuptools_scm': 'ignore'
|
|
7932
|
-
when: 'not use_setuptools'
|
|
7933
|
-
|
|
7934
8032
|
- module-name: 'tracerite' # checksum: fe3c0d7b
|
|
7935
8033
|
data-files:
|
|
7936
8034
|
- patterns:
|
nuitka/reports/Reports.py
CHANGED
|
@@ -56,6 +56,7 @@ from nuitka.utils.Distributions import (
|
|
|
56
56
|
getDistributionName,
|
|
57
57
|
getDistributionsFromModuleName,
|
|
58
58
|
getDistributionVersion,
|
|
59
|
+
isDistributionVendored,
|
|
59
60
|
)
|
|
60
61
|
from nuitka.utils.FileOperations import (
|
|
61
62
|
getReportPath,
|
|
@@ -161,6 +162,14 @@ def _getReportInputData(aborted):
|
|
|
161
162
|
for dist in all_distributions
|
|
162
163
|
)
|
|
163
164
|
|
|
165
|
+
module_distribution_vendored = dict(
|
|
166
|
+
(
|
|
167
|
+
getDistributionName(dist),
|
|
168
|
+
isDistributionVendored(getDistributionName(dist)),
|
|
169
|
+
)
|
|
170
|
+
for dist in all_distributions
|
|
171
|
+
)
|
|
172
|
+
|
|
164
173
|
module_exclusions = dict((module.getFullName(), {}) for module in getDoneModules())
|
|
165
174
|
|
|
166
175
|
# TODO: The module filename, and other things can be None. Once we change to
|
|
@@ -320,7 +329,12 @@ def _addModulesToReport(root, report_input_data, diffable):
|
|
|
320
329
|
)
|
|
321
330
|
influence_xml_node.attrib["result"] = str(condition_result).lower()
|
|
322
331
|
elif influence == "variable-used":
|
|
323
|
-
|
|
332
|
+
(
|
|
333
|
+
variable_name,
|
|
334
|
+
condition_tags_used,
|
|
335
|
+
variable_value,
|
|
336
|
+
config_module_name,
|
|
337
|
+
) = detail
|
|
324
338
|
|
|
325
339
|
influence_xml_node.attrib["variable"] = variable_name
|
|
326
340
|
if condition_tags_used:
|
|
@@ -328,6 +342,10 @@ def _addModulesToReport(root, report_input_data, diffable):
|
|
|
328
342
|
condition_tags_used
|
|
329
343
|
)
|
|
330
344
|
influence_xml_node.attrib["value"] = variable_value
|
|
345
|
+
|
|
346
|
+
if module_name != config_module_name:
|
|
347
|
+
influence_xml_node.attrib["config_module"] = config_module_name
|
|
348
|
+
|
|
331
349
|
elif influence == "parameter-used":
|
|
332
350
|
parameter_name, condition_tags_used, parameter_value = detail
|
|
333
351
|
|
|
@@ -711,7 +729,7 @@ def writeCompilationReport(report_filename, report_input_data, diffable):
|
|
|
711
729
|
)
|
|
712
730
|
|
|
713
731
|
for distribution in report_input_data["all_distributions"]:
|
|
714
|
-
TreeXML.appendTreeElement(
|
|
732
|
+
distribution_node = TreeXML.appendTreeElement(
|
|
715
733
|
distributions_xml_node,
|
|
716
734
|
"distribution",
|
|
717
735
|
name=getDistributionName(distribution),
|
|
@@ -721,6 +739,11 @@ def writeCompilationReport(report_filename, report_input_data, diffable):
|
|
|
721
739
|
],
|
|
722
740
|
)
|
|
723
741
|
|
|
742
|
+
if report_input_data["module_distribution_vendored"][
|
|
743
|
+
getDistributionName(distribution)
|
|
744
|
+
]:
|
|
745
|
+
distribution_node.attrib["vendored"] = "yes"
|
|
746
|
+
|
|
724
747
|
python_xml_node = TreeXML.appendTreeElement(
|
|
725
748
|
root,
|
|
726
749
|
"python",
|
|
@@ -63,13 +63,16 @@ def editModuleCode(module_search_desc):
|
|
|
63
63
|
|
|
64
64
|
candidate = module_search_desc
|
|
65
65
|
|
|
66
|
-
while not candidate.endswith(".dist") and candidate:
|
|
66
|
+
while not candidate.endswith((".dist", ".app")) and candidate:
|
|
67
67
|
candidate = os.path.dirname(candidate)
|
|
68
68
|
|
|
69
69
|
if candidate:
|
|
70
70
|
module_name = relpath(module_search_desc, start=candidate).replace(
|
|
71
71
|
"/", "."
|
|
72
72
|
)
|
|
73
|
+
|
|
74
|
+
if module_name.startswith("Contents.MacOS."):
|
|
75
|
+
module_name = module_name[15:]
|
|
73
76
|
else:
|
|
74
77
|
module_name = None
|
|
75
78
|
else:
|
|
@@ -97,7 +97,7 @@ def scanModule(module_name, scan_function):
|
|
|
97
97
|
if isFileExtensionModule(package_dll_filename):
|
|
98
98
|
continue
|
|
99
99
|
|
|
100
|
-
yield package_dll_filename, package_dll_dir
|
|
100
|
+
yield package_directory, package_dll_filename, package_dll_dir
|
|
101
101
|
|
|
102
102
|
|
|
103
103
|
def displayDLLs(module_name):
|
|
@@ -105,12 +105,11 @@ def displayDLLs(module_name):
|
|
|
105
105
|
|
|
106
106
|
count = 0
|
|
107
107
|
|
|
108
|
-
for package_dll_filename,
|
|
108
|
+
for package_directory, package_dll_filename, _package_dll_dir in scanModule(
|
|
109
109
|
module_name=module_name, scan_function=listDllFilesFromDirectory
|
|
110
110
|
):
|
|
111
|
-
|
|
112
111
|
tools_logger.my_print(
|
|
113
|
-
" %s" % relpath(package_dll_filename, start=
|
|
112
|
+
" %s" % relpath(package_dll_filename, start=package_directory),
|
|
114
113
|
)
|
|
115
114
|
|
|
116
115
|
count += 1
|
|
@@ -123,12 +122,12 @@ def displayEXEs(module_name):
|
|
|
123
122
|
|
|
124
123
|
count = 0
|
|
125
124
|
|
|
126
|
-
for package_dll_filename,
|
|
125
|
+
for package_directory, package_dll_filename, _package_dll_dir in scanModule(
|
|
127
126
|
module_name=module_name, scan_function=listExeFilesFromDirectory
|
|
128
127
|
):
|
|
129
128
|
|
|
130
129
|
tools_logger.my_print(
|
|
131
|
-
" %s" % relpath(package_dll_filename, start=
|
|
130
|
+
" %s" % relpath(package_dll_filename, start=package_directory),
|
|
132
131
|
)
|
|
133
132
|
|
|
134
133
|
count += 1
|
nuitka/tools/watch/__main__.py
CHANGED
|
@@ -20,7 +20,7 @@ from nuitka.TreeXML import fromFile
|
|
|
20
20
|
from nuitka.utils.Execution import (
|
|
21
21
|
check_call,
|
|
22
22
|
executeProcess,
|
|
23
|
-
|
|
23
|
+
withEnvironmentVarsOverridden,
|
|
24
24
|
)
|
|
25
25
|
from nuitka.utils.FileOperations import (
|
|
26
26
|
deleteFile,
|
|
@@ -194,7 +194,12 @@ def _compileCase(case_data, case_dir, installed_python, lock_filename, jobs):
|
|
|
194
194
|
if len(binaries) != 1:
|
|
195
195
|
sys.exit("Error, failed to identify created binary.")
|
|
196
196
|
|
|
197
|
-
|
|
197
|
+
env = {
|
|
198
|
+
"NUITKA_LAUNCH_TOKEN": "1",
|
|
199
|
+
"NUITKA_TEST_INTERACTIVE": "0",
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
with withEnvironmentVarsOverridden(env):
|
|
198
203
|
stdout, stderr, exit_nuitka = executeProcess([binaries[0]], timeout=5 * 60)
|
|
199
204
|
|
|
200
205
|
with open("compiled-stdout.txt", "wb") as output:
|
nuitka/tree/Building.py
CHANGED
|
@@ -138,6 +138,7 @@ from nuitka.utils.ModuleNames import ModuleName
|
|
|
138
138
|
from nuitka.utils.Utils import withNoSyntaxWarning
|
|
139
139
|
|
|
140
140
|
from . import SyntaxErrors
|
|
141
|
+
from .FutureSpecState import getFutureSpec, popFutureSpec, pushFutureSpec
|
|
141
142
|
from .ReformulationAssertStatements import buildAssertNode
|
|
142
143
|
from .ReformulationAssignmentStatements import (
|
|
143
144
|
buildAnnAssignNode,
|
|
@@ -172,9 +173,6 @@ from .ReformulationImportStatements import (
|
|
|
172
173
|
buildImportFromNode,
|
|
173
174
|
buildImportModulesNode,
|
|
174
175
|
checkFutureImportsOnlyAtStart,
|
|
175
|
-
getFutureSpec,
|
|
176
|
-
popFutureSpec,
|
|
177
|
-
pushFutureSpec,
|
|
178
176
|
)
|
|
179
177
|
from .ReformulationLambdaExpressions import buildLambdaNode
|
|
180
178
|
from .ReformulationMatchStatements import buildMatchNode
|
|
@@ -1018,14 +1016,14 @@ def _loadUncompiledModuleFromCache(
|
|
|
1018
1016
|
|
|
1019
1017
|
used_modules = OrderedSet()
|
|
1020
1018
|
|
|
1021
|
-
used_modules = getCachedImportedModuleUsageAttempts(
|
|
1019
|
+
used_modules, timing_info = getCachedImportedModuleUsageAttempts(
|
|
1022
1020
|
module_name=module_name, source_code=source_code, source_ref=source_ref
|
|
1023
1021
|
)
|
|
1024
1022
|
|
|
1025
|
-
# assert not is_package, (module_name, used_modules, result, result.getCompileTimeFilename())
|
|
1026
|
-
|
|
1027
1023
|
result.setUsedModules(used_modules)
|
|
1028
1024
|
|
|
1025
|
+
ModuleRegistry.setModuleOptimizationTimingInfos(module_name, timing_info)
|
|
1026
|
+
|
|
1029
1027
|
return result
|
|
1030
1028
|
|
|
1031
1029
|
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
""" State of a stack of future specs during parsing. """
|
|
5
|
+
|
|
6
|
+
from nuitka.nodes.FutureSpecs import FutureSpec
|
|
7
|
+
from nuitka.plugins.Plugins import Plugins
|
|
8
|
+
from nuitka.PythonVersions import python_version
|
|
9
|
+
|
|
10
|
+
from .SyntaxErrors import raiseSyntaxError
|
|
11
|
+
|
|
12
|
+
_future_specs = []
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def pushFutureSpec(module_name):
|
|
16
|
+
_future_specs.append(
|
|
17
|
+
FutureSpec(use_annotations=Plugins.decideAnnotations(module_name))
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def getFutureSpec():
|
|
22
|
+
return _future_specs[-1]
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def popFutureSpec():
|
|
26
|
+
del _future_specs[-1]
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def enableFutureFeature(node, object_name, source_ref):
|
|
30
|
+
future_spec = _future_specs[-1]
|
|
31
|
+
|
|
32
|
+
if object_name == "unicode_literals":
|
|
33
|
+
future_spec.enableUnicodeLiterals()
|
|
34
|
+
elif object_name == "absolute_import":
|
|
35
|
+
future_spec.enableAbsoluteImport()
|
|
36
|
+
elif object_name == "division":
|
|
37
|
+
future_spec.enableFutureDivision()
|
|
38
|
+
elif object_name == "print_function":
|
|
39
|
+
future_spec.enableFuturePrint()
|
|
40
|
+
elif object_name == "barry_as_FLUFL" and python_version >= 0x300:
|
|
41
|
+
future_spec.enableBarry()
|
|
42
|
+
elif object_name == "generator_stop":
|
|
43
|
+
future_spec.enableGeneratorStop()
|
|
44
|
+
elif object_name == "braces":
|
|
45
|
+
raiseSyntaxError("not a chance", source_ref.atColumnNumber(node.col_offset))
|
|
46
|
+
elif object_name in ("nested_scopes", "generators", "with_statement"):
|
|
47
|
+
# These are enabled in all cases already.
|
|
48
|
+
pass
|
|
49
|
+
elif object_name == "annotations" and python_version >= 0x370:
|
|
50
|
+
future_spec.enableFutureAnnotations()
|
|
51
|
+
else:
|
|
52
|
+
raiseSyntaxError(
|
|
53
|
+
"future feature %s is not defined" % object_name,
|
|
54
|
+
source_ref.atColumnNumber(node.col_offset),
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
59
|
+
# integrates with CPython, but also works on its own.
|
|
60
|
+
#
|
|
61
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
62
|
+
# you may not use this file except in compliance with the License.
|
|
63
|
+
# You may obtain a copy of the License at
|
|
64
|
+
#
|
|
65
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
66
|
+
#
|
|
67
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
68
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
69
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
70
|
+
# See the License for the specific language governing permissions and
|
|
71
|
+
# limitations under the License.
|
|
@@ -67,7 +67,7 @@ from nuitka.Options import isExperimental
|
|
|
67
67
|
from nuitka.PythonVersions import python_version
|
|
68
68
|
from nuitka.Tracing import general
|
|
69
69
|
|
|
70
|
-
from .
|
|
70
|
+
from .FutureSpecState import getFutureSpec
|
|
71
71
|
from .ReformulationTryFinallyStatements import makeTryFinallyReleaseStatement
|
|
72
72
|
from .SyntaxErrors import raiseSyntaxError
|
|
73
73
|
from .TreeHelpers import (
|
|
@@ -1231,7 +1231,7 @@ def buildTypeAliasNode(provider, node, source_ref):
|
|
|
1231
1231
|
assert not node.type_params, node.type_params
|
|
1232
1232
|
type_alias_node = ExpressionTypeAlias(
|
|
1233
1233
|
type_params=buildNodeTuple(provider, node.type_params, source_ref),
|
|
1234
|
-
|
|
1234
|
+
value=buildNode(provider, node.value, source_ref),
|
|
1235
1235
|
source_ref=source_ref,
|
|
1236
1236
|
)
|
|
1237
1237
|
|