Nuitka-winsvc 1.8__cp311-cp311-win_amd64.whl → 2.4.8__cp311-cp311-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of Nuitka-winsvc might be problematic. Click here for more details.
- Nuitka_winsvc-1.8.data/scripts/nuitka-run.bat → Nuitka_winsvc-2.4.8.data/scripts/nuitka-run.cmd +9 -9
- Nuitka_winsvc-1.8.data/scripts/nuitka.bat → Nuitka_winsvc-2.4.8.data/scripts/nuitka.cmd +15 -15
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/METADATA +4 -3
- Nuitka_winsvc-2.4.8.dist-info/RECORD +954 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/WHEEL +1 -1
- nuitka/Builtins.py +18 -17
- nuitka/BytecodeCaching.py +24 -20
- nuitka/Bytecodes.py +23 -19
- nuitka/CacheCleanup.py +28 -23
- nuitka/Constants.py +19 -17
- nuitka/Errors.py +23 -17
- nuitka/HardImportRegistry.py +400 -0
- nuitka/MainControl.py +200 -112
- nuitka/ModuleRegistry.py +83 -20
- nuitka/OptionParsing.py +368 -175
- nuitka/Options.py +632 -213
- nuitka/OutputDirectories.py +40 -21
- nuitka/PostProcessing.py +73 -50
- nuitka/Progress.py +58 -24
- nuitka/PythonFlavors.py +141 -32
- nuitka/PythonOperators.py +18 -17
- nuitka/PythonVersions.py +106 -19
- nuitka/Serialization.py +68 -55
- nuitka/SourceCodeReferences.py +19 -17
- nuitka/Tracing.py +108 -70
- nuitka/TreeXML.py +31 -26
- nuitka/Variables.py +39 -41
- nuitka/Version.py +21 -7
- nuitka/__init__.py +5 -4
- nuitka/__main__.py +95 -29
- nuitka/__past__.py +44 -34
- nuitka/build/Backend.scons +202 -140
- nuitka/build/CCompilerVersion.scons +39 -31
- nuitka/build/DataComposerInterface.py +20 -17
- nuitka/build/Onefile.scons +50 -54
- nuitka/build/SconsCaching.py +93 -90
- nuitka/build/SconsCompilerSettings.py +157 -69
- nuitka/build/SconsHacks.py +25 -19
- nuitka/build/SconsInterface.py +154 -54
- nuitka/build/SconsProgress.py +19 -18
- nuitka/build/SconsSpawn.py +62 -33
- nuitka/build/SconsUtils.py +147 -55
- nuitka/build/__init__.py +5 -4
- nuitka/build/include/nuitka/allocator.h +105 -22
- nuitka/build/include/nuitka/builtins.h +17 -17
- nuitka/build/include/nuitka/calling.h +18 -18
- nuitka/build/include/nuitka/checkers.h +17 -18
- nuitka/build/include/nuitka/checksum_tools.h +14 -19
- nuitka/build/include/nuitka/compiled_asyncgen.h +18 -18
- nuitka/build/include/nuitka/compiled_cell.h +33 -18
- nuitka/build/include/nuitka/compiled_coroutine.h +18 -18
- nuitka/build/include/nuitka/compiled_frame.h +91 -53
- nuitka/build/include/nuitka/compiled_function.h +42 -20
- nuitka/build/include/nuitka/compiled_generator.h +24 -18
- nuitka/build/include/nuitka/compiled_method.h +17 -18
- nuitka/build/include/nuitka/constants.h +29 -18
- nuitka/build/include/nuitka/constants_blob.h +17 -17
- nuitka/build/include/nuitka/environment_variables.h +30 -0
- nuitka/build/include/nuitka/environment_variables_system.h +45 -0
- nuitka/build/include/nuitka/exception_groups.h +23 -26
- nuitka/build/include/nuitka/exceptions.h +593 -190
- nuitka/build/include/nuitka/filesystem_paths.h +26 -20
- nuitka/build/include/nuitka/freelists.h +38 -18
- nuitka/build/include/nuitka/helper/attributes.h +24 -18
- nuitka/build/include/nuitka/helper/boolean.h +17 -17
- nuitka/build/include/nuitka/helper/bytearrays.h +17 -17
- nuitka/build/include/nuitka/helper/bytes.h +14 -15
- nuitka/build/include/nuitka/helper/calling_generated.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_eq.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ge.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_gt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_le.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_lt.h +17 -17
- nuitka/build/include/nuitka/helper/comparisons_ne.h +17 -17
- nuitka/build/include/nuitka/helper/complex.h +17 -17
- nuitka/build/include/nuitka/helper/dictionaries.h +24 -22
- nuitka/build/include/nuitka/helper/floats.h +17 -18
- nuitka/build/include/nuitka/helper/import_hard.h +25 -17
- nuitka/build/include/nuitka/helper/indexes.h +17 -18
- nuitka/build/include/nuitka/helper/ints.h +32 -20
- nuitka/build/include/nuitka/helper/iterators.h +17 -17
- nuitka/build/include/nuitka/helper/lists.h +26 -24
- nuitka/build/include/nuitka/helper/lists_generated.h +22 -22
- nuitka/build/include/nuitka/helper/mappings.h +17 -18
- nuitka/build/include/nuitka/helper/operations.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_add.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_divmod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_sub.h +17 -17
- nuitka/build/include/nuitka/helper/operations_binary_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_builtin_types.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_add.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitand.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_bitxor.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_floordiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_lshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_matmult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mod.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_mult.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_olddiv.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_pow.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_rshift.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_sub.h +17 -17
- nuitka/build/include/nuitka/helper/operations_inplace_truediv.h +17 -17
- nuitka/build/include/nuitka/helper/raising.h +29 -17
- nuitka/build/include/nuitka/helper/rangeobjects.h +17 -17
- nuitka/build/include/nuitka/helper/richcomparisons.h +14 -14
- nuitka/build/include/nuitka/helper/sequences.h +19 -13
- nuitka/build/include/nuitka/helper/sets.h +11 -12
- nuitka/build/include/nuitka/helper/slices.h +31 -25
- nuitka/build/include/nuitka/helper/strings.h +16 -17
- nuitka/build/include/nuitka/helper/subscripts.h +18 -201
- nuitka/build/include/nuitka/helper/tuples.h +64 -52
- nuitka/build/include/nuitka/helpers.h +38 -20
- nuitka/build/include/nuitka/importing.h +28 -21
- nuitka/build/include/nuitka/jit_sources.h +25 -0
- nuitka/build/include/nuitka/prelude.h +128 -46
- nuitka/build/include/nuitka/printing.h +22 -17
- nuitka/build/include/nuitka/python_pgo.h +19 -18
- nuitka/build/include/nuitka/safe_string_ops.h +20 -18
- nuitka/build/include/nuitka/threading.h +32 -33
- nuitka/build/include/nuitka/tracing.h +28 -18
- nuitka/build/include/nuitka/type_aliases.h +27 -0
- nuitka/build/include/nuitka/unfreezing.h +29 -23
- nuitka/build/inline_copy/bin/scons.py +14 -0
- nuitka/build/inline_copy/lib/scons-4.3.0/SCons/Variables/ListVariable.py +6 -6
- nuitka/build/inline_copy/pkg_resources/pkg_resources/__init__.py +0 -3
- nuitka/build/inline_copy/python_hacl/LICENSE.txt +201 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.c +1430 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_MD5.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.c +463 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA1.h +66 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.c +1273 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA2.h +204 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.c +734 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Hash_SHA3.h +131 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/Hacl_Streaming_Types.h +83 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt128_Verified.h +346 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/FStar_UInt_8_16_32_64.h +107 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/fstar_uint128_struct_endianness.h +68 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/internal/target.h +293 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/lowstar_endianness.h +231 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/include/krml/types.h +14 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_MD5.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA1.h +56 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA2.h +164 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/internal/Hacl_Hash_SHA3.h +65 -0
- nuitka/build/inline_copy/python_hacl/hacl_312/python_hacl_namespaces.h +89 -0
- nuitka/build/inline_copy/tqdm/tqdm/__init__.py +2 -2
- nuitka/build/inline_copy/tqdm/tqdm/_monitor.py +4 -1
- nuitka/build/inline_copy/tqdm/tqdm/utils.py +14 -8
- nuitka/build/inline_copy/tqdm/tqdm/version.py +1 -8
- nuitka/build/inline_copy/zlib/LICENSE +22 -0
- nuitka/build/inline_copy/zlib/crc32.c +1049 -0
- nuitka/build/inline_copy/zlib/crc32.h +9446 -0
- nuitka/build/inline_copy/zlib/zconf.h +551 -0
- nuitka/build/inline_copy/zlib/zlib.h +1938 -0
- nuitka/build/inline_copy/zlib/zutil.h +275 -0
- nuitka/build/static_src/CompiledAsyncgenType.c +176 -182
- nuitka/build/static_src/CompiledCellType.c +63 -40
- nuitka/build/static_src/CompiledCodeHelpers.c +181 -128
- nuitka/build/static_src/CompiledCoroutineType.c +196 -203
- nuitka/build/static_src/CompiledFrameType.c +287 -133
- nuitka/build/static_src/CompiledFunctionType.c +389 -95
- nuitka/build/static_src/CompiledGeneratorType.c +376 -252
- nuitka/build/static_src/CompiledGeneratorTypeUncompiledIntegration.c +185 -198
- nuitka/build/static_src/CompiledMethodType.c +83 -71
- nuitka/build/static_src/HelpersAllocator.c +88 -19
- nuitka/build/static_src/HelpersAttributes.c +33 -54
- nuitka/build/static_src/HelpersBuiltin.c +43 -33
- nuitka/build/static_src/HelpersBuiltinTypeMethods.c +17 -17
- nuitka/build/static_src/HelpersBytes.c +19 -20
- nuitka/build/static_src/HelpersCalling.c +33 -30
- nuitka/build/static_src/HelpersCallingGenerated.c +1000 -181
- nuitka/build/static_src/HelpersChecksumTools.c +35 -21
- nuitka/build/static_src/HelpersClasses.c +17 -17
- nuitka/build/static_src/HelpersComparisonEq.c +518 -492
- nuitka/build/static_src/HelpersComparisonEqUtils.c +21 -19
- nuitka/build/static_src/HelpersComparisonGe.c +513 -497
- nuitka/build/static_src/HelpersComparisonGt.c +512 -496
- nuitka/build/static_src/HelpersComparisonLe.c +513 -497
- nuitka/build/static_src/HelpersComparisonLt.c +512 -496
- nuitka/build/static_src/HelpersComparisonNe.c +520 -492
- nuitka/build/static_src/HelpersConsole.c +96 -0
- nuitka/build/static_src/HelpersConstantsBlob.c +542 -519
- nuitka/build/static_src/HelpersDeepcopy.c +33 -33
- nuitka/build/static_src/HelpersDictionaries.c +51 -29
- nuitka/build/static_src/HelpersDictionariesGenerated.c +177 -68
- nuitka/build/static_src/HelpersDumpBacktraces.c +63 -0
- nuitka/build/static_src/HelpersEnvironmentVariables.c +65 -0
- nuitka/build/static_src/HelpersEnvironmentVariablesSystem.c +93 -0
- nuitka/build/static_src/HelpersExceptions.c +161 -50
- nuitka/build/static_src/HelpersFiles.c +37 -17
- nuitka/build/static_src/HelpersFilesystemPaths.c +292 -181
- nuitka/build/static_src/HelpersFloats.c +37 -31
- nuitka/build/static_src/HelpersHeapStorage.c +21 -17
- nuitka/build/static_src/HelpersImport.c +48 -20
- nuitka/build/static_src/HelpersImportHard.c +53 -17
- nuitka/build/static_src/HelpersJitSources.c +46 -0
- nuitka/build/static_src/HelpersLists.c +140 -50
- nuitka/build/static_src/HelpersListsGenerated.c +41 -41
- nuitka/build/static_src/HelpersMappings.c +17 -17
- nuitka/build/static_src/HelpersMatching.c +137 -51
- nuitka/build/static_src/HelpersOperationBinaryAdd.c +173 -146
- nuitka/build/static_src/HelpersOperationBinaryAddUtils.c +99 -52
- nuitka/build/static_src/HelpersOperationBinaryBitand.c +50 -50
- nuitka/build/static_src/HelpersOperationBinaryBitor.c +50 -50
- nuitka/build/static_src/HelpersOperationBinaryBitxor.c +50 -50
- nuitka/build/static_src/HelpersOperationBinaryDivmod.c +41 -41
- nuitka/build/static_src/HelpersOperationBinaryDivmodUtils.c +17 -17
- nuitka/build/static_src/HelpersOperationBinaryFloordiv.c +41 -41
- nuitka/build/static_src/HelpersOperationBinaryInplaceAdd.c +20 -21
- nuitka/build/static_src/HelpersOperationBinaryLshift.c +47 -47
- nuitka/build/static_src/HelpersOperationBinaryMatmult.c +24 -24
- nuitka/build/static_src/HelpersOperationBinaryMod.c +107 -107
- nuitka/build/static_src/HelpersOperationBinaryMult.c +81 -75
- nuitka/build/static_src/HelpersOperationBinaryMultUtils.c +33 -30
- nuitka/build/static_src/HelpersOperationBinaryOlddiv.c +41 -41
- nuitka/build/static_src/HelpersOperationBinaryPow.c +44 -44
- nuitka/build/static_src/HelpersOperationBinaryPowUtils.c +12 -12
- nuitka/build/static_src/HelpersOperationBinaryRshift.c +47 -47
- nuitka/build/static_src/HelpersOperationBinarySub.c +80 -80
- nuitka/build/static_src/HelpersOperationBinaryTruediv.c +41 -41
- nuitka/build/static_src/HelpersOperationInplaceAdd.c +171 -153
- nuitka/build/static_src/HelpersOperationInplaceAddUtils.c +24 -22
- nuitka/build/static_src/HelpersOperationInplaceBitand.c +53 -53
- nuitka/build/static_src/HelpersOperationInplaceBitor.c +53 -53
- nuitka/build/static_src/HelpersOperationInplaceBitxor.c +53 -53
- nuitka/build/static_src/HelpersOperationInplaceFloordiv.c +62 -62
- nuitka/build/static_src/HelpersOperationInplaceLshift.c +44 -44
- nuitka/build/static_src/HelpersOperationInplaceMatmult.c +37 -37
- nuitka/build/static_src/HelpersOperationInplaceMod.c +134 -134
- nuitka/build/static_src/HelpersOperationInplaceMult.c +78 -78
- nuitka/build/static_src/HelpersOperationInplaceOlddiv.c +62 -62
- nuitka/build/static_src/HelpersOperationInplacePow.c +62 -62
- nuitka/build/static_src/HelpersOperationInplaceRshift.c +44 -44
- nuitka/build/static_src/HelpersOperationInplaceSub.c +112 -112
- nuitka/build/static_src/HelpersOperationInplaceTruediv.c +62 -62
- nuitka/build/static_src/HelpersProfiling.c +24 -23
- nuitka/build/static_src/HelpersPythonPgo.c +22 -22
- nuitka/build/static_src/HelpersRaising.c +88 -20
- nuitka/build/static_src/HelpersSafeStrings.c +34 -22
- nuitka/build/static_src/HelpersSequences.c +18 -19
- nuitka/build/static_src/HelpersSlices.c +29 -23
- nuitka/build/static_src/HelpersStrings.c +234 -37
- nuitka/build/static_src/HelpersTuples.c +46 -34
- nuitka/build/static_src/HelpersTypes.c +68 -23
- nuitka/build/static_src/InspectPatcher.c +108 -27
- nuitka/build/static_src/MainProgram.c +359 -263
- nuitka/build/static_src/MetaPathBasedLoader.c +367 -242
- nuitka/build/static_src/MetaPathBasedLoaderImportlibMetadataDistribution.c +39 -26
- nuitka/build/static_src/MetaPathBasedLoaderResourceReader.c +17 -18
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +97 -22
- nuitka/build/static_src/OnefileBootstrap.c +276 -164
- nuitka/build/static_src/OnefileSplashScreen.cpp +51 -27
- nuitka/code_generation/AsyncgenCodes.py +19 -17
- nuitka/code_generation/AttributeCodes.py +31 -27
- nuitka/code_generation/BinaryOperationHelperDefinitions.py +24 -20
- nuitka/code_generation/BranchCodes.py +19 -17
- nuitka/code_generation/BuiltinCodes.py +20 -17
- nuitka/code_generation/CallCodes.py +19 -17
- nuitka/code_generation/ClassCodes.py +19 -17
- nuitka/code_generation/CodeGeneration.py +48 -27
- nuitka/code_generation/CodeHelperSelection.py +19 -17
- nuitka/code_generation/CodeHelpers.py +24 -20
- nuitka/code_generation/CodeObjectCodes.py +34 -24
- nuitka/code_generation/ComparisonCodes.py +38 -20
- nuitka/code_generation/ComparisonHelperDefinitions.py +19 -17
- nuitka/code_generation/ConditionalCodes.py +19 -17
- nuitka/code_generation/ConstantCodes.py +82 -28
- nuitka/code_generation/Contexts.py +152 -26
- nuitka/code_generation/CoroutineCodes.py +19 -17
- nuitka/code_generation/CtypesCodes.py +19 -17
- nuitka/code_generation/DictCodes.py +25 -23
- nuitka/code_generation/Emission.py +21 -18
- nuitka/code_generation/ErrorCodes.py +27 -33
- nuitka/code_generation/EvalCodes.py +24 -20
- nuitka/code_generation/ExceptionCodes.py +27 -18
- nuitka/code_generation/ExpressionCTypeSelectionHelpers.py +20 -17
- nuitka/code_generation/ExpressionCodes.py +19 -17
- nuitka/code_generation/FrameCodes.py +24 -20
- nuitka/code_generation/FunctionCodes.py +24 -21
- nuitka/code_generation/GeneratorCodes.py +23 -20
- nuitka/code_generation/GlobalConstants.py +43 -23
- nuitka/code_generation/GlobalsLocalsCodes.py +21 -19
- nuitka/code_generation/IdCodes.py +19 -17
- nuitka/code_generation/ImportCodes.py +90 -50
- nuitka/code_generation/Indentation.py +23 -22
- nuitka/code_generation/IndexCodes.py +19 -17
- nuitka/code_generation/InjectCCodes.py +14 -12
- nuitka/code_generation/IntegerCodes.py +19 -17
- nuitka/code_generation/IteratorCodes.py +19 -17
- nuitka/code_generation/JitCodes.py +44 -0
- nuitka/code_generation/LabelCodes.py +19 -17
- nuitka/code_generation/LineNumberCodes.py +19 -17
- nuitka/code_generation/ListCodes.py +32 -36
- nuitka/code_generation/LoaderCodes.py +22 -17
- nuitka/code_generation/LocalsDictCodes.py +56 -32
- nuitka/code_generation/LoopCodes.py +19 -17
- nuitka/code_generation/MatchCodes.py +42 -22
- nuitka/code_generation/ModuleCodes.py +43 -25
- nuitka/code_generation/Namify.py +27 -23
- nuitka/code_generation/NetworkxCodes.py +51 -0
- nuitka/code_generation/OperationCodes.py +29 -31
- nuitka/code_generation/PackageResourceCodes.py +59 -23
- nuitka/code_generation/PrintCodes.py +19 -17
- nuitka/code_generation/PythonAPICodes.py +19 -17
- nuitka/code_generation/RaisingCodes.py +19 -17
- nuitka/code_generation/Reports.py +19 -17
- nuitka/code_generation/ReturnCodes.py +19 -17
- nuitka/code_generation/SetCodes.py +19 -17
- nuitka/code_generation/SliceCodes.py +22 -20
- nuitka/code_generation/StringCodes.py +19 -17
- nuitka/code_generation/SubscriptCodes.py +24 -30
- nuitka/code_generation/TensorflowCodes.py +54 -0
- nuitka/code_generation/TryCodes.py +19 -17
- nuitka/code_generation/TupleCodes.py +20 -18
- nuitka/code_generation/TypeAliasCodes.py +71 -0
- nuitka/code_generation/VariableCodes.py +26 -22
- nuitka/code_generation/VariableDeclarations.py +20 -17
- nuitka/code_generation/YieldCodes.py +22 -20
- nuitka/code_generation/__init__.py +5 -4
- nuitka/code_generation/c_types/CTypeBases.py +19 -17
- nuitka/code_generation/c_types/CTypeBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeCFloats.py +19 -17
- nuitka/code_generation/c_types/CTypeCLongs.py +19 -18
- nuitka/code_generation/c_types/CTypeModuleDictVariables.py +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaBooleans.py +19 -17
- nuitka/code_generation/c_types/CTypeNuitkaInts.py +19 -18
- nuitka/code_generation/c_types/CTypeNuitkaVoids.py +19 -17
- nuitka/code_generation/c_types/CTypePyObjectPointers.py +27 -25
- nuitka/code_generation/c_types/CTypeVoids.py +20 -17
- nuitka/code_generation/c_types/__init__.py +5 -4
- nuitka/code_generation/templates/CodeTemplatesAsyncgens.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesConstants.py +132 -36
- nuitka/code_generation/templates/CodeTemplatesCoroutines.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesExceptions.py +19 -18
- nuitka/code_generation/templates/CodeTemplatesFrames.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesFunction.py +18 -17
- nuitka/code_generation/templates/CodeTemplatesGeneratorFunction.py +19 -17
- nuitka/code_generation/templates/CodeTemplatesIterators.py +18 -18
- nuitka/code_generation/templates/CodeTemplatesLoader.py +25 -19
- nuitka/code_generation/templates/CodeTemplatesModules.py +244 -165
- nuitka/code_generation/templates/CodeTemplatesVariables.py +42 -27
- nuitka/code_generation/templates/TemplateDebugWrapper.py +19 -18
- nuitka/code_generation/templates/__init__.py +5 -4
- nuitka/code_generation/templates_c/CodeTemplateCallsMethodPositional.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateCallsMixed.c.j2 +18 -18
- nuitka/code_generation/templates_c/CodeTemplateCallsPositional.c.j2 +76 -25
- nuitka/code_generation/templates_c/CodeTemplateCallsPositionalMethodDescr.c.j2 +22 -22
- nuitka/code_generation/templates_c/CodeTemplateMakeListHinted.c.j2 +19 -19
- nuitka/code_generation/templates_c/CodeTemplateMakeListSmall.c.j2 +19 -19
- nuitka/code_generation/templates_c/HelperBuiltinMethodOperation.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperDictionaryCopy.c.j2 +121 -48
- nuitka/code_generation/templates_c/HelperImportHard.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperLongTools.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperObjectTools.c.j2 +6 -6
- nuitka/code_generation/templates_c/HelperOperationBinary.c.j2 +23 -23
- nuitka/code_generation/templates_c/HelperOperationComparison.c.j2 +35 -35
- nuitka/code_generation/templates_c/HelperOperationComparisonBytes.c.j2 +28 -28
- nuitka/code_generation/templates_c/HelperOperationComparisonFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperOperationComparisonInt.c.j2 +18 -18
- nuitka/code_generation/templates_c/HelperOperationComparisonList.c.j2 +44 -32
- nuitka/code_generation/templates_c/HelperOperationComparisonLong.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperOperationComparisonStr.c.j2 +28 -28
- nuitka/code_generation/templates_c/HelperOperationComparisonTuple.c.j2 +24 -24
- nuitka/code_generation/templates_c/HelperOperationComparisonUnicode.c.j2 +33 -29
- nuitka/code_generation/templates_c/HelperOperationInplace.c.j2 +20 -20
- nuitka/code_generation/templates_c/HelperSlotsBinary.c.j2 +27 -27
- nuitka/code_generation/templates_c/HelperSlotsBytes.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsCommon.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsFloat.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsInt.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsList.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsLong.c.j2 +26 -24
- nuitka/code_generation/templates_c/HelperSlotsSet.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsStr.c.j2 +17 -17
- nuitka/code_generation/templates_c/HelperSlotsTuple.c.j2 +21 -18
- nuitka/code_generation/templates_c/HelperSlotsUnicode.c.j2 +17 -17
- nuitka/containers/Namedtuples.py +19 -18
- nuitka/containers/OrderedSetsFallback.py +19 -17
- nuitka/containers/__init__.py +5 -4
- nuitka/distutils/Build.py +19 -18
- nuitka/distutils/DistutilCommands.py +34 -23
- nuitka/distutils/__init__.py +5 -4
- nuitka/finalizations/Finalization.py +20 -17
- nuitka/finalizations/FinalizeMarkups.py +21 -41
- nuitka/finalizations/__init__.py +5 -4
- nuitka/freezer/DependsExe.py +48 -28
- nuitka/freezer/DllDependenciesCommon.py +47 -20
- nuitka/freezer/DllDependenciesMacOS.py +147 -57
- nuitka/freezer/DllDependenciesPosix.py +29 -19
- nuitka/freezer/DllDependenciesWin32.py +29 -21
- nuitka/freezer/ImportDetection.py +20 -17
- nuitka/freezer/IncludedDataFiles.py +118 -47
- nuitka/freezer/IncludedEntryPoints.py +102 -38
- nuitka/freezer/Onefile.py +32 -22
- nuitka/freezer/Standalone.py +105 -50
- nuitka/freezer/__init__.py +5 -4
- nuitka/importing/IgnoreListing.py +19 -17
- nuitka/importing/ImportCache.py +24 -21
- nuitka/importing/ImportResolving.py +103 -95
- nuitka/importing/Importing.py +286 -92
- nuitka/importing/PreloadedPackages.py +21 -18
- nuitka/importing/Recursion.py +131 -47
- nuitka/importing/StandardLibrary.py +46 -28
- nuitka/importing/__init__.py +5 -4
- nuitka/nodes/AsyncgenNodes.py +19 -17
- nuitka/nodes/AttributeLookupNodes.py +19 -17
- nuitka/nodes/AttributeNodes.py +19 -17
- nuitka/nodes/AttributeNodesGenerated.py +49 -24
- nuitka/nodes/BuiltinAllNodes.py +19 -17
- nuitka/nodes/BuiltinAnyNodes.py +19 -17
- nuitka/nodes/BuiltinComplexNodes.py +20 -17
- nuitka/nodes/BuiltinDecodingNodes.py +19 -17
- nuitka/nodes/BuiltinDecoratorNodes.py +19 -17
- nuitka/nodes/BuiltinDictNodes.py +19 -17
- nuitka/nodes/BuiltinFormatNodes.py +20 -17
- nuitka/nodes/BuiltinHashNodes.py +19 -17
- nuitka/nodes/BuiltinInputNodes.py +19 -17
- nuitka/nodes/BuiltinIntegerNodes.py +19 -17
- nuitka/nodes/BuiltinIteratorNodes.py +24 -20
- nuitka/nodes/BuiltinLenNodes.py +19 -17
- nuitka/nodes/BuiltinNextNodes.py +19 -17
- nuitka/nodes/BuiltinOpenNodes.py +52 -18
- nuitka/nodes/BuiltinOperationNodeBasesGenerated.py +40 -23
- nuitka/nodes/BuiltinRangeNodes.py +21 -19
- nuitka/nodes/BuiltinRefNodes.py +68 -19
- nuitka/nodes/BuiltinSumNodes.py +20 -18
- nuitka/nodes/BuiltinTypeNodes.py +19 -17
- nuitka/nodes/BuiltinVarsNodes.py +19 -18
- nuitka/nodes/BytesNodes.py +19 -17
- nuitka/nodes/CallNodes.py +19 -17
- nuitka/nodes/Checkers.py +19 -17
- nuitka/nodes/ChildrenHavingMixins.py +1250 -302
- nuitka/nodes/ClassNodes.py +49 -29
- nuitka/nodes/CodeObjectSpecs.py +29 -18
- nuitka/nodes/ComparisonNodes.py +19 -17
- nuitka/nodes/ConditionalNodes.py +21 -23
- nuitka/nodes/ConstantRefNodes.py +57 -17
- nuitka/nodes/ContainerMakingNodes.py +19 -17
- nuitka/nodes/ContainerOperationNodes.py +19 -17
- nuitka/nodes/CoroutineNodes.py +19 -17
- nuitka/nodes/CtypesNodes.py +19 -18
- nuitka/nodes/DictionaryNodes.py +19 -18
- nuitka/nodes/ExceptionNodes.py +29 -17
- nuitka/nodes/ExecEvalNodes.py +19 -17
- nuitka/nodes/ExpressionBases.py +34 -26
- nuitka/nodes/ExpressionBasesGenerated.py +54 -32
- nuitka/nodes/ExpressionShapeMixins.py +19 -17
- nuitka/nodes/FrameNodes.py +19 -17
- nuitka/nodes/FunctionAttributeNodes.py +19 -17
- nuitka/nodes/FunctionNodes.py +81 -35
- nuitka/nodes/FutureSpecs.py +35 -20
- nuitka/nodes/GeneratorNodes.py +21 -19
- nuitka/nodes/GlobalsLocalsNodes.py +22 -17
- nuitka/nodes/HardImportNodesGenerated.py +545 -129
- nuitka/nodes/ImportHardNodes.py +46 -38
- nuitka/nodes/ImportNodes.py +436 -446
- nuitka/nodes/IndicatorMixins.py +19 -17
- nuitka/nodes/InjectCNodes.py +19 -18
- nuitka/nodes/IterationHandles.py +55 -34
- nuitka/nodes/KeyValuePairNodes.py +19 -17
- nuitka/nodes/ListOperationNodes.py +33 -21
- nuitka/nodes/LocalsDictNodes.py +19 -17
- nuitka/nodes/LocalsScopes.py +41 -41
- nuitka/nodes/LoopNodes.py +28 -17
- nuitka/nodes/MatchNodes.py +37 -24
- nuitka/nodes/ModuleAttributeNodes.py +18 -35
- nuitka/nodes/ModuleNodes.py +90 -31
- nuitka/nodes/NetworkxNodes.py +45 -0
- nuitka/nodes/NodeBases.py +45 -43
- nuitka/nodes/NodeMakingHelpers.py +21 -19
- nuitka/nodes/NodeMetaClasses.py +45 -28
- nuitka/nodes/OperatorNodes.py +28 -26
- nuitka/nodes/OperatorNodesUnary.py +20 -17
- nuitka/nodes/OsSysNodes.py +66 -18
- nuitka/nodes/OutlineNodes.py +22 -20
- nuitka/nodes/PackageMetadataNodes.py +37 -27
- nuitka/nodes/PackageResourceNodes.py +29 -23
- nuitka/nodes/PrintNodes.py +19 -17
- nuitka/nodes/ReturnNodes.py +20 -18
- nuitka/nodes/SideEffectNodes.py +19 -17
- nuitka/nodes/SliceNodes.py +20 -18
- nuitka/nodes/StatementBasesGenerated.py +125 -77
- nuitka/nodes/StatementNodes.py +19 -17
- nuitka/nodes/StrNodes.py +19 -17
- nuitka/nodes/StringConcatenationNodes.py +20 -17
- nuitka/nodes/SubscriptNodes.py +26 -24
- nuitka/nodes/TensorflowNodes.py +38 -0
- nuitka/nodes/TryNodes.py +19 -17
- nuitka/nodes/TypeMatchNodes.py +19 -17
- nuitka/nodes/TypeNodes.py +40 -17
- nuitka/nodes/VariableAssignNodes.py +122 -64
- nuitka/nodes/VariableDelNodes.py +19 -17
- nuitka/nodes/VariableNameNodes.py +19 -17
- nuitka/nodes/VariableRefNodes.py +63 -26
- nuitka/nodes/VariableReleaseNodes.py +19 -17
- nuitka/nodes/YieldNodes.py +21 -19
- nuitka/nodes/__init__.py +5 -4
- nuitka/nodes/shapes/BuiltinTypeShapes.py +145 -39
- nuitka/nodes/shapes/ControlFlowDescriptions.py +19 -17
- nuitka/nodes/shapes/ShapeMixins.py +40 -17
- nuitka/nodes/shapes/StandardShapes.py +27 -20
- nuitka/nodes/shapes/__init__.py +5 -4
- nuitka/optimizations/BytecodeDemotion.py +19 -17
- nuitka/optimizations/FunctionInlining.py +22 -23
- nuitka/optimizations/Graphs.py +19 -17
- nuitka/optimizations/Optimization.py +39 -35
- nuitka/optimizations/OptimizeBuiltinCalls.py +31 -27
- nuitka/optimizations/Tags.py +19 -18
- nuitka/optimizations/TraceCollections.py +67 -24
- nuitka/optimizations/ValueTraces.py +92 -25
- nuitka/optimizations/__init__.py +5 -4
- nuitka/pgo/PGO.py +33 -23
- nuitka/pgo/__init__.py +5 -4
- nuitka/plugins/PluginBase.py +610 -109
- nuitka/plugins/Plugins.py +241 -58
- nuitka/plugins/YamlPluginBase.py +121 -0
- nuitka/plugins/__init__.py +5 -4
- nuitka/plugins/standard/AntiBloatPlugin.py +357 -129
- nuitka/plugins/standard/ConsiderPyLintAnnotationsPlugin.py +20 -19
- nuitka/plugins/standard/DataFilesPlugin.py +65 -29
- nuitka/plugins/standard/DelvewheelPlugin.py +32 -24
- nuitka/plugins/standard/DillPlugin/DillPlugin.c +37 -0
- nuitka/plugins/standard/DillPlugin/dill-postLoad.py +256 -0
- nuitka/plugins/standard/DillPlugin.py +42 -134
- nuitka/plugins/standard/DllFilesPlugin.py +125 -42
- nuitka/plugins/standard/EnumPlugin.py +19 -17
- nuitka/plugins/standard/EventletPlugin.py +19 -17
- nuitka/plugins/standard/GeventPlugin.py +19 -17
- nuitka/plugins/standard/GiPlugin.py +44 -28
- nuitka/plugins/standard/GlfwPlugin.py +20 -17
- nuitka/plugins/standard/ImplicitImports.py +407 -46
- nuitka/plugins/standard/KivyPlugin.py +30 -17
- nuitka/plugins/standard/MatplotlibPlugin.py +88 -42
- nuitka/plugins/standard/MultiprocessingPlugin.py +25 -20
- nuitka/plugins/standard/NumpyPlugin.py +19 -17
- nuitka/plugins/standard/OptionsNannyPlugin.py +48 -76
- nuitka/plugins/standard/PbrPlugin.py +21 -19
- nuitka/plugins/standard/PkgResourcesPlugin.py +34 -23
- nuitka/plugins/standard/PmwPlugin.py +30 -27
- nuitka/plugins/standard/PySidePyQtPlugin.py +74 -80
- nuitka/plugins/standard/PywebViewPlugin.py +19 -17
- nuitka/plugins/standard/SpacyPlugin.py +136 -0
- nuitka/plugins/standard/TensorflowPlugin.py +20 -17
- nuitka/plugins/standard/TkinterPlugin.py +103 -53
- nuitka/plugins/standard/TorchPlugin.py +20 -17
- nuitka/plugins/standard/TransformersPlugin.py +94 -30
- nuitka/plugins/standard/TrioPlugin.py +18 -15
- nuitka/plugins/standard/UpxPlugin.py +21 -19
- nuitka/plugins/standard/__init__.py +5 -4
- nuitka/plugins/standard/standard.nuitka-package.config.yml +3449 -1299
- nuitka/plugins/standard/stdlib2.nuitka-package.config.yml +14 -14
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +121 -66
- nuitka/reports/CompilationReportReader.py +67 -0
- nuitka/reports/LicenseReport.rst.j2 +21 -21
- nuitka/reports/Reports.py +352 -76
- nuitka/reports/__init__.py +5 -4
- nuitka/specs/BuiltinBytesOperationSpecs.py +18 -17
- nuitka/specs/BuiltinDictOperationSpecs.py +18 -17
- nuitka/specs/BuiltinListOperationSpecs.py +18 -17
- nuitka/specs/BuiltinParameterSpecs.py +30 -20
- nuitka/specs/BuiltinStrOperationSpecs.py +19 -18
- nuitka/specs/BuiltinTypeOperationSpecs.py +18 -18
- nuitka/specs/BuiltinUnicodeOperationSpecs.py +18 -17
- nuitka/specs/HardImportSpecs.py +67 -22
- nuitka/specs/ParameterSpecs.py +56 -41
- nuitka/specs/__init__.py +5 -4
- nuitka/tools/Basics.py +20 -18
- nuitka/tools/__init__.py +5 -4
- nuitka/tools/commercial/__init__.py +7 -6
- nuitka/tools/data_composer/DataComposer.py +78 -62
- nuitka/tools/data_composer/__init__.py +5 -4
- nuitka/tools/data_composer/__main__.py +18 -17
- nuitka/tools/environments/CreateEnvironment.py +20 -17
- nuitka/tools/environments/Virtualenv.py +60 -32
- nuitka/tools/environments/__init__.py +5 -4
- nuitka/tools/general/__init__.py +5 -4
- nuitka/tools/general/dll_report/__init__.py +5 -4
- nuitka/tools/general/dll_report/__main__.py +19 -21
- nuitka/tools/general/find_module/FindModuleCode.py +35 -22
- nuitka/tools/general/find_module/__init__.py +5 -4
- nuitka/tools/onefile_compressor/OnefileCompressor.py +213 -131
- nuitka/tools/onefile_compressor/__init__.py +5 -4
- nuitka/tools/onefile_compressor/__main__.py +18 -17
- nuitka/tools/podman/Podman.py +19 -17
- nuitka/tools/podman/__init__.py +5 -4
- nuitka/tools/podman/__main__.py +35 -19
- nuitka/tools/profiler/__init__.py +5 -4
- nuitka/tools/profiler/__main__.py +18 -17
- nuitka/tools/scanning/DisplayPackageDLLs.py +47 -22
- nuitka/tools/scanning/DisplayPackageData.py +31 -19
- nuitka/tools/scanning/__init__.py +5 -4
- nuitka/tools/specialize/CTypeDescriptions.py +93 -71
- nuitka/tools/specialize/Common.py +18 -17
- nuitka/tools/specialize/SpecializeC.py +31 -27
- nuitka/tools/specialize/SpecializePython.py +108 -45
- nuitka/tools/specialize/__init__.py +5 -4
- nuitka/tools/testing/Common.py +106 -52
- nuitka/tools/testing/Constructs.py +19 -17
- nuitka/tools/testing/OutputComparison.py +54 -18
- nuitka/tools/testing/Pythons.py +19 -18
- nuitka/tools/testing/RuntimeTracing.py +20 -19
- nuitka/tools/testing/SearchModes.py +26 -20
- nuitka/tools/testing/Valgrind.py +19 -17
- nuitka/tools/testing/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__init__.py +5 -4
- nuitka/tools/testing/check_reference_counts/__main__.py +18 -18
- nuitka/tools/testing/compare_with_cpython/__init__.py +5 -4
- nuitka/tools/testing/compare_with_cpython/__main__.py +36 -29
- nuitka/tools/testing/find_sxs_modules/__init__.py +5 -4
- nuitka/tools/testing/find_sxs_modules/__main__.py +17 -17
- nuitka/tools/testing/measure_construct_performance/__init__.py +5 -4
- nuitka/tools/testing/measure_construct_performance/__main__.py +22 -25
- nuitka/tools/testing/run_nuitka_tests/__init__.py +5 -4
- nuitka/tools/testing/run_nuitka_tests/__main__.py +57 -40
- nuitka/tools/watch/AutoStage.py +144 -0
- nuitka/tools/watch/GitHub.py +113 -0
- nuitka/tools/watch/__init__.py +5 -4
- nuitka/tools/watch/__main__.py +322 -91
- nuitka/tree/Building.py +176 -147
- nuitka/tree/ComplexCallHelperFunctions.py +80 -58
- nuitka/tree/Extractions.py +19 -17
- nuitka/tree/InternalModule.py +29 -20
- nuitka/tree/Operations.py +19 -17
- nuitka/tree/ReformulationAssertStatements.py +20 -17
- nuitka/tree/ReformulationAssignmentStatements.py +92 -91
- nuitka/tree/ReformulationBooleanExpressions.py +19 -17
- nuitka/tree/ReformulationCallExpressions.py +20 -18
- nuitka/tree/ReformulationClasses.py +45 -39
- nuitka/tree/ReformulationClasses3.py +146 -98
- nuitka/tree/ReformulationComparisonExpressions.py +29 -35
- nuitka/tree/ReformulationContractionExpressions.py +58 -55
- nuitka/tree/ReformulationDictionaryCreation.py +40 -35
- nuitka/tree/ReformulationExecStatements.py +42 -39
- nuitka/tree/ReformulationForLoopStatements.py +30 -34
- nuitka/tree/ReformulationFunctionStatements.py +58 -54
- nuitka/tree/ReformulationImportStatements.py +34 -29
- nuitka/tree/ReformulationLambdaExpressions.py +23 -24
- nuitka/tree/ReformulationMatchStatements.py +244 -92
- nuitka/tree/ReformulationMultidist.py +22 -18
- nuitka/tree/ReformulationNamespacePackages.py +55 -46
- nuitka/tree/ReformulationPrintStatements.py +23 -24
- nuitka/tree/ReformulationSequenceCreation.py +50 -49
- nuitka/tree/ReformulationSubscriptExpressions.py +19 -17
- nuitka/tree/ReformulationTryExceptStatements.py +19 -17
- nuitka/tree/ReformulationTryFinallyStatements.py +34 -17
- nuitka/tree/ReformulationWhileLoopStatements.py +19 -17
- nuitka/tree/ReformulationWithStatements.py +39 -41
- nuitka/tree/ReformulationYieldExpressions.py +21 -19
- nuitka/tree/SourceHandling.py +76 -31
- nuitka/tree/SyntaxErrors.py +19 -17
- nuitka/tree/TreeHelpers.py +33 -20
- nuitka/tree/VariableClosure.py +35 -39
- nuitka/tree/__init__.py +5 -4
- nuitka/utils/AppDirs.py +41 -20
- nuitka/utils/CStrings.py +66 -21
- nuitka/utils/CommandLineOptions.py +84 -19
- nuitka/utils/Distributions.py +445 -54
- nuitka/utils/Download.py +89 -57
- nuitka/utils/Execution.py +73 -34
- nuitka/utils/FileOperations.py +318 -74
- nuitka/utils/Hashing.py +55 -33
- nuitka/utils/Images.py +26 -19
- nuitka/utils/Importing.py +118 -24
- nuitka/utils/InstalledPythons.py +80 -75
- nuitka/utils/InstanceCounters.py +20 -17
- nuitka/utils/Jinja2.py +30 -22
- nuitka/utils/Json.py +19 -17
- nuitka/utils/MacOSApp.py +26 -18
- nuitka/utils/MemoryUsage.py +20 -18
- nuitka/utils/ModuleNames.py +42 -26
- nuitka/utils/ReExecute.py +50 -28
- nuitka/utils/Rest.py +20 -17
- nuitka/utils/SharedLibraries.py +161 -75
- nuitka/utils/Shebang.py +20 -17
- nuitka/utils/Signing.py +63 -18
- nuitka/utils/SlotMetaClasses.py +57 -0
- nuitka/utils/StaticLibraries.py +83 -56
- nuitka/utils/ThreadedExecutor.py +18 -17
- nuitka/utils/Timing.py +22 -20
- nuitka/utils/Utils.py +115 -25
- nuitka/utils/WindowsFileUsage.py +22 -20
- nuitka/utils/WindowsResources.py +25 -18
- nuitka/utils/Yaml.py +62 -24
- nuitka/utils/__init__.py +5 -4
- Nuitka_winsvc-1.8.dist-info/RECORD +0 -905
- nuitka/build/inline_copy/tqdm/tqdm/_tqdm_gui.py +0 -9
- nuitka/build/inline_copy/tqdm/tqdm/gui.py +0 -191
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-1.8.dist-info → Nuitka_winsvc-2.4.8.dist-info}/top_level.txt +0 -0
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
3
|
-
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
|
-
// integrates with CPython, but also works on its own.
|
|
5
|
-
//
|
|
6
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
// you may not use this file except in compliance with the License.
|
|
8
|
-
// You may obtain a copy of the License at
|
|
9
|
-
//
|
|
10
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
//
|
|
12
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
// See the License for the specific language governing permissions and
|
|
16
|
-
// limitations under the License.
|
|
17
|
-
//
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
18
3
|
#ifndef __NUITKA_HELPER_RAISING_H__
|
|
19
4
|
#define __NUITKA_HELPER_RAISING_H__
|
|
20
5
|
|
|
@@ -80,4 +65,31 @@ extern void RAISE_EXCEPTION_WITH_TRACEBACK(PyThreadState *tstate, PyObject **exc
|
|
|
80
65
|
|
|
81
66
|
extern bool RERAISE_EXCEPTION(PyObject **exception_type, PyObject **exception_value, PyTracebackObject **exception_tb);
|
|
82
67
|
|
|
68
|
+
extern void RAISE_CURRENT_EXCEPTION_NAME_ERROR(PyThreadState *tstate, PyObject *variable_name,
|
|
69
|
+
PyObject **exception_type, PyObject **exception_value);
|
|
70
|
+
|
|
71
|
+
#if PYTHON_VERSION < 0x340
|
|
72
|
+
extern void RAISE_CURRENT_EXCEPTION_GLOBAL_NAME_ERROR(PyThreadState *tstate, PyObject *variable_name,
|
|
73
|
+
PyObject **exception_type, PyObject **exception_value);
|
|
83
74
|
#endif
|
|
75
|
+
|
|
76
|
+
extern void RAISE_EXCEPTION_WITH_CAUSE_STATE(PyThreadState *tstate,
|
|
77
|
+
struct Nuitka_ExceptionPreservationItem *exception_state,
|
|
78
|
+
PyObject *exception_cause);
|
|
79
|
+
|
|
80
|
+
#endif
|
|
81
|
+
|
|
82
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
83
|
+
// integrates with CPython, but also works on its own.
|
|
84
|
+
//
|
|
85
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
86
|
+
// you may not use this file except in compliance with the License.
|
|
87
|
+
// You may obtain a copy of the License at
|
|
88
|
+
//
|
|
89
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
90
|
+
//
|
|
91
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
92
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
93
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
94
|
+
// See the License for the specific language governing permissions and
|
|
95
|
+
// limitations under the License.
|
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
3
|
-
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
|
-
// integrates with CPython, but also works on its own.
|
|
5
|
-
//
|
|
6
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
// you may not use this file except in compliance with the License.
|
|
8
|
-
// You may obtain a copy of the License at
|
|
9
|
-
//
|
|
10
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
//
|
|
12
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
// See the License for the specific language governing permissions and
|
|
16
|
-
// limitations under the License.
|
|
17
|
-
//
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
18
3
|
#ifndef __NUITKA_HELPER_RANGEOBJECTS_H__
|
|
19
4
|
#define __NUITKA_HELPER_RANGEOBJECTS_H__
|
|
20
5
|
|
|
@@ -64,3 +49,18 @@ extern PyObject *MAKE_XRANGE(PyThreadState *tstate, long start, long stop, long
|
|
|
64
49
|
#endif
|
|
65
50
|
|
|
66
51
|
#endif
|
|
52
|
+
|
|
53
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
54
|
+
// integrates with CPython, but also works on its own.
|
|
55
|
+
//
|
|
56
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
57
|
+
// you may not use this file except in compliance with the License.
|
|
58
|
+
// You may obtain a copy of the License at
|
|
59
|
+
//
|
|
60
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
61
|
+
//
|
|
62
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
63
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
64
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
65
|
+
// See the License for the specific language governing permissions and
|
|
66
|
+
// limitations under the License.
|
|
@@ -1,5 +1,17 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_HELPER_RICHCOMPARISONS_H__
|
|
4
|
+
#define __NUITKA_HELPER_RICHCOMPARISONS_H__
|
|
5
|
+
|
|
6
|
+
#include "nuitka/helper/comparisons_eq.h"
|
|
7
|
+
#include "nuitka/helper/comparisons_ge.h"
|
|
8
|
+
#include "nuitka/helper/comparisons_gt.h"
|
|
9
|
+
#include "nuitka/helper/comparisons_le.h"
|
|
10
|
+
#include "nuitka/helper/comparisons_lt.h"
|
|
11
|
+
#include "nuitka/helper/comparisons_ne.h"
|
|
12
|
+
|
|
13
|
+
#endif
|
|
14
|
+
|
|
3
15
|
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
16
|
// integrates with CPython, but also works on its own.
|
|
5
17
|
//
|
|
@@ -14,15 +26,3 @@
|
|
|
14
26
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
27
|
// See the License for the specific language governing permissions and
|
|
16
28
|
// limitations under the License.
|
|
17
|
-
//
|
|
18
|
-
#ifndef __NUITKA_HELPER_RICHCOMPARISONS_H__
|
|
19
|
-
#define __NUITKA_HELPER_RICHCOMPARISONS_H__
|
|
20
|
-
|
|
21
|
-
#include "nuitka/helper/comparisons_eq.h"
|
|
22
|
-
#include "nuitka/helper/comparisons_ge.h"
|
|
23
|
-
#include "nuitka/helper/comparisons_gt.h"
|
|
24
|
-
#include "nuitka/helper/comparisons_le.h"
|
|
25
|
-
#include "nuitka/helper/comparisons_lt.h"
|
|
26
|
-
#include "nuitka/helper/comparisons_ne.h"
|
|
27
|
-
|
|
28
|
-
#endif
|
|
@@ -1,5 +1,22 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_HELPER_SEQUENCES_H__
|
|
4
|
+
#define __NUITKA_HELPER_SEQUENCES_H__
|
|
5
|
+
|
|
6
|
+
// TODO: Provide enhanced form of PySequence_Contains with less overhead as well.
|
|
7
|
+
|
|
8
|
+
extern bool SEQUENCE_SET_ITEM(PyObject *sequence, Py_ssize_t index, PyObject *value);
|
|
9
|
+
|
|
10
|
+
extern Py_ssize_t Nuitka_PyObject_Size(PyObject *sequence);
|
|
11
|
+
|
|
12
|
+
// Our version of "_PyObject_HasLen", a former API function.
|
|
13
|
+
NUITKA_MAY_BE_UNUSED static int Nuitka_PyObject_HasLen(PyObject *o) {
|
|
14
|
+
return (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_length) ||
|
|
15
|
+
(Py_TYPE(o)->tp_as_mapping && Py_TYPE(o)->tp_as_mapping->mp_length);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
#endif
|
|
19
|
+
|
|
3
20
|
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
21
|
// integrates with CPython, but also works on its own.
|
|
5
22
|
//
|
|
@@ -14,14 +31,3 @@
|
|
|
14
31
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
32
|
// See the License for the specific language governing permissions and
|
|
16
33
|
// limitations under the License.
|
|
17
|
-
//
|
|
18
|
-
#ifndef __NUITKA_HELPER_SEQUENCES_H__
|
|
19
|
-
#define __NUITKA_HELPER_SEQUENCES_H__
|
|
20
|
-
|
|
21
|
-
// TODO: Provide enhanced form of PySequence_Contains with less overhead as well.
|
|
22
|
-
|
|
23
|
-
extern bool SEQUENCE_SET_ITEM(PyObject *sequence, Py_ssize_t index, PyObject *value);
|
|
24
|
-
|
|
25
|
-
extern Py_ssize_t Nuitka_PyObject_Size(PyObject *sequence);
|
|
26
|
-
|
|
27
|
-
#endif
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_SETS_H__
|
|
4
|
+
#define __NUITKA_SETS_H__
|
|
5
|
+
|
|
6
|
+
// This is not Python headers before 3.10, but we use it in our assertions.
|
|
7
|
+
#if PYTHON_VERSION < 0x3a0
|
|
8
|
+
#define PySet_CheckExact(op) (Py_TYPE(op) == &PySet_Type)
|
|
9
|
+
#endif
|
|
10
|
+
|
|
11
|
+
#endif
|
|
3
12
|
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
13
|
// integrates with CPython, but also works on its own.
|
|
5
14
|
//
|
|
@@ -14,13 +23,3 @@
|
|
|
14
23
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
24
|
// See the License for the specific language governing permissions and
|
|
16
25
|
// limitations under the License.
|
|
17
|
-
//
|
|
18
|
-
#ifndef __NUITKA_SETS_H__
|
|
19
|
-
#define __NUITKA_SETS_H__
|
|
20
|
-
|
|
21
|
-
// This is not Python headers before 3.10, but we use it in our assertions.
|
|
22
|
-
#if PYTHON_VERSION < 0x3a0
|
|
23
|
-
#define PySet_CheckExact(op) (Py_TYPE(op) == &PySet_Type)
|
|
24
|
-
#endif
|
|
25
|
-
|
|
26
|
-
#endif
|
|
@@ -1,47 +1,38 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
3
|
-
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
|
-
// integrates with CPython, but also works on its own.
|
|
5
|
-
//
|
|
6
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
// you may not use this file except in compliance with the License.
|
|
8
|
-
// You may obtain a copy of the License at
|
|
9
|
-
//
|
|
10
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
//
|
|
12
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
// See the License for the specific language governing permissions and
|
|
16
|
-
// limitations under the License.
|
|
17
|
-
//
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
18
3
|
#ifndef __NUITKA_HELPER_SLICES_H__
|
|
19
4
|
#define __NUITKA_HELPER_SLICES_H__
|
|
20
5
|
|
|
6
|
+
/* This file is included from another C file, help IDEs to still parse it on its own. */
|
|
7
|
+
#ifdef __IDE_ONLY__
|
|
8
|
+
#include "nuitka/prelude.h"
|
|
9
|
+
#endif
|
|
10
|
+
|
|
21
11
|
#if PYTHON_VERSION >= 0x3a0
|
|
22
|
-
extern PyObject *Nuitka_Slice_New(PyObject *start, PyObject *stop, PyObject *step);
|
|
12
|
+
extern PyObject *Nuitka_Slice_New(PyThreadState *tstate, PyObject *start, PyObject *stop, PyObject *step);
|
|
23
13
|
#else
|
|
24
|
-
#define Nuitka_Slice_New PySlice_New
|
|
14
|
+
#define Nuitka_Slice_New(tstate, start, stop, step) PySlice_New(start, stop, step)
|
|
25
15
|
#endif
|
|
26
16
|
|
|
27
17
|
// Note: Cannot these cannot fail, PySlice_New does not return errors.
|
|
28
|
-
NUITKA_MAY_BE_UNUSED static PyObject *MAKE_SLICE_OBJECT3(
|
|
18
|
+
NUITKA_MAY_BE_UNUSED static PyObject *MAKE_SLICE_OBJECT3(PyThreadState *tstate, PyObject *start, PyObject *stop,
|
|
19
|
+
PyObject *step) {
|
|
29
20
|
CHECK_OBJECT(start);
|
|
30
21
|
CHECK_OBJECT(stop);
|
|
31
22
|
CHECK_OBJECT(step);
|
|
32
23
|
|
|
33
|
-
return Nuitka_Slice_New(start, stop, step);
|
|
24
|
+
return Nuitka_Slice_New(tstate, start, stop, step);
|
|
34
25
|
}
|
|
35
|
-
NUITKA_MAY_BE_UNUSED static PyObject *MAKE_SLICE_OBJECT2(PyObject *start, PyObject *stop) {
|
|
26
|
+
NUITKA_MAY_BE_UNUSED static PyObject *MAKE_SLICE_OBJECT2(PyThreadState *tstate, PyObject *start, PyObject *stop) {
|
|
36
27
|
CHECK_OBJECT(start);
|
|
37
28
|
CHECK_OBJECT(stop);
|
|
38
29
|
|
|
39
|
-
return Nuitka_Slice_New(start, stop, Py_None);
|
|
30
|
+
return Nuitka_Slice_New(tstate, start, stop, Py_None);
|
|
40
31
|
}
|
|
41
|
-
NUITKA_MAY_BE_UNUSED static PyObject *MAKE_SLICE_OBJECT1(PyObject *stop) {
|
|
32
|
+
NUITKA_MAY_BE_UNUSED static PyObject *MAKE_SLICE_OBJECT1(PyThreadState *tstate, PyObject *stop) {
|
|
42
33
|
CHECK_OBJECT(stop);
|
|
43
34
|
|
|
44
|
-
return Nuitka_Slice_New(Py_None, stop, Py_None);
|
|
35
|
+
return Nuitka_Slice_New(tstate, Py_None, stop, Py_None);
|
|
45
36
|
}
|
|
46
37
|
|
|
47
38
|
#if PYTHON_VERSION < 0x300
|
|
@@ -306,3 +297,18 @@ NUITKA_MAY_BE_UNUSED static bool DEL_INDEX_SLICE(PyObject *target, Py_ssize_t lo
|
|
|
306
297
|
#endif
|
|
307
298
|
|
|
308
299
|
#endif
|
|
300
|
+
|
|
301
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
302
|
+
// integrates with CPython, but also works on its own.
|
|
303
|
+
//
|
|
304
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
305
|
+
// you may not use this file except in compliance with the License.
|
|
306
|
+
// You may obtain a copy of the License at
|
|
307
|
+
//
|
|
308
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
309
|
+
//
|
|
310
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
311
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
312
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
313
|
+
// See the License for the specific language governing permissions and
|
|
314
|
+
// limitations under the License.
|
|
@@ -1,5 +1,19 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
3
|
+
#ifndef __NUITKA_STRINGS_H__
|
|
4
|
+
#define __NUITKA_STRINGS_H__
|
|
5
|
+
|
|
6
|
+
#if PYTHON_VERSION < 0x300
|
|
7
|
+
extern PyObject *STR_JOIN(PyThreadState *tstate, PyObject *str, PyObject *iterable);
|
|
8
|
+
#endif
|
|
9
|
+
|
|
10
|
+
extern PyObject *UNICODE_JOIN(PyThreadState *tstate, PyObject *str, PyObject *iterable);
|
|
11
|
+
extern PyObject *UNICODE_PARTITION(PyThreadState *tstate, PyObject *str, PyObject *sep);
|
|
12
|
+
extern PyObject *UNICODE_RPARTITION(PyThreadState *tstate, PyObject *str, PyObject *sep);
|
|
13
|
+
|
|
14
|
+
extern PyObject *NuitkaUnicode_FromWideChar(wchar_t const *str, Py_ssize_t size);
|
|
15
|
+
|
|
16
|
+
#endif
|
|
3
17
|
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
18
|
// integrates with CPython, but also works on its own.
|
|
5
19
|
//
|
|
@@ -14,18 +28,3 @@
|
|
|
14
28
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
29
|
// See the License for the specific language governing permissions and
|
|
16
30
|
// limitations under the License.
|
|
17
|
-
//
|
|
18
|
-
#ifndef __NUITKA_STRINGS_H__
|
|
19
|
-
#define __NUITKA_STRINGS_H__
|
|
20
|
-
|
|
21
|
-
#if PYTHON_VERSION < 0x300
|
|
22
|
-
extern PyObject *STR_JOIN(PyThreadState *tstate, PyObject *str, PyObject *iterable);
|
|
23
|
-
#endif
|
|
24
|
-
|
|
25
|
-
extern PyObject *UNICODE_JOIN(PyThreadState *tstate, PyObject *str, PyObject *iterable);
|
|
26
|
-
extern PyObject *UNICODE_PARTITION(PyThreadState *tstate, PyObject *str, PyObject *sep);
|
|
27
|
-
extern PyObject *UNICODE_RPARTITION(PyThreadState *tstate, PyObject *str, PyObject *sep);
|
|
28
|
-
|
|
29
|
-
extern PyObject *NuitkaUnicode_FromWideChar(const wchar_t *str, Py_ssize_t size);
|
|
30
|
-
|
|
31
|
-
#endif
|
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
// Copyright
|
|
2
|
-
|
|
3
|
-
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
4
|
-
// integrates with CPython, but also works on its own.
|
|
5
|
-
//
|
|
6
|
-
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
// you may not use this file except in compliance with the License.
|
|
8
|
-
// You may obtain a copy of the License at
|
|
9
|
-
//
|
|
10
|
-
// http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
//
|
|
12
|
-
// Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
// See the License for the specific language governing permissions and
|
|
16
|
-
// limitations under the License.
|
|
17
|
-
//
|
|
1
|
+
// Copyright 2024, Kay Hayen, mailto:kay.hayen@gmail.com find license text at end of file
|
|
2
|
+
|
|
18
3
|
#ifndef __NUITKA_HELPER_SUBSCRIPTS_H__
|
|
19
4
|
#define __NUITKA_HELPER_SUBSCRIPTS_H__
|
|
20
5
|
|
|
@@ -253,190 +238,7 @@ NUITKA_MAY_BE_UNUSED static PyObject *LOOKUP_SUBSCRIPT(PyThreadState *tstate, Py
|
|
|
253
238
|
#endif
|
|
254
239
|
}
|
|
255
240
|
|
|
256
|
-
|
|
257
|
-
Py_ssize_t int_subscript) {
|
|
258
|
-
CHECK_OBJECT(source);
|
|
259
|
-
CHECK_OBJECT(const_subscript);
|
|
260
|
-
|
|
261
|
-
#if _NUITKA_EXPERIMENTAL_DISABLE_SUBSCRIPT_OPT
|
|
262
|
-
PyObject *item = PyObject_GetItem(source, const_subscript);
|
|
263
|
-
|
|
264
|
-
if (item) {
|
|
265
|
-
Py_DECREF(item);
|
|
266
|
-
return true;
|
|
267
|
-
} else {
|
|
268
|
-
return false;
|
|
269
|
-
}
|
|
270
|
-
#else
|
|
271
|
-
PyTypeObject *type = Py_TYPE(source);
|
|
272
|
-
PyMappingMethods *tp_as_mapping = type->tp_as_mapping;
|
|
273
|
-
|
|
274
|
-
if (tp_as_mapping && tp_as_mapping->mp_subscript) {
|
|
275
|
-
if (PyList_CheckExact(source)) {
|
|
276
|
-
Py_ssize_t list_size = PyList_GET_SIZE(source);
|
|
277
|
-
|
|
278
|
-
if (int_subscript < 0) {
|
|
279
|
-
if (-int_subscript > list_size) {
|
|
280
|
-
return false;
|
|
281
|
-
}
|
|
282
|
-
|
|
283
|
-
int_subscript += list_size;
|
|
284
|
-
} else {
|
|
285
|
-
if (int_subscript >= list_size) {
|
|
286
|
-
return false;
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
|
|
290
|
-
return true;
|
|
291
|
-
}
|
|
292
|
-
#if PYTHON_VERSION < 0x300
|
|
293
|
-
else if (PyString_CheckExact(source)) {
|
|
294
|
-
Py_ssize_t string_size = PyString_GET_SIZE(source);
|
|
295
|
-
|
|
296
|
-
if (int_subscript < 0) {
|
|
297
|
-
if (-int_subscript > string_size) {
|
|
298
|
-
return false;
|
|
299
|
-
}
|
|
300
|
-
|
|
301
|
-
int_subscript += string_size;
|
|
302
|
-
} else {
|
|
303
|
-
if (int_subscript >= string_size) {
|
|
304
|
-
return false;
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
return true;
|
|
309
|
-
}
|
|
310
|
-
#else
|
|
311
|
-
else if (PyUnicode_CheckExact(source)) {
|
|
312
|
-
if (int_subscript < 0) {
|
|
313
|
-
int_subscript += PyUnicode_GET_LENGTH(source);
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
PyObject *result = type->tp_as_sequence->sq_item(source, int_subscript);
|
|
317
|
-
|
|
318
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
319
|
-
|
|
320
|
-
Py_XDECREF(result);
|
|
321
|
-
return bool_result;
|
|
322
|
-
}
|
|
323
|
-
#endif
|
|
324
|
-
else {
|
|
325
|
-
PyObject *result = tp_as_mapping->mp_subscript(source, const_subscript);
|
|
326
|
-
|
|
327
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
328
|
-
|
|
329
|
-
Py_XDECREF(result);
|
|
330
|
-
|
|
331
|
-
return bool_result;
|
|
332
|
-
}
|
|
333
|
-
} else if (type->tp_as_sequence) {
|
|
334
|
-
PyObject *result = SEQUENCE_GET_ITEM_CONST(source, int_subscript);
|
|
335
|
-
|
|
336
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
337
|
-
|
|
338
|
-
Py_XDECREF(result);
|
|
339
|
-
return bool_result;
|
|
340
|
-
} else {
|
|
341
|
-
#if PYTHON_VERSION >= 0x370
|
|
342
|
-
if (PyType_Check(source)) {
|
|
343
|
-
#if PYTHON_VERSION >= 0x390
|
|
344
|
-
if (source == (PyObject *)&PyType_Type) {
|
|
345
|
-
return true;
|
|
346
|
-
}
|
|
347
|
-
#endif
|
|
348
|
-
|
|
349
|
-
PyObject *meth = LOOKUP_ATTRIBUTE(tstate, source, const_str_plain___class_getitem__);
|
|
350
|
-
|
|
351
|
-
if (meth) {
|
|
352
|
-
PyObject *subscript = PyLong_FromSsize_t(int_subscript);
|
|
353
|
-
PyObject *result = CALL_FUNCTION_WITH_SINGLE_ARG(tstate, meth, subscript);
|
|
354
|
-
Py_DECREF(meth);
|
|
355
|
-
Py_DECREF(subscript);
|
|
356
|
-
|
|
357
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
358
|
-
|
|
359
|
-
Py_XDECREF(result);
|
|
360
|
-
return bool_result;
|
|
361
|
-
}
|
|
362
|
-
}
|
|
363
|
-
#endif
|
|
364
|
-
|
|
365
|
-
return false;
|
|
366
|
-
}
|
|
367
|
-
|
|
368
|
-
return false;
|
|
369
|
-
|
|
370
|
-
#endif
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
NUITKA_MAY_BE_UNUSED static bool HAS_SUBSCRIPT(PyThreadState *tstate, PyObject *source, PyObject *subscript) {
|
|
374
|
-
CHECK_OBJECT(source);
|
|
375
|
-
CHECK_OBJECT(subscript);
|
|
376
|
-
|
|
377
|
-
#if _NUITKA_EXPERIMENTAL_DISABLE_SUBSCRIPT_OPT
|
|
378
|
-
PyObject *item = PyObject_GetItem(source, subscript);
|
|
379
|
-
|
|
380
|
-
if (item) {
|
|
381
|
-
Py_DECREF(item);
|
|
382
|
-
return true;
|
|
383
|
-
} else {
|
|
384
|
-
return false;
|
|
385
|
-
}
|
|
386
|
-
#else
|
|
387
|
-
PyTypeObject *type = Py_TYPE(source);
|
|
388
|
-
PyMappingMethods *tp_as_mapping = type->tp_as_mapping;
|
|
389
|
-
|
|
390
|
-
if (tp_as_mapping != NULL && tp_as_mapping->mp_subscript != NULL) {
|
|
391
|
-
PyObject *result = tp_as_mapping->mp_subscript(source, subscript);
|
|
392
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
393
|
-
|
|
394
|
-
Py_XDECREF(result);
|
|
395
|
-
return bool_result;
|
|
396
|
-
} else if (type->tp_as_sequence != NULL) {
|
|
397
|
-
if (Nuitka_Index_Check(subscript)) {
|
|
398
|
-
Py_ssize_t index = PyNumber_AsSsize_t(subscript, NULL);
|
|
399
|
-
|
|
400
|
-
if (index == -1 && HAS_ERROR_OCCURRED(tstate)) {
|
|
401
|
-
return false;
|
|
402
|
-
}
|
|
403
|
-
|
|
404
|
-
PyObject *result = SEQUENCE_GET_ITEM_CONST(source, index);
|
|
405
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
406
|
-
|
|
407
|
-
Py_XDECREF(result);
|
|
408
|
-
return bool_result;
|
|
409
|
-
} else if (type->tp_as_sequence->sq_item) {
|
|
410
|
-
return false;
|
|
411
|
-
#if PYTHON_VERSION < 0x370
|
|
412
|
-
} else {
|
|
413
|
-
return false;
|
|
414
|
-
#endif
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
|
-
|
|
418
|
-
#if PYTHON_VERSION >= 0x370
|
|
419
|
-
if (PyType_Check(source)) {
|
|
420
|
-
#if PYTHON_VERSION >= 0x390
|
|
421
|
-
if (source == (PyObject *)&PyType_Type) {
|
|
422
|
-
return true;
|
|
423
|
-
}
|
|
424
|
-
#endif
|
|
425
|
-
PyObject *meth = LOOKUP_ATTRIBUTE(tstate, source, const_str_plain___class_getitem__);
|
|
426
|
-
|
|
427
|
-
if (meth) {
|
|
428
|
-
PyObject *result = CALL_FUNCTION_WITH_SINGLE_ARG(tstate, meth, subscript);
|
|
429
|
-
bool bool_result = !DROP_ERROR_OCCURRED(tstate);
|
|
430
|
-
|
|
431
|
-
Py_XDECREF(result);
|
|
432
|
-
return bool_result;
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
#endif
|
|
436
|
-
|
|
437
|
-
return false;
|
|
438
|
-
#endif
|
|
439
|
-
}
|
|
241
|
+
bool MATCH_MAPPING_KEY(PyThreadState *tstate, PyObject *map, PyObject *key);
|
|
440
242
|
|
|
441
243
|
NUITKA_MAY_BE_UNUSED static bool SET_SUBSCRIPT_CONST(PyThreadState *tstate, PyObject *target, PyObject *subscript,
|
|
442
244
|
Py_ssize_t int_subscript, PyObject *value) {
|
|
@@ -571,3 +373,18 @@ NUITKA_MAY_BE_UNUSED static bool DEL_SUBSCRIPT(PyObject *target, PyObject *subsc
|
|
|
571
373
|
}
|
|
572
374
|
|
|
573
375
|
#endif
|
|
376
|
+
|
|
377
|
+
// Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
378
|
+
// integrates with CPython, but also works on its own.
|
|
379
|
+
//
|
|
380
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
381
|
+
// you may not use this file except in compliance with the License.
|
|
382
|
+
// You may obtain a copy of the License at
|
|
383
|
+
//
|
|
384
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
385
|
+
//
|
|
386
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
387
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
388
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
389
|
+
// See the License for the specific language governing permissions and
|
|
390
|
+
// limitations under the License.
|