diff --git a/contrib/build-linux/appimage/make_appimage.sh b/contrib/build-linux/appimage/make_appimage.sh index ff2fd0eeae3a..0ed8be67f447 100755 --- a/contrib/build-linux/appimage/make_appimage.sh +++ b/contrib/build-linux/appimage/make_appimage.sh @@ -160,8 +160,13 @@ info "Installing build dependencies." "$python" -m pip install --no-build-isolation --no-dependencies --no-binary :all: --no-warn-script-location \ --cache-dir "$PIP_CACHE_DIR" -r "$CONTRIB/deterministic-build/requirements-build-appimage.txt" -info "installing electrum and its dependencies." + +# opt out of compiling C extensions +export YARL_NO_EXTENSIONS=1 + export ELECTRUM_ECC_DONT_COMPILE=1 + +info "installing electrum and its dependencies." "$python" -m pip install --no-build-isolation --no-dependencies --no-binary :all: --no-warn-script-location \ --cache-dir "$PIP_CACHE_DIR" -r "$CONTRIB/deterministic-build/requirements.txt" "$python" -m pip install --no-build-isolation --no-dependencies --no-binary :all: --only-binary PyQt6,PyQt6-Qt6,cryptography --no-warn-script-location \ diff --git a/contrib/build-wine/build-electrum-git.sh b/contrib/build-wine/build-electrum-git.sh index 517d1a16d6c5..f797417b6eeb 100755 --- a/contrib/build-wine/build-electrum-git.sh +++ b/contrib/build-wine/build-electrum-git.sh @@ -32,6 +32,7 @@ export AIOHTTP_NO_EXTENSIONS=1 export YARL_NO_EXTENSIONS=1 export MULTIDICT_NO_EXTENSIONS=1 export FROZENLIST_NO_EXTENSIONS=1 +export PROPCACHE_NO_EXTENSIONS=1 export ELECTRUM_ECC_DONT_COMPILE=1 info "Installing requirements..." diff --git a/contrib/deterministic-build/requirements-build-base.txt b/contrib/deterministic-build/requirements-build-base.txt index 20c1d9266f0b..a3eb32ff8da7 100644 --- a/contrib/deterministic-build/requirements-build-base.txt +++ b/contrib/deterministic-build/requirements-build-base.txt @@ -1,3 +1,6 @@ +expandvars==0.12.0 \ + --hash=sha256:7432c1c2ae50c671a8146583177d60020dd210ada7d940e52af91f1f84f753b2 \ + --hash=sha256:7d1adfa55728cf4b5d812ece3d087703faea953e0c0a1a78415de9df5024d844 flit-core==3.9.0 \ --hash=sha256:72ad266176c4a3fcfab5f2930d76896059851240570ce9a98733b658cb786eba \ --hash=sha256:7aada352fb0c7f5538c4fafeddf314d3a6a92ee8e2b1de70482329e42de70301 @@ -7,9 +10,9 @@ packaging==23.2 \ pip==22.3.1 \ --hash=sha256:65fd48317359f3af8e593943e6ae1506b66325085ea64b706a998c6e83eeaf38 \ --hash=sha256:908c78e6bc29b676ede1c4d57981d490cb892eb45cd8c214ab6298125119e077 -poetry-core==1.9.0 \ - --hash=sha256:4e0c9c6ad8cf89956f03b308736d84ea6ddb44089d16f2adc94050108ec1f5a1 \ - --hash=sha256:fa7a4001eae8aa572ee84f35feb510b321bd652e5cf9293249d62853e1f935a2 +poetry-core==2.1.1 \ + --hash=sha256:bc3b0382ab4d00d5d780277fd0aad1580eb4403613b37fc60fec407b5bee1fe6 \ + --hash=sha256:c1a1f6f00e4254742f40988a8caf665549101cf9991122cd5de1198897768b1a setuptools==65.5.1 \ --hash=sha256:d0b9a8433464d5800cbe05094acf5c6d52a91bfac9b52bcfc4d41382be5d5d31 \ --hash=sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f diff --git a/contrib/deterministic-build/requirements.txt b/contrib/deterministic-build/requirements.txt index 81ec562f133b..37dd0ed6ba73 100644 --- a/contrib/deterministic-build/requirements.txt +++ b/contrib/deterministic-build/requirements.txt @@ -1,41 +1,45 @@ -aiohttp==3.9.3 \ - --hash=sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7 -aiohttp-socks==0.8.4 \ - --hash=sha256:6b611d4ce838e9cf2c2fed5e0dba447cc84824a6cba95dc5747606201da46cb4 -aiorpcX==0.23.1 \ - --hash=sha256:5b23002f1a4d5d3085e31555a07519c5ef8d4c40071eb499556ffda8114860a2 -aiosignal==1.3.1 \ - --hash=sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc -async-timeout==4.0.3 \ - --hash=sha256:4640d96be84d82d02ed59ea2b7105a0f7b33abe8703703cd0ab0bf87c427522f +aiohappyeyeballs==2.6.1 \ + --hash=sha256:c3f9d0113123803ccadfdf3f0faa505bc78e6a72d1cc4806cbd719826e943558 +aiohttp==3.11.14 \ + --hash=sha256:d6edc538c7480fa0a3b2bdd705f8010062d74700198da55d16498e1b49549b9c +aiohttp-socks==0.10.1 \ + --hash=sha256:49f2e1f8051f2885719beb1b77e312b5a27c3e4b60f0b045a388f194d995e068 +aiorpcX==0.24.0 \ + --hash=sha256:2302d827796d52aa87a457e204a59c6e5bb307792cd31379a9c85f6494a4a59a +aiosignal==1.3.2 \ + --hash=sha256:a8c255c66fafb1e499c9351d0bf32ff2d8a0321595ebac3b93713656d2436f54 +async-timeout==5.0.1 \ + --hash=sha256:d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3 attrs==22.1.0 \ --hash=sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6 certifi==2024.2.2 \ --hash=sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f dnspython==2.2.1 \ --hash=sha256:0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e -electrum-aionostr==0.0.7 \ - --hash=sha256:e0b45d608977891c3bb4f6a4dee9a4e843fa661ceca31f81e7b992e65117070a +electrum-aionostr==0.0.9 \ + --hash=sha256:6f645cf53cf7ade8cc7a44d5b6a578e1e2290b7efb7ad6c1154591e982fe4a72 electrum-ecc==0.0.4 \ --hash=sha256:70a78be3eea4cba41d968a0c880b14ce5bc85e189f897d652bd6fdfa7ea5cd7d -frozenlist==1.3.3 \ - --hash=sha256:58bcc55721e8a90b88332d6cd441261ebb22342e238296bb330968952fbb3a6a +frozenlist==1.5.0 \ + --hash=sha256:81d5af29e61b9c8348e876d442253723928dce6433e0e76cd925cd83f1b4b817 idna==3.6 \ --hash=sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca jsonpatch==1.33 \ --hash=sha256:9fcd4009c41e6d12348b4a0ff2563ba56a2923a7dfee731d004e212e1ee5030c jsonpointer==2.4 \ --hash=sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88 -multidict==6.0.5 \ - --hash=sha256:f7e301075edaf50500f0b341543c41194d8df3ae5caf4702f2095f3ca73dd8da +multidict==6.2.0 \ + --hash=sha256:0085b0afb2446e57050140240a8595846ed64d1cbd26cef936bfab3192c673b8 packaging==23.2 \ --hash=sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5 pip==22.3.1 \ --hash=sha256:65fd48317359f3af8e593943e6ae1506b66325085ea64b706a998c6e83eeaf38 +propcache==0.3.0 \ + --hash=sha256:a8fd93de4e1d278046345f49e2238cdb298589325849b2645d4a94c53faeffc5 protobuf==3.20.3 \ --hash=sha256:2e3427429c9cffebf259491be0af70189607f365c2f41c7c3764af6f337105f2 -python-socks==2.4.4 \ - --hash=sha256:e5a8e4f78203612c813946feacd87b98943965a04389fe221fa1e9ab263ad22e +python-socks==2.7.1 \ + --hash=sha256:f1a0bb603830fe81e332442eada96757b8f8dec02bd22d1d6f5c99a79704c550 QDarkStyle==3.2.3 \ --hash=sha256:0c0b7f74a6e92121008992b369bab60468157db1c02cd30d64a5e9a3b402f1ae qrcode==7.3.1 \ @@ -44,9 +48,9 @@ QtPy==2.4.1 \ --hash=sha256:a5a15ffd519550a1361bdc56ffc07fda56a6af7292f17c7b395d4083af632987 setuptools==65.5.1 \ --hash=sha256:e197a19aa8ec9722928f2206f8de752def0e4c9fc6953527360d1c36d94ddb2f -websockets==13.1 \ - --hash=sha256:a3b3366087c1bc0a2795111edcadddb8b3b59509d5db5d7ea3fdd69f954a8878 +typing-extensions==4.9.0 \ + --hash=sha256:23478f88c37f27d76ac8aee6c905017a143b0b1b886c3c9f66bc2fd94f9f5783 wheel==0.38.4 \ --hash=sha256:965f5259b566725405b05e7cf774052044b1ed30119b5d586b2703aafe8719ac -yarl==1.8.2 \ - --hash=sha256:49d43402c6e3013ad0978602bf6bf5328535c48d192304b91b97a3c6790b1562 +yarl==1.18.3 \ + --hash=sha256:ac1801c45cbf77b6c99242eeff4fffb5e4e73a800b5c4ad4fc0be5def634d2e1 \ No newline at end of file diff --git a/contrib/make_packages.sh b/contrib/make_packages.sh index a2f89b44b4e4..613612c82c50 100755 --- a/contrib/make_packages.sh +++ b/contrib/make_packages.sh @@ -26,11 +26,11 @@ python3 -m pip install --no-build-isolation --no-dependencies --no-warn-script-l -r "$CONTRIB"/deterministic-build/requirements-build-base.txt # opt out of compiling C extensions -# FIXME aiohttp opt-out is not released yet: https://github.com/aio-libs/aiohttp/pull/3828 export AIOHTTP_NO_EXTENSIONS=1 export YARL_NO_EXTENSIONS=1 export MULTIDICT_NO_EXTENSIONS=1 export FROZENLIST_NO_EXTENSIONS=1 +export PROPCACHE_NO_EXTENSIONS=1 export ELECTRUM_ECC_DONT_COMPILE=1 diff --git a/contrib/osx/make_osx.sh b/contrib/osx/make_osx.sh index f9a107e0d919..249f5f4fd7a3 100755 --- a/contrib/osx/make_osx.sh +++ b/contrib/osx/make_osx.sh @@ -168,8 +168,12 @@ fi cp -f "$DLL_TARGET_DIR/libusb-1.0.dylib" "$PROJECT_ROOT/electrum/" || fail "Could not copy libusb dylib" -info "Installing requirements..." +# opt out of compiling C extensions +export YARL_NO_EXTENSIONS=1 + export ELECTRUM_ECC_DONT_COMPILE=1 + +info "Installing requirements..." python3 -m pip install --no-build-isolation --no-dependencies --no-binary :all: \ --no-warn-script-location \ -Ir ./contrib/deterministic-build/requirements.txt \ diff --git a/contrib/requirements/requirements-build-base.txt b/contrib/requirements/requirements-build-base.txt index 55717c8e21e3..6bd2c7466a96 100644 --- a/contrib/requirements/requirements-build-base.txt +++ b/contrib/requirements/requirements-build-base.txt @@ -21,3 +21,7 @@ poetry-core # typing-extensions also needs: # https://github.com/python/typing/blob/a2371460d184c96aab7a69acc47fd059f875e3b4/typing_extensions/pyproject.toml#L3 flit_core>=3.4,<4 + +# aio-libs/frozenlist and aio-libs/propcache needs: +# https://github.com/aio-libs/frozenlist/blob/c28f32d6816ca0fa56a5876e84831c46084bb85d/pyproject.toml#L6 +expandvars