From 848459b9fc92dbf16b60499fdd1121733ca50ec5 Mon Sep 17 00:00:00 2001 From: Fantix King Date: Sat, 10 Aug 2024 10:50:41 -0400 Subject: [PATCH 1/2] Bump OpenSSL and libffi versions --- edgedbpkg/python/__init__.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/edgedbpkg/python/__init__.py b/edgedbpkg/python/__init__.py index daaea1a..3ad2cfa 100644 --- a/edgedbpkg/python/__init__.py +++ b/edgedbpkg/python/__init__.py @@ -48,9 +48,9 @@ class Python(packages.BundledCPackage): ] bundle_deps = [ - openssl.OpenSSL("3.1.5"), + openssl.OpenSSL("3.3.1"), libb2.LibB2("0.98.1"), - libffi.LibFFI("3.4.4"), + libffi.LibFFI("3.4.6"), libuuid.LibUUID("2.39.3"), zlib.Zlib("1.3.1"), ] From 61e7f42b882d101c5684290ba3fb2320c70ddfef Mon Sep 17 00:00:00 2001 From: Fantix King Date: Mon, 12 Aug 2024 11:05:18 -0400 Subject: [PATCH 2/2] Support maturin-built packages --- edgedbpkg/edgedb/__init__.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/edgedbpkg/edgedb/__init__.py b/edgedbpkg/edgedb/__init__.py index 2b5b722..045ffcd 100644 --- a/edgedbpkg/edgedb/__init__.py +++ b/edgedbpkg/edgedb/__init__.py @@ -184,6 +184,9 @@ def get_package_repository( repo.register_package_impl("cffi", Cffi) repo.register_package_impl("jwcrypto", JWCrypto) repo.register_package_impl("edgedb", EdgeDBPython) + repo.register_package_impl("maturin", Maturin) + repo.register_package_impl("pydantic-core", PyPackageNeedingMaturin) + repo.register_package_impl("rpds-py", PyPackageNeedingMaturin) return repo @property @@ -589,3 +592,17 @@ def get_file_no_install_entries(self, build: targets.Build) -> list[str]: entries = super().get_file_no_install_entries(build) entries.append("{bindir}/*") return entries + + +class Maturin(packages.PythonPackage): + executable = "maturin" + + def get_build_tools(self, build: targets.Build) -> dict[str, pathlib.Path]: + install_dir = build.get_install_dir(self, relative_to="sourceroot") + bin_dir = build.get_install_path("bin").relative_to("/") + return {self.executable: install_dir / bin_dir / "maturin"} + + +class PyPackageNeedingMaturin(packages.PythonPackage): + def get_dep_commands(self) -> list[str]: + return [Maturin.executable]