Nuitka-winsvc 1.8__cp311-cp311-win_amd64.whl → 2.4.8__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.4.8.data/scripts/nuitka-run.cmd +9 -9
- Nuitka_winsvc-1.8.data/scripts/nuitka.bat → Nuitka_winsvc-2.4.8.data/scripts/nuitka.cmd +15 -15
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/METADATA +4 -3
- Nuitka_winsvc-2.4.8.dist-info/RECORD +954 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +18 -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 +400 -0
- nuitka/MainControl.py +200 -112
- nuitka/ModuleRegistry.py +83 -20
- nuitka/OptionParsing.py +368 -175
- nuitka/Options.py +632 -213
- nuitka/OutputDirectories.py +40 -21
- nuitka/PostProcessing.py +73 -50
- nuitka/Progress.py +58 -24
- nuitka/PythonFlavors.py +141 -32
- nuitka/PythonOperators.py +18 -17
- nuitka/PythonVersions.py +106 -19
- nuitka/Serialization.py +68 -55
- nuitka/SourceCodeReferences.py +19 -17
- nuitka/Tracing.py +108 -70
- nuitka/TreeXML.py +31 -26
- nuitka/Variables.py +39 -41
- nuitka/Version.py +21 -7
- nuitka/__init__.py +5 -4
- nuitka/__main__.py +95 -29
- nuitka/__past__.py +44 -34
- nuitka/build/Backend.scons +202 -140
- nuitka/build/CCompilerVersion.scons +39 -31
- nuitka/build/DataComposerInterface.py +20 -17
- nuitka/build/Onefile.scons +50 -54
- nuitka/build/SconsCaching.py +93 -90
- nuitka/build/SconsCompilerSettings.py +157 -69
- nuitka/build/SconsHacks.py +25 -19
- nuitka/build/SconsInterface.py +154 -54
- nuitka/build/SconsProgress.py +19 -18
- nuitka/build/SconsSpawn.py +62 -33
- nuitka/build/SconsUtils.py +147 -55
- nuitka/build/__init__.py +5 -4
- nuitka/build/include/nuitka/allocator.h +105 -22
- nuitka/build/include/nuitka/builtins.h +17 -17
- nuitka/build/include/nuitka/calling.h +18 -18
- nuitka/build/include/nuitka/checkers.h +17 -18
- nuitka/build/include/nuitka/checksum_tools.h +14 -19
- nuitka/build/include/nuitka/compiled_asyncgen.h +18 -18
- 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 +91 -53
- 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 +29 -18
- nuitka/build/include/nuitka/constants_blob.h +17 -17
- 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 +593 -190
- 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 -18
- 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 +17 -17
- 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 +24 -22
- 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 +32 -20
- nuitka/build/include/nuitka/helper/iterators.h +17 -17
- 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 +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_add.h +17 -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_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 +17 -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 +17 -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 +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/raising.h +29 -17
- nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
- nuitka/build/include/nuitka/helper/richcomparisons.h +14 -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 +38 -20
- nuitka/build/include/nuitka/importing.h +28 -21
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +128 -46
- nuitka/build/include/nuitka/printing.h +22 -17
- 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 +32 -33
- nuitka/build/include/nuitka/tracing.h +28 -18
- nuitka/build/include/nuitka/type_aliases.h +27 -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/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 +176 -182
- nuitka/build/static_src/CompiledCellType.c +63 -40
- nuitka/build/static_src/CompiledCodeHelpers.c +181 -128
- nuitka/build/static_src/CompiledCoroutineType.c +196 -203
- nuitka/build/static_src/CompiledFrameType.c +287 -133
- nuitka/build/static_src/CompiledFunctionType.c +389 -95
- nuitka/build/static_src/CompiledGeneratorType.c +376 -252
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +185 -198
- nuitka/build/static_src/CompiledMethodType.c +83 -71
- nuitka/build/static_src/HelpersAllocator.c +88 -19
- nuitka/build/static_src/HelpersAttributes.c +33 -54
- nuitka/build/static_src/HelpersBuiltin.c +43 -33
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
- nuitka/build/static_src/HelpersBytes.c +19 -20
- nuitka/build/static_src/HelpersCalling.c +33 -30
- nuitka/build/static_src/HelpersCallingGenerated.c +1000 -181
- nuitka/build/static_src/HelpersChecksumTools.c +35 -21
- nuitka/build/static_src/HelpersClasses.c +17 -17
- nuitka/build/static_src/HelpersComparisonEq.c +518 -492
- nuitka/build/static_src/HelpersComparisonEqUtils.c +21 -19
- nuitka/build/static_src/HelpersComparisonGe.c +513 -497
- nuitka/build/static_src/HelpersComparisonGt.c +512 -496
- nuitka/build/static_src/HelpersComparisonLe.c +513 -497
- nuitka/build/static_src/HelpersComparisonLt.c +512 -496
- nuitka/build/static_src/HelpersComparisonNe.c +520 -492
- nuitka/build/static_src/HelpersConsole.c +96 -0
- nuitka/build/static_src/HelpersConstantsBlob.c +542 -519
- nuitka/build/static_src/HelpersDeepcopy.c +33 -33
- nuitka/build/static_src/HelpersDictionaries.c +51 -29
- nuitka/build/static_src/HelpersDictionariesGenerated.c +177 -68
- 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 +161 -50
- nuitka/build/static_src/HelpersFiles.c +37 -17
- 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 +48 -20
- nuitka/build/static_src/HelpersImportHard.c +53 -17
- nuitka/build/static_src/HelpersJitSources.c +46 -0
- nuitka/build/static_src/HelpersLists.c +140 -50
- 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 +173 -146
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +99 -52
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +50 -50
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +50 -50
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +50 -50
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +41 -41
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +41 -41
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +20 -21
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +47 -47
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +24 -24
- nuitka/build/static_src/HelpersOperationBinaryMod.c +107 -107
- nuitka/build/static_src/HelpersOperationBinaryMult.c +81 -75
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +33 -30
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +41 -41
- nuitka/build/static_src/HelpersOperationBinaryPow.c +44 -44
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +47 -47
- nuitka/build/static_src/HelpersOperationBinarySub.c +80 -80
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +41 -41
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +171 -153
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +24 -22
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +53 -53
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +53 -53
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +53 -53
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +62 -62
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +44 -44
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +37 -37
- nuitka/build/static_src/HelpersOperationInplaceMod.c +134 -134
- nuitka/build/static_src/HelpersOperationInplaceMult.c +78 -78
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +62 -62
- nuitka/build/static_src/HelpersOperationInplacePow.c +62 -62
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +44 -44
- nuitka/build/static_src/HelpersOperationInplaceSub.c +112 -112
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +62 -62
- nuitka/build/static_src/HelpersProfiling.c +24 -23
- nuitka/build/static_src/HelpersPythonPgo.c +22 -22
- nuitka/build/static_src/HelpersRaising.c +88 -20
- 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 +234 -37
- nuitka/build/static_src/HelpersTuples.c +46 -34
- nuitka/build/static_src/HelpersTypes.c +68 -23
- nuitka/build/static_src/InspectPatcher.c +108 -27
- nuitka/build/static_src/MainProgram.c +359 -263
- nuitka/build/static_src/MetaPathBasedLoader.c +367 -242
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +39 -26
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +97 -22
- nuitka/build/static_src/OnefileBootstrap.c +276 -164
- nuitka/build/static_src/OnefileSplashScreen.cpp +51 -27
- nuitka/code_generation/AsyncgenCodes.py +19 -17
- nuitka/code_generation/AttributeCodes.py +31 -27
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +24 -20
- nuitka/code_generation/BranchCodes.py +19 -17
- nuitka/code_generation/BuiltinCodes.py +20 -17
- nuitka/code_generation/CallCodes.py +19 -17
- nuitka/code_generation/ClassCodes.py +19 -17
- nuitka/code_generation/CodeGeneration.py +48 -27
- nuitka/code_generation/CodeHelperSelection.py +19 -17
- nuitka/code_generation/CodeHelpers.py +24 -20
- nuitka/code_generation/CodeObjectCodes.py +34 -24
- nuitka/code_generation/ComparisonCodes.py +38 -20
- nuitka/code_generation/ComparisonHelperDefinitions.py +19 -17
- nuitka/code_generation/ConditionalCodes.py +19 -17
- nuitka/code_generation/ConstantCodes.py +82 -28
- nuitka/code_generation/Contexts.py +152 -26
- nuitka/code_generation/CoroutineCodes.py +19 -17
- nuitka/code_generation/CtypesCodes.py +19 -17
- nuitka/code_generation/DictCodes.py +25 -23
- nuitka/code_generation/Emission.py +21 -18
- nuitka/code_generation/ErrorCodes.py +27 -33
- nuitka/code_generation/EvalCodes.py +24 -20
- nuitka/code_generation/ExceptionCodes.py +27 -18
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +20 -17
- nuitka/code_generation/ExpressionCodes.py +19 -17
- nuitka/code_generation/FrameCodes.py +24 -20
- nuitka/code_generation/FunctionCodes.py +24 -21
- nuitka/code_generation/GeneratorCodes.py +23 -20
- nuitka/code_generation/GlobalConstants.py +43 -23
- nuitka/code_generation/GlobalsLocalsCodes.py +21 -19
- 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 +19 -17
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/LabelCodes.py +19 -17
- nuitka/code_generation/LineNumberCodes.py +19 -17
- 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 +43 -25
- nuitka/code_generation/Namify.py +27 -23
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +29 -31
- nuitka/code_generation/PackageResourceCodes.py +59 -23
- nuitka/code_generation/PrintCodes.py +19 -17
- nuitka/code_generation/PythonAPICodes.py +19 -17
- nuitka/code_generation/RaisingCodes.py +19 -17
- nuitka/code_generation/Reports.py +19 -17
- nuitka/code_generation/ReturnCodes.py +19 -17
- 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 +19 -17
- nuitka/code_generation/TupleCodes.py +20 -18
- nuitka/code_generation/TypeAliasCodes.py +71 -0
- nuitka/code_generation/VariableCodes.py +26 -22
- nuitka/code_generation/VariableDeclarations.py +20 -17
- nuitka/code_generation/YieldCodes.py +22 -20
- nuitka/code_generation/__init__.py +5 -4
- nuitka/code_generation/c_types/CTypeBases.py +19 -17
- 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 +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +19 -18
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +19 -17
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +27 -25
- nuitka/code_generation/c_types/CTypeVoids.py +20 -17
- nuitka/code_generation/c_types/__init__.py +5 -4
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesConstants.py +132 -36
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +19 -18
- nuitka/code_generation/templates/CodeTemplatesFrames.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesFunction.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +19 -17
- nuitka/code_generation/templates/CodeTemplatesIterators.py +18 -18
- nuitka/code_generation/templates/CodeTemplatesLoader.py +25 -19
- nuitka/code_generation/templates/CodeTemplatesModules.py +244 -165
- nuitka/code_generation/templates/CodeTemplatesVariables.py +42 -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 +18 -18
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +76 -25
- 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 +121 -48
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +18 -18
- 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/HelperOperationComparison.c.j2 +35 -35
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +28 -28
- 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 +44 -32
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +28 -28
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +24 -24
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +33 -29
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +27 -27
- 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 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +26 -24
- 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 +19 -18
- nuitka/containers/OrderedSetsFallback.py +19 -17
- nuitka/containers/__init__.py +5 -4
- nuitka/distutils/Build.py +19 -18
- nuitka/distutils/DistutilCommands.py +34 -23
- nuitka/distutils/__init__.py +5 -4
- nuitka/finalizations/Finalization.py +20 -17
- nuitka/finalizations/FinalizeMarkups.py +21 -41
- nuitka/finalizations/__init__.py +5 -4
- nuitka/freezer/DependsExe.py +48 -28
- nuitka/freezer/DllDependenciesCommon.py +47 -20
- nuitka/freezer/DllDependenciesMacOS.py +147 -57
- nuitka/freezer/DllDependenciesPosix.py +29 -19
- nuitka/freezer/DllDependenciesWin32.py +29 -21
- nuitka/freezer/ImportDetection.py +20 -17
- nuitka/freezer/IncludedDataFiles.py +118 -47
- nuitka/freezer/IncludedEntryPoints.py +102 -38
- nuitka/freezer/Onefile.py +32 -22
- nuitka/freezer/Standalone.py +105 -50
- 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 +286 -92
- nuitka/importing/PreloadedPackages.py +21 -18
- nuitka/importing/Recursion.py +131 -47
- nuitka/importing/StandardLibrary.py +46 -28
- nuitka/importing/__init__.py +5 -4
- nuitka/nodes/AsyncgenNodes.py +19 -17
- 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 +24 -20
- 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 +68 -19
- 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 +1250 -302
- nuitka/nodes/ClassNodes.py +49 -29
- nuitka/nodes/CodeObjectSpecs.py +29 -18
- nuitka/nodes/ComparisonNodes.py +19 -17
- nuitka/nodes/ConditionalNodes.py +21 -23
- nuitka/nodes/ConstantRefNodes.py +57 -17
- nuitka/nodes/ContainerMakingNodes.py +19 -17
- nuitka/nodes/ContainerOperationNodes.py +19 -17
- nuitka/nodes/CoroutineNodes.py +19 -17
- nuitka/nodes/CtypesNodes.py +19 -18
- nuitka/nodes/DictionaryNodes.py +19 -18
- nuitka/nodes/ExceptionNodes.py +29 -17
- nuitka/nodes/ExecEvalNodes.py +19 -17
- nuitka/nodes/ExpressionBases.py +34 -26
- nuitka/nodes/ExpressionBasesGenerated.py +54 -32
- nuitka/nodes/ExpressionShapeMixins.py +19 -17
- nuitka/nodes/FrameNodes.py +19 -17
- nuitka/nodes/FunctionAttributeNodes.py +19 -17
- nuitka/nodes/FunctionNodes.py +81 -35
- nuitka/nodes/FutureSpecs.py +35 -20
- nuitka/nodes/GeneratorNodes.py +21 -19
- nuitka/nodes/GlobalsLocalsNodes.py +22 -17
- nuitka/nodes/HardImportNodesGenerated.py +545 -129
- nuitka/nodes/ImportHardNodes.py +46 -38
- nuitka/nodes/ImportNodes.py +436 -446
- 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 +45 -43
- nuitka/nodes/NodeMakingHelpers.py +21 -19
- nuitka/nodes/NodeMetaClasses.py +45 -28
- nuitka/nodes/OperatorNodes.py +28 -26
- nuitka/nodes/OperatorNodesUnary.py +20 -17
- nuitka/nodes/OsSysNodes.py +66 -18
- nuitka/nodes/OutlineNodes.py +22 -20
- 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 -77
- nuitka/nodes/StatementNodes.py +19 -17
- nuitka/nodes/StrNodes.py +19 -17
- nuitka/nodes/StringConcatenationNodes.py +20 -17
- nuitka/nodes/SubscriptNodes.py +26 -24
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TryNodes.py +19 -17
- nuitka/nodes/TypeMatchNodes.py +19 -17
- nuitka/nodes/TypeNodes.py +40 -17
- 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 +145 -39
- nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
- nuitka/nodes/shapes/ShapeMixins.py +40 -17
- nuitka/nodes/shapes/StandardShapes.py +27 -20
- nuitka/nodes/shapes/__init__.py +5 -4
- nuitka/optimizations/BytecodeDemotion.py +19 -17
- 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 +610 -109
- nuitka/plugins/Plugins.py +241 -58
- nuitka/plugins/YamlPluginBase.py +121 -0
- nuitka/plugins/__init__.py +5 -4
- nuitka/plugins/standard/AntiBloatPlugin.py +357 -129
- 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 +407 -46
- nuitka/plugins/standard/KivyPlugin.py +30 -17
- nuitka/plugins/standard/MatplotlibPlugin.py +88 -42
- nuitka/plugins/standard/MultiprocessingPlugin.py +25 -20
- 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/PmwPlugin.py +30 -27
- nuitka/plugins/standard/PySidePyQtPlugin.py +74 -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 +103 -53
- nuitka/plugins/standard/TorchPlugin.py +20 -17
- nuitka/plugins/standard/TransformersPlugin.py +94 -30
- 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 +3449 -1299
- nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +14 -14
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +121 -66
- nuitka/reports/CompilationReportReader.py +67 -0
- nuitka/reports/LicenseReport.rst.j2 +21 -21
- nuitka/reports/Reports.py +352 -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 +30 -20
- nuitka/specs/BuiltinStrOperationSpecs.py +19 -18
- nuitka/specs/BuiltinTypeOperationSpecs.py +18 -18
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
- nuitka/specs/HardImportSpecs.py +67 -22
- nuitka/specs/ParameterSpecs.py +56 -41
- 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 +19 -21
- 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 +93 -71
- nuitka/tools/specialize/Common.py +18 -17
- nuitka/tools/specialize/SpecializeC.py +31 -27
- nuitka/tools/specialize/SpecializePython.py +108 -45
- nuitka/tools/specialize/__init__.py +5 -4
- nuitka/tools/testing/Common.py +106 -52
- 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 +36 -29
- 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 +22 -25
- nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
- nuitka/tools/testing/run_nuitka_tests/__main__.py +57 -40
- nuitka/tools/watch/AutoStage.py +144 -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 +176 -147
- nuitka/tree/ComplexCallHelperFunctions.py +80 -58
- nuitka/tree/Extractions.py +19 -17
- nuitka/tree/InternalModule.py +29 -20
- nuitka/tree/Operations.py +19 -17
- nuitka/tree/ReformulationAssertStatements.py +20 -17
- nuitka/tree/ReformulationAssignmentStatements.py +92 -91
- nuitka/tree/ReformulationBooleanExpressions.py +19 -17
- nuitka/tree/ReformulationCallExpressions.py +20 -18
- nuitka/tree/ReformulationClasses.py +45 -39
- nuitka/tree/ReformulationClasses3.py +146 -98
- nuitka/tree/ReformulationComparisonExpressions.py +29 -35
- nuitka/tree/ReformulationContractionExpressions.py +58 -55
- nuitka/tree/ReformulationDictionaryCreation.py +40 -35
- nuitka/tree/ReformulationExecStatements.py +42 -39
- nuitka/tree/ReformulationForLoopStatements.py +30 -34
- nuitka/tree/ReformulationFunctionStatements.py +58 -54
- nuitka/tree/ReformulationImportStatements.py +34 -29
- nuitka/tree/ReformulationLambdaExpressions.py +23 -24
- nuitka/tree/ReformulationMatchStatements.py +244 -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 +21 -19
- 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 +84 -19
- nuitka/utils/Distributions.py +445 -54
- nuitka/utils/Download.py +89 -57
- nuitka/utils/Execution.py +73 -34
- nuitka/utils/FileOperations.py +318 -74
- nuitka/utils/Hashing.py +55 -33
- nuitka/utils/Images.py +26 -19
- nuitka/utils/Importing.py +118 -24
- nuitka/utils/InstalledPythons.py +80 -75
- nuitka/utils/InstanceCounters.py +20 -17
- nuitka/utils/Jinja2.py +30 -22
- nuitka/utils/Json.py +19 -17
- nuitka/utils/MacOSApp.py +26 -18
- nuitka/utils/MemoryUsage.py +20 -18
- nuitka/utils/ModuleNames.py +42 -26
- 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 +115 -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.4.8.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/top_level.txt +0 -0
nuitka/importing/Recursion.py
CHANGED
|
@@ -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
|
""" Recursion into other modules.
|
|
19
5
|
|
|
20
6
|
"""
|
|
@@ -28,7 +14,7 @@ from nuitka.freezer.ImportDetection import (
|
|
|
28
14
|
detectEarlyImports,
|
|
29
15
|
detectStdlibAutoInclusionModules,
|
|
30
16
|
)
|
|
31
|
-
from nuitka.importing import ImportCache,
|
|
17
|
+
from nuitka.importing import ImportCache, StandardLibrary
|
|
32
18
|
from nuitka.ModuleRegistry import addUsedModule, getRootTopModule
|
|
33
19
|
from nuitka.pgo.PGO import decideInclusionFromPGO
|
|
34
20
|
from nuitka.plugins.Plugins import Plugins
|
|
@@ -38,6 +24,13 @@ from nuitka.utils.FileOperations import listDir
|
|
|
38
24
|
from nuitka.utils.Importing import getSharedLibrarySuffixes
|
|
39
25
|
from nuitka.utils.ModuleNames import ModuleName
|
|
40
26
|
|
|
27
|
+
from .Importing import (
|
|
28
|
+
getModuleNameAndKindFromFilename,
|
|
29
|
+
isPackageDir,
|
|
30
|
+
locateModule,
|
|
31
|
+
warnAboutNotFoundImport,
|
|
32
|
+
)
|
|
33
|
+
|
|
41
34
|
|
|
42
35
|
def _recurseTo(module_name, module_filename, module_kind, reason):
|
|
43
36
|
from nuitka.tree import Building
|
|
@@ -97,9 +90,38 @@ def recurseTo(
|
|
|
97
90
|
_recursion_decision_cache = {}
|
|
98
91
|
|
|
99
92
|
|
|
93
|
+
def getRecursionDecisions():
|
|
94
|
+
"""Access to recursion decisions, intended only for reporting."""
|
|
95
|
+
return _recursion_decision_cache
|
|
96
|
+
|
|
97
|
+
|
|
100
98
|
def decideRecursion(
|
|
101
99
|
using_module_name, module_filename, module_name, module_kind, extra_recursion=False
|
|
102
100
|
):
|
|
101
|
+
package_part, _remainder = module_name.splitModuleBasename()
|
|
102
|
+
|
|
103
|
+
if package_part is not None:
|
|
104
|
+
(
|
|
105
|
+
_package_part,
|
|
106
|
+
package_filename,
|
|
107
|
+
package_module_kind,
|
|
108
|
+
package_finding,
|
|
109
|
+
) = locateModule(module_name=package_part, parent_package=None, level=0)
|
|
110
|
+
assert _package_part == package_part
|
|
111
|
+
|
|
112
|
+
# For bad decisions, this may already not work.
|
|
113
|
+
if package_finding != "not-found":
|
|
114
|
+
package_decision, package_reason = decideRecursion(
|
|
115
|
+
using_module_name=using_module_name,
|
|
116
|
+
module_filename=package_filename,
|
|
117
|
+
module_name=package_part,
|
|
118
|
+
module_kind=package_module_kind,
|
|
119
|
+
extra_recursion=extra_recursion,
|
|
120
|
+
)
|
|
121
|
+
|
|
122
|
+
if package_decision is False:
|
|
123
|
+
return package_decision, package_reason
|
|
124
|
+
|
|
103
125
|
key = using_module_name, module_filename, module_name, module_kind, extra_recursion
|
|
104
126
|
|
|
105
127
|
if key not in _recursion_decision_cache:
|
|
@@ -111,6 +133,16 @@ def decideRecursion(
|
|
|
111
133
|
extra_recursion,
|
|
112
134
|
)
|
|
113
135
|
|
|
136
|
+
# If decided true, give the plugins a chance to e.g. add more hard
|
|
137
|
+
# module information, this indicates tentatively, that a module might
|
|
138
|
+
# get used, but it may also not happen at all.
|
|
139
|
+
if _recursion_decision_cache[key][0]:
|
|
140
|
+
Plugins.onModuleUsageLookAhead(
|
|
141
|
+
module_name=module_name,
|
|
142
|
+
module_filename=module_filename,
|
|
143
|
+
module_kind=module_kind,
|
|
144
|
+
)
|
|
145
|
+
|
|
114
146
|
return _recursion_decision_cache[key]
|
|
115
147
|
|
|
116
148
|
|
|
@@ -122,13 +154,23 @@ def _decideRecursion(
|
|
|
122
154
|
if module_name == "__main__":
|
|
123
155
|
return False, "Main program is not followed to a second time."
|
|
124
156
|
|
|
157
|
+
if using_module_name == "__main__" and Options.isMultidistMode():
|
|
158
|
+
return True, "Main program multidist entry points."
|
|
159
|
+
|
|
125
160
|
if module_kind == "extension" and not Options.isStandaloneMode():
|
|
126
161
|
return False, "Extension modules cannot be inspected."
|
|
127
162
|
|
|
163
|
+
if module_kind == "built-in":
|
|
164
|
+
return False, "Built-in modules cannot be inspected."
|
|
165
|
+
|
|
128
166
|
if module_name in detectEarlyImports():
|
|
129
167
|
return True, "Technically required for CPython library startup."
|
|
130
168
|
|
|
131
|
-
|
|
169
|
+
is_stdlib = module_filename is not None and StandardLibrary.isStandardLibraryPath(
|
|
170
|
+
module_filename
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
if is_stdlib and module_name in detectStdlibAutoInclusionModules():
|
|
132
174
|
return True, "Including as part of the non-excluded parts of standard library."
|
|
133
175
|
|
|
134
176
|
# In '-m' mode, when including the package, do not duplicate main program.
|
|
@@ -164,7 +206,7 @@ def _decideRecursion(
|
|
|
164
206
|
if plugin_decision and plugin_decision[0]:
|
|
165
207
|
deciding_plugins[0].sysexit(
|
|
166
208
|
"Conflict between user and plugin decision for module '%s'."
|
|
167
|
-
%
|
|
209
|
+
% module_name
|
|
168
210
|
)
|
|
169
211
|
|
|
170
212
|
return False, "Module %s instructed by user to not follow to." % reason
|
|
@@ -177,7 +219,7 @@ def _decideRecursion(
|
|
|
177
219
|
if plugin_decision and not plugin_decision[0] and deciding_plugins:
|
|
178
220
|
deciding_plugins[0].sysexit(
|
|
179
221
|
"Conflict between user and plugin decision for module '%s'."
|
|
180
|
-
%
|
|
222
|
+
% module_name
|
|
181
223
|
)
|
|
182
224
|
|
|
183
225
|
return True, "Module %s instructed by user to follow to." % reason
|
|
@@ -193,7 +235,6 @@ def _decideRecursion(
|
|
|
193
235
|
|
|
194
236
|
# PGO decisions are not overruling plugins, but all command line options, they are
|
|
195
237
|
# supposed to be applied already.
|
|
196
|
-
is_stdlib = StandardLibrary.isStandardLibraryPath(module_filename)
|
|
197
238
|
|
|
198
239
|
if not is_stdlib or Options.shallFollowStandardLibrary():
|
|
199
240
|
# TODO: Bad placement of this function or should PGO also know about
|
|
@@ -201,7 +242,12 @@ def _decideRecursion(
|
|
|
201
242
|
from nuitka.tree.Building import decideCompilationMode
|
|
202
243
|
|
|
203
244
|
if (
|
|
204
|
-
decideCompilationMode(
|
|
245
|
+
decideCompilationMode(
|
|
246
|
+
is_top=False,
|
|
247
|
+
module_name=module_name,
|
|
248
|
+
module_filename=module_filename,
|
|
249
|
+
for_pgo=True,
|
|
250
|
+
)
|
|
205
251
|
== "compiled"
|
|
206
252
|
):
|
|
207
253
|
pgo_decision = decideInclusionFromPGO(
|
|
@@ -247,8 +293,9 @@ def isSameModulePath(path1, path2):
|
|
|
247
293
|
return os.path.abspath(path1) == os.path.abspath(path2)
|
|
248
294
|
|
|
249
295
|
|
|
250
|
-
def _addIncludedModule(module):
|
|
251
|
-
# Many branches, for the decision is very complex
|
|
296
|
+
def _addIncludedModule(module, package_only):
|
|
297
|
+
# Many branches, for the decision is very complex
|
|
298
|
+
# pylint: disable=too-many-branches
|
|
252
299
|
|
|
253
300
|
if Options.isShowInclusion():
|
|
254
301
|
recursion_logger.info(
|
|
@@ -281,16 +328,23 @@ def _addIncludedModule(module):
|
|
|
281
328
|
if Options.isShowInclusion():
|
|
282
329
|
recursion_logger.info("Package directory '%s'." % package_dir)
|
|
283
330
|
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
sub_path + ".py"
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
331
|
+
if not package_only:
|
|
332
|
+
for sub_path, sub_filename in listDir(package_dir):
|
|
333
|
+
if sub_filename in ("__init__.py", "__pycache__"):
|
|
334
|
+
continue
|
|
335
|
+
|
|
336
|
+
if isPackageDir(sub_path) and not os.path.exists(sub_path + ".py"):
|
|
337
|
+
checkPluginSinglePath(
|
|
338
|
+
sub_path,
|
|
339
|
+
module_package=module.getFullName(),
|
|
340
|
+
package_only=False,
|
|
341
|
+
)
|
|
342
|
+
elif sub_path.endswith(".py"):
|
|
343
|
+
checkPluginSinglePath(
|
|
344
|
+
sub_path,
|
|
345
|
+
module_package=module.getFullName(),
|
|
346
|
+
package_only=False,
|
|
347
|
+
)
|
|
294
348
|
|
|
295
349
|
elif module.isCompiledPythonModule() or module.isUncompiledPythonModule():
|
|
296
350
|
ModuleRegistry.addRootModule(module)
|
|
@@ -301,7 +355,7 @@ def _addIncludedModule(module):
|
|
|
301
355
|
assert False, module
|
|
302
356
|
|
|
303
357
|
|
|
304
|
-
def checkPluginSinglePath(plugin_filename, module_package):
|
|
358
|
+
def checkPluginSinglePath(plugin_filename, module_package, package_only):
|
|
305
359
|
# The importing wants these to be unique.
|
|
306
360
|
plugin_filename = os.path.abspath(plugin_filename)
|
|
307
361
|
|
|
@@ -311,9 +365,7 @@ def checkPluginSinglePath(plugin_filename, module_package):
|
|
|
311
365
|
% (plugin_filename, module_package)
|
|
312
366
|
)
|
|
313
367
|
|
|
314
|
-
module_name, module_kind =
|
|
315
|
-
plugin_filename
|
|
316
|
-
)
|
|
368
|
+
module_name, module_kind = getModuleNameAndKindFromFilename(plugin_filename)
|
|
317
369
|
|
|
318
370
|
module_name = ModuleName.makeModuleNameInPackage(module_name, module_package)
|
|
319
371
|
|
|
@@ -347,7 +399,7 @@ the compiled result, and therefore asking to include them makes no sense.
|
|
|
347
399
|
)
|
|
348
400
|
|
|
349
401
|
if module:
|
|
350
|
-
_addIncludedModule(module)
|
|
402
|
+
_addIncludedModule(module=module, package_only=package_only)
|
|
351
403
|
else:
|
|
352
404
|
recursion_logger.warning(
|
|
353
405
|
"Failed to include module from '%s'." % plugin_filename
|
|
@@ -367,21 +419,33 @@ def checkPluginPath(plugin_filename, module_package):
|
|
|
367
419
|
)
|
|
368
420
|
|
|
369
421
|
# Files and package directories are handled here.
|
|
370
|
-
if os.path.isfile(plugin_filename) or
|
|
371
|
-
checkPluginSinglePath(
|
|
422
|
+
if os.path.isfile(plugin_filename) or isPackageDir(plugin_filename):
|
|
423
|
+
checkPluginSinglePath(
|
|
424
|
+
plugin_filename,
|
|
425
|
+
module_package=module_package,
|
|
426
|
+
package_only=False,
|
|
427
|
+
)
|
|
372
428
|
# This effectively only covers files known to not be packages due to name
|
|
373
429
|
# or older Python version.
|
|
374
430
|
elif os.path.isdir(plugin_filename):
|
|
375
431
|
for sub_path, sub_filename in listDir(plugin_filename):
|
|
376
432
|
assert sub_filename != "__init__.py"
|
|
377
433
|
|
|
378
|
-
if
|
|
379
|
-
checkPluginSinglePath(
|
|
434
|
+
if isPackageDir(sub_path) or sub_path.endswith(".py"):
|
|
435
|
+
checkPluginSinglePath(
|
|
436
|
+
sub_path,
|
|
437
|
+
module_package=None,
|
|
438
|
+
package_only=False,
|
|
439
|
+
)
|
|
380
440
|
continue
|
|
381
441
|
|
|
382
442
|
for suffix in getSharedLibrarySuffixes():
|
|
383
443
|
if sub_path.endswith(suffix):
|
|
384
|
-
checkPluginSinglePath(
|
|
444
|
+
checkPluginSinglePath(
|
|
445
|
+
sub_path,
|
|
446
|
+
module_package=None,
|
|
447
|
+
package_only=False,
|
|
448
|
+
)
|
|
385
449
|
|
|
386
450
|
else:
|
|
387
451
|
recursion_logger.warning(
|
|
@@ -405,7 +469,11 @@ def checkPluginFilenamePattern(pattern):
|
|
|
405
469
|
continue
|
|
406
470
|
|
|
407
471
|
found = True
|
|
408
|
-
checkPluginSinglePath(
|
|
472
|
+
checkPluginSinglePath(
|
|
473
|
+
filename,
|
|
474
|
+
module_package=None,
|
|
475
|
+
package_only=False,
|
|
476
|
+
)
|
|
409
477
|
|
|
410
478
|
if not found:
|
|
411
479
|
recursion_logger.warning(
|
|
@@ -430,7 +498,7 @@ def considerUsedModules(module, pass_count):
|
|
|
430
498
|
continue
|
|
431
499
|
|
|
432
500
|
if used_module.finding == "not-found":
|
|
433
|
-
|
|
501
|
+
warnAboutNotFoundImport(
|
|
434
502
|
importing=module,
|
|
435
503
|
source_ref=used_module.source_ref,
|
|
436
504
|
module_name=used_module.module_name,
|
|
@@ -485,3 +553,19 @@ def considerUsedModules(module, pass_count):
|
|
|
485
553
|
"Error, forbidden import of '%s' (intending to avoid '%s') done implicitly by module '%s'."
|
|
486
554
|
% (e.args[0], e.args[1], module.getFullName())
|
|
487
555
|
)
|
|
556
|
+
|
|
557
|
+
|
|
558
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
559
|
+
# integrates with CPython, but also works on its own.
|
|
560
|
+
#
|
|
561
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
562
|
+
# you may not use this file except in compliance with the License.
|
|
563
|
+
# You may obtain a copy of the License at
|
|
564
|
+
#
|
|
565
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
566
|
+
#
|
|
567
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
568
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
569
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
570
|
+
# See the License for the specific language governing permissions and
|
|
571
|
+
# 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
|
""" Access to standard library distinction.
|
|
19
5
|
|
|
20
6
|
For code to be in the standard library means that it's not written by the
|
|
@@ -28,11 +14,11 @@ module.
|
|
|
28
14
|
|
|
29
15
|
import os
|
|
30
16
|
|
|
31
|
-
from nuitka.Options import shallUseStaticLibPython
|
|
32
17
|
from nuitka.PythonVersions import python_version
|
|
33
18
|
from nuitka.utils.FileOperations import getFileContents, isFilenameBelowPath
|
|
34
19
|
from nuitka.utils.ModuleNames import ModuleName
|
|
35
20
|
from nuitka.utils.Utils import (
|
|
21
|
+
isMacOS,
|
|
36
22
|
isNetBSD,
|
|
37
23
|
isPosixWindows,
|
|
38
24
|
isWin32OrPosixWindows,
|
|
@@ -104,10 +90,13 @@ def getStandardLibraryPaths():
|
|
|
104
90
|
if os.path.isdir(candidate):
|
|
105
91
|
stdlib_paths.add(candidate)
|
|
106
92
|
|
|
107
|
-
if isWin32OrPosixWindows()
|
|
108
|
-
import
|
|
93
|
+
if isWin32OrPosixWindows():
|
|
94
|
+
from nuitka.Options import shallUseStaticLibPython
|
|
95
|
+
|
|
96
|
+
if not shallUseStaticLibPython():
|
|
97
|
+
import _ctypes
|
|
109
98
|
|
|
110
|
-
|
|
99
|
+
stdlib_paths.add(os.path.dirname(_ctypes.__file__))
|
|
111
100
|
|
|
112
101
|
getStandardLibraryPaths.result = [
|
|
113
102
|
os.path.normcase(os.path.normpath(stdlib_path))
|
|
@@ -117,11 +106,7 @@ def getStandardLibraryPaths():
|
|
|
117
106
|
return getStandardLibraryPaths.result
|
|
118
107
|
|
|
119
108
|
|
|
120
|
-
def
|
|
121
|
-
"""Check if a path is in the standard library."""
|
|
122
|
-
|
|
123
|
-
filename = os.path.normcase(os.path.normpath(filename))
|
|
124
|
-
|
|
109
|
+
def _isStandardLibraryPath(filename):
|
|
125
110
|
# In virtualenv, the "site.py" lives in a place that suggests it is not in
|
|
126
111
|
# standard library, although it is.
|
|
127
112
|
if os.path.basename(filename) == "site.py":
|
|
@@ -142,6 +127,20 @@ def isStandardLibraryPath(filename):
|
|
|
142
127
|
return False
|
|
143
128
|
|
|
144
129
|
|
|
130
|
+
_is_standard_library_path_cache = {}
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
def isStandardLibraryPath(filename):
|
|
134
|
+
"""Check if a path is in the standard library."""
|
|
135
|
+
|
|
136
|
+
filename = os.path.normcase(os.path.normpath(filename))
|
|
137
|
+
|
|
138
|
+
if filename not in _is_standard_library_path_cache:
|
|
139
|
+
_is_standard_library_path_cache[filename] = _isStandardLibraryPath(filename)
|
|
140
|
+
|
|
141
|
+
return _is_standard_library_path_cache[filename]
|
|
142
|
+
|
|
143
|
+
|
|
145
144
|
# Some modules we want to exclude entirely.
|
|
146
145
|
_excluded_stdlib_modules = ["__main__.py", "__init__.py", "antigravity.py"]
|
|
147
146
|
|
|
@@ -177,6 +176,9 @@ def scanStandardLibraryPath(stdlib_dir):
|
|
|
177
176
|
if "ensurepip" in dirs:
|
|
178
177
|
dirs.remove("ensurepip")
|
|
179
178
|
|
|
179
|
+
if "_ios_support.py" in filenames and not isMacOS():
|
|
180
|
+
filenames.remove("_ios_support.py")
|
|
181
|
+
|
|
180
182
|
# Ignore "lib-dynload" and "lib-tk" and alike.
|
|
181
183
|
dirs[:] = [
|
|
182
184
|
dirname
|
|
@@ -241,7 +243,7 @@ def scanStandardLibraryPath(stdlib_dir):
|
|
|
241
243
|
dirs.remove("__pycache__")
|
|
242
244
|
|
|
243
245
|
# Ignore ".idea", ".git" and similar folders, they are not modules
|
|
244
|
-
dirs = [dirname for dirname in dirs if not dirname.startswith(".")]
|
|
246
|
+
dirs[:] = [dirname for dirname in dirs if not dirname.startswith(".")]
|
|
245
247
|
|
|
246
248
|
for dirname in dirs:
|
|
247
249
|
if import_path == "":
|
|
@@ -338,7 +340,6 @@ _stdlib_no_auto_inclusion_list = (
|
|
|
338
340
|
# Packages that will be imported rarely by extension modules
|
|
339
341
|
"email",
|
|
340
342
|
"mailbox",
|
|
341
|
-
"calendar",
|
|
342
343
|
"argparse",
|
|
343
344
|
"telnetlib",
|
|
344
345
|
"smtplib",
|
|
@@ -359,6 +360,7 @@ _stdlib_no_auto_inclusion_list = (
|
|
|
359
360
|
"tty",
|
|
360
361
|
"termios",
|
|
361
362
|
"this",
|
|
363
|
+
"textwrap",
|
|
362
364
|
# Distribution and bytecode related stuff
|
|
363
365
|
"plistlib",
|
|
364
366
|
"distutils",
|
|
@@ -411,3 +413,19 @@ if not isWin32Windows():
|
|
|
411
413
|
|
|
412
414
|
def isStandardLibraryNoAutoInclusionModule(module_name):
|
|
413
415
|
return module_name.hasOneOfNamespaces(*_stdlib_no_auto_inclusion_list)
|
|
416
|
+
|
|
417
|
+
|
|
418
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
419
|
+
# integrates with CPython, but also works on its own.
|
|
420
|
+
#
|
|
421
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
422
|
+
# you may not use this file except in compliance with the License.
|
|
423
|
+
# You may obtain a copy of the License at
|
|
424
|
+
#
|
|
425
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
426
|
+
#
|
|
427
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
428
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
429
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
430
|
+
# See the License for the specific language governing permissions and
|
|
431
|
+
# limitations under the License.
|
nuitka/importing/__init__.py
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
# Copyright
|
|
2
|
-
|
|
1
|
+
# Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
""" Dummy file to make this directory a package. """
|
|
5
|
+
|
|
3
6
|
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
7
|
# integrates with CPython, but also works on its own.
|
|
5
8
|
#
|
|
@@ -14,5 +17,3 @@
|
|
|
14
17
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
18
|
# See the License for the specific language governing permissions and
|
|
16
19
|
# limitations under the License.
|
|
17
|
-
#
|
|
18
|
-
""" Dummy file to make this directory a package. """
|
nuitka/nodes/AsyncgenNodes.py
CHANGED
|
@@ -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
|
""" Nodes for async generator objects and their creations.
|
|
19
5
|
|
|
20
6
|
Async generator are turned into normal functions that create generator objects,
|
|
@@ -106,3 +92,19 @@ class ExpressionAsyncgenObjectBody(ExpressionFunctionEntryPointBase):
|
|
|
106
92
|
@staticmethod
|
|
107
93
|
def isUnoptimized():
|
|
108
94
|
return False
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
98
|
+
# integrates with CPython, but also works on its own.
|
|
99
|
+
#
|
|
100
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
101
|
+
# you may not use this file except in compliance with the License.
|
|
102
|
+
# You may obtain a copy of the License at
|
|
103
|
+
#
|
|
104
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
105
|
+
#
|
|
106
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
107
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
108
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
109
|
+
# See the License for the specific language governing permissions and
|
|
110
|
+
# 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
|
""" Attribute lookup nodes, generic one and base for generated ones.
|
|
19
5
|
|
|
20
6
|
See AttributeNodes otherwise.
|
|
@@ -120,3 +106,19 @@ class ExpressionAttributeLookupFixedBase(ChildHavingExpressionMixin, ExpressionB
|
|
|
120
106
|
# TODO: Could be known. We would need for computeExpressionAttribute to
|
|
121
107
|
# either return a new node, or a decision maker.
|
|
122
108
|
return None
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
112
|
+
# integrates with CPython, but also works on its own.
|
|
113
|
+
#
|
|
114
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
115
|
+
# you may not use this file except in compliance with the License.
|
|
116
|
+
# You may obtain a copy of the License at
|
|
117
|
+
#
|
|
118
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
119
|
+
#
|
|
120
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
121
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
122
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
123
|
+
# See the License for the specific language governing permissions and
|
|
124
|
+
# limitations under the License.
|
nuitka/nodes/AttributeNodes.py
CHANGED
|
@@ -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
|
""" Attribute nodes
|
|
19
5
|
|
|
20
6
|
Knowing attributes of an object is very important, esp. when it comes to 'self'
|
|
@@ -382,3 +368,19 @@ class ExpressionAttributeCheck(
|
|
|
382
368
|
|
|
383
369
|
def getAttributeName(self):
|
|
384
370
|
return self.attribute_name
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
374
|
+
# integrates with CPython, but also works on its own.
|
|
375
|
+
#
|
|
376
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
377
|
+
# you may not use this file except in compliance with the License.
|
|
378
|
+
# You may obtain a copy of the License at
|
|
379
|
+
#
|
|
380
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
381
|
+
#
|
|
382
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
383
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
384
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
385
|
+
# See the License for the specific language governing permissions and
|
|
386
|
+
# limitations under the License.
|