Skip to content

Commit

Permalink
Merge pull request #1714 from cpcloud/pyogrio
Browse files Browse the repository at this point in the history
  • Loading branch information
cpcloud authored Jun 25, 2024
2 parents 46ce1e1 + 5712936 commit bbc1ee7
Show file tree
Hide file tree
Showing 6 changed files with 188 additions and 9 deletions.
4 changes: 4 additions & 0 deletions overrides/build-systems.json
Original file line number Diff line number Diff line change
Expand Up @@ -18037,6 +18037,10 @@
"pyogg": [
"setuptools"
],
"pyogrio": [
"cython",
"setuptools"
],
"pyombi": [
"setuptools"
],
Expand Down
22 changes: 13 additions & 9 deletions overrides/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -1784,9 +1784,9 @@ lib.composeManyExtensions [
format =
if ((old.format or null) == "poetry2nix") then
(if lib.versionAtLeast prev.numpy.version "2.0.0" then
"pyproject"
else "setuptools"
)
"pyproject"
else "setuptools"
)
else
old.format or null;
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [ gfortran ];
Expand Down Expand Up @@ -2461,6 +2461,10 @@ lib.composeManyExtensions [
}
);

pyogrio = prev.pyogrio.overridePythonAttrs (old: {
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [ final.versioneer gdal ];
});

pyopencl = prev.pyopencl.overridePythonAttrs (
old: {
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [ final.numpy ];
Expand Down Expand Up @@ -3857,12 +3861,12 @@ lib.composeManyExtensions [
pyee = prev.pyee.overrideAttrs (
old: {
postPatch = old.postPatch or "" +
(lib.optionalString (lib.versionOlder old.version "10.0.0")
''
sed -i setup.py \
-e '/setup_requires/,/],/d' \
-e 's/vcversioner={},/version="${old.version}",/'
'');
(lib.optionalString (lib.versionOlder old.version "10.0.0")
''
sed -i setup.py \
-e '/setup_requires/,/],/d' \
-e 's/vcversioner={},/version="${old.version}",/'
'');
}
);

Expand Down
1 change: 1 addition & 0 deletions tests/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,7 @@ in
scikit-learn = callTest ./scikit-learn { };
soundfile-wheel = callTest ./soundfile-wheel { };
soundfile = callTest ./soundfile { };
pyogrio = callTest ./pyogrio { };
} // lib.optionalAttrs (!stdenv.isDarwin) {
# Editable tests fails on Darwin because of sandbox paths
pep600 = callTest ./pep600 { };
Expand Down
29 changes: 29 additions & 0 deletions tests/pyogrio/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{ poetry2nix, python3, runCommand }:
let
mkEnv = preferWheel: poetry2nix.mkPoetryEnv {
python = python3;
pyproject = ./pyproject.toml;
poetrylock = ./poetry.lock;
overrides = poetry2nix.overrides.withDefaults (
_: prev: {
pyogrio = prev.pyogrio.override {
inherit preferWheel;
};
numpy = prev.numpy.override {
preferWheel = true;
};
pandas = prev.pandas.override {
preferWheel = true;
};
}
);
};
wheelEnv = mkEnv true;
srcEnv = mkEnv false;
in
runCommand "pyogrio-test" { } ''
set -euo pipefail
${wheelEnv}/bin/python -c 'import pyogrio; print(f"wheel: {pyogrio.__version__}")' > $out
${srcEnv}/bin/python -c 'import pyogrio; print(f"src: {pyogrio.__version__}")' >> $out
touch $out
''
128 changes: 128 additions & 0 deletions tests/pyogrio/poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions tests/pyogrio/pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
[tool.poetry]
name = "test-pyogrio"
version = "0.1.0"
description = "Test of pyogrio"
authors = ["Your Name <[email protected]>"]

[tool.poetry.dependencies]
python = "^3.10"
pyogrio = "^0.9.0"

[build-system]
requires = ["poetry-core>=1"]
build-backend = "poetry.core.masonry.api"

0 comments on commit bbc1ee7

Please sign in to comment.