Nuitka-winsvc 1.8__cp311-cp311-win_amd64.whl → 2.5.1__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-1.8.data/scripts/nuitka-run.bat → Nuitka_winsvc-2.5.1.data/scripts/nuitka-run.cmd +9 -9
- Nuitka_winsvc-1.8.data/scripts/nuitka.bat → Nuitka_winsvc-2.5.1.data/scripts/nuitka.cmd +15 -15
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/METADATA +5 -3
- Nuitka_winsvc-2.5.1.dist-info/RECORD +977 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +49 -17
- nuitka/BytecodeCaching.py +24 -20
- nuitka/Bytecodes.py +23 -19
- nuitka/CacheCleanup.py +28 -23
- nuitka/Constants.py +19 -17
- nuitka/Errors.py +23 -17
- nuitka/HardImportRegistry.py +408 -0
- nuitka/MainControl.py +209 -116
- nuitka/ModuleRegistry.py +83 -20
- nuitka/OptionParsing.py +467 -221
- nuitka/Options.py +701 -225
- nuitka/OutputDirectories.py +47 -23
- nuitka/PostProcessing.py +133 -79
- nuitka/Progress.py +73 -24
- nuitka/PythonFlavors.py +141 -32
- nuitka/PythonOperators.py +18 -17
- nuitka/PythonVersions.py +107 -19
- nuitka/Serialization.py +70 -55
- nuitka/SourceCodeReferences.py +19 -17
- nuitka/Tracing.py +176 -70
- nuitka/TreeXML.py +31 -26
- nuitka/Variables.py +39 -41
- nuitka/Version.py +22 -8
- nuitka/__init__.py +5 -4
- nuitka/__main__.py +95 -29
- nuitka/__past__.py +44 -34
- nuitka/build/Backend.scons +243 -141
- nuitka/build/CCompilerVersion.scons +45 -31
- nuitka/build/DataComposerInterface.py +20 -17
- nuitka/build/Onefile.scons +56 -54
- nuitka/build/SconsCaching.py +105 -92
- nuitka/build/SconsCompilerSettings.py +167 -68
- nuitka/build/SconsHacks.py +25 -19
- nuitka/build/SconsInterface.py +155 -54
- nuitka/build/SconsProgress.py +19 -18
- nuitka/build/SconsSpawn.py +62 -33
- nuitka/build/SconsUtils.py +152 -55
- nuitka/build/__init__.py +5 -4
- nuitka/build/include/nuitka/allocator.h +228 -22
- nuitka/build/include/nuitka/builtins.h +17 -17
- nuitka/build/include/nuitka/calling.h +24 -24
- nuitka/build/include/nuitka/checkers.h +17 -18
- nuitka/build/include/nuitka/checksum_tools.h +14 -19
- nuitka/build/include/nuitka/compiled_asyncgen.h +28 -25
- nuitka/build/include/nuitka/compiled_cell.h +33 -18
- nuitka/build/include/nuitka/compiled_coroutine.h +18 -18
- nuitka/build/include/nuitka/compiled_frame.h +93 -54
- nuitka/build/include/nuitka/compiled_function.h +42 -20
- nuitka/build/include/nuitka/compiled_generator.h +24 -18
- nuitka/build/include/nuitka/compiled_method.h +17 -18
- nuitka/build/include/nuitka/constants.h +35 -18
- nuitka/build/include/nuitka/constants_blob.h +17 -17
- nuitka/build/include/nuitka/debug_settings.h +60 -0
- nuitka/build/include/nuitka/environment_variables.h +30 -0
- nuitka/build/include/nuitka/environment_variables_system.h +45 -0
- nuitka/build/include/nuitka/exception_groups.h +23 -26
- nuitka/build/include/nuitka/exceptions.h +717 -171
- nuitka/build/include/nuitka/filesystem_paths.h +26 -20
- nuitka/build/include/nuitka/freelists.h +38 -18
- nuitka/build/include/nuitka/helper/attributes.h +24 -22
- nuitka/build/include/nuitka/helper/boolean.h +17 -17
- nuitka/build/include/nuitka/helper/bytearrays.h +17 -17
- nuitka/build/include/nuitka/helper/bytes.h +14 -15
- nuitka/build/include/nuitka/helper/calling_generated.h +69 -69
- nuitka/build/include/nuitka/helper/comparisons_dual_eq.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_ge.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_gt.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_le.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_lt.h +47 -0
- nuitka/build/include/nuitka/helper/comparisons_dual_ne.h +39 -0
- nuitka/build/include/nuitka/helper/comparisons_eq.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ge.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_gt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_le.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_lt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ne.h +17 -17
- nuitka/build/include/nuitka/helper/complex.h +17 -17
- nuitka/build/include/nuitka/helper/dictionaries.h +89 -51
- nuitka/build/include/nuitka/helper/floats.h +17 -18
- nuitka/build/include/nuitka/helper/import_hard.h +25 -17
- nuitka/build/include/nuitka/helper/indexes.h +17 -18
- nuitka/build/include/nuitka/helper/ints.h +115 -54
- nuitka/build/include/nuitka/helper/iterators.h +99 -51
- nuitka/build/include/nuitka/helper/lists.h +26 -24
- nuitka/build/include/nuitka/helper/lists_generated.h +22 -22
- nuitka/build/include/nuitka/helper/mappings.h +17 -18
- nuitka/build/include/nuitka/helper/operations.h +20 -17
- nuitka/build/include/nuitka/helper/operations_binary_add.h +23 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_divmod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_dual_add.h +34 -0
- nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_sub.h +23 -17
- nuitka/build/include/nuitka/helper/operations_binary_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_builtin_types.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_add.h +20 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_sub.h +20 -17
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/raising.h +68 -37
- nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
- nuitka/build/include/nuitka/helper/richcomparisons.h +21 -14
- nuitka/build/include/nuitka/helper/sequences.h +19 -13
- nuitka/build/include/nuitka/helper/sets.h +11 -12
- nuitka/build/include/nuitka/helper/slices.h +31 -25
- nuitka/build/include/nuitka/helper/strings.h +16 -17
- nuitka/build/include/nuitka/helper/subscripts.h +18 -201
- nuitka/build/include/nuitka/helper/tuples.h +64 -52
- nuitka/build/include/nuitka/helpers.h +50 -22
- nuitka/build/include/nuitka/importing.h +28 -21
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +163 -71
- nuitka/build/include/nuitka/printing.h +29 -22
- nuitka/build/include/nuitka/python_pgo.h +19 -18
- nuitka/build/include/nuitka/safe_string_ops.h +20 -18
- nuitka/build/include/nuitka/threading.h +45 -32
- nuitka/build/include/nuitka/tracing.h +28 -18
- nuitka/build/include/nuitka/type_aliases.h +30 -0
- nuitka/build/include/nuitka/unfreezing.h +29 -23
- nuitka/build/inline_copy/bin/scons.py +14 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/ListVariable.py +6 -6
- nuitka/build/inline_copy/pkg_resources/pkg_resources/__init__.py +0 -3
- nuitka/build/inline_copy/python_hacl/LICENSE.txt +201 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.c +1430 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.c +463 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.c +1273 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.h +204 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.c +734 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.h +131 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Streaming_Types.h +83 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt128_Verified.h +346 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt_8_16_32_64.h +107 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/fstar_uint128_struct_endianness.h +68 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/internal/target.h +293 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/lowstar_endianness.h +231 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/types.h +14 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_MD5.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA1.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA2.h +164 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA3.h +65 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/python_hacl_namespaces.h +89 -0
- nuitka/build/inline_copy/stubgen/astunparse.py +938 -0
- nuitka/build/inline_copy/stubgen/six.py +998 -0
- nuitka/build/inline_copy/stubgen/stubgen.py +307 -0
- nuitka/build/inline_copy/tqdm/tqdm/__init__.py +2 -2
- nuitka/build/inline_copy/tqdm/tqdm/_monitor.py +4 -1
- nuitka/build/inline_copy/tqdm/tqdm/utils.py +14 -8
- nuitka/build/inline_copy/tqdm/tqdm/version.py +1 -8
- nuitka/build/inline_copy/zlib/LICENSE +22 -0
- nuitka/build/inline_copy/zlib/crc32.c +1049 -0
- nuitka/build/inline_copy/zlib/crc32.h +9446 -0
- nuitka/build/inline_copy/zlib/zconf.h +551 -0
- nuitka/build/inline_copy/zlib/zlib.h +1938 -0
- nuitka/build/inline_copy/zlib/zutil.h +275 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +221 -221
- nuitka/build/static_src/CompiledCellType.c +69 -44
- nuitka/build/static_src/CompiledCodeHelpers.c +276 -159
- nuitka/build/static_src/CompiledCoroutineType.c +229 -226
- nuitka/build/static_src/CompiledFrameType.c +323 -138
- nuitka/build/static_src/CompiledFunctionType.c +547 -231
- nuitka/build/static_src/CompiledGeneratorType.c +416 -290
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +593 -228
- nuitka/build/static_src/CompiledMethodType.c +91 -82
- nuitka/build/static_src/HelpersAllocator.c +352 -45
- nuitka/build/static_src/HelpersAttributes.c +30 -72
- nuitka/build/static_src/HelpersBuiltin.c +65 -46
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
- nuitka/build/static_src/HelpersBytes.c +19 -20
- nuitka/build/static_src/HelpersCalling.c +40 -37
- nuitka/build/static_src/HelpersCallingGenerated.c +1061 -242
- nuitka/build/static_src/HelpersChecksumTools.c +35 -21
- nuitka/build/static_src/HelpersClasses.c +17 -17
- nuitka/build/static_src/HelpersComparisonDualEq.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualGe.c +121 -0
- nuitka/build/static_src/HelpersComparisonDualGt.c +121 -0
- nuitka/build/static_src/HelpersComparisonDualLe.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualLt.c +183 -0
- nuitka/build/static_src/HelpersComparisonDualNe.c +121 -0
- nuitka/build/static_src/HelpersComparisonEq.c +536 -496
- nuitka/build/static_src/HelpersComparisonEqUtils.c +22 -19
- nuitka/build/static_src/HelpersComparisonGe.c +531 -501
- nuitka/build/static_src/HelpersComparisonGt.c +530 -500
- nuitka/build/static_src/HelpersComparisonLe.c +531 -501
- nuitka/build/static_src/HelpersComparisonLt.c +530 -500
- nuitka/build/static_src/HelpersComparisonNe.c +538 -496
- nuitka/build/static_src/HelpersConsole.c +122 -0
- nuitka/build/static_src/HelpersConstantsBlob.c +550 -521
- nuitka/build/static_src/HelpersDeepcopy.c +33 -33
- nuitka/build/static_src/HelpersDictionaries.c +232 -63
- nuitka/build/static_src/HelpersDictionariesGenerated.c +130 -127
- nuitka/build/static_src/HelpersDumpBacktraces.c +63 -0
- nuitka/build/static_src/HelpersEnvironmentVariables.c +65 -0
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +93 -0
- nuitka/build/static_src/HelpersExceptions.c +147 -62
- nuitka/build/static_src/HelpersFiles.c +116 -22
- nuitka/build/static_src/HelpersFilesystemPaths.c +292 -181
- nuitka/build/static_src/HelpersFloats.c +37 -31
- nuitka/build/static_src/HelpersHeapStorage.c +21 -17
- nuitka/build/static_src/HelpersImport.c +61 -29
- nuitka/build/static_src/HelpersImportHard.c +74 -61
- nuitka/build/static_src/HelpersJitSources.c +46 -0
- nuitka/build/static_src/HelpersLists.c +237 -58
- nuitka/build/static_src/HelpersListsGenerated.c +41 -41
- nuitka/build/static_src/HelpersMappings.c +17 -17
- nuitka/build/static_src/HelpersMatching.c +137 -51
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +397 -152
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +102 -52
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +55 -55
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +49 -43
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryDualAdd.c +172 -0
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +55 -49
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +20 -21
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +83 -83
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +25 -24
- nuitka/build/static_src/HelpersOperationBinaryMod.c +129 -117
- nuitka/build/static_src/HelpersOperationBinaryMult.c +98 -82
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +33 -30
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +55 -49
- nuitka/build/static_src/HelpersOperationBinaryPow.c +68 -68
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +51 -51
- nuitka/build/static_src/HelpersOperationBinarySub.c +309 -88
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +49 -43
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +333 -163
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +24 -22
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +58 -58
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +73 -68
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +64 -64
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +38 -37
- nuitka/build/static_src/HelpersOperationInplaceMod.c +145 -140
- nuitka/build/static_src/HelpersOperationInplaceMult.c +89 -84
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +73 -68
- nuitka/build/static_src/HelpersOperationInplacePow.c +82 -82
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +48 -48
- nuitka/build/static_src/HelpersOperationInplaceSub.c +275 -122
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +68 -63
- nuitka/build/static_src/HelpersProfiling.c +25 -24
- nuitka/build/static_src/HelpersPythonPgo.c +22 -22
- nuitka/build/static_src/HelpersRaising.c +296 -283
- nuitka/build/static_src/HelpersSafeStrings.c +34 -22
- nuitka/build/static_src/HelpersSequences.c +18 -19
- nuitka/build/static_src/HelpersSlices.c +29 -23
- nuitka/build/static_src/HelpersStrings.c +235 -38
- nuitka/build/static_src/HelpersTuples.c +46 -34
- nuitka/build/static_src/HelpersTypes.c +166 -25
- nuitka/build/static_src/InspectPatcher.c +108 -27
- nuitka/build/static_src/MainProgram.c +464 -280
- nuitka/build/static_src/MetaPathBasedLoader.c +381 -257
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +39 -26
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +227 -29
- nuitka/build/static_src/OnefileBootstrap.c +281 -164
- nuitka/build/static_src/OnefileSplashScreen.cpp +51 -27
- nuitka/code_generation/AsyncgenCodes.py +21 -23
- nuitka/code_generation/AttributeCodes.py +31 -27
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +290 -184
- nuitka/code_generation/BranchCodes.py +19 -17
- nuitka/code_generation/BuiltinCodes.py +29 -18
- nuitka/code_generation/CallCodes.py +35 -33
- nuitka/code_generation/ClassCodes.py +19 -17
- nuitka/code_generation/CodeGeneration.py +61 -28
- nuitka/code_generation/CodeHelperSelection.py +20 -18
- nuitka/code_generation/CodeHelpers.py +28 -21
- nuitka/code_generation/CodeObjectCodes.py +36 -26
- nuitka/code_generation/ComparisonCodes.py +51 -22
- nuitka/code_generation/ComparisonHelperDefinitions.py +42 -25
- nuitka/code_generation/ConditionalCodes.py +19 -17
- nuitka/code_generation/ConstantCodes.py +82 -28
- nuitka/code_generation/Contexts.py +180 -42
- nuitka/code_generation/CoroutineCodes.py +21 -23
- nuitka/code_generation/CtypesCodes.py +19 -17
- nuitka/code_generation/DictCodes.py +28 -26
- nuitka/code_generation/Emission.py +21 -18
- nuitka/code_generation/ErrorCodes.py +57 -79
- nuitka/code_generation/EvalCodes.py +24 -20
- nuitka/code_generation/ExceptionCodes.py +182 -104
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +45 -27
- nuitka/code_generation/ExpressionCodes.py +19 -17
- nuitka/code_generation/FrameCodes.py +28 -31
- nuitka/code_generation/FunctionCodes.py +26 -27
- nuitka/code_generation/GeneratorCodes.py +25 -26
- nuitka/code_generation/GlobalConstants.py +51 -25
- nuitka/code_generation/GlobalsLocalsCodes.py +23 -21
- nuitka/code_generation/IdCodes.py +19 -17
- nuitka/code_generation/ImportCodes.py +90 -50
- nuitka/code_generation/Indentation.py +23 -22
- nuitka/code_generation/IndexCodes.py +19 -17
- nuitka/code_generation/InjectCCodes.py +14 -12
- nuitka/code_generation/IntegerCodes.py +19 -17
- nuitka/code_generation/IteratorCodes.py +86 -71
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/LabelCodes.py +19 -17
- nuitka/code_generation/LineNumberCodes.py +20 -20
- nuitka/code_generation/ListCodes.py +32 -36
- nuitka/code_generation/LoaderCodes.py +22 -17
- nuitka/code_generation/LocalsDictCodes.py +56 -32
- nuitka/code_generation/LoopCodes.py +19 -17
- nuitka/code_generation/MatchCodes.py +42 -22
- nuitka/code_generation/ModuleCodes.py +71 -29
- nuitka/code_generation/Namify.py +27 -23
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +80 -51
- nuitka/code_generation/PackageResourceCodes.py +96 -23
- nuitka/code_generation/PrintCodes.py +19 -17
- nuitka/code_generation/PythonAPICodes.py +19 -17
- nuitka/code_generation/RaisingCodes.py +183 -107
- nuitka/code_generation/Reports.py +32 -22
- nuitka/code_generation/ReturnCodes.py +20 -32
- nuitka/code_generation/SetCodes.py +19 -17
- nuitka/code_generation/SliceCodes.py +22 -20
- nuitka/code_generation/StringCodes.py +19 -17
- nuitka/code_generation/SubscriptCodes.py +24 -30
- nuitka/code_generation/TensorflowCodes.py +54 -0
- nuitka/code_generation/TryCodes.py +31 -41
- nuitka/code_generation/TupleCodes.py +20 -18
- nuitka/code_generation/TypeAliasCodes.py +119 -0
- nuitka/code_generation/VariableCodes.py +118 -55
- nuitka/code_generation/VariableDeclarations.py +28 -25
- nuitka/code_generation/YieldCodes.py +23 -21
- nuitka/code_generation/__init__.py +5 -4
- nuitka/code_generation/c_types/CTypeBases.py +29 -19
- nuitka/code_generation/c_types/CTypeBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeCFloats.py +19 -17
- nuitka/code_generation/c_types/CTypeCLongs.py +19 -18
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +22 -17
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +22 -21
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +89 -43
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +20 -18
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +43 -31
- nuitka/code_generation/c_types/CTypeVoids.py +20 -17
- nuitka/code_generation/c_types/__init__.py +5 -4
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesConstants.py +143 -39
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +33 -33
- nuitka/code_generation/templates/CodeTemplatesFrames.py +36 -27
- nuitka/code_generation/templates/CodeTemplatesFunction.py +20 -19
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +21 -19
- nuitka/code_generation/templates/CodeTemplatesIterators.py +19 -53
- nuitka/code_generation/templates/CodeTemplatesLoader.py +25 -19
- nuitka/code_generation/templates/CodeTemplatesModules.py +278 -169
- nuitka/code_generation/templates/CodeTemplatesVariables.py +115 -27
- nuitka/code_generation/templates/TemplateDebugWrapper.py +19 -18
- nuitka/code_generation/templates/__init__.py +5 -4
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +21 -21
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +79 -28
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +22 -22
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +74 -106
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +19 -20
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +6 -6
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +23 -23
- nuitka/code_generation/templates_c/HelperOperationBinaryDual.c.j2 +115 -0
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +35 -35
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +37 -37
- nuitka/code_generation/templates_c/HelperOperationComparisonDual.c.j2 +86 -0
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +50 -38
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +27 -27
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +37 -37
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +31 -31
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +35 -31
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +28 -28
- nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +48 -48
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +27 -25
- nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +17 -17
- nuitka/containers/Namedtuples.py +25 -18
- nuitka/containers/OrderedSets.py +105 -5
- nuitka/containers/OrderedSetsFallback.py +19 -17
- nuitka/containers/__init__.py +5 -4
- nuitka/distutils/Build.py +33 -18
- nuitka/distutils/DistutilCommands.py +84 -33
- nuitka/distutils/__init__.py +5 -4
- nuitka/finalizations/Finalization.py +21 -18
- nuitka/finalizations/FinalizeMarkups.py +31 -55
- nuitka/finalizations/__init__.py +5 -4
- nuitka/freezer/DependsExe.py +60 -30
- nuitka/freezer/DllDependenciesCommon.py +47 -20
- nuitka/freezer/DllDependenciesMacOS.py +165 -58
- nuitka/freezer/DllDependenciesPosix.py +29 -19
- nuitka/freezer/DllDependenciesWin32.py +55 -33
- nuitka/freezer/ImportDetection.py +23 -17
- nuitka/freezer/IncludedDataFiles.py +142 -48
- nuitka/freezer/IncludedEntryPoints.py +104 -39
- nuitka/freezer/Onefile.py +32 -22
- nuitka/freezer/Standalone.py +166 -53
- nuitka/freezer/__init__.py +5 -4
- nuitka/importing/IgnoreListing.py +19 -17
- nuitka/importing/ImportCache.py +24 -21
- nuitka/importing/ImportResolving.py +103 -95
- nuitka/importing/Importing.py +319 -98
- nuitka/importing/PreloadedPackages.py +21 -18
- nuitka/importing/Recursion.py +142 -47
- nuitka/importing/StandardLibrary.py +96 -80
- nuitka/importing/__init__.py +5 -4
- nuitka/nodes/AsyncgenNodes.py +22 -23
- nuitka/nodes/AttributeLookupNodes.py +19 -17
- nuitka/nodes/AttributeNodes.py +19 -17
- nuitka/nodes/AttributeNodesGenerated.py +49 -24
- nuitka/nodes/BuiltinAllNodes.py +19 -17
- nuitka/nodes/BuiltinAnyNodes.py +19 -17
- nuitka/nodes/BuiltinComplexNodes.py +20 -17
- nuitka/nodes/BuiltinDecodingNodes.py +19 -17
- nuitka/nodes/BuiltinDecoratorNodes.py +19 -17
- nuitka/nodes/BuiltinDictNodes.py +19 -17
- nuitka/nodes/BuiltinFormatNodes.py +20 -17
- nuitka/nodes/BuiltinHashNodes.py +19 -17
- nuitka/nodes/BuiltinInputNodes.py +19 -17
- nuitka/nodes/BuiltinIntegerNodes.py +19 -17
- nuitka/nodes/BuiltinIteratorNodes.py +25 -21
- nuitka/nodes/BuiltinLenNodes.py +19 -17
- nuitka/nodes/BuiltinNextNodes.py +19 -17
- nuitka/nodes/BuiltinOpenNodes.py +52 -18
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +40 -23
- nuitka/nodes/BuiltinRangeNodes.py +21 -19
- nuitka/nodes/BuiltinRefNodes.py +73 -40
- nuitka/nodes/BuiltinSumNodes.py +20 -18
- nuitka/nodes/BuiltinTypeNodes.py +19 -17
- nuitka/nodes/BuiltinVarsNodes.py +19 -18
- nuitka/nodes/BytesNodes.py +19 -17
- nuitka/nodes/CallNodes.py +19 -17
- nuitka/nodes/Checkers.py +19 -17
- nuitka/nodes/ChildrenHavingMixins.py +1624 -283
- nuitka/nodes/ClassNodes.py +49 -29
- nuitka/nodes/CodeObjectSpecs.py +29 -18
- nuitka/nodes/ComparisonNodes.py +19 -17
- nuitka/nodes/ConditionalNodes.py +24 -25
- nuitka/nodes/ConstantRefNodes.py +57 -17
- nuitka/nodes/ContainerMakingNodes.py +19 -17
- nuitka/nodes/ContainerOperationNodes.py +19 -17
- nuitka/nodes/CoroutineNodes.py +22 -23
- nuitka/nodes/CtypesNodes.py +19 -18
- nuitka/nodes/DictionaryNodes.py +19 -18
- nuitka/nodes/ExceptionNodes.py +131 -43
- nuitka/nodes/ExecEvalNodes.py +19 -17
- nuitka/nodes/ExpressionBases.py +34 -26
- nuitka/nodes/ExpressionBasesGenerated.py +341 -35
- nuitka/nodes/ExpressionShapeMixins.py +19 -17
- nuitka/nodes/FrameNodes.py +41 -28
- nuitka/nodes/FunctionAttributeNodes.py +19 -17
- nuitka/nodes/FunctionNodes.py +84 -38
- nuitka/nodes/FutureSpecs.py +35 -20
- nuitka/nodes/GeneratorNodes.py +24 -25
- nuitka/nodes/GlobalsLocalsNodes.py +22 -17
- nuitka/nodes/HardImportNodesGenerated.py +746 -148
- nuitka/nodes/ImportHardNodes.py +46 -38
- nuitka/nodes/ImportNodes.py +438 -448
- nuitka/nodes/IndicatorMixins.py +19 -17
- nuitka/nodes/InjectCNodes.py +19 -18
- nuitka/nodes/IterationHandles.py +55 -34
- nuitka/nodes/KeyValuePairNodes.py +19 -17
- nuitka/nodes/ListOperationNodes.py +33 -21
- nuitka/nodes/LocalsDictNodes.py +19 -17
- nuitka/nodes/LocalsScopes.py +41 -41
- nuitka/nodes/LoopNodes.py +28 -17
- nuitka/nodes/MatchNodes.py +37 -24
- nuitka/nodes/ModuleAttributeNodes.py +18 -35
- nuitka/nodes/ModuleNodes.py +90 -31
- nuitka/nodes/NetworkxNodes.py +45 -0
- nuitka/nodes/NodeBases.py +73 -44
- nuitka/nodes/NodeMakingHelpers.py +92 -69
- nuitka/nodes/NodeMetaClasses.py +45 -28
- nuitka/nodes/OperatorNodes.py +28 -26
- nuitka/nodes/OperatorNodesUnary.py +148 -20
- nuitka/nodes/OsSysNodes.py +97 -18
- nuitka/nodes/OutlineNodes.py +24 -22
- nuitka/nodes/PackageMetadataNodes.py +37 -27
- nuitka/nodes/PackageResourceNodes.py +29 -23
- nuitka/nodes/PrintNodes.py +19 -17
- nuitka/nodes/ReturnNodes.py +20 -18
- nuitka/nodes/SideEffectNodes.py +19 -17
- nuitka/nodes/SliceNodes.py +20 -18
- nuitka/nodes/StatementBasesGenerated.py +125 -79
- nuitka/nodes/StatementNodes.py +27 -24
- nuitka/nodes/StrNodes.py +19 -17
- nuitka/nodes/StringConcatenationNodes.py +20 -17
- nuitka/nodes/SubscriptNodes.py +27 -25
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TryNodes.py +19 -17
- nuitka/nodes/TypeMatchNodes.py +19 -17
- nuitka/nodes/TypeNodes.py +68 -18
- nuitka/nodes/VariableAssignNodes.py +122 -64
- nuitka/nodes/VariableDelNodes.py +19 -17
- nuitka/nodes/VariableNameNodes.py +19 -17
- nuitka/nodes/VariableRefNodes.py +63 -26
- nuitka/nodes/VariableReleaseNodes.py +19 -17
- nuitka/nodes/YieldNodes.py +21 -19
- nuitka/nodes/__init__.py +5 -4
- nuitka/nodes/shapes/BuiltinTypeShapes.py +169 -46
- nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
- nuitka/nodes/shapes/ShapeMixins.py +57 -17
- nuitka/nodes/shapes/StandardShapes.py +80 -21
- nuitka/nodes/shapes/__init__.py +5 -4
- nuitka/optimizations/BytecodeDemotion.py +21 -18
- nuitka/optimizations/FunctionInlining.py +22 -23
- nuitka/optimizations/Graphs.py +19 -17
- nuitka/optimizations/Optimization.py +39 -35
- nuitka/optimizations/OptimizeBuiltinCalls.py +31 -27
- nuitka/optimizations/Tags.py +19 -18
- nuitka/optimizations/TraceCollections.py +67 -24
- nuitka/optimizations/ValueTraces.py +92 -25
- nuitka/optimizations/__init__.py +5 -4
- nuitka/pgo/PGO.py +33 -23
- nuitka/pgo/__init__.py +5 -4
- nuitka/plugins/PluginBase.py +655 -112
- nuitka/plugins/Plugins.py +247 -61
- nuitka/plugins/YamlPluginBase.py +121 -0
- nuitka/plugins/__init__.py +5 -4
- nuitka/plugins/standard/AntiBloatPlugin.py +374 -135
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +20 -19
- nuitka/plugins/standard/DataFilesPlugin.py +65 -29
- nuitka/plugins/standard/DelvewheelPlugin.py +32 -24
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +37 -0
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +256 -0
- nuitka/plugins/standard/DillPlugin.py +42 -134
- nuitka/plugins/standard/DllFilesPlugin.py +125 -42
- nuitka/plugins/standard/EnumPlugin.py +19 -17
- nuitka/plugins/standard/EventletPlugin.py +19 -17
- nuitka/plugins/standard/GeventPlugin.py +19 -17
- nuitka/plugins/standard/GiPlugin.py +44 -28
- nuitka/plugins/standard/GlfwPlugin.py +20 -17
- nuitka/plugins/standard/ImplicitImports.py +403 -54
- nuitka/plugins/standard/KivyPlugin.py +24 -20
- nuitka/plugins/standard/MatplotlibPlugin.py +99 -42
- nuitka/plugins/standard/MultiprocessingPlugin.py +35 -39
- nuitka/plugins/standard/NumpyPlugin.py +19 -17
- nuitka/plugins/standard/OptionsNannyPlugin.py +48 -76
- nuitka/plugins/standard/PbrPlugin.py +21 -19
- nuitka/plugins/standard/PkgResourcesPlugin.py +34 -23
- nuitka/plugins/standard/PlaywrightPlugin.py +184 -0
- nuitka/plugins/standard/PmwPlugin.py +30 -27
- nuitka/plugins/standard/PySidePyQtPlugin.py +82 -80
- nuitka/plugins/standard/PywebViewPlugin.py +19 -17
- nuitka/plugins/standard/SpacyPlugin.py +136 -0
- nuitka/plugins/standard/TensorflowPlugin.py +20 -17
- nuitka/plugins/standard/TkinterPlugin.py +102 -108
- nuitka/plugins/standard/TorchPlugin.py +20 -17
- nuitka/plugins/standard/TransformersPlugin.py +90 -231
- nuitka/plugins/standard/TrioPlugin.py +18 -15
- nuitka/plugins/standard/UpxPlugin.py +21 -19
- nuitka/plugins/standard/__init__.py +5 -4
- nuitka/plugins/standard/standard.nuitka-package.config.yml +3925 -1293
- nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +14 -14
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +154 -66
- nuitka/reports/CompilationReportReader.py +79 -0
- nuitka/reports/LicenseReport.rst.j2 +21 -21
- nuitka/reports/Reports.py +363 -76
- nuitka/reports/__init__.py +5 -4
- nuitka/specs/BuiltinBytesOperationSpecs.py +18 -17
- nuitka/specs/BuiltinDictOperationSpecs.py +18 -17
- nuitka/specs/BuiltinListOperationSpecs.py +18 -17
- nuitka/specs/BuiltinParameterSpecs.py +35 -21
- nuitka/specs/BuiltinStrOperationSpecs.py +19 -18
- nuitka/specs/BuiltinTypeOperationSpecs.py +18 -18
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
- nuitka/specs/HardImportSpecs.py +74 -22
- nuitka/specs/ParameterSpecs.py +60 -45
- nuitka/specs/__init__.py +5 -4
- nuitka/tools/Basics.py +20 -18
- nuitka/tools/__init__.py +5 -4
- nuitka/tools/commercial/__init__.py +7 -6
- nuitka/tools/data_composer/DataComposer.py +78 -62
- nuitka/tools/data_composer/__init__.py +5 -4
- nuitka/tools/data_composer/__main__.py +18 -17
- nuitka/tools/environments/CreateEnvironment.py +20 -17
- nuitka/tools/environments/Virtualenv.py +60 -32
- nuitka/tools/environments/__init__.py +5 -4
- nuitka/tools/general/__init__.py +5 -4
- nuitka/tools/general/dll_report/__init__.py +5 -4
- nuitka/tools/general/dll_report/__main__.py +29 -22
- nuitka/tools/general/find_module/FindModuleCode.py +35 -22
- nuitka/tools/general/find_module/__init__.py +5 -4
- nuitka/tools/onefile_compressor/OnefileCompressor.py +213 -131
- nuitka/tools/onefile_compressor/__init__.py +5 -4
- nuitka/tools/onefile_compressor/__main__.py +18 -17
- nuitka/tools/podman/Podman.py +19 -17
- nuitka/tools/podman/__init__.py +5 -4
- nuitka/tools/podman/__main__.py +35 -19
- nuitka/tools/profiler/__init__.py +5 -4
- nuitka/tools/profiler/__main__.py +18 -17
- nuitka/tools/scanning/DisplayPackageDLLs.py +47 -22
- nuitka/tools/scanning/DisplayPackageData.py +31 -19
- nuitka/tools/scanning/__init__.py +5 -4
- nuitka/tools/specialize/CTypeDescriptions.py +251 -80
- nuitka/tools/specialize/Common.py +18 -17
- nuitka/tools/specialize/SpecializeC.py +248 -82
- nuitka/tools/specialize/SpecializePython.py +108 -45
- nuitka/tools/specialize/__init__.py +5 -4
- nuitka/tools/testing/Common.py +175 -114
- nuitka/tools/testing/Constructs.py +19 -17
- nuitka/tools/testing/OutputComparison.py +54 -18
- nuitka/tools/testing/Pythons.py +19 -18
- nuitka/tools/testing/RuntimeTracing.py +20 -19
- nuitka/tools/testing/SearchModes.py +26 -20
- nuitka/tools/testing/Valgrind.py +19 -17
- nuitka/tools/testing/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__main__.py +18 -18
- nuitka/tools/testing/compare_with_cpython/__init__.py +5 -4
- nuitka/tools/testing/compare_with_cpython/__main__.py +39 -30
- nuitka/tools/testing/find_sxs_modules/__init__.py +5 -4
- nuitka/tools/testing/find_sxs_modules/__main__.py +17 -17
- nuitka/tools/testing/measure_construct_performance/__init__.py +5 -4
- nuitka/tools/testing/measure_construct_performance/__main__.py +23 -33
- nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
- nuitka/tools/testing/run_nuitka_tests/__main__.py +134 -51
- nuitka/tools/watch/AutoStage.py +145 -0
- nuitka/tools/watch/GitHub.py +113 -0
- nuitka/tools/watch/__init__.py +5 -4
- nuitka/tools/watch/__main__.py +322 -91
- nuitka/tree/Building.py +184 -182
- nuitka/tree/ComplexCallHelperFunctions.py +84 -58
- nuitka/tree/Extractions.py +19 -17
- nuitka/tree/InternalModule.py +29 -20
- nuitka/tree/Operations.py +19 -17
- nuitka/tree/ReformulationAssertStatements.py +51 -31
- nuitka/tree/ReformulationAssignmentStatements.py +96 -91
- nuitka/tree/ReformulationBooleanExpressions.py +19 -17
- nuitka/tree/ReformulationCallExpressions.py +20 -18
- nuitka/tree/ReformulationClasses.py +45 -39
- nuitka/tree/ReformulationClasses3.py +239 -116
- nuitka/tree/ReformulationComparisonExpressions.py +29 -35
- nuitka/tree/ReformulationContractionExpressions.py +58 -55
- nuitka/tree/ReformulationDictionaryCreation.py +41 -35
- nuitka/tree/ReformulationExecStatements.py +42 -39
- nuitka/tree/ReformulationForLoopStatements.py +30 -34
- nuitka/tree/ReformulationFunctionStatements.py +59 -55
- nuitka/tree/ReformulationImportStatements.py +34 -29
- nuitka/tree/ReformulationLambdaExpressions.py +23 -24
- nuitka/tree/ReformulationMatchStatements.py +246 -92
- nuitka/tree/ReformulationMultidist.py +22 -18
- nuitka/tree/ReformulationNamespacePackages.py +55 -46
- nuitka/tree/ReformulationPrintStatements.py +23 -24
- nuitka/tree/ReformulationSequenceCreation.py +50 -49
- nuitka/tree/ReformulationSubscriptExpressions.py +19 -17
- nuitka/tree/ReformulationTryExceptStatements.py +19 -17
- nuitka/tree/ReformulationTryFinallyStatements.py +34 -17
- nuitka/tree/ReformulationWhileLoopStatements.py +19 -17
- nuitka/tree/ReformulationWithStatements.py +39 -41
- nuitka/tree/ReformulationYieldExpressions.py +44 -24
- nuitka/tree/SourceHandling.py +76 -31
- nuitka/tree/SyntaxErrors.py +19 -17
- nuitka/tree/TreeHelpers.py +33 -20
- nuitka/tree/VariableClosure.py +35 -39
- nuitka/tree/__init__.py +5 -4
- nuitka/utils/AppDirs.py +41 -20
- nuitka/utils/CStrings.py +66 -21
- nuitka/utils/CommandLineOptions.py +111 -22
- nuitka/utils/Distributions.py +445 -54
- nuitka/utils/Download.py +89 -57
- nuitka/utils/Execution.py +102 -58
- nuitka/utils/FileOperations.py +357 -128
- nuitka/utils/Hashing.py +55 -33
- nuitka/utils/Images.py +26 -19
- nuitka/utils/Importing.py +119 -37
- nuitka/utils/InlineCopies.py +52 -0
- nuitka/utils/InstalledPythons.py +85 -75
- nuitka/utils/InstanceCounters.py +20 -17
- nuitka/utils/Jinja2.py +30 -22
- nuitka/utils/Json.py +21 -19
- nuitka/utils/MacOSApp.py +26 -18
- nuitka/utils/MemoryUsage.py +20 -18
- nuitka/utils/ModuleNames.py +42 -26
- nuitka/utils/PackageResources.py +44 -0
- nuitka/utils/ReExecute.py +50 -28
- nuitka/utils/Rest.py +20 -17
- nuitka/utils/SharedLibraries.py +161 -75
- nuitka/utils/Shebang.py +20 -17
- nuitka/utils/Signing.py +63 -18
- nuitka/utils/SlotMetaClasses.py +57 -0
- nuitka/utils/StaticLibraries.py +83 -56
- nuitka/utils/ThreadedExecutor.py +18 -17
- nuitka/utils/Timing.py +22 -20
- nuitka/utils/Utils.py +132 -25
- nuitka/utils/WindowsFileUsage.py +22 -20
- nuitka/utils/WindowsResources.py +25 -18
- nuitka/utils/Yaml.py +62 -24
- nuitka/utils/__init__.py +5 -4
- Nuitka_winsvc-1.8.dist-info/RECORD +0 -905
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm_gui.py +0 -9
- nuitka/build/inline_copy/tqdm/tqdm/gui.py +0 -191
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.5.1.dist-info}/top_level.txt +0 -0
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
# integrates with CPython, but also works on its own.
|
|
5
|
-
#
|
|
6
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
# you may not use this file except in compliance with the License.
|
|
8
|
-
# You may obtain a copy of the License at
|
|
9
|
-
#
|
|
10
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
#
|
|
12
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
# See the License for the specific language governing permissions and
|
|
16
|
-
# limitations under the License.
|
|
17
|
-
#
|
|
1
|
+
# Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
18
4
|
""" Standard plug-in to make PyQt and PySide work well in standalone mode.
|
|
19
5
|
|
|
20
6
|
To run properly, these need the Qt plugins copied along, which have their
|
|
@@ -39,18 +25,20 @@ from nuitka.plugins.Plugins import (
|
|
|
39
25
|
)
|
|
40
26
|
from nuitka.PythonFlavors import isAnacondaPython
|
|
41
27
|
from nuitka.PythonVersions import python_version
|
|
28
|
+
from nuitka.utils.Distributions import (
|
|
29
|
+
getDistributionFromModuleName,
|
|
30
|
+
getDistributionInstallerName,
|
|
31
|
+
getDistributionName,
|
|
32
|
+
)
|
|
42
33
|
from nuitka.utils.FileOperations import getFileList, listDir
|
|
43
34
|
from nuitka.utils.ModuleNames import ModuleName
|
|
44
|
-
from nuitka.utils.Utils import
|
|
45
|
-
getArchitecture,
|
|
46
|
-
isDebianBasedLinux,
|
|
47
|
-
isLinux,
|
|
48
|
-
isMacOS,
|
|
49
|
-
isWin32Windows,
|
|
50
|
-
)
|
|
35
|
+
from nuitka.utils.Utils import getArchitecture, isMacOS, isWin32Windows
|
|
51
36
|
|
|
52
37
|
|
|
53
38
|
class NuitkaPluginQtBindingsPluginBase(NuitkaPluginBase):
|
|
39
|
+
# We are a bit detail rich and caching a bunch,
|
|
40
|
+
# pylint: disable=too-many-instance-attributes
|
|
41
|
+
|
|
54
42
|
# Automatically suppress detectors for any other toolkit
|
|
55
43
|
plugin_gui_toolkit = True
|
|
56
44
|
|
|
@@ -60,6 +48,17 @@ class NuitkaPluginQtBindingsPluginBase(NuitkaPluginBase):
|
|
|
60
48
|
warned_about = set()
|
|
61
49
|
|
|
62
50
|
def __init__(self, include_qt_plugins, noinclude_qt_plugins, no_qt_translations):
|
|
51
|
+
self.distribution = getDistributionFromModuleName(self.binding_name)
|
|
52
|
+
|
|
53
|
+
if self.distribution is None:
|
|
54
|
+
self.sysexit(
|
|
55
|
+
"Error, failed to locate the %s installation." % self.binding_name
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
self.distribution_name = getDistributionName(self.distribution)
|
|
59
|
+
|
|
60
|
+
self.installer_name = getDistributionInstallerName(self.distribution_name)
|
|
61
|
+
|
|
63
62
|
# Qt plugin directories found.
|
|
64
63
|
self.qt_plugins_dirs = None
|
|
65
64
|
|
|
@@ -73,6 +72,14 @@ class NuitkaPluginQtBindingsPluginBase(NuitkaPluginBase):
|
|
|
73
72
|
if "sensible" in include_qt_plugins:
|
|
74
73
|
include_qt_plugins.remove("sensible")
|
|
75
74
|
|
|
75
|
+
for include_qt_plugin in include_qt_plugins:
|
|
76
|
+
if include_qt_plugin not in ("qml", "all") and not self.hasPluginFamily(
|
|
77
|
+
include_qt_plugin
|
|
78
|
+
):
|
|
79
|
+
self.sysexit(
|
|
80
|
+
"Error, there is no Qt plugin family '%s'." % include_qt_plugin
|
|
81
|
+
)
|
|
82
|
+
|
|
76
83
|
self.qt_plugins = sensible_qt_plugins
|
|
77
84
|
self.qt_plugins.update(include_qt_plugins)
|
|
78
85
|
|
|
@@ -199,6 +206,8 @@ of files that you may not want to be included.""",
|
|
|
199
206
|
return "."
|
|
200
207
|
|
|
201
208
|
def _getSensiblePlugins(self):
|
|
209
|
+
# spell-checker: ignore imageformats,iconengines,mediaservice,printsupport
|
|
210
|
+
# spell-checker: ignore platformthemes,egldeviceintegrations,xcbglintegrations
|
|
202
211
|
return OrderedSet(
|
|
203
212
|
tuple(
|
|
204
213
|
family
|
|
@@ -390,7 +399,8 @@ import %(binding_name)s.QtCore
|
|
|
390
399
|
def _getQmlFileList(self, dlls):
|
|
391
400
|
qml_plugin_dir = self._getQmlDirectory()
|
|
392
401
|
|
|
393
|
-
# List all file types of the QML plugin folder that are data files and
|
|
402
|
+
# List all file types of the QML plugin folder that are data files and
|
|
403
|
+
# not DLLs, spell-checker: ignore qmlc,qmltypes,metainfo,qmldir
|
|
394
404
|
datafile_suffixes = (
|
|
395
405
|
".qml",
|
|
396
406
|
".qmlc",
|
|
@@ -404,6 +414,7 @@ import %(binding_name)s.QtCore
|
|
|
404
414
|
".mesh",
|
|
405
415
|
".frag",
|
|
406
416
|
"qmldir",
|
|
417
|
+
".webp",
|
|
407
418
|
)
|
|
408
419
|
|
|
409
420
|
if dlls:
|
|
@@ -435,6 +446,7 @@ import %(binding_name)s.QtCore
|
|
|
435
446
|
self.getQtPluginTargetPath(),
|
|
436
447
|
filename_relative,
|
|
437
448
|
),
|
|
449
|
+
module_name=self.binding_package_name,
|
|
438
450
|
package_name=self.binding_package_name,
|
|
439
451
|
reason="qt plugin",
|
|
440
452
|
)
|
|
@@ -673,7 +685,7 @@ system Qt plugins, which may be from another Qt version.""",
|
|
|
673
685
|
if full_name == self.binding_name and isWin32Windows():
|
|
674
686
|
code = """\
|
|
675
687
|
import os
|
|
676
|
-
path = os.
|
|
688
|
+
path = os.getenv("PATH", "")
|
|
677
689
|
if not path.startswith(__nuitka_binary_dir):
|
|
678
690
|
os.environ["PATH"] = __nuitka_binary_dir + ";" + path
|
|
679
691
|
"""
|
|
@@ -864,6 +876,7 @@ Prefix = .
|
|
|
864
876
|
dest_path=os.path.normpath(
|
|
865
877
|
os.path.join(self._getWebEngineTargetDir(), filename_relative)
|
|
866
878
|
),
|
|
879
|
+
module_name=full_name,
|
|
867
880
|
package_name=full_name,
|
|
868
881
|
reason="needed by '%s'" % full_name.asString(),
|
|
869
882
|
)
|
|
@@ -877,17 +890,6 @@ Prefix = .
|
|
|
877
890
|
|
|
878
891
|
self.web_engine_done_binaries = True # prevent multiple copies
|
|
879
892
|
|
|
880
|
-
def decideAllowOutsideDependencies(self, module_name):
|
|
881
|
-
if isLinux() and module_name.hasNamespace(self.binding_name):
|
|
882
|
-
if isDebianBasedLinux():
|
|
883
|
-
module_filename = self.locateModule(self.binding_name)
|
|
884
|
-
|
|
885
|
-
return "dist-packages" in module_filename.split("/")
|
|
886
|
-
else:
|
|
887
|
-
return False
|
|
888
|
-
|
|
889
|
-
return None
|
|
890
|
-
|
|
891
893
|
def getQtPluginTargetPath(self):
|
|
892
894
|
if self.binding_name == "PyQt6":
|
|
893
895
|
return os.path.join(self.binding_name, "Qt6", "plugins")
|
|
@@ -935,10 +937,13 @@ Prefix = .
|
|
|
935
937
|
count = 0
|
|
936
938
|
for filename in qt_bin_files:
|
|
937
939
|
basename = os.path.basename(filename).lower()
|
|
940
|
+
# spell-checker: ignore libeay32,ssleay32
|
|
941
|
+
|
|
938
942
|
if basename in ("libeay32.dll", "ssleay32.dll"):
|
|
939
943
|
yield self.makeDllEntryPoint(
|
|
940
944
|
source_path=filename,
|
|
941
945
|
dest_path=basename,
|
|
946
|
+
module_name=full_name,
|
|
942
947
|
package_name=full_name,
|
|
943
948
|
reason="needed by '%s'" % full_name.asString(),
|
|
944
949
|
)
|
|
@@ -963,6 +968,7 @@ Prefix = .
|
|
|
963
968
|
qml_target_dir,
|
|
964
969
|
filename_relative,
|
|
965
970
|
),
|
|
971
|
+
module_name=full_name,
|
|
966
972
|
package_name=full_name,
|
|
967
973
|
reason="Qt QML plugin DLL",
|
|
968
974
|
)
|
|
@@ -980,6 +986,7 @@ Prefix = .
|
|
|
980
986
|
yield self.makeDllEntryPoint(
|
|
981
987
|
source_path=filename,
|
|
982
988
|
dest_path=basename,
|
|
989
|
+
module_name=full_name,
|
|
983
990
|
package_name=full_name,
|
|
984
991
|
reason="needed by OpenGL for '%s'"
|
|
985
992
|
% full_name.asString(),
|
|
@@ -1008,6 +1015,7 @@ Prefix = .
|
|
|
1008
1015
|
)
|
|
1009
1016
|
|
|
1010
1017
|
# Manually loaded DLLs by Qt5.
|
|
1018
|
+
# spell-checker: ignore libcrypto
|
|
1011
1019
|
for dll_basename in ("libssl-1_1", "libcrypto-1_1"):
|
|
1012
1020
|
dll_filename = dll_basename + arch_suffix + ".dll"
|
|
1013
1021
|
|
|
@@ -1018,6 +1026,7 @@ Prefix = .
|
|
|
1018
1026
|
yield self.makeDllEntryPoint(
|
|
1019
1027
|
source_path=candidate,
|
|
1020
1028
|
dest_path=dll_filename,
|
|
1029
|
+
module_name=full_name,
|
|
1021
1030
|
package_name=full_name,
|
|
1022
1031
|
reason="needed by '%s'" % full_name.asString(),
|
|
1023
1032
|
)
|
|
@@ -1030,6 +1039,7 @@ Prefix = .
|
|
|
1030
1039
|
yield self.makeDllEntryPoint(
|
|
1031
1040
|
source_path=dll_path,
|
|
1032
1041
|
dest_path=os.path.basename(dll_path),
|
|
1042
|
+
module_name=full_name,
|
|
1033
1043
|
package_name=full_name,
|
|
1034
1044
|
reason="needed by '%s'" % full_name.asString(),
|
|
1035
1045
|
)
|
|
@@ -1039,38 +1049,11 @@ Prefix = .
|
|
|
1039
1049
|
yield self.makeDllEntryPoint(
|
|
1040
1050
|
source_path=dll_path,
|
|
1041
1051
|
dest_path=os.path.basename(dll_path),
|
|
1052
|
+
module_name=full_name,
|
|
1042
1053
|
package_name=full_name,
|
|
1043
1054
|
reason="needed by '%s'" % full_name.asString(),
|
|
1044
1055
|
)
|
|
1045
1056
|
|
|
1046
|
-
def removeDllDependencies(self, dll_filename, dll_filenames):
|
|
1047
|
-
for value in self.getQtPluginDirs():
|
|
1048
|
-
# TODO: That is not a proper check if a file is below that.
|
|
1049
|
-
if dll_filename.startswith(value):
|
|
1050
|
-
for sub_dll_filename in dll_filenames:
|
|
1051
|
-
for badword in (
|
|
1052
|
-
"libKF5",
|
|
1053
|
-
"libkfontinst",
|
|
1054
|
-
"libkorganizer",
|
|
1055
|
-
"libplasma",
|
|
1056
|
-
"libakregator",
|
|
1057
|
-
"libdolphin",
|
|
1058
|
-
"libnoteshared",
|
|
1059
|
-
"libknotes",
|
|
1060
|
-
"libsystemsettings",
|
|
1061
|
-
"libkerfuffle",
|
|
1062
|
-
"libkaddressbook",
|
|
1063
|
-
"libkworkspace",
|
|
1064
|
-
"libkmail",
|
|
1065
|
-
"libmilou",
|
|
1066
|
-
"libtaskmanager",
|
|
1067
|
-
"libkonsole",
|
|
1068
|
-
"libgwenview",
|
|
1069
|
-
"libweather_ion",
|
|
1070
|
-
):
|
|
1071
|
-
if os.path.basename(sub_dll_filename).startswith(badword):
|
|
1072
|
-
yield sub_dll_filename
|
|
1073
|
-
|
|
1074
1057
|
def onModuleEncounter(
|
|
1075
1058
|
self, using_module_name, module_name, module_filename, module_kind
|
|
1076
1059
|
):
|
|
@@ -1116,8 +1099,9 @@ behavior with the uncompiled code."""
|
|
|
1116
1099
|
module_set=module_set, plugin_binding_name=self.binding_name
|
|
1117
1100
|
)
|
|
1118
1101
|
|
|
1119
|
-
def onModuleSourceCode(self, module_name, source_code):
|
|
1102
|
+
def onModuleSourceCode(self, module_name, source_filename, source_code):
|
|
1120
1103
|
"""Third party packages that make binding selections."""
|
|
1104
|
+
# spell-checker: ignore pyqtgraph
|
|
1121
1105
|
if module_name.hasNamespace("pyqtgraph"):
|
|
1122
1106
|
# TODO: Add a mechanism to force all variable references of a name to something
|
|
1123
1107
|
# during tree building, that would cover all uses in a nicer way.
|
|
@@ -1457,7 +1441,7 @@ class NuitkaPluginNoQt(NuitkaPluginBase):
|
|
|
1457
1441
|
"""This is a plugins for suppression of all Qt binding plugins."""
|
|
1458
1442
|
|
|
1459
1443
|
plugin_name = "no-qt"
|
|
1460
|
-
plugin_desc = "Disable all Qt bindings
|
|
1444
|
+
plugin_desc = "Disable inclusion of all Qt bindings."
|
|
1461
1445
|
|
|
1462
1446
|
warned_about = set()
|
|
1463
1447
|
|
|
@@ -1466,19 +1450,37 @@ class NuitkaPluginNoQt(NuitkaPluginBase):
|
|
|
1466
1450
|
):
|
|
1467
1451
|
top_package_name = module_name.getTopLevelPackageName()
|
|
1468
1452
|
|
|
1469
|
-
if
|
|
1470
|
-
if top_package_name in
|
|
1471
|
-
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
its use. As a result an "ImportError" might be given at run time. Uninstall
|
|
1453
|
+
if top_package_name in getQtBindingNames():
|
|
1454
|
+
if isStandaloneMode() and top_package_name not in self.warned_about:
|
|
1455
|
+
self.info(
|
|
1456
|
+
"""\
|
|
1457
|
+
Unwanted import of '%(unwanted)s' that is forbidden encountered, preventing \
|
|
1458
|
+
its use. As a result an "ImportError" might be given at run time. Uninstall \
|
|
1476
1459
|
it for full compatible behavior with the uncompiled code to debug it."""
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1460
|
+
% {
|
|
1461
|
+
"unwanted": top_package_name,
|
|
1462
|
+
}
|
|
1463
|
+
)
|
|
1481
1464
|
|
|
1482
|
-
|
|
1465
|
+
self.warned_about.add(top_package_name)
|
|
1466
|
+
|
|
1467
|
+
return (False, "Not included due to all Qt bindings disallowed.")
|
|
1483
1468
|
|
|
1484
|
-
|
|
1469
|
+
def getEvaluationConditionControlTags(self):
|
|
1470
|
+
return {"use_noqt": True}
|
|
1471
|
+
|
|
1472
|
+
|
|
1473
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
1474
|
+
# integrates with CPython, but also works on its own.
|
|
1475
|
+
#
|
|
1476
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
1477
|
+
# you may not use this file except in compliance with the License.
|
|
1478
|
+
# You may obtain a copy of the License at
|
|
1479
|
+
#
|
|
1480
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
1481
|
+
#
|
|
1482
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
1483
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
1484
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1485
|
+
# See the License for the specific language governing permissions and
|
|
1486
|
+
# limitations under the License.
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
# integrates with CPython, but also works on its own.
|
|
5
|
-
#
|
|
6
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
# you may not use this file except in compliance with the License.
|
|
8
|
-
# You may obtain a copy of the License at
|
|
9
|
-
#
|
|
10
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
#
|
|
12
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
# See the License for the specific language governing permissions and
|
|
16
|
-
# limitations under the License.
|
|
17
|
-
#
|
|
1
|
+
# Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
18
4
|
""" Details see below in class definition.
|
|
19
5
|
"""
|
|
20
6
|
|
|
@@ -76,3 +62,19 @@ class NuitkaPluginPywebview(NuitkaPluginBase):
|
|
|
76
62
|
)
|
|
77
63
|
|
|
78
64
|
return result, reason
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
68
|
+
# integrates with CPython, but also works on its own.
|
|
69
|
+
#
|
|
70
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
71
|
+
# you may not use this file except in compliance with the License.
|
|
72
|
+
# You may obtain a copy of the License at
|
|
73
|
+
#
|
|
74
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
75
|
+
#
|
|
76
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
77
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
78
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
79
|
+
# See the License for the specific language governing permissions and
|
|
80
|
+
# limitations under the License.
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
""" Plugin for spacy.
|
|
5
|
+
|
|
6
|
+
spell-checker: ignore spacy
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from nuitka.code_generation.ConstantCodes import addDistributionMetadataValue
|
|
10
|
+
from nuitka.containers.OrderedSets import OrderedSet
|
|
11
|
+
from nuitka.Options import isStandaloneMode
|
|
12
|
+
from nuitka.plugins.PluginBase import NuitkaPluginBase
|
|
13
|
+
from nuitka.utils.Distributions import getEntryPointGroup
|
|
14
|
+
from nuitka.utils.ModuleNames import ModuleName
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class NuitkaPluginSpacy(NuitkaPluginBase):
|
|
18
|
+
"""This class represents the main logic of the plugin."""
|
|
19
|
+
|
|
20
|
+
plugin_name = "spacy"
|
|
21
|
+
plugin_desc = "Required by 'spacy' package."
|
|
22
|
+
|
|
23
|
+
def __init__(self, include_language_models):
|
|
24
|
+
self.include_language_models = tuple(
|
|
25
|
+
ModuleName(include_language_model)
|
|
26
|
+
for include_language_model in include_language_models
|
|
27
|
+
)
|
|
28
|
+
self.available_language_models = None
|
|
29
|
+
|
|
30
|
+
self.used_language_model_names = None
|
|
31
|
+
|
|
32
|
+
@staticmethod
|
|
33
|
+
def isAlwaysEnabled():
|
|
34
|
+
return True
|
|
35
|
+
|
|
36
|
+
@staticmethod
|
|
37
|
+
def isRelevant():
|
|
38
|
+
return isStandaloneMode()
|
|
39
|
+
|
|
40
|
+
@classmethod
|
|
41
|
+
def addPluginCommandLineOptions(cls, group):
|
|
42
|
+
group.add_option(
|
|
43
|
+
"--spacy-language-model",
|
|
44
|
+
action="append",
|
|
45
|
+
dest="include_language_models",
|
|
46
|
+
default=[],
|
|
47
|
+
help="""\
|
|
48
|
+
Spacy language models to use. Can be specified multiple times. Use 'all' to
|
|
49
|
+
include all downloaded models.""",
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
def _getInstalledSpaceLanguageModels(self):
|
|
53
|
+
if self.available_language_models is None:
|
|
54
|
+
self.available_language_models = tuple(
|
|
55
|
+
entry_point.module_name
|
|
56
|
+
for entry_point in sorted(getEntryPointGroup("spacy_models"))
|
|
57
|
+
)
|
|
58
|
+
|
|
59
|
+
return self.available_language_models
|
|
60
|
+
|
|
61
|
+
def getImplicitImports(self, module):
|
|
62
|
+
if module.getFullName() == "spacy":
|
|
63
|
+
self.used_language_model_names = OrderedSet()
|
|
64
|
+
|
|
65
|
+
if "all" in self.include_language_models:
|
|
66
|
+
self.used_language_model_names.update(
|
|
67
|
+
self._getInstalledSpaceLanguageModels()
|
|
68
|
+
)
|
|
69
|
+
else:
|
|
70
|
+
for include_language_model_name in self.include_language_models:
|
|
71
|
+
if (
|
|
72
|
+
include_language_model_name
|
|
73
|
+
in self._getInstalledSpaceLanguageModels()
|
|
74
|
+
):
|
|
75
|
+
self.used_language_model_names.add(include_language_model_name)
|
|
76
|
+
else:
|
|
77
|
+
self.sysexit(
|
|
78
|
+
"""\
|
|
79
|
+
Error, requested to include language model '%s' that was \
|
|
80
|
+
not found, the list of installed ones is '%s'."""
|
|
81
|
+
% (
|
|
82
|
+
include_language_model_name,
|
|
83
|
+
",".join(self._getInstalledSpaceLanguageModels()),
|
|
84
|
+
)
|
|
85
|
+
)
|
|
86
|
+
|
|
87
|
+
if not self.used_language_model_names:
|
|
88
|
+
self.warning(
|
|
89
|
+
"""\
|
|
90
|
+
No language models included. Use the option '--spacy-language-model=language_model_name' to \
|
|
91
|
+
include one. Use 'all' to include all downloaded ones, or select from the list of installed \
|
|
92
|
+
ones: %s"""
|
|
93
|
+
% ",".join(self._getInstalledSpaceLanguageModels())
|
|
94
|
+
)
|
|
95
|
+
|
|
96
|
+
for used_language_model_name in self.used_language_model_names:
|
|
97
|
+
yield used_language_model_name
|
|
98
|
+
|
|
99
|
+
def considerDataFiles(self, module):
|
|
100
|
+
if module.getFullName() == "spacy":
|
|
101
|
+
# Do not use it accidentally for anything else
|
|
102
|
+
del module
|
|
103
|
+
|
|
104
|
+
for used_language_model_name in self.used_language_model_names:
|
|
105
|
+
# Meta data is required for language models to be accepted.
|
|
106
|
+
addDistributionMetadataValue(
|
|
107
|
+
distribution_name=used_language_model_name.asString(),
|
|
108
|
+
distribution=None,
|
|
109
|
+
reason="for 'spacy' to locate the language model",
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
module_folder = self.locateModule(used_language_model_name)
|
|
113
|
+
|
|
114
|
+
yield self.makeIncludedDataDirectory(
|
|
115
|
+
source_path=module_folder,
|
|
116
|
+
dest_path=used_language_model_name.asPath(),
|
|
117
|
+
reason="model data for %r" % (used_language_model_name.asString()),
|
|
118
|
+
tags="spacy",
|
|
119
|
+
raw=True,
|
|
120
|
+
)
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
124
|
+
# integrates with CPython, but also works on its own.
|
|
125
|
+
#
|
|
126
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
127
|
+
# you may not use this file except in compliance with the License.
|
|
128
|
+
# You may obtain a copy of the License at
|
|
129
|
+
#
|
|
130
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
131
|
+
#
|
|
132
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
133
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
134
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
135
|
+
# See the License for the specific language governing permissions and
|
|
136
|
+
# limitations under the License.
|
|
@@ -1,22 +1,9 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
# integrates with CPython, but also works on its own.
|
|
5
|
-
#
|
|
6
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
# you may not use this file except in compliance with the License.
|
|
8
|
-
# You may obtain a copy of the License at
|
|
9
|
-
#
|
|
10
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
#
|
|
12
|
-
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
# See the License for the specific language governing permissions and
|
|
16
|
-
# limitations under the License.
|
|
17
|
-
#
|
|
1
|
+
# Copyright 2024, Jorj McKie, mailto:<jorj.x.mckie@outlook.de> find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
18
4
|
""" Deprecated tensorflow plugin.
|
|
19
5
|
"""
|
|
6
|
+
|
|
20
7
|
from nuitka.plugins.PluginBase import NuitkaPluginBase
|
|
21
8
|
|
|
22
9
|
|
|
@@ -29,3 +16,19 @@ class NuitkaPluginTensorflow(NuitkaPluginBase):
|
|
|
29
16
|
@classmethod
|
|
30
17
|
def isDeprecated(cls):
|
|
31
18
|
return True
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
22
|
+
# integrates with CPython, but also works on its own.
|
|
23
|
+
#
|
|
24
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
25
|
+
# you may not use this file except in compliance with the License.
|
|
26
|
+
# You may obtain a copy of the License at
|
|
27
|
+
#
|
|
28
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
29
|
+
#
|
|
30
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
31
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
32
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
33
|
+
# See the License for the specific language governing permissions and
|
|
34
|
+
# limitations under the License.
|