Skip to content

Commit

Permalink
Transition from setup.py & friends to pyproject.toml (#209)
Browse files Browse the repository at this point in the history
  • Loading branch information
q2d2 authored Dec 19, 2024
1 parent 3d48251 commit 5741eec
Show file tree
Hide file tree
Showing 14 changed files with 119 additions and 2,440 deletions.
12 changes: 12 additions & 0 deletions .copier-answers.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Changes here will be overwritten by Copier; NEVER EDIT MANUALLY
_commit: dfb0404
_src_path: https://github.com/qiime2/q2-setup-template.git
module_name: feature_classifier
plugin_name: q2_feature_classifier
plugin_scripts: null
project_author_email: kaehler@gmail.com
project_author_name: Ben Kaehler
project_description: Functionality for taxonomic classification
project_name: q2-feature-classifier
project_urls_homepage: https://qiime2.org
project_urls_repository: https://github.com/qiime2/q2-feature-classifier
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1 @@
q2_feature_classifier/_version.py export-subst
pyproject.toml export-subst
1 change: 1 addition & 0 deletions .github/workflows/ci-dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,4 @@ jobs:
uses: qiime2/distributions/.github/workflows/lib-ci-dev.yaml@dev
with:
distro: amplicon
recipe-path: 'conda-recipe'
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -65,3 +65,7 @@ target/
.*.swp

.DS_Store

# Version file from versioningit
_version.py

2 changes: 0 additions & 2 deletions MANIFEST.in

This file was deleted.

2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ test-cov: all
py.test --cov=q2_feature_classifier

install: all
$(PYTHON) setup.py install
$(PYTHON) -m pip install -v .

dev: all
pip install -e .
Expand Down
52 changes: 0 additions & 52 deletions ci/recipe/meta.yaml

This file was deleted.

46 changes: 46 additions & 0 deletions conda-recipe/meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package:
name: q2-feature-classifier
version: {{ PLUGIN_VERSION }}
source:
path: ..
build:
script: make install
requirements:
host:
- python {{ python }}
- setuptools
- versioningit
- wheel
run:
- python {{ python }}
- scikit-learn {{ scikit_learn }}
- joblib
- scikit-bio {{ scikit_bio }}
- biom-format {{ biom_format }}
- blast >=2.13.0
- vsearch
- qiime2 {{ qiime2_epoch }}.*
- q2-types {{ qiime2_epoch }}.*
- q2-quality-control {{ qiime2_epoch }}.*
- q2-taxa {{ qiime2_epoch }}.*
- q2-feature-table {{ qiime2_epoch }}.*
build:
- setuptools
- versioningit
test:
requires:
- qiime2 >={{ qiime2 }}
- q2-types >={{ q2_types }}
- q2-quality-control >={{ q2_quality_control }}
- q2-taxa >={{ q2_taxa }}
- q2-feature-table >={{ q2_feature_table }}
- pytest
imports:
- q2_feature_classifier
- qiime2.plugins.feature_classifier
commands:
- py.test --pyargs q2_feature_classifier
about:
home: https://qiime2.org
license: BSD-3-Clause
license_family: BSD
50 changes: 50 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
[project]
name = "q2-feature-classifier"
authors = [
{ name = "Ben Kaehler", email = "kaehler@gmail.com" }
]
description = "Functionality for taxonomic classification"
readme = {file = "README.md", content-type = "text/markdown"}
license = {file = "LICENSE"}
dynamic = ["version"]

[project.urls]
Homepage = "https://qiime2.org"
Repository = "https://github.com/qiime2/q2-feature-classifier"

[project.entry-points.'qiime2.plugins']
"q2-feature-classifier" = "q2_feature_classifier.plugin_setup:plugin"

[build-system]
requires = [
"setuptools",
"versioningit",
"wheel"
]
build-backend = "setuptools.build_meta"

[tool.versioningit.vcs]
method = "git-archive"
describe-subst = "$Format:%(describe)$"
default-tag = "0.0.1"

[tool.versioningit.next-version]
method = "minor"

[tool.versioningit.format]
distance = "{base_version}+{distance}.{vcs}{rev}"
dirty = "{base_version}+{distance}.{vcs}{rev}.dirty"
distance-dirty = "{base_version}+{distance}.{vcs}{rev}.dirty"

[tool.versioningit.write]
file = "q2-feature-classifier/_version.py"

[tool.setuptools]
include-package-data = true

[tool.setuptools.packages.find]
where = ["."]
include = ["q2_feature_classifier*"]

[tool.setuptools.package-data]
q2_feature_classifier = ["**/*"]
7 changes: 4 additions & 3 deletions q2_feature_classifier/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
# ----------------------------------------------------------------------------

import importlib
from ._version import get_versions

__version__ = get_versions()['version']
del get_versions
try:
from ._version import __version__
except ModuleNotFoundError:
__version__ = '0.0.0+notfound'

importlib.import_module('q2_feature_classifier.types')
importlib.import_module('q2_feature_classifier.classifier')
Expand Down
Loading

0 comments on commit 5741eec

Please sign in to comment.