Nuitka-winsvc 2.3.3__cp311-cp311-win_amd64.whl → 2.3.11__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.3.3.dist-info → Nuitka_winsvc-2.3.11.dist-info}/METADATA +1 -1
- {Nuitka_winsvc-2.3.3.dist-info → Nuitka_winsvc-2.3.11.dist-info}/RECORD +63 -42
- {Nuitka_winsvc-2.3.3.dist-info → Nuitka_winsvc-2.3.11.dist-info}/WHEEL +1 -1
- nuitka/Options.py +1 -1
- nuitka/PythonFlavors.py +15 -0
- nuitka/Tracing.py +26 -23
- nuitka/Version.py +1 -1
- nuitka/build/SconsUtils.py +1 -1
- nuitka/build/include/nuitka/compiled_function.h +2 -0
- 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/static_src/CompiledCodeHelpers.c +2 -0
- nuitka/build/static_src/CompiledFrameType.c +2 -5
- nuitka/build/static_src/CompiledFunctionType.c +43 -4
- nuitka/build/static_src/HelpersAllocator.c +0 -2
- nuitka/build/static_src/HelpersBuiltin.c +2 -2
- nuitka/build/static_src/HelpersHeapStorage.c +4 -0
- nuitka/build/static_src/MainProgram.c +17 -0
- nuitka/build/static_src/MetaPathBasedLoader.c +77 -48
- nuitka/build/static_src/MetaPathBasedLoaderResourceReaderFiles.c +29 -0
- nuitka/code_generation/templates/CodeTemplatesModules.py +1 -10
- nuitka/freezer/DllDependenciesCommon.py +28 -3
- nuitka/freezer/DllDependenciesMacOS.py +23 -2
- nuitka/freezer/DllDependenciesWin32.py +6 -1
- nuitka/importing/Importing.py +5 -1
- nuitka/nodes/FunctionNodes.py +4 -1
- nuitka/nodes/ModuleNodes.py +3 -4
- nuitka/nodes/NodeBases.py +10 -9
- nuitka/nodes/shapes/BuiltinTypeShapes.py +21 -1
- nuitka/plugins/PluginBase.py +11 -3
- nuitka/plugins/standard/KivyPlugin.py +10 -0
- nuitka/plugins/standard/standard.nuitka-package.config.yml +240 -25
- nuitka/plugins/standard/stdlib3.nuitka-package.config.yml +38 -2
- nuitka/tools/testing/Common.py +22 -2
- nuitka/tree/InternalModule.py +1 -1
- nuitka/tree/ReformulationFunctionStatements.py +1 -0
- nuitka/utils/Execution.py +8 -7
- nuitka/utils/FileOperations.py +38 -1
- nuitka/utils/SharedLibraries.py +38 -34
- {Nuitka_winsvc-2.3.3.data → Nuitka_winsvc-2.3.11.data}/scripts/nuitka-run.bat +0 -0
- {Nuitka_winsvc-2.3.3.data → Nuitka_winsvc-2.3.11.data}/scripts/nuitka.bat +0 -0
- {Nuitka_winsvc-2.3.3.dist-info → Nuitka_winsvc-2.3.11.dist-info}/LICENSE.txt +0 -0
- {Nuitka_winsvc-2.3.3.dist-info → Nuitka_winsvc-2.3.11.dist-info}/entry_points.txt +0 -0
- {Nuitka_winsvc-2.3.3.dist-info → Nuitka_winsvc-2.3.11.dist-info}/top_level.txt +0 -0
nuitka/utils/Execution.py
CHANGED
|
@@ -352,13 +352,14 @@ def executeToolChecked(
|
|
|
352
352
|
# Allow to avoid repeated scans in PATH for the tool.
|
|
353
353
|
command[0] = getExecutablePath(tool)
|
|
354
354
|
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
355
|
+
with withEnvironmentVarOverridden("LC_ALL", "C"):
|
|
356
|
+
process = subprocess.Popen(
|
|
357
|
+
command,
|
|
358
|
+
stdin=getNullInput(),
|
|
359
|
+
stdout=subprocess.PIPE,
|
|
360
|
+
stderr=subprocess.PIPE,
|
|
361
|
+
shell=False,
|
|
362
|
+
)
|
|
362
363
|
|
|
363
364
|
stdout, stderr = process.communicate()
|
|
364
365
|
result = process.poll()
|
nuitka/utils/FileOperations.py
CHANGED
|
@@ -290,7 +290,7 @@ def _restoreWindowsPath(orig_path, path):
|
|
|
290
290
|
drive_real_path = os.path.realpath(drive + "\\")
|
|
291
291
|
assert path.startswith(drive_real_path)
|
|
292
292
|
|
|
293
|
-
path = drive + path[len(drive_real_path) :]
|
|
293
|
+
path = drive + "\\" + path[len(drive_real_path) :]
|
|
294
294
|
else:
|
|
295
295
|
path = path.strip(os.path.sep)
|
|
296
296
|
|
|
@@ -1469,6 +1469,43 @@ def openPickleFile(filename, mode, protocol=-1):
|
|
|
1469
1469
|
)
|
|
1470
1470
|
|
|
1471
1471
|
|
|
1472
|
+
def isLegalPath(path):
|
|
1473
|
+
illegal_suffixes = "/\\"
|
|
1474
|
+
illegal_chars = "\0"
|
|
1475
|
+
|
|
1476
|
+
if isWin32Windows():
|
|
1477
|
+
illegal_chars += r'*"/<>:|?'
|
|
1478
|
+
|
|
1479
|
+
illegal_chars += "".join(chr(x) for x in range(1, 32))
|
|
1480
|
+
illegal_suffixes += " ."
|
|
1481
|
+
|
|
1482
|
+
if isMacOS():
|
|
1483
|
+
illegal_chars += ":"
|
|
1484
|
+
|
|
1485
|
+
for c in path:
|
|
1486
|
+
if c in illegal_chars:
|
|
1487
|
+
return False, "contains illegal character %r" % c
|
|
1488
|
+
|
|
1489
|
+
for illegal_suffix in illegal_suffixes:
|
|
1490
|
+
if path.endswith(illegal_suffix):
|
|
1491
|
+
return False, "contains illegal suffix %r" % illegal_suffix
|
|
1492
|
+
|
|
1493
|
+
return True, None
|
|
1494
|
+
|
|
1495
|
+
|
|
1496
|
+
def getParentDirectories(path):
|
|
1497
|
+
"""Get all parent directories of a path in descending order."""
|
|
1498
|
+
|
|
1499
|
+
while 1:
|
|
1500
|
+
old_path = path
|
|
1501
|
+
path = os.path.dirname(path)
|
|
1502
|
+
|
|
1503
|
+
if not path or path == old_path:
|
|
1504
|
+
return
|
|
1505
|
+
|
|
1506
|
+
yield path
|
|
1507
|
+
|
|
1508
|
+
|
|
1472
1509
|
# Part of "Nuitka", an optimizing Python compiler that is compatible and
|
|
1473
1510
|
# integrates with CPython, but also works on its own.
|
|
1474
1511
|
#
|
nuitka/utils/SharedLibraries.py
CHANGED
|
@@ -17,11 +17,7 @@ from nuitka.Options import getMacOSTargetArch, isShowInclusion, isUnstripped
|
|
|
17
17
|
from nuitka.PythonVersions import python_version
|
|
18
18
|
from nuitka.Tracing import inclusion_logger, postprocessing_logger
|
|
19
19
|
|
|
20
|
-
from .Execution import
|
|
21
|
-
executeToolChecked,
|
|
22
|
-
withEnvironmentPathAdded,
|
|
23
|
-
withEnvironmentVarOverridden,
|
|
24
|
-
)
|
|
20
|
+
from .Execution import executeToolChecked, withEnvironmentPathAdded
|
|
25
21
|
from .FileOperations import (
|
|
26
22
|
addFileExecutablePermission,
|
|
27
23
|
changeFilenameExtension,
|
|
@@ -87,13 +83,12 @@ def locateDLL(dll_name):
|
|
|
87
83
|
name=dll_name, paths=["/lib", "/usr/lib", "/usr/local/lib"]
|
|
88
84
|
)
|
|
89
85
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
)
|
|
86
|
+
# TODO: Could and probably should cache "ldconfig -p" output to avoid forks
|
|
87
|
+
output = executeToolChecked(
|
|
88
|
+
logger=postprocessing_logger,
|
|
89
|
+
command=("/sbin/ldconfig", "-p"),
|
|
90
|
+
absence_message=_ldconfig_usage,
|
|
91
|
+
)
|
|
97
92
|
|
|
98
93
|
dll_map = {}
|
|
99
94
|
|
|
@@ -349,14 +344,25 @@ def getSharedLibraryRPATH(filename):
|
|
|
349
344
|
|
|
350
345
|
|
|
351
346
|
def _filterPatchelfErrorOutput(stderr):
|
|
347
|
+
non_errors = []
|
|
348
|
+
|
|
349
|
+
def isNonErrorExit(line):
|
|
350
|
+
if b"cannot find section '.dynamic'" in line:
|
|
351
|
+
non_errors.append(line)
|
|
352
|
+
|
|
353
|
+
return True
|
|
354
|
+
|
|
355
|
+
return False
|
|
356
|
+
|
|
352
357
|
stderr = b"\n".join(
|
|
353
358
|
line
|
|
354
359
|
for line in stderr.splitlines()
|
|
355
360
|
if line
|
|
356
361
|
if b"warning: working around" not in line
|
|
362
|
+
if not isNonErrorExit(line)
|
|
357
363
|
)
|
|
358
364
|
|
|
359
|
-
return None, stderr
|
|
365
|
+
return (0 if non_errors else None), stderr
|
|
360
366
|
|
|
361
367
|
|
|
362
368
|
_patchelf_usage = """\
|
|
@@ -383,13 +389,12 @@ installed. Use 'apt/dnf/yum install patchelf' first.""",
|
|
|
383
389
|
|
|
384
390
|
def _setSharedLibraryRPATHElf(filename, rpath):
|
|
385
391
|
# patchelf --set-rpath "$ORIGIN/path/to/library" <executable>
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
)
|
|
392
|
+
executeToolChecked(
|
|
393
|
+
logger=postprocessing_logger,
|
|
394
|
+
command=("patchelf", "--set-rpath", rpath, filename),
|
|
395
|
+
stderr_filter=_filterPatchelfErrorOutput,
|
|
396
|
+
absence_message=_patchelf_usage,
|
|
397
|
+
)
|
|
393
398
|
|
|
394
399
|
|
|
395
400
|
def _filterInstallNameToolErrorOutput(stderr):
|
|
@@ -600,7 +605,7 @@ def _getFileCommandOutput(filename):
|
|
|
600
605
|
|
|
601
606
|
|
|
602
607
|
def hasUniversalOrMatchingMacOSArchitecture(filename):
|
|
603
|
-
assert isMacOS()
|
|
608
|
+
assert isMacOS() and os.path.isfile(filename), filename
|
|
604
609
|
|
|
605
610
|
file_output = _getFileCommandOutput(filename)
|
|
606
611
|
|
|
@@ -788,20 +793,19 @@ def cleanupHeaderForAndroid(filename):
|
|
|
788
793
|
created by default.
|
|
789
794
|
"""
|
|
790
795
|
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
)
|
|
796
|
+
executeToolChecked(
|
|
797
|
+
logger=postprocessing_logger,
|
|
798
|
+
command=("patchelf", "--shrink-rpath", filename),
|
|
799
|
+
stderr_filter=_filterPatchelfErrorOutput,
|
|
800
|
+
absence_message=_patchelf_usage,
|
|
801
|
+
)
|
|
798
802
|
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
803
|
+
executeToolChecked(
|
|
804
|
+
logger=postprocessing_logger,
|
|
805
|
+
command=("termux-elf-cleaner", "--quiet", filename),
|
|
806
|
+
absence_message=_termux_elf_cleaner_usage,
|
|
807
|
+
optional=True,
|
|
808
|
+
)
|
|
805
809
|
|
|
806
810
|
|
|
807
811
|
_nm_usage = """\
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|