Nuitka-winsvc 2.5.6__cp311-cp311-win_amd64.whl → 2.6.5__cp311-cp311-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of Nuitka-winsvc might be problematic. Click here for more details.
- {Nuitka_winsvc-2.5.6.data → Nuitka_winsvc-2.6.5.data}/scripts/nuitka-run.cmd +1 -1
- {Nuitka_winsvc-2.5.6.data → Nuitka_winsvc-2.6.5.data}/scripts/nuitka.cmd +1 -1
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/METADATA +36 -24
- Nuitka_winsvc-2.6.5.dist-info/RECORD +992 -0
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +1 -1
- nuitka/BytecodeCaching.py +15 -4
- nuitka/Bytecodes.py +1 -1
- nuitka/CacheCleanup.py +1 -1
- nuitka/Constants.py +1 -1
- nuitka/Errors.py +1 -1
- nuitka/HardImportRegistry.py +1 -1
- nuitka/MainControl.py +93 -94
- nuitka/ModuleRegistry.py +19 -4
- nuitka/OptionParsing.py +86 -17
- nuitka/Options.py +230 -106
- nuitka/OutputDirectories.py +5 -3
- nuitka/PostProcessing.py +76 -27
- nuitka/Progress.py +1 -1
- nuitka/PythonFlavors.py +24 -3
- nuitka/PythonOperators.py +1 -1
- nuitka/PythonVersions.py +8 -4
- nuitka/Serialization.py +1 -1
- nuitka/SourceCodeReferences.py +1 -1
- nuitka/Tracing.py +2 -1
- nuitka/TreeXML.py +1 -1
- nuitka/Variables.py +1 -1
- nuitka/Version.py +2 -2
- nuitka/__init__.py +1 -1
- nuitka/__main__.py +4 -1
- nuitka/__past__.py +1 -1
- nuitka/build/Backend.scons +44 -66
- nuitka/build/CCompilerVersion.scons +2 -1
- nuitka/build/DataComposerInterface.py +2 -1
- nuitka/build/Offsets.scons +644 -0
- nuitka/build/Onefile.scons +5 -13
- nuitka/build/SconsCaching.py +9 -7
- nuitka/build/SconsCompilerSettings.py +57 -35
- nuitka/build/SconsHacks.py +3 -3
- nuitka/build/SconsInterface.py +86 -58
- nuitka/build/SconsProgress.py +12 -5
- nuitka/build/SconsSpawn.py +3 -3
- nuitka/build/SconsUtils.py +20 -1
- nuitka/build/__init__.py +1 -1
- nuitka/build/include/nuitka/allocator.h +3 -1
- nuitka/build/include/nuitka/builtins.h +1 -1
- nuitka/build/include/nuitka/calling.h +1 -1
- nuitka/build/include/nuitka/checkers.h +1 -1
- nuitka/build/include/nuitka/checksum_tools.h +1 -1
- nuitka/build/include/nuitka/compiled_asyncgen.h +4 -2
- nuitka/build/include/nuitka/compiled_cell.h +1 -1
- nuitka/build/include/nuitka/compiled_coroutine.h +3 -2
- nuitka/build/include/nuitka/compiled_frame.h +6 -13
- nuitka/build/include/nuitka/compiled_function.h +2 -3
- nuitka/build/include/nuitka/compiled_generator.h +3 -2
- nuitka/build/include/nuitka/compiled_method.h +1 -1
- nuitka/build/include/nuitka/constants.h +5 -1
- nuitka/build/include/nuitka/constants_blob.h +1 -1
- nuitka/build/include/nuitka/debug_settings.h +1 -1
- nuitka/build/include/nuitka/environment_variables.h +1 -1
- nuitka/build/include/nuitka/environment_variables_system.h +1 -1
- nuitka/build/include/nuitka/exception_groups.h +1 -1
- nuitka/build/include/nuitka/exceptions.h +2 -2
- nuitka/build/include/nuitka/filesystem_paths.h +4 -1
- nuitka/build/include/nuitka/freelists.h +2 -2
- nuitka/build/include/nuitka/helper/attributes.h +1 -1
- nuitka/build/include/nuitka/helper/boolean.h +1 -1
- nuitka/build/include/nuitka/helper/bytearrays.h +1 -1
- nuitka/build/include/nuitka/helper/bytes.h +1 -1
- nuitka/build/include/nuitka/helper/calling_generated.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_dual_eq.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_dual_ge.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_dual_gt.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_dual_le.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_dual_lt.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_dual_ne.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_eq.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_ge.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_gt.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_le.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_lt.h +1 -1
- nuitka/build/include/nuitka/helper/comparisons_ne.h +1 -1
- nuitka/build/include/nuitka/helper/complex.h +1 -1
- nuitka/build/include/nuitka/helper/dictionaries.h +1 -1
- nuitka/build/include/nuitka/helper/floats.h +1 -1
- nuitka/build/include/nuitka/helper/import_hard.h +1 -1
- nuitka/build/include/nuitka/helper/indexes.h +1 -1
- nuitka/build/include/nuitka/helper/ints.h +1 -1
- nuitka/build/include/nuitka/helper/iterators.h +1 -1
- nuitka/build/include/nuitka/helper/lists.h +1 -1
- nuitka/build/include/nuitka/helper/lists_generated.h +1 -1
- nuitka/build/include/nuitka/helper/mappings.h +1 -1
- nuitka/build/include/nuitka/helper/operations.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_add.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_bitand.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_bitor.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_divmod.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_dual_add.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_lshift.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_matmult.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_mod.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_mult.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_pow.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_rshift.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_sub.h +1 -1
- nuitka/build/include/nuitka/helper/operations_binary_truediv.h +1 -1
- nuitka/build/include/nuitka/helper/operations_builtin_types.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_add.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_mod.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_mult.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_pow.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_sub.h +1 -1
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +1 -1
- nuitka/build/include/nuitka/helper/raising.h +1 -1
- nuitka/build/include/nuitka/helper/rangeobjects.h +1 -1
- nuitka/build/include/nuitka/helper/richcomparisons.h +1 -1
- nuitka/build/include/nuitka/helper/sequences.h +1 -1
- nuitka/build/include/nuitka/helper/sets.h +1 -1
- nuitka/build/include/nuitka/helper/slices.h +1 -1
- nuitka/build/include/nuitka/helper/strings.h +1 -1
- nuitka/build/include/nuitka/helper/subscripts.h +1 -1
- nuitka/build/include/nuitka/helper/tuples.h +1 -1
- nuitka/build/include/nuitka/helpers.h +1 -43
- nuitka/build/include/nuitka/importing.h +1 -1
- nuitka/build/include/nuitka/jit_sources.h +1 -1
- nuitka/build/include/nuitka/prelude.h +10 -10
- nuitka/build/include/nuitka/printing.h +1 -1
- nuitka/build/include/nuitka/python_pgo.h +1 -1
- nuitka/build/include/nuitka/safe_string_ops.h +1 -1
- nuitka/build/include/nuitka/threading.h +1 -1
- nuitka/build/include/nuitka/tracing.h +1 -1
- nuitka/build/include/nuitka/type_aliases.h +2 -2
- nuitka/build/include/nuitka/unfreezing.h +1 -1
- nuitka/build/inline_copy/pefile/LICENSE.txt +21 -0
- nuitka/build/inline_copy/pefile/ordlookup/__init__.py +41 -0
- nuitka/build/inline_copy/pefile/ordlookup/oleaut32.py +400 -0
- nuitka/build/inline_copy/pefile/ordlookup/ws2_32.py +120 -0
- nuitka/build/inline_copy/pefile/pefile.py +8034 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +80 -75
- nuitka/build/static_src/CompiledCellType.c +2 -1
- nuitka/build/static_src/CompiledCodeHelpers.c +10 -28
- nuitka/build/static_src/CompiledCoroutineType.c +30 -40
- nuitka/build/static_src/CompiledFrameType.c +63 -5
- nuitka/build/static_src/CompiledFunctionType.c +11 -13
- nuitka/build/static_src/CompiledGeneratorType.c +56 -13
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +1 -1
- nuitka/build/static_src/CompiledMethodType.c +2 -1
- nuitka/build/static_src/GenerateHeadersMain.c +30 -0
- nuitka/build/static_src/HelpersAllocator.c +1 -1
- nuitka/build/static_src/HelpersAttributes.c +5 -2
- nuitka/build/static_src/HelpersBuiltin.c +1 -1
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +1 -1
- nuitka/build/static_src/HelpersBytes.c +1 -1
- nuitka/build/static_src/HelpersCalling.c +1 -1
- nuitka/build/static_src/HelpersCallingGenerated.c +6 -16
- nuitka/build/static_src/HelpersChecksumTools.c +1 -1
- nuitka/build/static_src/HelpersClasses.c +1 -1
- nuitka/build/static_src/HelpersComparisonDualEq.c +1 -1
- nuitka/build/static_src/HelpersComparisonDualGe.c +1 -1
- nuitka/build/static_src/HelpersComparisonDualGt.c +1 -1
- nuitka/build/static_src/HelpersComparisonDualLe.c +1 -1
- nuitka/build/static_src/HelpersComparisonDualLt.c +1 -1
- nuitka/build/static_src/HelpersComparisonDualNe.c +1 -1
- nuitka/build/static_src/HelpersComparisonEq.c +1 -1
- nuitka/build/static_src/HelpersComparisonEqUtils.c +1 -1
- nuitka/build/static_src/HelpersComparisonGe.c +1 -1
- nuitka/build/static_src/HelpersComparisonGt.c +1 -1
- nuitka/build/static_src/HelpersComparisonLe.c +1 -1
- nuitka/build/static_src/HelpersComparisonLt.c +1 -1
- nuitka/build/static_src/HelpersComparisonNe.c +1 -1
- nuitka/build/static_src/HelpersConsole.c +2 -2
- nuitka/build/static_src/HelpersConstantsBlob.c +199 -50
- nuitka/build/static_src/HelpersDeepcopy.c +3 -1
- nuitka/build/static_src/HelpersDictionaries.c +1 -1
- nuitka/build/static_src/HelpersDictionariesGenerated.c +1 -1
- nuitka/build/static_src/HelpersDumpBacktraces.c +1 -1
- nuitka/build/static_src/HelpersEnvironmentVariables.c +1 -1
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +1 -1
- nuitka/build/static_src/HelpersExceptions.c +1 -1
- nuitka/build/static_src/HelpersFiles.c +18 -10
- nuitka/build/static_src/HelpersFilesystemPaths.c +36 -16
- nuitka/build/static_src/HelpersFloats.c +1 -1
- nuitka/build/static_src/HelpersHeapStorage.c +1 -1
- nuitka/build/static_src/HelpersImport.c +1 -1
- nuitka/build/static_src/HelpersImportHard.c +1 -1
- nuitka/build/static_src/HelpersJitSources.c +1 -1
- nuitka/build/static_src/HelpersLists.c +2 -1
- nuitka/build/static_src/HelpersListsGenerated.c +1 -1
- nuitka/build/static_src/HelpersMappings.c +1 -1
- nuitka/build/static_src/HelpersMatching.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryDualAdd.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryMod.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryMult.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryPow.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +1 -1
- nuitka/build/static_src/HelpersOperationBinarySub.c +1 -1
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceMod.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceMult.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +1 -1
- nuitka/build/static_src/HelpersOperationInplacePow.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceSub.c +1 -1
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +1 -1
- nuitka/build/static_src/HelpersProfiling.c +1 -1
- nuitka/build/static_src/HelpersPythonPgo.c +5 -2
- nuitka/build/static_src/HelpersRaising.c +1 -1
- nuitka/build/static_src/HelpersSafeStrings.c +1 -1
- nuitka/build/static_src/HelpersSequences.c +1 -1
- nuitka/build/static_src/HelpersSlices.c +1 -1
- nuitka/build/static_src/HelpersStrings.c +1 -1
- nuitka/build/static_src/HelpersTuples.c +1 -1
- nuitka/build/static_src/HelpersTypes.c +5 -5
- nuitka/build/static_src/InspectPatcher.c +2 -1
- nuitka/build/static_src/MainProgram.c +30 -6
- nuitka/build/static_src/MetaPathBasedLoader.c +19 -11
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +1 -1
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +1 -1
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +17 -4
- nuitka/build/static_src/OnefileBootstrap.c +6 -4
- nuitka/build/static_src/OnefileSplashScreen.cpp +1 -1
- nuitka/code_generation/AsyncgenCodes.py +5 -6
- nuitka/code_generation/AttributeCodes.py +1 -1
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +1 -1
- nuitka/code_generation/BranchCodes.py +1 -1
- nuitka/code_generation/BuiltinCodes.py +15 -5
- nuitka/code_generation/CallCodes.py +1 -1
- nuitka/code_generation/ClassCodes.py +1 -1
- nuitka/code_generation/CodeGeneration.py +23 -17
- nuitka/code_generation/CodeHelperSelection.py +1 -1
- nuitka/code_generation/CodeHelpers.py +1 -1
- nuitka/code_generation/CodeObjectCodes.py +19 -2
- nuitka/code_generation/ComparisonCodes.py +1 -1
- nuitka/code_generation/ComparisonHelperDefinitions.py +1 -1
- nuitka/code_generation/ConditionalCodes.py +1 -1
- nuitka/code_generation/ConstantCodes.py +1 -1
- nuitka/code_generation/Contexts.py +52 -39
- nuitka/code_generation/CoroutineCodes.py +4 -5
- nuitka/code_generation/CtypesCodes.py +1 -1
- nuitka/code_generation/DictCodes.py +1 -1
- nuitka/code_generation/Emission.py +1 -1
- nuitka/code_generation/ErrorCodes.py +1 -1
- nuitka/code_generation/EvalCodes.py +1 -1
- nuitka/code_generation/ExceptionCodes.py +1 -1
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +1 -1
- nuitka/code_generation/ExpressionCodes.py +1 -1
- nuitka/code_generation/FrameCodes.py +26 -17
- nuitka/code_generation/FunctionCodes.py +9 -15
- nuitka/code_generation/GeneratorCodes.py +9 -10
- nuitka/code_generation/GlobalConstants.py +6 -4
- nuitka/code_generation/GlobalsLocalsCodes.py +1 -1
- nuitka/code_generation/IdCodes.py +1 -1
- nuitka/code_generation/ImportCodes.py +1 -1
- nuitka/code_generation/Indentation.py +1 -1
- nuitka/code_generation/IndexCodes.py +1 -1
- nuitka/code_generation/InjectCCodes.py +1 -1
- nuitka/code_generation/IntegerCodes.py +1 -1
- nuitka/code_generation/IteratorCodes.py +1 -1
- nuitka/code_generation/JitCodes.py +1 -1
- nuitka/code_generation/LabelCodes.py +1 -1
- nuitka/code_generation/LineNumberCodes.py +1 -1
- nuitka/code_generation/ListCodes.py +1 -1
- nuitka/code_generation/LoaderCodes.py +1 -1
- nuitka/code_generation/LocalsDictCodes.py +1 -1
- nuitka/code_generation/LoopCodes.py +1 -1
- nuitka/code_generation/MatchCodes.py +1 -1
- nuitka/code_generation/ModuleCodes.py +31 -4
- nuitka/code_generation/Namify.py +4 -1
- nuitka/code_generation/NetworkxCodes.py +1 -1
- nuitka/code_generation/OperationCodes.py +1 -1
- nuitka/code_generation/PackageResourceCodes.py +4 -10
- nuitka/code_generation/PrintCodes.py +1 -1
- nuitka/code_generation/PythonAPICodes.py +1 -1
- nuitka/code_generation/RaisingCodes.py +1 -1
- nuitka/code_generation/Reports.py +1 -1
- nuitka/code_generation/ReturnCodes.py +1 -1
- nuitka/code_generation/SetCodes.py +1 -1
- nuitka/code_generation/SliceCodes.py +1 -1
- nuitka/code_generation/StringCodes.py +1 -1
- nuitka/code_generation/SubscriptCodes.py +1 -1
- nuitka/code_generation/TensorflowCodes.py +1 -1
- nuitka/code_generation/TryCodes.py +1 -1
- nuitka/code_generation/TupleCodes.py +1 -1
- nuitka/code_generation/TypeAliasCodes.py +4 -3
- nuitka/code_generation/VariableCodes.py +1 -1
- nuitka/code_generation/VariableDeclarations.py +1 -1
- nuitka/code_generation/YieldCodes.py +1 -1
- nuitka/code_generation/__init__.py +1 -1
- nuitka/code_generation/c_types/CTypeBases.py +1 -1
- nuitka/code_generation/c_types/CTypeBooleans.py +1 -1
- nuitka/code_generation/c_types/CTypeCFloats.py +1 -1
- nuitka/code_generation/c_types/CTypeCLongs.py +1 -1
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +1 -1
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +1 -1
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +1 -1
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +1 -1
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +1 -1
- nuitka/code_generation/c_types/CTypeVoids.py +1 -1
- nuitka/code_generation/c_types/__init__.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesConstants.py +2 -2
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesFrames.py +21 -25
- nuitka/code_generation/templates/CodeTemplatesFunction.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +3 -3
- nuitka/code_generation/templates/CodeTemplatesIterators.py +1 -1
- nuitka/code_generation/templates/CodeTemplatesLoader.py +26 -3
- nuitka/code_generation/templates/CodeTemplatesModules.py +21 -8
- nuitka/code_generation/templates/CodeTemplatesVariables.py +1 -1
- nuitka/code_generation/templates/TemplateDebugWrapper.py +1 -1
- nuitka/code_generation/templates/__init__.py +1 -1
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +1 -1
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +1 -1
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +1 -1
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +21 -1
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +1 -1
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationBinaryDual.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonDual.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +1 -1
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +1 -1
- nuitka/containers/Namedtuples.py +1 -1
- nuitka/containers/OrderedSetsFallback.py +1 -1
- nuitka/containers/__init__.py +1 -1
- nuitka/distutils/Build.py +1 -1
- nuitka/distutils/DistutilCommands.py +2 -2
- nuitka/distutils/__init__.py +1 -1
- nuitka/finalizations/Finalization.py +1 -1
- nuitka/finalizations/FinalizeMarkups.py +1 -1
- nuitka/finalizations/__init__.py +1 -1
- nuitka/freezer/DependsExe.py +2 -1
- nuitka/freezer/DllDependenciesCommon.py +1 -1
- nuitka/freezer/DllDependenciesMacOS.py +8 -3
- nuitka/freezer/DllDependenciesPosix.py +23 -4
- nuitka/freezer/DllDependenciesWin32.py +112 -25
- nuitka/freezer/ImportDetection.py +1 -1
- nuitka/freezer/IncludedDataFiles.py +2 -2
- nuitka/freezer/IncludedEntryPoints.py +9 -1
- nuitka/freezer/Onefile.py +13 -15
- nuitka/freezer/Standalone.py +16 -4
- nuitka/freezer/__init__.py +1 -1
- nuitka/importing/IgnoreListing.py +1 -1
- nuitka/importing/ImportCache.py +1 -1
- nuitka/importing/ImportResolving.py +1 -1
- nuitka/importing/Importing.py +6 -4
- nuitka/importing/PreloadedPackages.py +1 -1
- nuitka/importing/Recursion.py +37 -12
- nuitka/importing/StandardLibrary.py +1 -1
- nuitka/importing/__init__.py +1 -1
- nuitka/nodes/AsyncgenNodes.py +1 -1
- nuitka/nodes/AttributeLookupNodes.py +1 -1
- nuitka/nodes/AttributeNodes.py +1 -1
- nuitka/nodes/AttributeNodesGenerated.py +1 -1
- nuitka/nodes/BuiltinAllNodes.py +1 -1
- nuitka/nodes/BuiltinAnyNodes.py +1 -1
- nuitka/nodes/BuiltinComplexNodes.py +1 -1
- nuitka/nodes/BuiltinDecodingNodes.py +1 -1
- nuitka/nodes/BuiltinDecoratorNodes.py +1 -1
- nuitka/nodes/BuiltinDictNodes.py +1 -1
- nuitka/nodes/BuiltinFormatNodes.py +1 -1
- nuitka/nodes/BuiltinHashNodes.py +1 -1
- nuitka/nodes/BuiltinInputNodes.py +1 -1
- nuitka/nodes/BuiltinIntegerNodes.py +1 -1
- nuitka/nodes/BuiltinIteratorNodes.py +1 -1
- nuitka/nodes/BuiltinLenNodes.py +1 -1
- nuitka/nodes/BuiltinNextNodes.py +1 -1
- nuitka/nodes/BuiltinOpenNodes.py +1 -1
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +1 -1
- nuitka/nodes/BuiltinRangeNodes.py +1 -1
- nuitka/nodes/BuiltinRefNodes.py +1 -1
- nuitka/nodes/BuiltinSumNodes.py +1 -1
- nuitka/nodes/BuiltinTypeNodes.py +1 -1
- nuitka/nodes/BuiltinVarsNodes.py +1 -1
- nuitka/nodes/BytesNodes.py +1 -1
- nuitka/nodes/CallNodes.py +1 -1
- nuitka/nodes/Checkers.py +1 -1
- nuitka/nodes/ChildrenHavingMixins.py +240 -16
- nuitka/nodes/ClassNodes.py +1 -1
- nuitka/nodes/CodeObjectSpecs.py +4 -4
- nuitka/nodes/ComparisonNodes.py +1 -1
- nuitka/nodes/ConditionalNodes.py +1 -1
- nuitka/nodes/ConstantRefNodes.py +1 -1
- nuitka/nodes/ContainerMakingNodes.py +1 -1
- nuitka/nodes/ContainerOperationNodes.py +1 -1
- nuitka/nodes/CoroutineNodes.py +1 -1
- nuitka/nodes/CtypesNodes.py +1 -1
- nuitka/nodes/DictionaryNodes.py +1 -1
- nuitka/nodes/ExceptionNodes.py +1 -1
- nuitka/nodes/ExecEvalNodes.py +1 -1
- nuitka/nodes/ExpressionBases.py +1 -1
- nuitka/nodes/ExpressionBasesGenerated.py +1 -1
- nuitka/nodes/ExpressionShapeMixins.py +1 -1
- nuitka/nodes/FrameNodes.py +19 -7
- nuitka/nodes/FunctionAttributeNodes.py +1 -1
- nuitka/nodes/FunctionNodes.py +8 -1
- nuitka/nodes/FutureSpecs.py +34 -2
- nuitka/nodes/GeneratorNodes.py +1 -1
- nuitka/nodes/GlobalsLocalsNodes.py +1 -1
- nuitka/nodes/HardImportNodesGenerated.py +140 -56
- nuitka/nodes/ImportHardNodes.py +1 -1
- nuitka/nodes/ImportNodes.py +1 -1
- nuitka/nodes/IndicatorMixins.py +1 -1
- nuitka/nodes/InjectCNodes.py +1 -1
- nuitka/nodes/IterationHandles.py +1 -1
- nuitka/nodes/KeyValuePairNodes.py +1 -1
- nuitka/nodes/ListOperationNodes.py +1 -1
- nuitka/nodes/LocalsDictNodes.py +1 -1
- nuitka/nodes/LocalsScopes.py +1 -1
- nuitka/nodes/LoopNodes.py +1 -1
- nuitka/nodes/MatchNodes.py +1 -1
- nuitka/nodes/ModuleAttributeNodes.py +1 -1
- nuitka/nodes/ModuleNodes.py +23 -9
- nuitka/nodes/NetworkxNodes.py +1 -1
- nuitka/nodes/NodeBases.py +1 -1
- nuitka/nodes/NodeMakingHelpers.py +1 -1
- nuitka/nodes/NodeMetaClasses.py +1 -1
- nuitka/nodes/OperatorNodes.py +1 -1
- nuitka/nodes/OperatorNodesUnary.py +1 -1
- nuitka/nodes/OsSysNodes.py +1 -1
- nuitka/nodes/OutlineNodes.py +1 -1
- nuitka/nodes/PackageMetadataNodes.py +4 -2
- nuitka/nodes/PackageResourceNodes.py +42 -7
- nuitka/nodes/PrintNodes.py +1 -1
- nuitka/nodes/ReturnNodes.py +1 -1
- nuitka/nodes/SideEffectNodes.py +1 -1
- nuitka/nodes/SliceNodes.py +1 -1
- nuitka/nodes/StatementBasesGenerated.py +1 -1
- nuitka/nodes/StatementNodes.py +1 -1
- nuitka/nodes/StrNodes.py +1 -1
- nuitka/nodes/StringConcatenationNodes.py +1 -1
- nuitka/nodes/SubscriptNodes.py +1 -1
- nuitka/nodes/TensorflowNodes.py +1 -1
- nuitka/nodes/TryNodes.py +1 -1
- nuitka/nodes/TypeMatchNodes.py +1 -1
- nuitka/nodes/TypeNodes.py +4 -4
- nuitka/nodes/VariableAssignNodes.py +1 -1
- nuitka/nodes/VariableDelNodes.py +1 -1
- nuitka/nodes/VariableNameNodes.py +1 -1
- nuitka/nodes/VariableRefNodes.py +1 -1
- nuitka/nodes/VariableReleaseNodes.py +1 -1
- nuitka/nodes/YieldNodes.py +1 -1
- nuitka/nodes/__init__.py +1 -1
- nuitka/nodes/shapes/BuiltinTypeShapes.py +1 -1
- nuitka/nodes/shapes/ControlFlowDescriptions.py +1 -1
- nuitka/nodes/shapes/IteratorShapes.py +1 -1
- nuitka/nodes/shapes/ShapeMixins.py +1 -1
- nuitka/nodes/shapes/StandardShapes.py +1 -1
- nuitka/nodes/shapes/__init__.py +1 -1
- nuitka/optimizations/BytecodeDemotion.py +1 -1
- nuitka/optimizations/FunctionInlining.py +1 -1
- nuitka/optimizations/Graphs.py +1 -1
- nuitka/optimizations/Optimization.py +1 -1
- nuitka/optimizations/OptimizeBuiltinCalls.py +1 -1
- nuitka/optimizations/Tags.py +1 -1
- nuitka/optimizations/TraceCollections.py +1 -1
- nuitka/optimizations/ValueTraces.py +1 -1
- nuitka/optimizations/__init__.py +1 -1
- nuitka/pgo/PGO.py +1 -1
- nuitka/pgo/__init__.py +1 -1
- nuitka/plugins/PluginBase.py +91 -16
- nuitka/plugins/Plugins.py +58 -15
- nuitka/plugins/YamlPluginBase.py +1 -1
- nuitka/plugins/__init__.py +1 -1
- nuitka/plugins/standard/AntiBloatPlugin.py +138 -66
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +2 -1
- nuitka/plugins/standard/DataFilesPlugin.py +2 -2
- nuitka/plugins/standard/DelvewheelPlugin.py +2 -1
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +1 -1
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +1 -1
- nuitka/plugins/standard/DillPlugin.py +2 -2
- nuitka/plugins/standard/DllFilesPlugin.py +2 -12
- nuitka/plugins/standard/EnumPlugin.py +2 -2
- nuitka/plugins/standard/EventletPlugin.py +2 -1
- nuitka/plugins/standard/GeventPlugin.py +2 -1
- nuitka/plugins/standard/GiPlugin.py +2 -1
- nuitka/plugins/standard/GlfwPlugin.py +2 -1
- nuitka/plugins/standard/ImplicitImports.py +7 -6
- nuitka/plugins/standard/KivyPlugin.py +2 -1
- nuitka/plugins/standard/MatplotlibPlugin.py +2 -1
- nuitka/plugins/standard/MultiprocessingPlugin.py +2 -1
- nuitka/plugins/standard/NumpyPlugin.py +2 -1
- nuitka/plugins/standard/OptionsNannyPlugin.py +2 -2
- nuitka/plugins/standard/PbrPlugin.py +2 -2
- nuitka/plugins/standard/PkgResourcesPlugin.py +2 -1
- nuitka/plugins/standard/PlaywrightPlugin.py +10 -15
- nuitka/plugins/standard/PmwPlugin.py +2 -1
- nuitka/plugins/standard/PySidePyQtPlugin.py +25 -15
- nuitka/plugins/standard/PywebViewPlugin.py +2 -1
- nuitka/plugins/standard/SpacyPlugin.py +2 -1
- nuitka/plugins/standard/TensorflowPlugin.py +2 -1
- nuitka/plugins/standard/TkinterPlugin.py +15 -2
- nuitka/plugins/standard/TorchPlugin.py +2 -1
- nuitka/plugins/standard/TransformersPlugin.py +2 -2
- nuitka/plugins/standard/TrioPlugin.py +2 -1
- nuitka/plugins/standard/UpxPlugin.py +2 -1
- nuitka/plugins/standard/__init__.py +1 -1
- nuitka/plugins/standard/standard.nuitka-package.config.yml +257 -89
- nuitka/reports/CompilationReportReader.py +5 -1
- nuitka/reports/LicenseReport.rst.j2 +1 -1
- nuitka/reports/Reports.py +30 -3
- nuitka/reports/__init__.py +1 -1
- nuitka/specs/BuiltinBytesOperationSpecs.py +1 -1
- nuitka/specs/BuiltinDictOperationSpecs.py +1 -1
- nuitka/specs/BuiltinListOperationSpecs.py +1 -1
- nuitka/specs/BuiltinParameterSpecs.py +1 -1
- nuitka/specs/BuiltinStrOperationSpecs.py +1 -1
- nuitka/specs/BuiltinTypeOperationSpecs.py +1 -1
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +1 -1
- nuitka/specs/HardImportSpecs.py +10 -2
- nuitka/specs/ParameterSpecs.py +17 -2
- nuitka/specs/__init__.py +1 -1
- nuitka/tools/Basics.py +1 -1
- nuitka/tools/__init__.py +1 -1
- nuitka/tools/commercial/__init__.py +1 -1
- nuitka/tools/data_composer/DataComposer.py +125 -1
- nuitka/tools/data_composer/__init__.py +1 -1
- nuitka/tools/data_composer/__main__.py +1 -1
- nuitka/tools/environments/CreateEnvironment.py +1 -1
- nuitka/tools/environments/Virtualenv.py +1 -1
- nuitka/tools/environments/__init__.py +1 -1
- nuitka/tools/general/__init__.py +1 -1
- nuitka/tools/general/dll_report/__init__.py +1 -1
- nuitka/tools/general/dll_report/__main__.py +1 -1
- nuitka/tools/general/find_module/FindModuleCode.py +6 -3
- nuitka/tools/general/find_module/__init__.py +1 -1
- nuitka/tools/general/generate_header/GenerateHeader.py +73 -0
- nuitka/tools/general/generate_header/__init__.py +19 -0
- nuitka/tools/onefile_compressor/OnefileCompressor.py +1 -1
- nuitka/tools/onefile_compressor/__init__.py +1 -1
- nuitka/tools/onefile_compressor/__main__.py +1 -1
- nuitka/tools/podman/Podman.py +1 -1
- nuitka/tools/podman/__init__.py +1 -1
- nuitka/tools/podman/__main__.py +4 -2
- nuitka/tools/profiler/__init__.py +1 -1
- nuitka/tools/profiler/__main__.py +1 -1
- nuitka/tools/scanning/DisplayPackageDLLs.py +42 -20
- nuitka/tools/scanning/DisplayPackageData.py +1 -1
- nuitka/tools/scanning/__init__.py +1 -1
- nuitka/tools/specialize/CTypeDescriptions.py +1 -1
- nuitka/tools/specialize/Common.py +1 -1
- nuitka/tools/specialize/SpecializeC.py +1 -1
- nuitka/tools/specialize/SpecializePython.py +7 -3
- nuitka/tools/specialize/__init__.py +1 -1
- nuitka/tools/testing/Common.py +140 -19
- nuitka/tools/testing/Constructs.py +1 -1
- nuitka/tools/testing/OutputComparison.py +5 -4
- nuitka/tools/testing/Pythons.py +1 -1
- nuitka/tools/testing/RuntimeTracing.py +1 -1
- nuitka/tools/testing/SearchModes.py +1 -1
- nuitka/tools/testing/Valgrind.py +1 -1
- nuitka/tools/testing/__init__.py +1 -1
- nuitka/tools/testing/check_reference_counts/__init__.py +1 -1
- nuitka/tools/testing/check_reference_counts/__main__.py +6 -2
- nuitka/tools/testing/compare_with_cpython/__init__.py +1 -1
- nuitka/tools/testing/compare_with_cpython/__main__.py +51 -14
- nuitka/tools/testing/find_sxs_modules/__init__.py +1 -1
- nuitka/tools/testing/find_sxs_modules/__main__.py +1 -1
- nuitka/tools/testing/measure_construct_performance/__init__.py +1 -1
- nuitka/tools/testing/measure_construct_performance/__main__.py +1 -1
- nuitka/tools/testing/run_nuitka_tests/__init__.py +1 -1
- nuitka/tools/testing/run_nuitka_tests/__main__.py +1 -1
- nuitka/tools/watch/AutoStage.py +1 -1
- nuitka/tools/watch/Common.py +55 -0
- nuitka/tools/watch/Conda.py +125 -0
- nuitka/tools/watch/GitHub.py +1 -1
- nuitka/tools/watch/Pacman.py +73 -0
- nuitka/tools/watch/Pipenv.py +143 -0
- nuitka/tools/watch/__init__.py +1 -1
- nuitka/tools/watch/__main__.py +124 -266
- nuitka/tree/Building.py +5 -7
- nuitka/tree/ComplexCallHelperFunctions.py +1 -1
- nuitka/tree/Extractions.py +1 -1
- nuitka/tree/FutureSpecState.py +71 -0
- nuitka/tree/InternalModule.py +1 -1
- nuitka/tree/Operations.py +1 -1
- nuitka/tree/ReformulationAssertStatements.py +1 -1
- nuitka/tree/ReformulationAssignmentStatements.py +3 -3
- nuitka/tree/ReformulationBooleanExpressions.py +1 -1
- nuitka/tree/ReformulationCallExpressions.py +1 -1
- nuitka/tree/ReformulationClasses.py +1 -1
- nuitka/tree/ReformulationClasses3.py +1 -1
- nuitka/tree/ReformulationComparisonExpressions.py +1 -1
- nuitka/tree/ReformulationContractionExpressions.py +3 -1
- nuitka/tree/ReformulationDictionaryCreation.py +3 -3
- nuitka/tree/ReformulationExecStatements.py +1 -1
- nuitka/tree/ReformulationForLoopStatements.py +1 -1
- nuitka/tree/ReformulationFunctionStatements.py +2 -2
- nuitka/tree/ReformulationImportStatements.py +5 -52
- nuitka/tree/ReformulationLambdaExpressions.py +2 -1
- nuitka/tree/ReformulationMatchStatements.py +1 -1
- nuitka/tree/ReformulationMultidist.py +2 -2
- nuitka/tree/ReformulationNamespacePackages.py +28 -6
- nuitka/tree/ReformulationPrintStatements.py +1 -1
- nuitka/tree/ReformulationSequenceCreation.py +1 -1
- nuitka/tree/ReformulationSubscriptExpressions.py +1 -1
- nuitka/tree/ReformulationTryExceptStatements.py +1 -1
- nuitka/tree/ReformulationTryFinallyStatements.py +1 -1
- nuitka/tree/ReformulationWhileLoopStatements.py +1 -1
- nuitka/tree/ReformulationWithStatements.py +1 -1
- nuitka/tree/ReformulationYieldExpressions.py +1 -1
- nuitka/tree/SourceHandling.py +57 -18
- nuitka/tree/SyntaxErrors.py +1 -1
- nuitka/tree/TreeHelpers.py +24 -10
- nuitka/tree/VariableClosure.py +1 -1
- nuitka/tree/__init__.py +1 -1
- nuitka/utils/AppDirs.py +5 -2
- nuitka/utils/CStrings.py +1 -1
- nuitka/utils/CommandLineOptions.py +2 -2
- nuitka/utils/Distributions.py +197 -15
- nuitka/utils/Download.py +14 -6
- nuitka/utils/Execution.py +43 -14
- nuitka/utils/FileOperations.py +43 -10
- nuitka/utils/Hashing.py +1 -1
- nuitka/utils/Images.py +8 -2
- nuitka/utils/Importing.py +1 -1
- nuitka/utils/InlineCopies.py +1 -1
- nuitka/utils/InstalledPythons.py +1 -1
- nuitka/utils/InstanceCounters.py +1 -1
- nuitka/utils/Jinja2.py +1 -1
- nuitka/utils/Json.py +2 -2
- nuitka/utils/MacOSApp.py +4 -3
- nuitka/utils/MemoryUsage.py +1 -1
- nuitka/utils/ModuleNames.py +1 -1
- nuitka/utils/PackageResources.py +1 -1
- nuitka/utils/ReExecute.py +1 -1
- nuitka/utils/Rest.py +1 -1
- nuitka/utils/SharedLibraries.py +52 -7
- nuitka/utils/Shebang.py +1 -1
- nuitka/utils/Signing.py +2 -4
- nuitka/utils/SlotMetaClasses.py +1 -1
- nuitka/utils/StaticLibraries.py +29 -1
- nuitka/utils/ThreadedExecutor.py +1 -1
- nuitka/utils/Timing.py +1 -1
- nuitka/utils/Utils.py +1 -1
- nuitka/utils/WindowsFileUsage.py +1 -1
- nuitka/utils/WindowsResources.py +3 -1
- nuitka/utils/Yaml.py +1 -1
- nuitka/utils/__init__.py +1 -1
- Nuitka_winsvc-2.5.6.dist-info/RECORD +0 -978
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.5.dist-info}/top_level.txt +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
# We are not avoiding these in generated code at all
|
|
@@ -13025,7 +13025,7 @@ class ChildrenHavingPackageResourceEncodingOptionalErrorsOptionalMixin(object):
|
|
|
13025
13025
|
# ExpressionImportlibResourcesBackportReadText
|
|
13026
13026
|
# ExpressionImportlibResourcesBackportReadTextCall
|
|
13027
13027
|
# ExpressionImportlibResourcesReadText
|
|
13028
|
-
#
|
|
13028
|
+
# ExpressionImportlibResourcesReadTextBefore313Call
|
|
13029
13029
|
|
|
13030
13030
|
def __init__(
|
|
13031
13031
|
self,
|
|
@@ -13216,11 +13216,235 @@ ChildrenExpressionImportlibResourcesBackportReadTextCallMixin = (
|
|
|
13216
13216
|
ChildrenExpressionImportlibResourcesReadTextMixin = (
|
|
13217
13217
|
ChildrenHavingPackageResourceEncodingOptionalErrorsOptionalMixin
|
|
13218
13218
|
)
|
|
13219
|
-
|
|
13219
|
+
ChildrenExpressionImportlibResourcesReadTextBefore313CallMixin = (
|
|
13220
13220
|
ChildrenHavingPackageResourceEncodingOptionalErrorsOptionalMixin
|
|
13221
13221
|
)
|
|
13222
13222
|
|
|
13223
13223
|
|
|
13224
|
+
class ChildrenHavingPackageOptionalResourcesTupleEncodingOptionalErrorsOptionalMixin(
|
|
13225
|
+
object
|
|
13226
|
+
):
|
|
13227
|
+
# Mixins are not allowed to specify slots, pylint: disable=assigning-non-slot
|
|
13228
|
+
__slots__ = ()
|
|
13229
|
+
|
|
13230
|
+
# This is generated for use in
|
|
13231
|
+
# ExpressionImportlibResourcesReadText
|
|
13232
|
+
# ExpressionImportlibResourcesReadTextSince313Call
|
|
13233
|
+
|
|
13234
|
+
def __init__(
|
|
13235
|
+
self,
|
|
13236
|
+
package,
|
|
13237
|
+
resources,
|
|
13238
|
+
encoding,
|
|
13239
|
+
errors,
|
|
13240
|
+
):
|
|
13241
|
+
if package is not None:
|
|
13242
|
+
package.parent = self
|
|
13243
|
+
|
|
13244
|
+
self.subnode_package = package
|
|
13245
|
+
|
|
13246
|
+
assert type(resources) is tuple
|
|
13247
|
+
|
|
13248
|
+
for val in resources:
|
|
13249
|
+
val.parent = self
|
|
13250
|
+
|
|
13251
|
+
self.subnode_resources = resources
|
|
13252
|
+
|
|
13253
|
+
if encoding is not None:
|
|
13254
|
+
encoding.parent = self
|
|
13255
|
+
|
|
13256
|
+
self.subnode_encoding = encoding
|
|
13257
|
+
|
|
13258
|
+
if errors is not None:
|
|
13259
|
+
errors.parent = self
|
|
13260
|
+
|
|
13261
|
+
self.subnode_errors = errors
|
|
13262
|
+
|
|
13263
|
+
def getVisitableNodes(self):
|
|
13264
|
+
"""The visitable nodes, with tuple values flattened."""
|
|
13265
|
+
|
|
13266
|
+
result = []
|
|
13267
|
+
value = self.subnode_package
|
|
13268
|
+
if value is None:
|
|
13269
|
+
pass
|
|
13270
|
+
else:
|
|
13271
|
+
result.append(value)
|
|
13272
|
+
result.extend(self.subnode_resources)
|
|
13273
|
+
value = self.subnode_encoding
|
|
13274
|
+
if value is None:
|
|
13275
|
+
pass
|
|
13276
|
+
else:
|
|
13277
|
+
result.append(value)
|
|
13278
|
+
value = self.subnode_errors
|
|
13279
|
+
if value is None:
|
|
13280
|
+
pass
|
|
13281
|
+
else:
|
|
13282
|
+
result.append(value)
|
|
13283
|
+
return tuple(result)
|
|
13284
|
+
|
|
13285
|
+
def getVisitableNodesNamed(self):
|
|
13286
|
+
"""Named children dictionary.
|
|
13287
|
+
|
|
13288
|
+
For use in cloning nodes, debugging and XML output.
|
|
13289
|
+
"""
|
|
13290
|
+
|
|
13291
|
+
return (
|
|
13292
|
+
("package", self.subnode_package),
|
|
13293
|
+
("resources", self.subnode_resources),
|
|
13294
|
+
("encoding", self.subnode_encoding),
|
|
13295
|
+
("errors", self.subnode_errors),
|
|
13296
|
+
)
|
|
13297
|
+
|
|
13298
|
+
def replaceChild(self, old_node, new_node):
|
|
13299
|
+
value = self.subnode_package
|
|
13300
|
+
if old_node is value:
|
|
13301
|
+
if new_node is not None:
|
|
13302
|
+
new_node.parent = self
|
|
13303
|
+
|
|
13304
|
+
self.subnode_package = new_node
|
|
13305
|
+
|
|
13306
|
+
return
|
|
13307
|
+
|
|
13308
|
+
value = self.subnode_resources
|
|
13309
|
+
if old_node in value:
|
|
13310
|
+
if new_node is not None:
|
|
13311
|
+
new_node.parent = self
|
|
13312
|
+
|
|
13313
|
+
self.subnode_resources = tuple(
|
|
13314
|
+
(val if val is not old_node else new_node) for val in value
|
|
13315
|
+
)
|
|
13316
|
+
else:
|
|
13317
|
+
self.subnode_resources = tuple(
|
|
13318
|
+
val for val in value if val is not old_node
|
|
13319
|
+
)
|
|
13320
|
+
|
|
13321
|
+
return
|
|
13322
|
+
|
|
13323
|
+
value = self.subnode_encoding
|
|
13324
|
+
if old_node is value:
|
|
13325
|
+
if new_node is not None:
|
|
13326
|
+
new_node.parent = self
|
|
13327
|
+
|
|
13328
|
+
self.subnode_encoding = new_node
|
|
13329
|
+
|
|
13330
|
+
return
|
|
13331
|
+
|
|
13332
|
+
value = self.subnode_errors
|
|
13333
|
+
if old_node is value:
|
|
13334
|
+
if new_node is not None:
|
|
13335
|
+
new_node.parent = self
|
|
13336
|
+
|
|
13337
|
+
self.subnode_errors = new_node
|
|
13338
|
+
|
|
13339
|
+
return
|
|
13340
|
+
|
|
13341
|
+
raise AssertionError("Didn't find child", old_node, "in", self)
|
|
13342
|
+
|
|
13343
|
+
def getCloneArgs(self):
|
|
13344
|
+
"""Get clones of all children to pass for a new node.
|
|
13345
|
+
|
|
13346
|
+
Needs to make clones of child nodes too.
|
|
13347
|
+
"""
|
|
13348
|
+
|
|
13349
|
+
values = {
|
|
13350
|
+
"package": (
|
|
13351
|
+
self.subnode_package.makeClone()
|
|
13352
|
+
if self.subnode_package is not None
|
|
13353
|
+
else None
|
|
13354
|
+
),
|
|
13355
|
+
"resources": tuple(v.makeClone() for v in self.subnode_resources),
|
|
13356
|
+
"encoding": (
|
|
13357
|
+
self.subnode_encoding.makeClone()
|
|
13358
|
+
if self.subnode_encoding is not None
|
|
13359
|
+
else None
|
|
13360
|
+
),
|
|
13361
|
+
"errors": (
|
|
13362
|
+
self.subnode_errors.makeClone()
|
|
13363
|
+
if self.subnode_errors is not None
|
|
13364
|
+
else None
|
|
13365
|
+
),
|
|
13366
|
+
}
|
|
13367
|
+
|
|
13368
|
+
values.update(self.getDetails())
|
|
13369
|
+
|
|
13370
|
+
return values
|
|
13371
|
+
|
|
13372
|
+
def finalize(self):
|
|
13373
|
+
del self.parent
|
|
13374
|
+
|
|
13375
|
+
if self.subnode_package is not None:
|
|
13376
|
+
self.subnode_package.finalize()
|
|
13377
|
+
del self.subnode_package
|
|
13378
|
+
for c in self.subnode_resources:
|
|
13379
|
+
c.finalize()
|
|
13380
|
+
del self.subnode_resources
|
|
13381
|
+
if self.subnode_encoding is not None:
|
|
13382
|
+
self.subnode_encoding.finalize()
|
|
13383
|
+
del self.subnode_encoding
|
|
13384
|
+
if self.subnode_errors is not None:
|
|
13385
|
+
self.subnode_errors.finalize()
|
|
13386
|
+
del self.subnode_errors
|
|
13387
|
+
|
|
13388
|
+
def computeExpressionRaw(self, trace_collection):
|
|
13389
|
+
"""Compute an expression.
|
|
13390
|
+
|
|
13391
|
+
Default behavior is to just visit the child expressions first, and
|
|
13392
|
+
then the node "computeExpression". For a few cases this needs to
|
|
13393
|
+
be overloaded, e.g. conditional expressions.
|
|
13394
|
+
"""
|
|
13395
|
+
|
|
13396
|
+
# First apply the sub-expressions, as they are evaluated before
|
|
13397
|
+
# the actual operation.
|
|
13398
|
+
for count, sub_expression in enumerate(self.getVisitableNodes()):
|
|
13399
|
+
expression = trace_collection.onExpression(sub_expression)
|
|
13400
|
+
|
|
13401
|
+
if expression.willRaiseAnyException():
|
|
13402
|
+
sub_expressions = self.getVisitableNodes()
|
|
13403
|
+
|
|
13404
|
+
wrapped_expression = wrapExpressionWithSideEffects(
|
|
13405
|
+
side_effects=sub_expressions[:count],
|
|
13406
|
+
old_node=sub_expression,
|
|
13407
|
+
new_node=expression,
|
|
13408
|
+
)
|
|
13409
|
+
|
|
13410
|
+
return (
|
|
13411
|
+
wrapped_expression,
|
|
13412
|
+
"new_raise",
|
|
13413
|
+
lambda: "For '%s' the child expression '%s' will raise."
|
|
13414
|
+
% (self.getChildNameNice(), expression.getChildNameNice()),
|
|
13415
|
+
)
|
|
13416
|
+
|
|
13417
|
+
# Then ask ourselves to work on it.
|
|
13418
|
+
return self.computeExpression(trace_collection)
|
|
13419
|
+
|
|
13420
|
+
def collectVariableAccesses(self, emit_read, emit_write):
|
|
13421
|
+
"""Collect variable reads and writes of child nodes."""
|
|
13422
|
+
|
|
13423
|
+
subnode_package = self.subnode_package
|
|
13424
|
+
|
|
13425
|
+
if subnode_package is not None:
|
|
13426
|
+
self.subnode_package.collectVariableAccesses(emit_read, emit_write)
|
|
13427
|
+
for element in self.subnode_resources:
|
|
13428
|
+
element.collectVariableAccesses(emit_read, emit_write)
|
|
13429
|
+
subnode_encoding = self.subnode_encoding
|
|
13430
|
+
|
|
13431
|
+
if subnode_encoding is not None:
|
|
13432
|
+
self.subnode_encoding.collectVariableAccesses(emit_read, emit_write)
|
|
13433
|
+
subnode_errors = self.subnode_errors
|
|
13434
|
+
|
|
13435
|
+
if subnode_errors is not None:
|
|
13436
|
+
self.subnode_errors.collectVariableAccesses(emit_read, emit_write)
|
|
13437
|
+
|
|
13438
|
+
|
|
13439
|
+
# Assign the names that are easier to import with a stable name.
|
|
13440
|
+
ChildrenExpressionImportlibResourcesReadTextMixin = (
|
|
13441
|
+
ChildrenHavingPackageOptionalResourcesTupleEncodingOptionalErrorsOptionalMixin
|
|
13442
|
+
)
|
|
13443
|
+
ChildrenExpressionImportlibResourcesReadTextSince313CallMixin = (
|
|
13444
|
+
ChildrenHavingPackageOptionalResourcesTupleEncodingOptionalErrorsOptionalMixin
|
|
13445
|
+
)
|
|
13446
|
+
|
|
13447
|
+
|
|
13224
13448
|
class ChildrenHavingPackageOrRequirementResourceNameMixin(object):
|
|
13225
13449
|
# Mixins are not allowed to specify slots, pylint: disable=assigning-non-slot
|
|
13226
13450
|
__slots__ = ()
|
|
@@ -20320,7 +20544,7 @@ class ChildHavingTypeParamsMixin(object):
|
|
|
20320
20544
|
ChildrenExpressionTypeMakeGenericMixin = ChildHavingTypeParamsMixin
|
|
20321
20545
|
|
|
20322
20546
|
|
|
20323
|
-
class
|
|
20547
|
+
class ChildrenHavingTypeParamsTupleValueMixin(object):
|
|
20324
20548
|
# Mixins are not allowed to specify slots, pylint: disable=assigning-non-slot
|
|
20325
20549
|
__slots__ = ()
|
|
20326
20550
|
|
|
@@ -20330,7 +20554,7 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20330
20554
|
def __init__(
|
|
20331
20555
|
self,
|
|
20332
20556
|
type_params,
|
|
20333
|
-
|
|
20557
|
+
value,
|
|
20334
20558
|
):
|
|
20335
20559
|
assert type(type_params) is tuple
|
|
20336
20560
|
|
|
@@ -20339,16 +20563,16 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20339
20563
|
|
|
20340
20564
|
self.subnode_type_params = type_params
|
|
20341
20565
|
|
|
20342
|
-
|
|
20566
|
+
value.parent = self
|
|
20343
20567
|
|
|
20344
|
-
self.
|
|
20568
|
+
self.subnode_value = value
|
|
20345
20569
|
|
|
20346
20570
|
def getVisitableNodes(self):
|
|
20347
20571
|
"""The visitable nodes, with tuple values flattened."""
|
|
20348
20572
|
|
|
20349
20573
|
result = []
|
|
20350
20574
|
result.extend(self.subnode_type_params)
|
|
20351
|
-
result.append(self.
|
|
20575
|
+
result.append(self.subnode_value)
|
|
20352
20576
|
return tuple(result)
|
|
20353
20577
|
|
|
20354
20578
|
def getVisitableNodesNamed(self):
|
|
@@ -20359,7 +20583,7 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20359
20583
|
|
|
20360
20584
|
return (
|
|
20361
20585
|
("type_params", self.subnode_type_params),
|
|
20362
|
-
("
|
|
20586
|
+
("value", self.subnode_value),
|
|
20363
20587
|
)
|
|
20364
20588
|
|
|
20365
20589
|
def replaceChild(self, old_node, new_node):
|
|
@@ -20378,11 +20602,11 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20378
20602
|
|
|
20379
20603
|
return
|
|
20380
20604
|
|
|
20381
|
-
value = self.
|
|
20605
|
+
value = self.subnode_value
|
|
20382
20606
|
if old_node is value:
|
|
20383
20607
|
new_node.parent = self
|
|
20384
20608
|
|
|
20385
|
-
self.
|
|
20609
|
+
self.subnode_value = new_node
|
|
20386
20610
|
|
|
20387
20611
|
return
|
|
20388
20612
|
|
|
@@ -20396,7 +20620,7 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20396
20620
|
|
|
20397
20621
|
values = {
|
|
20398
20622
|
"type_params": tuple(v.makeClone() for v in self.subnode_type_params),
|
|
20399
|
-
"
|
|
20623
|
+
"value": self.subnode_value.makeClone(),
|
|
20400
20624
|
}
|
|
20401
20625
|
|
|
20402
20626
|
values.update(self.getDetails())
|
|
@@ -20409,8 +20633,8 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20409
20633
|
for c in self.subnode_type_params:
|
|
20410
20634
|
c.finalize()
|
|
20411
20635
|
del self.subnode_type_params
|
|
20412
|
-
self.
|
|
20413
|
-
del self.
|
|
20636
|
+
self.subnode_value.finalize()
|
|
20637
|
+
del self.subnode_value
|
|
20414
20638
|
|
|
20415
20639
|
def computeExpressionRaw(self, trace_collection):
|
|
20416
20640
|
"""Compute an expression.
|
|
@@ -20449,11 +20673,11 @@ class ChildrenHavingTypeParamsTupleComputeValueMixin(object):
|
|
|
20449
20673
|
|
|
20450
20674
|
for element in self.subnode_type_params:
|
|
20451
20675
|
element.collectVariableAccesses(emit_read, emit_write)
|
|
20452
|
-
self.
|
|
20676
|
+
self.subnode_value.collectVariableAccesses(emit_read, emit_write)
|
|
20453
20677
|
|
|
20454
20678
|
|
|
20455
20679
|
# Assign the names that are easier to import with a stable name.
|
|
20456
|
-
ChildrenExpressionTypeAliasMixin =
|
|
20680
|
+
ChildrenExpressionTypeAliasMixin = ChildrenHavingTypeParamsTupleValueMixin
|
|
20457
20681
|
|
|
20458
20682
|
|
|
20459
20683
|
class ChildHavingValueMixin(object):
|
nuitka/nodes/ClassNodes.py
CHANGED
nuitka/nodes/CodeObjectSpecs.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
""" Code object specifications.
|
|
@@ -97,9 +97,9 @@ class CodeObjectSpec(object):
|
|
|
97
97
|
self.filename = co_filename
|
|
98
98
|
self.line_number = int(co_lineno)
|
|
99
99
|
|
|
100
|
-
if type(
|
|
100
|
+
if type(co_new_locals) is not bool:
|
|
101
101
|
co_new_locals = co_new_locals != "False"
|
|
102
|
-
if type(
|
|
102
|
+
if type(co_is_optimized) is not bool:
|
|
103
103
|
co_is_optimized = co_is_optimized != "False"
|
|
104
104
|
|
|
105
105
|
self.new_locals = co_new_locals
|
|
@@ -111,7 +111,7 @@ class CodeObjectSpec(object):
|
|
|
111
111
|
def __repr__(self):
|
|
112
112
|
return (
|
|
113
113
|
"""\
|
|
114
|
-
<CodeObjectSpec %(co_kind)s '%(co_name)s' with %(co_varnames)r>"""
|
|
114
|
+
<CodeObjectSpec %(co_kind)s '%(co_name)s' with var_names %(co_varnames)r>"""
|
|
115
115
|
% self.getDetails()
|
|
116
116
|
)
|
|
117
117
|
|
nuitka/nodes/ComparisonNodes.py
CHANGED
nuitka/nodes/ConditionalNodes.py
CHANGED
nuitka/nodes/ConstantRefNodes.py
CHANGED
nuitka/nodes/CoroutineNodes.py
CHANGED
nuitka/nodes/CtypesNodes.py
CHANGED
nuitka/nodes/DictionaryNodes.py
CHANGED
nuitka/nodes/ExceptionNodes.py
CHANGED
nuitka/nodes/ExecEvalNodes.py
CHANGED
nuitka/nodes/ExpressionBases.py
CHANGED
nuitka/nodes/FrameNodes.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
""" Frame nodes.
|
|
@@ -37,17 +37,19 @@ def checkFrameStatements(value):
|
|
|
37
37
|
class StatementsFrameBase(StatementsSequenceMixin, StatementsSequenceBase):
|
|
38
38
|
checkers = {"statements": checkFrameStatements}
|
|
39
39
|
|
|
40
|
-
__slots__ = ("code_object", "needs_frame_exception_preserve")
|
|
40
|
+
__slots__ = ("code_object", "owner_code_name", "needs_frame_exception_preserve")
|
|
41
41
|
|
|
42
42
|
named_children = ("statements|tuple+setter",)
|
|
43
43
|
|
|
44
|
-
def __init__(self, statements, code_object, source_ref):
|
|
44
|
+
def __init__(self, statements, code_object, owner_code_name, source_ref):
|
|
45
45
|
StatementsSequenceBase.__init__(
|
|
46
46
|
self, statements=statements, source_ref=source_ref
|
|
47
47
|
)
|
|
48
48
|
|
|
49
49
|
self.code_object = code_object
|
|
50
50
|
|
|
51
|
+
self.owner_code_name = owner_code_name
|
|
52
|
+
|
|
51
53
|
self.needs_frame_exception_preserve = False
|
|
52
54
|
|
|
53
55
|
@staticmethod
|
|
@@ -276,15 +278,20 @@ class StatementsFrameBase(StatementsSequenceMixin, StatementsSequenceBase):
|
|
|
276
278
|
def getStatementNiceName():
|
|
277
279
|
return "frame statements sequence"
|
|
278
280
|
|
|
281
|
+
# TODO: Proper names for all of them?
|
|
282
|
+
def getFrameCodeName(self):
|
|
283
|
+
return "frame_" + self.owner_code_name
|
|
284
|
+
|
|
279
285
|
|
|
280
286
|
class StatementsFrameModule(StatementsFrameBase):
|
|
281
287
|
kind = "STATEMENTS_FRAME_MODULE"
|
|
282
288
|
|
|
283
|
-
def __init__(self, statements, code_object, source_ref):
|
|
289
|
+
def __init__(self, statements, code_object, owner_code_name, source_ref):
|
|
284
290
|
StatementsFrameBase.__init__(
|
|
285
291
|
self,
|
|
286
292
|
statements=statements,
|
|
287
293
|
code_object=code_object,
|
|
294
|
+
owner_code_name=owner_code_name,
|
|
288
295
|
source_ref=source_ref,
|
|
289
296
|
)
|
|
290
297
|
|
|
@@ -296,11 +303,12 @@ class StatementsFrameModule(StatementsFrameBase):
|
|
|
296
303
|
class StatementsFrameFunction(StatementsFrameBase):
|
|
297
304
|
kind = "STATEMENTS_FRAME_FUNCTION"
|
|
298
305
|
|
|
299
|
-
def __init__(self, statements, code_object, source_ref):
|
|
306
|
+
def __init__(self, statements, code_object, owner_code_name, source_ref):
|
|
300
307
|
StatementsFrameBase.__init__(
|
|
301
308
|
self,
|
|
302
309
|
statements=statements,
|
|
303
310
|
code_object=code_object,
|
|
311
|
+
owner_code_name=owner_code_name,
|
|
304
312
|
source_ref=source_ref,
|
|
305
313
|
)
|
|
306
314
|
|
|
@@ -314,11 +322,14 @@ class StatementsFrameClass(StatementsFrameBase):
|
|
|
314
322
|
|
|
315
323
|
__slots__ = ("locals_scope",)
|
|
316
324
|
|
|
317
|
-
def __init__(
|
|
325
|
+
def __init__(
|
|
326
|
+
self, statements, code_object, owner_code_name, locals_scope, source_ref
|
|
327
|
+
):
|
|
318
328
|
StatementsFrameBase.__init__(
|
|
319
329
|
self,
|
|
320
330
|
statements=statements,
|
|
321
331
|
code_object=code_object,
|
|
332
|
+
owner_code_name=owner_code_name,
|
|
322
333
|
source_ref=source_ref,
|
|
323
334
|
)
|
|
324
335
|
|
|
@@ -333,11 +344,12 @@ class StatementsFrameClass(StatementsFrameBase):
|
|
|
333
344
|
|
|
334
345
|
|
|
335
346
|
class StatementsFrameGeneratorBase(StatementsFrameBase):
|
|
336
|
-
def __init__(self, statements, code_object, source_ref):
|
|
347
|
+
def __init__(self, statements, code_object, owner_code_name, source_ref):
|
|
337
348
|
StatementsFrameBase.__init__(
|
|
338
349
|
self,
|
|
339
350
|
statements=statements,
|
|
340
351
|
code_object=code_object,
|
|
352
|
+
owner_code_name=owner_code_name,
|
|
341
353
|
source_ref=source_ref,
|
|
342
354
|
)
|
|
343
355
|
|
nuitka/nodes/FunctionNodes.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
""" Nodes for functions and their creations.
|
|
@@ -1229,6 +1229,9 @@ class ExpressionFunctionCall(ChildrenHavingFunctionValuesTupleMixin, ExpressionB
|
|
|
1229
1229
|
|
|
1230
1230
|
values = self.subnode_values
|
|
1231
1231
|
|
|
1232
|
+
for value in values:
|
|
1233
|
+
value.onContentEscapes(trace_collection)
|
|
1234
|
+
|
|
1232
1235
|
# Ask for function for its cost.
|
|
1233
1236
|
cost = function_body.getFunctionInlineCost(values)
|
|
1234
1237
|
|
|
@@ -1279,6 +1282,10 @@ class ExpressionFunctionCall(ChildrenHavingFunctionValuesTupleMixin, ExpressionB
|
|
|
1279
1282
|
def getClosureVariableVersions(self):
|
|
1280
1283
|
return self.variable_closure_traces
|
|
1281
1284
|
|
|
1285
|
+
def onContentEscapes(self, trace_collection):
|
|
1286
|
+
for value in self.subnode_values:
|
|
1287
|
+
value.onContentEscapes(trace_collection)
|
|
1288
|
+
|
|
1282
1289
|
|
|
1283
1290
|
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
1284
1291
|
# integrates with CPython, but also works on its own.
|
nuitka/nodes/FutureSpecs.py
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Copyright
|
|
1
|
+
# Copyright 2025, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
""" Specification record for future flags.
|
|
@@ -9,6 +9,8 @@ in-lining of "exec" statements with their own future imports, or in-lining of
|
|
|
9
9
|
code from other modules.
|
|
10
10
|
"""
|
|
11
11
|
|
|
12
|
+
from nuitka.containers.OrderedDicts import OrderedDict
|
|
13
|
+
from nuitka.containers.OrderedSets import OrderedSet
|
|
12
14
|
from nuitka.PythonVersions import python_version
|
|
13
15
|
from nuitka.utils.InstanceCounters import (
|
|
14
16
|
counted_del,
|
|
@@ -32,7 +34,7 @@ class FutureSpec(object):
|
|
|
32
34
|
"unicode_literals",
|
|
33
35
|
"absolute_import",
|
|
34
36
|
"future_print",
|
|
35
|
-
"barry_bdfl",
|
|
37
|
+
"barry_bdfl", # spell-checker: ignore bdfl
|
|
36
38
|
"generator_stop",
|
|
37
39
|
"future_annotations",
|
|
38
40
|
"use_annotations",
|
|
@@ -141,6 +143,10 @@ class FutureSpec(object):
|
|
|
141
143
|
|
|
142
144
|
return tuple(result)
|
|
143
145
|
|
|
146
|
+
def encode(self):
|
|
147
|
+
# TODO: Maybe asFlags becomes unnecessary.
|
|
148
|
+
return _encodeFlags(self.asFlags())
|
|
149
|
+
|
|
144
150
|
|
|
145
151
|
def fromFlags(flags):
|
|
146
152
|
flags = flags.split(",")
|
|
@@ -176,6 +182,32 @@ def fromFlags(flags):
|
|
|
176
182
|
return result
|
|
177
183
|
|
|
178
184
|
|
|
185
|
+
# Relevance of future flags.
|
|
186
|
+
_future_version_specific_flags = OrderedDict(
|
|
187
|
+
(
|
|
188
|
+
("CO_FUTURE_DIVISION", python_version < 0x300),
|
|
189
|
+
("CO_FUTURE_UNICODE_LITERALS", True),
|
|
190
|
+
("CO_FUTURE_PRINT_FUNCTION", python_version < 0x300),
|
|
191
|
+
("CO_FUTURE_ABSOLUTE_IMPORT", python_version < 0x300),
|
|
192
|
+
("CO_FUTURE_GENERATOR_STOP", 0x350 <= python_version < 0x370),
|
|
193
|
+
("CO_FUTURE_ANNOTATIONS", python_version >= 0x370),
|
|
194
|
+
("CO_FUTURE_BARRY_AS_BDFL", python_version >= 0x300),
|
|
195
|
+
)
|
|
196
|
+
)
|
|
197
|
+
|
|
198
|
+
_future_version_specific_flags = OrderedSet(
|
|
199
|
+
key for (key, value) in _future_version_specific_flags.items() if value
|
|
200
|
+
)
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
def _encodeFlags(flags):
|
|
204
|
+
result = 0
|
|
205
|
+
for bit, flag in enumerate(_future_version_specific_flags):
|
|
206
|
+
if flag in flags:
|
|
207
|
+
result |= 1 << bit
|
|
208
|
+
return result
|
|
209
|
+
|
|
210
|
+
|
|
179
211
|
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
180
212
|
# integrates with CPython, but also works on its own.
|
|
181
213
|
#
|
nuitka/nodes/GeneratorNodes.py
CHANGED