Nuitka-winsvc 2.5.6__cp311-cp311-win_amd64.whl → 2.6__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.data}/scripts/nuitka-run.cmd +1 -1
- {Nuitka_winsvc-2.5.6.data → Nuitka_winsvc-2.6.data}/scripts/nuitka.cmd +1 -1
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.dist-info}/METADATA +36 -24
- Nuitka_winsvc-2.6.dist-info/RECORD +988 -0
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +1 -1
- nuitka/BytecodeCaching.py +1 -1
- 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 +1 -1
- nuitka/OptionParsing.py +86 -17
- nuitka/Options.py +146 -48
- nuitka/OutputDirectories.py +5 -3
- nuitka/PostProcessing.py +76 -27
- nuitka/Progress.py +1 -1
- nuitka/PythonFlavors.py +9 -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 +54 -31
- nuitka/build/SconsHacks.py +3 -3
- nuitka/build/SconsInterface.py +85 -57
- 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 +5 -12
- 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 +1 -1
- 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 +1 -1
- nuitka/build/include/nuitka/unfreezing.h +1 -1
- nuitka/build/inline_copy/pefile/LICENSE.txt +21 -0
- nuitka/build/inline_copy/pefile/pefile.py +8034 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +85 -71
- nuitka/build/static_src/CompiledCellType.c +2 -1
- nuitka/build/static_src/CompiledCodeHelpers.c +6 -26
- nuitka/build/static_src/CompiledCoroutineType.c +32 -34
- nuitka/build/static_src/CompiledFrameType.c +63 -5
- nuitka/build/static_src/CompiledFunctionType.c +11 -13
- nuitka/build/static_src/CompiledGeneratorType.c +64 -11
- 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 +1 -1
- 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 +1 -1
- nuitka/build/static_src/InspectPatcher.c +2 -1
- nuitka/build/static_src/MainProgram.c +6 -6
- nuitka/build/static_src/MetaPathBasedLoader.c +2 -1
- 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 +3 -3
- 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 +1 -1
- 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 +1 -1
- nuitka/freezer/DllDependenciesPosix.py +1 -1
- nuitka/freezer/DllDependenciesWin32.py +111 -25
- nuitka/freezer/ImportDetection.py +1 -1
- nuitka/freezer/IncludedDataFiles.py +1 -1
- nuitka/freezer/IncludedEntryPoints.py +1 -1
- nuitka/freezer/Onefile.py +13 -15
- nuitka/freezer/Standalone.py +6 -3
- 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 +4 -3
- 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 +227 -3
- 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 +1 -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 +2 -2
- 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 +1 -1
- 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 +1 -1
- 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 +24 -3
- nuitka/plugins/Plugins.py +57 -14
- nuitka/plugins/YamlPluginBase.py +1 -1
- nuitka/plugins/__init__.py +1 -1
- nuitka/plugins/standard/AntiBloatPlugin.py +2 -1
- 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 +4 -4
- 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 +12 -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 +108 -38
- nuitka/reports/CompilationReportReader.py +5 -1
- nuitka/reports/LicenseReport.rst.j2 +1 -1
- nuitka/reports/Reports.py +5 -1
- 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 +2 -2
- 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 +43 -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 +117 -264
- nuitka/tree/Building.py +1 -1
- nuitka/tree/ComplexCallHelperFunctions.py +1 -1
- nuitka/tree/Extractions.py +1 -1
- nuitka/tree/InternalModule.py +1 -1
- nuitka/tree/Operations.py +1 -1
- nuitka/tree/ReformulationAssertStatements.py +1 -1
- nuitka/tree/ReformulationAssignmentStatements.py +1 -1
- 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 +1 -1
- nuitka/tree/ReformulationExecStatements.py +1 -1
- nuitka/tree/ReformulationForLoopStatements.py +1 -1
- nuitka/tree/ReformulationFunctionStatements.py +1 -1
- nuitka/tree/ReformulationImportStatements.py +1 -1
- nuitka/tree/ReformulationLambdaExpressions.py +2 -1
- nuitka/tree/ReformulationMatchStatements.py +1 -1
- nuitka/tree/ReformulationMultidist.py +1 -1
- nuitka/tree/ReformulationNamespacePackages.py +1 -1
- 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 +1 -1
- 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 +177 -15
- nuitka/utils/Download.py +14 -6
- nuitka/utils/Execution.py +43 -14
- nuitka/utils/FileOperations.py +25 -4
- 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 +25 -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.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.5.6.dist-info → Nuitka_winsvc-2.6.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
|
"""DLL dependency scan methods for Win32 Windows.
|
|
@@ -12,8 +12,9 @@ import sys
|
|
|
12
12
|
from nuitka.__past__ import iterItems
|
|
13
13
|
from nuitka.build.SconsUtils import readSconsReport
|
|
14
14
|
from nuitka.containers.OrderedSets import OrderedSet
|
|
15
|
-
from nuitka.Options import isShowProgress
|
|
15
|
+
from nuitka.Options import isExperimental, isShowProgress
|
|
16
16
|
from nuitka.plugins.Plugins import Plugins
|
|
17
|
+
from nuitka.PythonFlavors import isAnacondaPython
|
|
17
18
|
from nuitka.PythonVersions import getSystemPrefixPath
|
|
18
19
|
from nuitka.Tracing import inclusion_logger
|
|
19
20
|
from nuitka.utils.AppDirs import getCacheDir
|
|
@@ -22,13 +23,15 @@ from nuitka.utils.FileOperations import (
|
|
|
22
23
|
getDirectoryRealPath,
|
|
23
24
|
getFileContentByLine,
|
|
24
25
|
getSubDirectoriesWithDlls,
|
|
26
|
+
isFilenameSameAsOrBelowPath,
|
|
25
27
|
listDllFilesFromDirectory,
|
|
26
28
|
makePath,
|
|
27
29
|
putTextFileContents,
|
|
28
30
|
withFileLock,
|
|
29
31
|
)
|
|
30
32
|
from nuitka.utils.Hashing import Hash
|
|
31
|
-
from nuitka.utils.SharedLibraries import getPyWin32Dir
|
|
33
|
+
from nuitka.utils.SharedLibraries import getPEFileUsedDllNames, getPyWin32Dir
|
|
34
|
+
from nuitka.utils.Utils import getArchitecture
|
|
32
35
|
from nuitka.Version import version_string
|
|
33
36
|
|
|
34
37
|
from .DependsExe import detectDLLsWithDependencyWalker
|
|
@@ -37,6 +40,46 @@ from .DllDependenciesCommon import getPackageSpecificDLLDirectories
|
|
|
37
40
|
_scan_dir_cache = {}
|
|
38
41
|
|
|
39
42
|
|
|
43
|
+
def detectDLLsWithPEFile(binary_filename, scan_dirs):
|
|
44
|
+
pe_dll_names = getPEFileUsedDllNames(binary_filename)
|
|
45
|
+
|
|
46
|
+
result = OrderedSet()
|
|
47
|
+
|
|
48
|
+
# Get DLL imports from PE file
|
|
49
|
+
for dll_name in pe_dll_names:
|
|
50
|
+
dll_name = dll_name.lower()
|
|
51
|
+
|
|
52
|
+
# Search DLL path from scan dirs
|
|
53
|
+
for scan_dir in scan_dirs:
|
|
54
|
+
dll_filename = os.path.normcase(
|
|
55
|
+
os.path.abspath(os.path.join(scan_dir, dll_name))
|
|
56
|
+
)
|
|
57
|
+
|
|
58
|
+
if os.path.isfile(dll_filename):
|
|
59
|
+
result.add(dll_filename)
|
|
60
|
+
|
|
61
|
+
break
|
|
62
|
+
else:
|
|
63
|
+
if dll_name.startswith("API-MS-WIN-") or dll_name.startswith("EXT-MS-WIN-"):
|
|
64
|
+
continue
|
|
65
|
+
|
|
66
|
+
# Ignore this runtime DLL of Python2, will be coming via manifest.
|
|
67
|
+
# spell-checker: ignore msvcr90
|
|
68
|
+
if dll_name == "msvcr90.dll":
|
|
69
|
+
continue
|
|
70
|
+
|
|
71
|
+
# Ignore API DLLs, they can come in from PATH, but we do not want to
|
|
72
|
+
# include them.
|
|
73
|
+
if dll_name.startswith("api-ms-win-"):
|
|
74
|
+
continue
|
|
75
|
+
|
|
76
|
+
# Ignore UCRT runtime, this must come from OS, spell-checker: ignore ucrtbase
|
|
77
|
+
if dll_name == "ucrtbase.dll":
|
|
78
|
+
continue
|
|
79
|
+
|
|
80
|
+
return result
|
|
81
|
+
|
|
82
|
+
|
|
40
83
|
def detectBinaryPathDLLsWin32(
|
|
41
84
|
is_main_executable,
|
|
42
85
|
source_dir,
|
|
@@ -47,10 +90,17 @@ def detectBinaryPathDLLsWin32(
|
|
|
47
90
|
use_cache,
|
|
48
91
|
update_cache,
|
|
49
92
|
):
|
|
93
|
+
dependency_tool = (
|
|
94
|
+
"pefile"
|
|
95
|
+
if (getArchitecture() == "arm64" or isExperimental("force-dependencies-pefile"))
|
|
96
|
+
else "depends.exe"
|
|
97
|
+
)
|
|
98
|
+
|
|
50
99
|
# This is the caching mechanism and plugin handling for DLL imports.
|
|
51
100
|
if use_cache or update_cache:
|
|
101
|
+
|
|
52
102
|
cache_filename = _getCacheFilename(
|
|
53
|
-
dependency_tool=
|
|
103
|
+
dependency_tool=dependency_tool,
|
|
54
104
|
is_main_executable=is_main_executable,
|
|
55
105
|
source_dir=source_dir,
|
|
56
106
|
original_dir=original_dir,
|
|
@@ -85,9 +135,17 @@ def detectBinaryPathDLLsWin32(
|
|
|
85
135
|
package_name=package_name, original_dir=original_dir, use_path=use_path
|
|
86
136
|
)
|
|
87
137
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
138
|
+
if dependency_tool == "depends.exe":
|
|
139
|
+
result = detectDLLsWithDependencyWalker(
|
|
140
|
+
binary_filename=binary_filename,
|
|
141
|
+
source_dir=source_dir,
|
|
142
|
+
scan_dirs=scan_dirs,
|
|
143
|
+
)
|
|
144
|
+
else:
|
|
145
|
+
result = detectDLLsWithPEFile(
|
|
146
|
+
binary_filename=binary_filename,
|
|
147
|
+
scan_dirs=scan_dirs,
|
|
148
|
+
)
|
|
91
149
|
|
|
92
150
|
if update_cache:
|
|
93
151
|
putTextFileContents(filename=cache_filename, contents=result)
|
|
@@ -95,9 +153,53 @@ def detectBinaryPathDLLsWin32(
|
|
|
95
153
|
return result
|
|
96
154
|
|
|
97
155
|
|
|
156
|
+
_path_contributions = {}
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
def _getPathContribution(use_path):
|
|
160
|
+
"""Contributions from PATH environment variable.
|
|
161
|
+
|
|
162
|
+
These are ignored if use_path is False, but for
|
|
163
|
+
Anaconda we need to keep those elements pointing
|
|
164
|
+
to inside of it.
|
|
165
|
+
"""
|
|
166
|
+
if use_path not in _path_contributions:
|
|
167
|
+
_path_contributions[use_path] = OrderedSet()
|
|
168
|
+
|
|
169
|
+
for path_dir in os.environ["PATH"].split(";"):
|
|
170
|
+
if not os.path.isdir(path_dir):
|
|
171
|
+
continue
|
|
172
|
+
|
|
173
|
+
# spell-checker: ignore SYSTEMROOT
|
|
174
|
+
if areSamePaths(path_dir, os.path.join(os.environ["SYSTEMROOT"])):
|
|
175
|
+
continue
|
|
176
|
+
if areSamePaths(
|
|
177
|
+
path_dir, os.path.join(os.environ["SYSTEMROOT"], "System32")
|
|
178
|
+
):
|
|
179
|
+
continue
|
|
180
|
+
if areSamePaths(
|
|
181
|
+
path_dir, os.path.join(os.environ["SYSTEMROOT"], "SysWOW64")
|
|
182
|
+
):
|
|
183
|
+
continue
|
|
184
|
+
|
|
185
|
+
# For Anaconda, we cannot ignore PATH on its inside.
|
|
186
|
+
if not use_path:
|
|
187
|
+
if not isAnacondaPython() or not isFilenameSameAsOrBelowPath(
|
|
188
|
+
filename=path_dir,
|
|
189
|
+
path=(
|
|
190
|
+
getSystemPrefixPath(),
|
|
191
|
+
sys.prefix,
|
|
192
|
+
),
|
|
193
|
+
):
|
|
194
|
+
continue
|
|
195
|
+
|
|
196
|
+
_path_contributions[use_path].add(path_dir)
|
|
197
|
+
|
|
198
|
+
return _path_contributions[use_path]
|
|
199
|
+
|
|
200
|
+
|
|
98
201
|
def _getScanDirectories(package_name, original_dir, use_path):
|
|
99
202
|
# TODO: Move PyWin32 specific stuff to yaml dll section
|
|
100
|
-
# pylint: disable=too-many-branches
|
|
101
203
|
|
|
102
204
|
cache_key = package_name, original_dir
|
|
103
205
|
|
|
@@ -124,23 +226,7 @@ def _getScanDirectories(package_name, original_dir, use_path):
|
|
|
124
226
|
if py_win32_dir is not None:
|
|
125
227
|
scan_dirs.append(py_win32_dir)
|
|
126
228
|
|
|
127
|
-
|
|
128
|
-
for path_dir in os.environ["PATH"].split(";"):
|
|
129
|
-
if not os.path.isdir(path_dir):
|
|
130
|
-
continue
|
|
131
|
-
|
|
132
|
-
if areSamePaths(path_dir, os.path.join(os.environ["SYSTEMROOT"])):
|
|
133
|
-
continue
|
|
134
|
-
if areSamePaths(
|
|
135
|
-
path_dir, os.path.join(os.environ["SYSTEMROOT"], "System32")
|
|
136
|
-
):
|
|
137
|
-
continue
|
|
138
|
-
if areSamePaths(
|
|
139
|
-
path_dir, os.path.join(os.environ["SYSTEMROOT"], "SysWOW64")
|
|
140
|
-
):
|
|
141
|
-
continue
|
|
142
|
-
|
|
143
|
-
scan_dirs.append(path_dir)
|
|
229
|
+
scan_dirs.extend(_getPathContribution(use_path=use_path))
|
|
144
230
|
|
|
145
231
|
result = []
|
|
146
232
|
|
nuitka/freezer/Onefile.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
|
""" Pack distribution folders into a single file.
|
|
@@ -13,8 +13,8 @@ from nuitka import Options, OutputDirectories
|
|
|
13
13
|
from nuitka.build.SconsInterface import (
|
|
14
14
|
asBoolStr,
|
|
15
15
|
cleanSconsDirectory,
|
|
16
|
+
getCommonSconsOptions,
|
|
16
17
|
runScons,
|
|
17
|
-
setCommonSconsOptions,
|
|
18
18
|
)
|
|
19
19
|
from nuitka.Options import getOnefileTempDirSpec, isOnefileTempDirMode
|
|
20
20
|
from nuitka.OutputDirectories import getResultFullpath
|
|
@@ -55,22 +55,20 @@ def packDistFolderToOnefile(dist_dir):
|
|
|
55
55
|
|
|
56
56
|
|
|
57
57
|
def _runOnefileScons(onefile_compression, onefile_archive):
|
|
58
|
+
scons_options, env_values = getCommonSconsOptions()
|
|
59
|
+
|
|
58
60
|
source_dir = OutputDirectories.getSourceDirectoryPath(onefile=True)
|
|
59
61
|
|
|
60
62
|
# Let plugins do their thing for onefile mode too.
|
|
61
63
|
Plugins.writeExtraCodeFiles(onefile=True)
|
|
62
64
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
),
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
env_values = setCommonSconsOptions(options)
|
|
65
|
+
scons_options["result_exe"] = OutputDirectories.getResultFullpath(onefile=True)
|
|
66
|
+
scons_options["source_dir"] = source_dir
|
|
67
|
+
scons_options["debug_mode"] = asBoolStr(Options.is_debug)
|
|
68
|
+
scons_options["trace_mode"] = asBoolStr(Options.shallTraceExecution())
|
|
69
|
+
scons_options["onefile_splash_screen"] = asBoolStr(
|
|
70
|
+
Options.getWindowsSplashScreen() is not None
|
|
71
|
+
)
|
|
74
72
|
|
|
75
73
|
env_values["_NUITKA_ONEFILE_TEMP_SPEC"] = getOnefileTempDirSpec()
|
|
76
74
|
env_values["_NUITKA_ONEFILE_TEMP_BOOL"] = "1" if isOnefileTempDirMode() else "0"
|
|
@@ -96,7 +94,7 @@ def _runOnefileScons(onefile_compression, onefile_archive):
|
|
|
96
94
|
env_values['_NUITKA_WINSVC_UNINSTALL_WIDE_STRING'] = winsvcMetrics['uninstall']
|
|
97
95
|
|
|
98
96
|
result = runScons(
|
|
99
|
-
|
|
97
|
+
scons_options=scons_options,
|
|
100
98
|
env_values=env_values,
|
|
101
99
|
scons_filename="Onefile.scons",
|
|
102
100
|
)
|
|
@@ -133,7 +131,7 @@ another discoverable Python >= 3.5 on your system."""
|
|
|
133
131
|
else:
|
|
134
132
|
onefile_logger.warning(
|
|
135
133
|
"""\
|
|
136
|
-
Onefile mode cannot compress without 'zstandard'
|
|
134
|
+
Onefile mode cannot compress without 'zstandard' package installed."""
|
|
137
135
|
)
|
|
138
136
|
|
|
139
137
|
return _compressor_python
|
nuitka/freezer/Standalone.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
|
""" Pack and copy files for standalone mode.
|
|
@@ -33,6 +33,7 @@ from nuitka.PythonFlavors import (
|
|
|
33
33
|
isAnacondaPython,
|
|
34
34
|
isHomebrewPython,
|
|
35
35
|
isMSYS2MingwPython,
|
|
36
|
+
isNuitkaPython,
|
|
36
37
|
)
|
|
37
38
|
from nuitka.PythonVersions import getSystemPrefixPath
|
|
38
39
|
from nuitka.Tracing import general, inclusion_logger
|
|
@@ -126,7 +127,9 @@ def _detectBinaryDLLs(
|
|
|
126
127
|
"otool" (macOS) the list of used DLLs is retrieved.
|
|
127
128
|
"""
|
|
128
129
|
|
|
129
|
-
if
|
|
130
|
+
if isNuitkaPython():
|
|
131
|
+
return OrderedSet()
|
|
132
|
+
elif getOS() in ("Linux", "NetBSD", "FreeBSD", "OpenBSD") or isPosixWindows():
|
|
130
133
|
return detectBinaryPathDLLsPosix(
|
|
131
134
|
dll_filename=original_filename,
|
|
132
135
|
package_name=package_name,
|
|
@@ -261,7 +264,7 @@ def _reduceToPythonPath(used_dll_paths):
|
|
|
261
264
|
else:
|
|
262
265
|
if dll_filename not in _excluded_system_dlls:
|
|
263
266
|
_excluded_system_dlls.add(dll_filename)
|
|
264
|
-
inclusion_logger.
|
|
267
|
+
inclusion_logger.debug("Not including system DLL '%s'" % dll_filename)
|
|
265
268
|
|
|
266
269
|
removed_dll_paths.add(dll_filename)
|
|
267
270
|
|
nuitka/freezer/__init__.py
CHANGED
nuitka/importing/ImportCache.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
|
""" This cares about resolving module names at compile time compensating meta path based importers.
|
nuitka/importing/Importing.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
|
""" Locating modules and package source on disk.
|
|
@@ -718,8 +718,9 @@ def getPackageSearchPath(package_name):
|
|
|
718
718
|
if isPackageDir(package_dir) or force_package:
|
|
719
719
|
result.append(package_dir)
|
|
720
720
|
|
|
721
|
-
|
|
722
|
-
|
|
721
|
+
return OrderedSet(
|
|
722
|
+
element for element in OrderedSet(result) if os.path.exists(element)
|
|
723
|
+
)
|
|
723
724
|
|
|
724
725
|
|
|
725
726
|
def _findModuleInPath(module_name):
|
nuitka/importing/Recursion.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
|
""" Recursion into other modules.
|
|
@@ -21,7 +21,10 @@ from nuitka.plugins.Plugins import Plugins
|
|
|
21
21
|
from nuitka.PythonVersions import python_version
|
|
22
22
|
from nuitka.Tracing import recursion_logger
|
|
23
23
|
from nuitka.utils.FileOperations import listDir
|
|
24
|
-
from nuitka.utils.Importing import
|
|
24
|
+
from nuitka.utils.Importing import (
|
|
25
|
+
getPackageDirFilename,
|
|
26
|
+
getSharedLibrarySuffixes,
|
|
27
|
+
)
|
|
25
28
|
from nuitka.utils.ModuleNames import ModuleName
|
|
26
29
|
|
|
27
30
|
from .Importing import (
|
|
@@ -334,13 +337,17 @@ def _addIncludedModule(module, package_only):
|
|
|
334
337
|
continue
|
|
335
338
|
|
|
336
339
|
if isPackageDir(sub_path) and not os.path.exists(sub_path + ".py"):
|
|
337
|
-
|
|
340
|
+
scanPluginSinglePath(
|
|
338
341
|
sub_path,
|
|
339
342
|
module_package=module.getFullName(),
|
|
340
343
|
package_only=False,
|
|
341
344
|
)
|
|
342
345
|
elif sub_filename.endswith(".py"):
|
|
343
|
-
|
|
346
|
+
if os.path.isdir(sub_path[:-3]):
|
|
347
|
+
if getPackageDirFilename(sub_path[:-3]) is not None:
|
|
348
|
+
continue
|
|
349
|
+
|
|
350
|
+
scanPluginSinglePath(
|
|
344
351
|
sub_path,
|
|
345
352
|
module_package=module.getFullName(),
|
|
346
353
|
package_only=False,
|
|
@@ -351,7 +358,7 @@ def _addIncludedModule(module, package_only):
|
|
|
351
358
|
sub_filename.endswith(suffix)
|
|
352
359
|
and "." not in sub_filename[: -len(suffix)]
|
|
353
360
|
):
|
|
354
|
-
|
|
361
|
+
scanPluginSinglePath(
|
|
355
362
|
sub_path,
|
|
356
363
|
module_package=module.getFullName(),
|
|
357
364
|
package_only=False,
|
|
@@ -366,7 +373,7 @@ def _addIncludedModule(module, package_only):
|
|
|
366
373
|
assert False, module
|
|
367
374
|
|
|
368
375
|
|
|
369
|
-
def
|
|
376
|
+
def scanPluginSinglePath(plugin_filename, module_package, package_only):
|
|
370
377
|
# The importing wants these to be unique.
|
|
371
378
|
plugin_filename = os.path.abspath(plugin_filename)
|
|
372
379
|
|
|
@@ -422,7 +429,7 @@ the compiled result, and therefore asking to include them makes no sense.
|
|
|
422
429
|
)
|
|
423
430
|
|
|
424
431
|
|
|
425
|
-
def
|
|
432
|
+
def scanPluginPath(plugin_filename, module_package):
|
|
426
433
|
if Options.isShowInclusion():
|
|
427
434
|
recursion_logger.info(
|
|
428
435
|
"Checking top level inclusion path '%s' '%s'."
|
|
@@ -431,7 +438,7 @@ def checkPluginPath(plugin_filename, module_package):
|
|
|
431
438
|
|
|
432
439
|
# Files and package directories are handled here.
|
|
433
440
|
if os.path.isfile(plugin_filename) or isPackageDir(plugin_filename):
|
|
434
|
-
|
|
441
|
+
scanPluginSinglePath(
|
|
435
442
|
plugin_filename,
|
|
436
443
|
module_package=module_package,
|
|
437
444
|
package_only=False,
|
|
@@ -443,7 +450,7 @@ def checkPluginPath(plugin_filename, module_package):
|
|
|
443
450
|
assert sub_filename != "__init__.py"
|
|
444
451
|
|
|
445
452
|
if isPackageDir(sub_path) or sub_path.endswith(".py"):
|
|
446
|
-
|
|
453
|
+
scanPluginSinglePath(
|
|
447
454
|
sub_path,
|
|
448
455
|
module_package=None,
|
|
449
456
|
package_only=False,
|
|
@@ -452,7 +459,7 @@ def checkPluginPath(plugin_filename, module_package):
|
|
|
452
459
|
|
|
453
460
|
for suffix in getSharedLibrarySuffixes():
|
|
454
461
|
if sub_path.endswith(suffix):
|
|
455
|
-
|
|
462
|
+
scanPluginSinglePath(
|
|
456
463
|
sub_path,
|
|
457
464
|
module_package=None,
|
|
458
465
|
package_only=False,
|
|
@@ -464,7 +471,7 @@ def checkPluginPath(plugin_filename, module_package):
|
|
|
464
471
|
)
|
|
465
472
|
|
|
466
473
|
|
|
467
|
-
def
|
|
474
|
+
def scanPluginFilenamePattern(pattern):
|
|
468
475
|
if Options.isShowInclusion():
|
|
469
476
|
recursion_logger.info("Checking plug-in pattern '%s':" % pattern)
|
|
470
477
|
|
|
@@ -480,7 +487,7 @@ def checkPluginFilenamePattern(pattern):
|
|
|
480
487
|
continue
|
|
481
488
|
|
|
482
489
|
found = True
|
|
483
|
-
|
|
490
|
+
scanPluginSinglePath(
|
|
484
491
|
filename,
|
|
485
492
|
module_package=None,
|
|
486
493
|
package_only=False,
|
|
@@ -566,6 +573,24 @@ def considerUsedModules(module, pass_count):
|
|
|
566
573
|
)
|
|
567
574
|
|
|
568
575
|
|
|
576
|
+
def scanIncludedPackage(package_name):
|
|
577
|
+
package_name, package_directory, _module_kind, finding = locateModule(
|
|
578
|
+
module_name=ModuleName(package_name),
|
|
579
|
+
parent_package=None,
|
|
580
|
+
level=0,
|
|
581
|
+
)
|
|
582
|
+
|
|
583
|
+
if finding != "absolute":
|
|
584
|
+
recursion_logger.sysexit(
|
|
585
|
+
"Error, failed to locate package '%s' you asked to include." % package_name
|
|
586
|
+
)
|
|
587
|
+
|
|
588
|
+
scanPluginPath(
|
|
589
|
+
plugin_filename=package_directory,
|
|
590
|
+
module_package=package_name.getPackageName(),
|
|
591
|
+
)
|
|
592
|
+
|
|
593
|
+
|
|
569
594
|
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
570
595
|
# integrates with CPython, but also works on its own.
|
|
571
596
|
#
|
nuitka/importing/__init__.py
CHANGED
nuitka/nodes/AsyncgenNodes.py
CHANGED
nuitka/nodes/AttributeNodes.py
CHANGED
nuitka/nodes/BuiltinAllNodes.py
CHANGED
nuitka/nodes/BuiltinAnyNodes.py
CHANGED
nuitka/nodes/BuiltinDictNodes.py
CHANGED
nuitka/nodes/BuiltinHashNodes.py
CHANGED
nuitka/nodes/BuiltinLenNodes.py
CHANGED
nuitka/nodes/BuiltinNextNodes.py
CHANGED
nuitka/nodes/BuiltinOpenNodes.py
CHANGED