Merge pull request #33 from macaodha/feat/migrate-to-uv

Feat/migrate to uv
This commit is contained in:
Santiago Martinez Balvanera 2024-11-10 19:04:47 +00:00 committed by GitHub
commit cb088359ae
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 1563 additions and 1396 deletions

View File

@ -19,16 +19,15 @@ jobs:
python-version: ["3.8", "3.9", "3.10", "3.11"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install pytest
pip install .
enable-cache: true
cache-dependency-glob: "uv.lock"
- name: Set up Python ${{ matrix.python-version }}
run: uv python install ${{ matrix.python-version }}
- name: Install the project
run: uv sync --all-extras --dev
- name: Test with pytest
run: |
pytest
run: uv run pytest

View File

@ -21,7 +21,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v3
with:

1337
pdm.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -1,82 +1,78 @@
[tool.pdm]
[tool.pdm.dev-dependencies]
dev = [
"pytest>=7.2.2",
]
[project]
name = "batdetect2"
version = "1.0.8"
description = "Deep learning model for detecting and classifying bat echolocation calls in high frequency audio recordings."
authors = [
{ "name" = "Oisin Mac Aodha", "email" = "oisin.macaodha@ed.ac.uk" },
{ "name" = "Santiago Martinez Balvanera", "email" = "santiago.balvanera.20@ucl.ac.uk" }
{ "name" = "Oisin Mac Aodha", "email" = "oisin.macaodha@ed.ac.uk" },
{ "name" = "Santiago Martinez Balvanera", "email" = "santiago.balvanera.20@ucl.ac.uk" },
]
dependencies = [
"click>=8.1.7",
"librosa>=0.10.1",
"matplotlib>=3.7.1",
"numpy>=1.23.5,<2",
"pandas>=1.5.3",
"scikit-learn>=1.2.2",
"scipy>=1.10.1",
"torch>=1.13.1",
"torchaudio",
"torchvision",
"click>=8.1.7",
"torch>=1.13.1,<2.5.0",
"torchaudio>=1.13.1,<2.5.0",
"torchvision>=0.14.0",
]
requires-python = ">=3.8,<3.12"
readme = "README.md"
license = { text = "CC-by-nc-4" }
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Science/Research",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Multimedia :: Sound/Audio :: Analysis",
"Development Status :: 4 - Beta",
"Intended Audience :: Science/Research",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Multimedia :: Sound/Audio :: Analysis",
]
keywords = [
"bat",
"echolocation",
"deep learning",
"audio",
"machine learning",
"classification",
"detection",
"bat",
"echolocation",
"deep learning",
"audio",
"machine learning",
"classification",
"detection",
]
[build-system]
requires = ["pdm-pep517>=1.0.0"]
build-backend = "pdm.pep517.api"
requires = ["hatchling"]
build-backend = "hatchling.build"
[project.scripts]
batdetect2 = "batdetect2.cli:cli"
[tool.black]
line-length = 79
[[tool.mypy.overrides]]
module = [
"librosa",
"pandas",
[tool.uv]
dev-dependencies = [
"pyright>=1.1.388",
"pytest>=7.2.2",
"ruff>=0.7.3",
]
ignore_missing_imports = true
[tool.pylsp-mypy]
enabled = false
live_mode = true
strict = true
[tool.ruff]
line-length = 79
target-version = "py38"
[tool.pydocstyle]
[tool.ruff.format]
docstring-code-format = true
docstring-code-line-length = 79
[tool.ruff.lint]
select = ["E4", "E7", "E9", "F", "B", "Q", "I"]
[tool.ruff.lint.pydocstyle]
convention = "numpy"
[tool.pyright]
include = [
"bat_detect",
"tests",
]
include = ["batdetect2", "tests"]
venvPath = "."
venv = ".venv"
pythonVersion = "3.8"
pythonPlatform = "All"

1509
uv.lock generated Normal file

File diff suppressed because it is too large Load Diff