lenskit/lkpy

View on GitHub
pixi.toml

Summary

Maintainability
Test Coverage
[project]
name = "lenskit"
channels = ["conda-forge", "pytorch", "nodefaults"]
platforms = ["linux-64", "win-64", "osx-arm64"]

[dependencies]
pandas = ">=1.5, <3"
numpy = ">=1.23, <2"
scipy = ">=1.9"
pytorch = "~=2.1"
threadpoolctl = ">=3.0"
pydantic = ">=2.8,<3"

[pypi-dependencies]
manylog = { git = "https://github.com/mdekstrand/manylog.git" }
seedbank = ">=0.2.0a2"
progress-api = ">=0.1.0a9"
lenskit = { path = "lenskit", editable = true }

[feature.py311.dependencies]
python = "=3.11"

[feature.py312.dependencies]
python = "=3.12"

[feature.sklearn.dependencies]
scikit-learn = "~=1.1"

[feature.funksvd.dependencies]
numba = ">=0.56"

[feature.funksvd.pypi-dependencies]
lenskit-funksvd = { path = "lenskit-funksvd", editable = true }

[feature.implicit]
platforms = ["linux-64", "osx-arm64"]

[feature.implicit.dependencies]
implicit = ">=0.6.1"

[feature.implicit.pypi-dependencies]
lenskit-implicit = { path = "lenskit-implicit", editable = true }

[feature.hpf]
platforms = ["linux-64", "osx-arm64"]

[feature.hpf.dependencies]
hpfrec = "~=0.2.0"

[feature.hpf.pypi-dependencies]
lenskit-hpf = { path = "lenskit-hpf", editable = true }

[feature.test.dependencies]
pytest = "~=8.2"
pytest-doctestplus = ">=1.2.1,<2"
pytest-cov = ">=2.12"
pytest-benchmark = "=4"
pytest-repeat = ">=0.9"
hypothesis = ">=6.16"
pyprojroot = "=0.3"

[feature.doc.dependencies]
sphinx = ">=4.2"
sphinxext-opengraph = ">=0.5"
sphinxcontrib-bibtex = ">=2.0"
pydata-sphinx-theme = ">=0.15.4"
myst-nb = ">=0.13"
just = ">=1.2"

[feature.dev.dependencies]
setuptools = ">=64"
setuptools_scm = ">=8"
python-build = "~=1.0"
ruff = ">=0.2"
pyright = ">=1.1"
pre-commit = ">=3.7"
copier = "~=9.0"
ipython = ">=7"
pyarrow = ">=15"
sphinx-autobuild = ">=2021"
docopt = ">=0.6"
tomlkit = ">=0.12"
pyyaml = "~=6.0"
packaging = ">=24.0"
tqdm = ">=4"
pandas-stubs = ">=1.5,<3"
just = ">=1.2"
deno = "~=1.46"

[feature.dev.pypi-dependencies]
unbeheader = ">=1.3,<2"

[feature.demo.dependencies]
notebook = ">=6"
nbval = ">=0.9"
matplotlib = "~=3.4"
nbformat = ">=5.2"
ipython = ">=7"
pyprojroot = ">=0.3"

[feature.reporting.dependencies]
sqlite = "~=3.0"
diff-cover = ">=9.1"
coverage = ">=5"
tk = "~=8.6"

[environments]
doc = { features = [
  "py312",
  "doc",
  "funksvd",
  "hpf",
  "implicit",
], solve-group = "py312" }
demo = { features = [
  "py312",
  "demo",
  "funksvd",
  "hpf",
  "implicit",
], solve-group = "py312" }
report = { features = ["reporting"], no-default-feature = true }
dev-core = { features = ["dev", "doc", "test", "demo"] }
dev-full = { features = [
  "dev",
  "doc",
  "test",
  "demo",
  "sklearn",
  "funksvd",
  "implicit",
  "hpf",
], solve-group = "py312" }
dev-compat = { features = [
  "dev",
  "doc",
  "test",
  "demo",
  "sklearn",
  "funksvd",
  "implicit",
  "hpf",
], solve-group = "py311" }
test-py311-core = { features = ["py311", "test"] }
test-py312-core = { features = ["py312", "test"] }
test-py311-full = { features = [
  "py311",
  "test",
  "sklearn",
  "funksvd",
  "implicit",
  "hpf",
], solve-group = "py311" }
test-py312-full = { features = [
  "py312",
  "test",
  "sklearn",
  "funksvd",
  "implicit",
  "hpf",
], solve-group = "py312" }
test-examples = { features = [
  "demo",
  "test",
  "funksvd",
  "hpf",
  "implicit",
], solve-group = "py311" }

[target.osx-arm64.dependencies]
# pytorch = { version = "~=2.1", channel = "pytorch" }