Skip to content

Commit

Permalink
python312Packages.pandera: init at 0.20.4
Browse files Browse the repository at this point in the history
  • Loading branch information
bcdarwin committed Nov 8, 2024
1 parent 85f7e66 commit c079b83
Show file tree
Hide file tree
Showing 2 changed files with 128 additions and 0 deletions.
126 changes: 126 additions & 0 deletions pkgs/development/python-modules/pandera/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
multimethod,
numpy,
packaging,
pandas,
pydantic,
typeguard,
typing-inspect,
wrapt,
# test
joblib,
pyarrow,
pytestCheckHook,
pytest-asyncio,
# optional dependencies
black,
dask,
fastapi,
geopandas,
hypothesis,
pandas-stubs,
polars,
pyyaml,
scipy,
shapely,
}:

buildPythonPackage rec {
pname = "pandera";
version = "0.20.4";
pyproject = true;

src = fetchFromGitHub {
owner = "unionai-oss";
repo = "pandera";
rev = "refs/tags/v${version}";
hash = "sha256-VetLfZlBWok7Mr1jxlHHjDH/D5xEsPFWQtX/hrvobgQ=";
};

build-system = [ setuptools ];

dependencies = [
multimethod
numpy
packaging
pandas
pydantic
typeguard
typing-inspect
wrapt
];

optional-dependencies =
let
dask-dataframe = [ dask ] ++ dask.optional-dependencies.dataframe;
extras = {
strategies = [ hypothesis ];
hypotheses = [ scipy ];
io = [
pyyaml
black
#frictionless # not in nixpkgs
];
# pyspark expression does not define optional-dependencies.connect:
#pyspark = [ pyspark ] ++ pyspark.optional-dependencies.connect;
# modin not in nixpkgs:
#modin = [
# modin
# ray
# dask-dataframe
#];
#modin-ray = [
# modin
# ray
#];
#modin-dask = [
# modin
# dask-dataframe
#];
dask = [ dask-dataframe ];
mypy = [ pandas-stubs ];
fastapi = [ fastapi ];
geopandas = [
geopandas
shapely
];
polars = [ polars ];
};
in
extras // { all = lib.concatLists (lib.attrValues extras); };

nativeCheckInputs = [
pytestCheckHook
pytest-asyncio
joblib
pyarrow
] ++ optional-dependencies.all;

disabledTestPaths = [
"tests/fastapi/test_app.py" # tries to access network
"tests/core/test_docs_setting_column_widths.py" # tests doc generation, requires sphinx
"tests/modin" # requires modin, not in nixpkgs
"tests/mypy/test_static_type_checking.py" # some typing failures
"tests/pyspark" # requires spark
];

pythonImportsCheck = [
"pandera"
"pandera.api"
"pandera.config"
"pandera.dtypes"
"pandera.engines"
];

meta = {
description = "Light-weight, flexible, and expressive statistical data testing library";
homepage = "https://pandera.readthedocs.io";
changelog = "https://github.com/unionai-oss/pandera/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ bcdarwin ];
};
}
2 changes: 2 additions & 0 deletions pkgs/top-level/python-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -9734,6 +9734,8 @@ self: super: with self; {

pandas-datareader = callPackage ../development/python-modules/pandas-datareader { };

pandera = callPackage ../development/python-modules/pandera { };

pandoc-attributes = callPackage ../development/python-modules/pandoc-attributes { };

pandoc-latex-environment = callPackage ../development/python-modules/pandoc-latex-environment { };
Expand Down

0 comments on commit c079b83

Please sign in to comment.