chore: migrate PyInstaller 5.2 → 6.x, bump setuptools to 78.1.1 (#2587)

Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
al-munazzim 2026-04-10 13:43:30 +02:00 committed by GitHub
parent 608d6a61e5
commit 3917c15e4f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 88 additions and 73 deletions

View file

@ -7,8 +7,6 @@ from embit import util as embit_util
mnemonic_path = os.path.join(mnemonic.__path__[0], "wordlist")
embit_libsecp_binary = embit_util.ctypes_secp256k1._find_library()
block_cipher = None
binaries = []
if platform.system() == 'Windows':
binaries = [("./windll/libusb-1.0.dll", ".")]
@ -31,23 +29,18 @@ a = Analysis(['hwibridge.py'],
(embit_libsecp_binary, 'embit/util/prebuilt'),
],
hiddenimports=[
'pkg_resources.py2_warn',
'cryptoadvance.specter.config'
],
hookspath=['hooks/'],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
if platform.system() == 'Linux':
import hwilib
a.datas += Tree('../udev', prefix='hwilib/udev')
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data)
exe = EXE(pyz,
a.scripts,
a.binaries,

View file

@ -1,4 +1,5 @@
pyinstaller==5.2
pyinstaller==6.11.1
setuptools>=78.1.1
pefile==2022.5.30
macholib
pywin32-ctypes

View file

@ -1,52 +1,15 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
# Manually updated for PyInstaller 6.x migration.
# Hashes removed — regenerate with:
# pip-compile --generate-hashes requirements.in
#
# pip-compile --generate-hashes requirements.in
#
altgraph==0.17 \
--hash=sha256:1f05a47122542f97028caf78775a095fbe6a2699b5089de8477eb583167d69aa \
--hash=sha256:c623e5f3408ca61d4016f23a681b9adb100802ca3e3da5e718915a9e4052cebe
# via
# macholib
# pyinstaller
future==0.18.2 \
--hash=sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d
# via pefile
macholib==1.14 \
--hash=sha256:0c436bc847e7b1d9bda0560351bf76d7caf930fb585a828d13608839ef42c432 \
--hash=sha256:c500f02867515e6c60a27875b408920d18332ddf96b4035ef03beddd782d4281
# via
# -r requirements.in
# pyinstaller
pefile==2022.5.30 \
--hash=sha256:a5488a3dd1fd021ce33f969780b88fe0f7eebb76eb20996d7318f307612a045b
# via -r requirements.in
pyinstaller==5.2 \
--hash=sha256:03984eed0baa252ea9854eb0785a1c40ac033c5c28d3abdae7d820da734aed5a \
--hash=sha256:1061f7a6de055007949ec9ad1c6a080b93e102b2a288c8ff88f65e5d7716d4aa \
--hash=sha256:4def5b6433b4233b2b53ef92ac351788edb11e4d1e08123b9c90e21a7b310a41 \
--hash=sha256:5d170f7c4c402c820b4c5cf7fde61dd9741bf0456342b19b207e29041d75aa30 \
--hash=sha256:5efc1b3ffb13fe50a51305fe57fb9e6e7bce00d009c16dd3cb76ea4d702a04ab \
--hash=sha256:60c53ba54651f22f75dce2bcf49f0a1bcd03c729ced15f2efabad28e0ea0c938 \
--hash=sha256:6ecce857491bc4f477fcbde1b430d63b957d99bc511fa7e79136c07f831fc505 \
--hash=sha256:9d44f331f96fa0ef556cf5304f8b906ca20f55503ddd7aa2a914e87bc58e2cc9 \
--hash=sha256:a21c07dd026bc127684e7a451320bf59cac2c85bea4cb412f7193876ad741d58 \
--hash=sha256:dda3a4787fa4498bb9e688f81bed918f061bd583c8ff0e47881a5422a4b2093b \
--hash=sha256:f10b19ad4f66ccad16574ff1979cc15e1ea010f8577292500125dd45abcd8303
# via -r requirements.in
pyinstaller-hooks-contrib==2022.8 \
--hash=sha256:c4210fc50282c9c6a918e485e0bfae9405592390508e3be9fde19acc2213da56 \
--hash=sha256:e46f099934dd4577fb1ddcf37a99fa04027c92f8f5291c8802f326345988d001
# via pyinstaller
pywin32-ctypes==0.2.0 \
--hash=sha256:24ffc3b341d457d48e8922352130cf2644024a4ff09762a2261fd34c36ee5942 \
--hash=sha256:9dc2d991b3479cc2df15930958b674a48a227d5361d413827a4cfd0b5876fc98
# via -r requirements.in
# Core
pyinstaller==6.11.1
pyinstaller-hooks-contrib>=2024.0
setuptools>=78.1.1
# WARNING: The following packages were not pinned, but pip requires them to be
# pinned when the requirements file includes hashes. Consider using the --allow-unsafe flag.
setuptools==68.2.2 \
--hash=sha256:b454a35605876da60632df1a60f736524eb73cc47bbc9f3f1ef1b644de74fd2a \
--hash=sha256:4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87
# via -r requirements.in (pinned: 69+ removed pkg_resources, breaks PyInstaller)
# Platform helpers
altgraph>=0.17
pefile==2022.5.30
macholib>=1.14
pywin32-ctypes>=0.2.0

View file

@ -7,8 +7,6 @@ from embit import util as embit_util
mnemonic_path = os.path.join(mnemonic.__path__[0], "wordlist")
embit_libsecp_binary = embit_util.ctypes_secp256k1._find_library()
block_cipher = None
binaries = []
if platform.system() == 'Windows':
binaries = [("./windll/libusb-1.0.dll", ".")]
@ -53,24 +51,19 @@ a = Analysis(['specterd.py'],
*packaged_software_datas,
],
hiddenimports=[
'pkg_resources.py2_warn',
'cryptoadvance.specter.config',
'tzdata' # used by apscheduler and existing hook doesn't seem to be complete
],
hookspath=['hooks/'],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
if platform.system() == 'Linux':
import hwilib
a.datas += Tree('../udev', prefix='hwilib/udev')
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data)
name=os.getenv("specterd_filename","specterd")
exe = EXE(pyz,
a.scripts,