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/tree/Building.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
|
""" Build the internal node tree from source code.
|
|
19
5
|
|
|
20
6
|
Does all the Python parsing and puts it into a tree structure for use in later
|
|
@@ -48,15 +34,11 @@ special attribute lookups for "__enter__" and "__exit__", calls of them,
|
|
|
48
34
|
catching and passing in exceptions raised.
|
|
49
35
|
|
|
50
36
|
"""
|
|
37
|
+
|
|
51
38
|
import marshal
|
|
52
39
|
import os
|
|
53
40
|
|
|
54
|
-
from nuitka import
|
|
55
|
-
ModuleRegistry,
|
|
56
|
-
Options,
|
|
57
|
-
OutputDirectories,
|
|
58
|
-
SourceCodeReferences,
|
|
59
|
-
)
|
|
41
|
+
from nuitka import ModuleRegistry, OutputDirectories, SourceCodeReferences
|
|
60
42
|
from nuitka.__past__ import long, unicode
|
|
61
43
|
from nuitka.BytecodeCaching import (
|
|
62
44
|
getCachedImportedModuleUsageAttempts,
|
|
@@ -97,7 +79,10 @@ from nuitka.nodes.ExceptionNodes import (
|
|
|
97
79
|
StatementReraiseException,
|
|
98
80
|
)
|
|
99
81
|
from nuitka.nodes.FutureSpecs import FutureSpec
|
|
100
|
-
from nuitka.nodes.GeneratorNodes import
|
|
82
|
+
from nuitka.nodes.GeneratorNodes import (
|
|
83
|
+
StatementGeneratorReturn,
|
|
84
|
+
StatementGeneratorReturnNone,
|
|
85
|
+
)
|
|
101
86
|
from nuitka.nodes.ImportNodes import (
|
|
102
87
|
isHardModuleWithoutSideEffect,
|
|
103
88
|
makeExpressionImportModuleFixed,
|
|
@@ -128,7 +113,16 @@ from nuitka.nodes.VariableNameNodes import (
|
|
|
128
113
|
StatementAssignmentVariableName,
|
|
129
114
|
)
|
|
130
115
|
from nuitka.optimizations.BytecodeDemotion import demoteSourceCodeToBytecode
|
|
131
|
-
from nuitka.Options import
|
|
116
|
+
from nuitka.Options import (
|
|
117
|
+
getMainEntryPointFilenames,
|
|
118
|
+
hasPythonFlagNoSite,
|
|
119
|
+
hasPythonFlagPackageMode,
|
|
120
|
+
isShowMemory,
|
|
121
|
+
isStandaloneMode,
|
|
122
|
+
shallDisableBytecodeCacheUsage,
|
|
123
|
+
shallMakeModule,
|
|
124
|
+
shallWarnUnusualCode,
|
|
125
|
+
)
|
|
132
126
|
from nuitka.pgo.PGO import decideCompilationFromPGO
|
|
133
127
|
from nuitka.plugins.Plugins import Plugins
|
|
134
128
|
from nuitka.PythonVersions import python_version
|
|
@@ -141,6 +135,7 @@ from nuitka.Tracing import (
|
|
|
141
135
|
)
|
|
142
136
|
from nuitka.utils import MemoryUsage
|
|
143
137
|
from nuitka.utils.ModuleNames import ModuleName
|
|
138
|
+
from nuitka.utils.Utils import withNoSyntaxWarning
|
|
144
139
|
|
|
145
140
|
from . import SyntaxErrors
|
|
146
141
|
from .ReformulationAssertStatements import buildAssertNode
|
|
@@ -150,6 +145,7 @@ from .ReformulationAssignmentStatements import (
|
|
|
150
145
|
buildDeleteNode,
|
|
151
146
|
buildInplaceAssignNode,
|
|
152
147
|
buildNamedExprNode,
|
|
148
|
+
buildTypeAliasNode,
|
|
153
149
|
)
|
|
154
150
|
from .ReformulationBooleanExpressions import buildBoolOpNode
|
|
155
151
|
from .ReformulationCallExpressions import buildCallNode
|
|
@@ -292,9 +288,9 @@ def buildTryFinallyNode2(provider, node, source_ref):
|
|
|
292
288
|
|
|
293
289
|
|
|
294
290
|
def buildTryNode(provider, node, source_ref):
|
|
295
|
-
# Note: This variant is used for Python3
|
|
296
|
-
#
|
|
297
|
-
#
|
|
291
|
+
# Note: This variant is used for Python3 only, older stuff uses the above
|
|
292
|
+
# ones, this one merges try/except with try/finally in the "ast". We split
|
|
293
|
+
# it up again, as it's logically separated of course.
|
|
298
294
|
|
|
299
295
|
# Shortcut missing try/finally.
|
|
300
296
|
if not node.handlers:
|
|
@@ -440,7 +436,7 @@ def handleGlobalDeclarationNode(provider, node, source_ref):
|
|
|
440
436
|
for variable_name in node.names:
|
|
441
437
|
closure_variable = None
|
|
442
438
|
|
|
443
|
-
#
|
|
439
|
+
# Reuse already taken global variables, in order to avoid creating yet
|
|
444
440
|
# another instance, esp. as the indications could then potentially not
|
|
445
441
|
# be shared.
|
|
446
442
|
if provider.hasTakenVariable(variable_name):
|
|
@@ -594,10 +590,12 @@ def buildReturnNode(provider, node, source_ref):
|
|
|
594
590
|
provider.isExpressionGeneratorObjectBody()
|
|
595
591
|
or provider.isExpressionAsyncgenObjectBody()
|
|
596
592
|
):
|
|
597
|
-
if expression is None:
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
593
|
+
if expression is None or expression.isExpressionConstantNoneRef():
|
|
594
|
+
return StatementGeneratorReturnNone(source_ref=source_ref)
|
|
595
|
+
else:
|
|
596
|
+
return StatementGeneratorReturn(
|
|
597
|
+
expression=expression, source_ref=source_ref
|
|
598
|
+
)
|
|
601
599
|
else:
|
|
602
600
|
return makeStatementReturn(expression=expression, source_ref=source_ref)
|
|
603
601
|
|
|
@@ -771,6 +769,7 @@ setBuildingDispatchers(
|
|
|
771
769
|
"NamedExpr": buildNamedExprNode,
|
|
772
770
|
"Slice": buildSliceNode,
|
|
773
771
|
"Match": buildMatchNode,
|
|
772
|
+
"TypeAlias": buildTypeAliasNode,
|
|
774
773
|
},
|
|
775
774
|
path_args2={
|
|
776
775
|
"Constant": buildNamedConstantNode, # Python3.8
|
|
@@ -784,19 +783,18 @@ setBuildingDispatchers(
|
|
|
784
783
|
)
|
|
785
784
|
|
|
786
785
|
|
|
787
|
-
def buildParseTree(provider, ast_tree, source_ref,
|
|
786
|
+
def buildParseTree(provider, ast_tree, source_ref, is_main):
|
|
788
787
|
# There are a bunch of branches here, mostly to deal with version
|
|
789
788
|
# differences for module default variables. pylint: disable=too-many-branches
|
|
790
789
|
|
|
791
790
|
# Maybe one day, we do exec inlining again, that is what this is for,
|
|
792
791
|
# then is_module won't be True, for now it always is.
|
|
793
|
-
pushFutureSpec()
|
|
794
|
-
|
|
795
|
-
provider.setFutureSpec(getFutureSpec())
|
|
792
|
+
pushFutureSpec(provider.getFullName())
|
|
793
|
+
provider.setFutureSpec(getFutureSpec())
|
|
796
794
|
|
|
797
795
|
body, doc = extractDocFromBody(ast_tree)
|
|
798
796
|
|
|
799
|
-
if
|
|
797
|
+
if is_main and python_version >= 0x360:
|
|
800
798
|
provider.markAsNeedsAnnotationsDictionary()
|
|
801
799
|
|
|
802
800
|
try:
|
|
@@ -817,100 +815,105 @@ def buildParseTree(provider, ast_tree, source_ref, is_module, is_main):
|
|
|
817
815
|
|
|
818
816
|
statements = []
|
|
819
817
|
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
818
|
+
# Add import of "site" module of main programs visibly in the node tree,
|
|
819
|
+
# so recursion and optimization can pick it up, checking its effects.
|
|
820
|
+
if is_main and not hasPythonFlagNoSite():
|
|
821
|
+
statements.append(
|
|
822
|
+
StatementExpressionOnly(
|
|
823
|
+
expression=makeExpressionImportModuleFixed(
|
|
824
|
+
using_module_name=provider.getParentModule().getFullName(),
|
|
825
|
+
module_name="site",
|
|
826
|
+
value_name="site",
|
|
827
|
+
source_ref=source_ref,
|
|
828
|
+
),
|
|
829
|
+
source_ref=source_ref,
|
|
830
|
+
)
|
|
831
|
+
)
|
|
832
|
+
|
|
833
|
+
for path_imported_name in getPthImportedPackages():
|
|
834
|
+
if isHardModuleWithoutSideEffect(path_imported_name):
|
|
835
|
+
continue
|
|
836
|
+
|
|
824
837
|
statements.append(
|
|
825
838
|
StatementExpressionOnly(
|
|
826
839
|
expression=makeExpressionImportModuleFixed(
|
|
827
|
-
|
|
840
|
+
using_module_name=provider.getParentModule().getFullName(),
|
|
841
|
+
module_name=path_imported_name,
|
|
842
|
+
value_name=path_imported_name.getTopLevelPackageName(),
|
|
843
|
+
source_ref=source_ref,
|
|
828
844
|
),
|
|
829
845
|
source_ref=source_ref,
|
|
830
846
|
)
|
|
831
847
|
)
|
|
832
848
|
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
)
|
|
844
|
-
)
|
|
849
|
+
statements.append(
|
|
850
|
+
StatementAssignmentVariableName(
|
|
851
|
+
provider=provider,
|
|
852
|
+
variable_name="__doc__",
|
|
853
|
+
source=makeConstantRefNode(
|
|
854
|
+
constant=doc, source_ref=internal_source_ref, user_provided=True
|
|
855
|
+
),
|
|
856
|
+
source_ref=internal_source_ref,
|
|
857
|
+
)
|
|
858
|
+
)
|
|
845
859
|
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
),
|
|
860
|
+
statements.append(
|
|
861
|
+
StatementAssignmentVariableName(
|
|
862
|
+
provider=provider,
|
|
863
|
+
variable_name="__file__",
|
|
864
|
+
source=ExpressionModuleAttributeFileRef(
|
|
865
|
+
variable=provider.getVariableForReference("__file__"),
|
|
853
866
|
source_ref=internal_source_ref,
|
|
854
|
-
)
|
|
867
|
+
),
|
|
868
|
+
source_ref=internal_source_ref,
|
|
855
869
|
)
|
|
870
|
+
)
|
|
856
871
|
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
872
|
+
if provider.isCompiledPythonPackage():
|
|
873
|
+
# This assigns "__path__" value.
|
|
874
|
+
statements.append(createPathAssignment(provider, internal_source_ref))
|
|
875
|
+
|
|
876
|
+
if python_version >= 0x340 and not is_main:
|
|
877
|
+
statements += (
|
|
878
|
+
StatementAssignmentAttribute(
|
|
879
|
+
expression=ExpressionModuleAttributeSpecRef(
|
|
880
|
+
variable=provider.getVariableForReference("__spec__"),
|
|
881
|
+
source_ref=internal_source_ref,
|
|
882
|
+
),
|
|
883
|
+
attribute_name="origin",
|
|
861
884
|
source=ExpressionModuleAttributeFileRef(
|
|
862
885
|
variable=provider.getVariableForReference("__file__"),
|
|
863
886
|
source_ref=internal_source_ref,
|
|
864
887
|
),
|
|
865
888
|
source_ref=internal_source_ref,
|
|
866
|
-
)
|
|
889
|
+
),
|
|
890
|
+
StatementAssignmentAttribute(
|
|
891
|
+
expression=ExpressionModuleAttributeSpecRef(
|
|
892
|
+
variable=provider.getVariableForReference("__spec__"),
|
|
893
|
+
source_ref=internal_source_ref,
|
|
894
|
+
),
|
|
895
|
+
attribute_name="has_location",
|
|
896
|
+
source=makeConstantRefNode(True, internal_source_ref),
|
|
897
|
+
source_ref=internal_source_ref,
|
|
898
|
+
),
|
|
867
899
|
)
|
|
868
900
|
|
|
869
901
|
if provider.isCompiledPythonPackage():
|
|
870
|
-
|
|
871
|
-
statements.append(createPathAssignment(provider, internal_source_ref))
|
|
872
|
-
|
|
873
|
-
if python_version >= 0x340 and not is_main:
|
|
874
|
-
statements += (
|
|
902
|
+
statements.append(
|
|
875
903
|
StatementAssignmentAttribute(
|
|
876
904
|
expression=ExpressionModuleAttributeSpecRef(
|
|
877
905
|
variable=provider.getVariableForReference("__spec__"),
|
|
878
906
|
source_ref=internal_source_ref,
|
|
879
907
|
),
|
|
880
|
-
attribute_name="
|
|
881
|
-
source=
|
|
882
|
-
|
|
908
|
+
attribute_name="submodule_search_locations",
|
|
909
|
+
source=ExpressionVariableNameRef(
|
|
910
|
+
provider=provider,
|
|
911
|
+
variable_name="__path__",
|
|
883
912
|
source_ref=internal_source_ref,
|
|
884
913
|
),
|
|
885
914
|
source_ref=internal_source_ref,
|
|
886
|
-
),
|
|
887
|
-
StatementAssignmentAttribute(
|
|
888
|
-
expression=ExpressionModuleAttributeSpecRef(
|
|
889
|
-
variable=provider.getVariableForReference("__spec__"),
|
|
890
|
-
source_ref=internal_source_ref,
|
|
891
|
-
),
|
|
892
|
-
attribute_name="has_location",
|
|
893
|
-
source=makeConstantRefNode(True, internal_source_ref),
|
|
894
|
-
source_ref=internal_source_ref,
|
|
895
|
-
),
|
|
896
|
-
)
|
|
897
|
-
|
|
898
|
-
if provider.isCompiledPythonPackage():
|
|
899
|
-
statements.append(
|
|
900
|
-
StatementAssignmentAttribute(
|
|
901
|
-
expression=ExpressionModuleAttributeSpecRef(
|
|
902
|
-
variable=provider.getVariableForReference("__spec__"),
|
|
903
|
-
source_ref=internal_source_ref,
|
|
904
|
-
),
|
|
905
|
-
attribute_name="submodule_search_locations",
|
|
906
|
-
source=ExpressionVariableNameRef(
|
|
907
|
-
provider=provider,
|
|
908
|
-
variable_name="__path__",
|
|
909
|
-
source_ref=internal_source_ref,
|
|
910
|
-
),
|
|
911
|
-
source_ref=internal_source_ref,
|
|
912
|
-
)
|
|
913
915
|
)
|
|
916
|
+
)
|
|
914
917
|
|
|
915
918
|
if python_version >= 0x300:
|
|
916
919
|
statements.append(
|
|
@@ -969,27 +972,26 @@ def buildParseTree(provider, ast_tree, source_ref, is_module, is_main):
|
|
|
969
972
|
)
|
|
970
973
|
)
|
|
971
974
|
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
)
|
|
975
|
+
result = makeModuleFrame(
|
|
976
|
+
module=provider, statements=statements, source_ref=source_ref
|
|
977
|
+
)
|
|
976
978
|
|
|
977
|
-
|
|
979
|
+
popFutureSpec()
|
|
978
980
|
|
|
979
|
-
|
|
980
|
-
else:
|
|
981
|
-
assert False
|
|
981
|
+
return result
|
|
982
982
|
|
|
983
983
|
|
|
984
|
-
def decideCompilationMode(is_top, module_name, for_pgo):
|
|
984
|
+
def decideCompilationMode(is_top, module_name, module_filename, for_pgo):
|
|
985
985
|
"""Decide the compilation mode for a module.
|
|
986
986
|
|
|
987
987
|
module_name - The module to decide compilation mode for.
|
|
988
988
|
for_pgo - consider PGO information or not
|
|
989
989
|
"""
|
|
990
990
|
|
|
991
|
+
is_stdlib = module_filename is not None and isStandardLibraryPath(module_filename)
|
|
992
|
+
|
|
991
993
|
# Technically required modules must be bytecode
|
|
992
|
-
if module_name in detectEarlyImports():
|
|
994
|
+
if is_stdlib and module_name in detectEarlyImports():
|
|
993
995
|
return "bytecode"
|
|
994
996
|
|
|
995
997
|
result = Plugins.decideCompilation(module_name)
|
|
@@ -1008,13 +1010,8 @@ required to compiled."""
|
|
|
1008
1010
|
|
|
1009
1011
|
# Include all of standard library as bytecode, for now. We need to identify
|
|
1010
1012
|
# which ones really need that.
|
|
1011
|
-
if not is_top:
|
|
1012
|
-
|
|
1013
|
-
module_name=module_name, parent_package=None, level=0
|
|
1014
|
-
)[1]
|
|
1015
|
-
|
|
1016
|
-
if module_filename is not None and isStandardLibraryPath(module_filename):
|
|
1017
|
-
result = "bytecode"
|
|
1013
|
+
if not is_top and is_stdlib:
|
|
1014
|
+
result = "bytecode"
|
|
1018
1015
|
|
|
1019
1016
|
# Plugins need to win over PGO, as they might know it better
|
|
1020
1017
|
if result is None and not for_pgo:
|
|
@@ -1022,7 +1019,7 @@ required to compiled."""
|
|
|
1022
1019
|
|
|
1023
1020
|
# Default if neither plugins nor PGO have expressed an opinion
|
|
1024
1021
|
if result is None:
|
|
1025
|
-
if module_name in detectStdlibAutoInclusionModules():
|
|
1022
|
+
if is_stdlib and module_name in detectStdlibAutoInclusionModules():
|
|
1026
1023
|
result = "bytecode"
|
|
1027
1024
|
else:
|
|
1028
1025
|
result = "compiled"
|
|
@@ -1061,6 +1058,7 @@ def _loadUncompiledModuleFromCache(
|
|
|
1061
1058
|
|
|
1062
1059
|
def _createModule(
|
|
1063
1060
|
module_name,
|
|
1061
|
+
module_filename,
|
|
1064
1062
|
module_kind,
|
|
1065
1063
|
reason,
|
|
1066
1064
|
source_code,
|
|
@@ -1071,11 +1069,14 @@ def _createModule(
|
|
|
1071
1069
|
is_main,
|
|
1072
1070
|
main_added,
|
|
1073
1071
|
):
|
|
1072
|
+
is_stdlib = module_filename is not None and isStandardLibraryPath(module_filename)
|
|
1073
|
+
|
|
1074
1074
|
if module_kind == "extension":
|
|
1075
1075
|
result = PythonExtensionModule(
|
|
1076
1076
|
module_name=module_name,
|
|
1077
|
+
module_filename=module_filename,
|
|
1077
1078
|
reason=reason,
|
|
1078
|
-
technical=module_name in detectEarlyImports(),
|
|
1079
|
+
technical=is_stdlib and module_name in detectEarlyImports(),
|
|
1079
1080
|
source_ref=source_ref,
|
|
1080
1081
|
)
|
|
1081
1082
|
elif is_main:
|
|
@@ -1085,7 +1086,10 @@ def _createModule(
|
|
|
1085
1086
|
main_added=main_added,
|
|
1086
1087
|
module_name=module_name,
|
|
1087
1088
|
mode=decideCompilationMode(
|
|
1088
|
-
is_top=is_top,
|
|
1089
|
+
is_top=is_top,
|
|
1090
|
+
module_name=module_name,
|
|
1091
|
+
module_filename=module_filename,
|
|
1092
|
+
for_pgo=False,
|
|
1089
1093
|
),
|
|
1090
1094
|
future_spec=None,
|
|
1091
1095
|
source_ref=source_ref,
|
|
@@ -1101,13 +1105,16 @@ def _createModule(
|
|
|
1101
1105
|
)
|
|
1102
1106
|
else:
|
|
1103
1107
|
mode = decideCompilationMode(
|
|
1104
|
-
is_top=is_top,
|
|
1108
|
+
is_top=is_top,
|
|
1109
|
+
module_name=module_name,
|
|
1110
|
+
module_filename=module_filename,
|
|
1111
|
+
for_pgo=False,
|
|
1105
1112
|
)
|
|
1106
1113
|
|
|
1107
1114
|
if (
|
|
1108
1115
|
mode == "bytecode"
|
|
1109
1116
|
and not is_top
|
|
1110
|
-
and not
|
|
1117
|
+
and not shallDisableBytecodeCacheUsage()
|
|
1111
1118
|
and hasCachedImportedModuleUsageAttempts(
|
|
1112
1119
|
module_name=module_name, source_code=source_code, source_ref=source_ref
|
|
1113
1120
|
)
|
|
@@ -1146,14 +1153,13 @@ def _createModule(
|
|
|
1146
1153
|
|
|
1147
1154
|
|
|
1148
1155
|
def createModuleTree(module, source_ref, ast_tree, is_main):
|
|
1149
|
-
if
|
|
1156
|
+
if isShowMemory():
|
|
1150
1157
|
memory_watch = MemoryUsage.MemoryWatch()
|
|
1151
1158
|
|
|
1152
1159
|
module_body = buildParseTree(
|
|
1153
1160
|
provider=module,
|
|
1154
1161
|
ast_tree=ast_tree,
|
|
1155
1162
|
source_ref=source_ref,
|
|
1156
|
-
is_module=True,
|
|
1157
1163
|
is_main=is_main,
|
|
1158
1164
|
)
|
|
1159
1165
|
|
|
@@ -1164,17 +1170,19 @@ def createModuleTree(module, source_ref, ast_tree, is_main):
|
|
|
1164
1170
|
|
|
1165
1171
|
completeVariableClosures(module)
|
|
1166
1172
|
|
|
1167
|
-
if
|
|
1173
|
+
if isShowMemory():
|
|
1168
1174
|
memory_watch.finish(
|
|
1169
1175
|
"Memory usage changed loading module '%s'" % module.getFullName()
|
|
1170
1176
|
)
|
|
1171
1177
|
|
|
1172
1178
|
|
|
1173
|
-
def buildMainModuleTree(
|
|
1179
|
+
def buildMainModuleTree(source_code):
|
|
1174
1180
|
# Detect to be frozen modules if any, so we can consider to not follow
|
|
1175
1181
|
# to them.
|
|
1176
1182
|
|
|
1177
|
-
|
|
1183
|
+
filename = getMainEntryPointFilenames()[0]
|
|
1184
|
+
|
|
1185
|
+
if shallMakeModule():
|
|
1178
1186
|
module_name = Importing.getModuleNameAndKindFromFilename(filename)[0]
|
|
1179
1187
|
|
|
1180
1188
|
if module_name is None:
|
|
@@ -1184,7 +1192,7 @@ def buildMainModuleTree(filename, source_code):
|
|
|
1184
1192
|
)
|
|
1185
1193
|
else:
|
|
1186
1194
|
# TODO: Doesn't work for deeply nested packages at all.
|
|
1187
|
-
if
|
|
1195
|
+
if hasPythonFlagPackageMode():
|
|
1188
1196
|
module_name = ModuleName(os.path.basename(filename) + ".__main__")
|
|
1189
1197
|
else:
|
|
1190
1198
|
module_name = ModuleName("__main__")
|
|
@@ -1195,13 +1203,13 @@ def buildMainModuleTree(filename, source_code):
|
|
|
1195
1203
|
module_filename=filename,
|
|
1196
1204
|
source_code=source_code,
|
|
1197
1205
|
is_top=True,
|
|
1198
|
-
is_main=not
|
|
1206
|
+
is_main=not shallMakeModule(),
|
|
1199
1207
|
module_kind="py",
|
|
1200
1208
|
is_fake=source_code is not None,
|
|
1201
1209
|
hide_syntax_error=False,
|
|
1202
1210
|
)
|
|
1203
1211
|
|
|
1204
|
-
if
|
|
1212
|
+
if isStandaloneMode():
|
|
1205
1213
|
module.setStandardLibraryModules(
|
|
1206
1214
|
early_module_names=detectEarlyImports(),
|
|
1207
1215
|
stdlib_modules_names=detectStdlibAutoInclusionModules(),
|
|
@@ -1233,7 +1241,7 @@ Cannot follow import to module '%s' because of '%s'."""
|
|
|
1233
1241
|
reason=reason,
|
|
1234
1242
|
is_top=False,
|
|
1235
1243
|
mode="compiled",
|
|
1236
|
-
future_spec=FutureSpec(),
|
|
1244
|
+
future_spec=FutureSpec(use_annotations=False),
|
|
1237
1245
|
source_ref=source_ref,
|
|
1238
1246
|
)
|
|
1239
1247
|
|
|
@@ -1259,11 +1267,14 @@ def _makeModuleBodyTooComplex(
|
|
|
1259
1267
|
if module_filename not in Importing.warned_about:
|
|
1260
1268
|
Importing.warned_about.add(module_filename)
|
|
1261
1269
|
|
|
1262
|
-
|
|
1263
|
-
|
|
1270
|
+
# Known harmless case, not causing issues, lets not warn about it.
|
|
1271
|
+
# spell-checker: ignore sympy,numberfields
|
|
1272
|
+
if module_name != "sympy.polys.numberfields.resolvent_lookup":
|
|
1273
|
+
recursion_logger.info(
|
|
1274
|
+
"""\
|
|
1264
1275
|
Cannot compile module '%s' because its code is too complex, included as bytecode."""
|
|
1265
|
-
|
|
1266
|
-
|
|
1276
|
+
% module_name
|
|
1277
|
+
)
|
|
1267
1278
|
|
|
1268
1279
|
return makeUncompiledPythonModule(
|
|
1269
1280
|
module_name=module_name,
|
|
@@ -1304,8 +1315,8 @@ def buildModule(
|
|
|
1304
1315
|
logger=general,
|
|
1305
1316
|
)
|
|
1306
1317
|
|
|
1307
|
-
if
|
|
1308
|
-
if is_top and
|
|
1318
|
+
if hasPythonFlagPackageMode():
|
|
1319
|
+
if is_top and shallMakeModule():
|
|
1309
1320
|
optimization_logger.warning(
|
|
1310
1321
|
"Python flag -m (package_mode) has no effect in module mode, it's only for executables."
|
|
1311
1322
|
)
|
|
@@ -1358,12 +1369,13 @@ def buildModule(
|
|
|
1358
1369
|
)
|
|
1359
1370
|
|
|
1360
1371
|
try:
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1372
|
+
with withNoSyntaxWarning():
|
|
1373
|
+
ast_tree = parseSourceCodeToAst(
|
|
1374
|
+
source_code=source_code,
|
|
1375
|
+
module_name=module_name,
|
|
1376
|
+
filename=source_filename,
|
|
1377
|
+
line_offset=0,
|
|
1378
|
+
)
|
|
1367
1379
|
except (SyntaxError, IndentationError) as e:
|
|
1368
1380
|
# Do not hide SyntaxError if asked not to.
|
|
1369
1381
|
if not hide_syntax_error:
|
|
@@ -1384,7 +1396,7 @@ def buildModule(
|
|
|
1384
1396
|
source_diff = getSourceCodeDiff(original_source_code, source_code)
|
|
1385
1397
|
|
|
1386
1398
|
for line in source_diff:
|
|
1387
|
-
plugins_logger.warning(line)
|
|
1399
|
+
plugins_logger.warning(line, keep_format=True)
|
|
1388
1400
|
|
|
1389
1401
|
if len(contributing_plugins) == 1:
|
|
1390
1402
|
next(iter(contributing_plugins)).sysexit(
|
|
@@ -1421,6 +1433,7 @@ def buildModule(
|
|
|
1421
1433
|
|
|
1422
1434
|
module = _createModule(
|
|
1423
1435
|
module_name=module_name,
|
|
1436
|
+
module_filename=None if is_fake else module_filename,
|
|
1424
1437
|
module_kind=module_kind,
|
|
1425
1438
|
reason=reason,
|
|
1426
1439
|
source_code=source_code,
|
|
@@ -1459,3 +1472,19 @@ def buildModule(
|
|
|
1459
1472
|
)
|
|
1460
1473
|
|
|
1461
1474
|
return module
|
|
1475
|
+
|
|
1476
|
+
|
|
1477
|
+
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
1478
|
+
# integrates with CPython, but also works on its own.
|
|
1479
|
+
#
|
|
1480
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
1481
|
+
# you may not use this file except in compliance with the License.
|
|
1482
|
+
# You may obtain a copy of the License at
|
|
1483
|
+
#
|
|
1484
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
1485
|
+
#
|
|
1486
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
1487
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
1488
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1489
|
+
# See the License for the specific language governing permissions and
|
|
1490
|
+
# limitations under the License.
|