Skip to content

Commit 7c51fd6

Browse files
committed
use poetry
1 parent cd5bbbb commit 7c51fd6

File tree

4 files changed

+75
-113
lines changed

4 files changed

+75
-113
lines changed

docs/conf.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131

3232
# If your documentation needs a minimal Sphinx version, state it here.
3333
#
34-
needs_sphinx = "2.0" # Nicer param docs
34+
needs_sphinx = "3.0" # Nicer param docs
3535

3636
# Add any Sphinx extension module names here, as strings. They can be
3737
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones.

pyproject.toml

+69
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
[tool.poetry]
2+
authors = ["Romain Lopez <[email protected]>", "Adam Gayoso <[email protected]", "Galen Xing <[email protected]>"]
3+
classifiers = [
4+
"Development Status :: 4 - Beta",
5+
"Intended Audience :: Science/Research",
6+
"License :: OSI Approved :: MIT License",
7+
"Natural Language :: English",
8+
"Programming Language :: Python :: 3.6",
9+
"Programming Language :: Python :: 3.7",
10+
"Operating System :: MacOS :: MacOS X",
11+
"Operating System :: Microsoft :: Windows",
12+
"Operating System :: POSIX :: Linux",
13+
"Topic :: Scientific/Engineering :: Bio-Informatics",
14+
]
15+
description = "Deep generative models for end-to-end analysis of single-cell omics data."
16+
documentation = "https://scvi.readthedocs.io/en/stable/"
17+
homepage = "https://github.com/YosefLab/scvi-tools"
18+
license = "MIT"
19+
name = "scvi-tools"
20+
packages = [
21+
{include = "scvi"},
22+
]
23+
readme = "README.rst"
24+
version = "0.6.7"
25+
26+
[tool.poetry.dependencies]
27+
anndata = "^0.7.4"
28+
black = {version = "^20.8b1", optional = true}
29+
codecov = {version = "^2.0.8", optional = true}
30+
flake8 = {version = "^3.7.7", optional = true}
31+
h5py = "^2.9.0"
32+
hyperopt = "^0.1.2"
33+
ipython = {version = "^7.1.1", optional = true}
34+
ipywidgets = "*"
35+
jupyter = {version = "^1.0", optional = true}
36+
leidenalg = {version = "*", optional = true}
37+
loompy = {version = "^3.0.6", optional = true}
38+
nbconvert = {version = "^5.4.0", optional = true}
39+
nbformat = {version = "^4.4.0", optional = true}
40+
nbsphinx = {version = "*", optional = true}
41+
nbsphinx-link = {version = "*", optional = true}
42+
numba = "^0.41.0"
43+
numpy = "^1.17.0"
44+
pandas = "^1.0"
45+
pre-commit = {version = "^2.7.1", optional = true}
46+
pydata-sphinx-theme = {version = "^0.4.0", optional = true}
47+
pytest = {version = "^4.4", optional = true}
48+
python = "^3.6"
49+
python-igraph = {version = "*", optional = true}
50+
rich = "^6.2.0"
51+
scanpy = {version = "^1.6", optional = true}
52+
scanpydoc = {version = "^0.5", optional = true}
53+
scikit-learn = "^0.21.2"
54+
sphinx = {version = "^3.0", optional = true}
55+
torch = "^1.3"
56+
tqdm = "^4.31.1"
57+
typing_extensions = {version = "*", python = "<3.8"}
58+
xlrd = "^1.2.0"
59+
60+
[tool.poetry.extras]
61+
dev = ["black", "pytest", "flake8", "codecov", "scanpy", "loompy", "jupyter", "nbformat", "nbconvert", "pre-commit"]
62+
docs = ["sphinx", "scanpydoc", "nbsphinx", "nbsphinx-link", "ipython", "pydata-sphinx-theme", "typing_extensions"]
63+
tutorials = ["scanpy", "leidenalg", "python-igraph", "loompy"]
64+
65+
[tool.poetry.dev-dependencies]
66+
67+
[build-system]
68+
build-backend = "poetry.masonry.api"
69+
requires = ["poetry>=1.0"]

scvi/__init__.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
__author__ = "Romain Lopez"
2-
__email__ = "[email protected]"
3-
__version__ = "0.6.8"
1+
"""scvi-tools."""
42

53
# Set default logging handler to avoid logging with logging.lastResort logger.
64
import logging

setup.py

+4-109
Original file line numberDiff line numberDiff line change
@@ -1,113 +1,8 @@
11
#!/usr/bin/env python
2-
# -*- coding: utf-8 -*-
32

4-
from setuptools import setup, find_packages
3+
# This is a shim to hopefully allow Github to detect the package, build is done with poetry
54

6-
with open("README.rst") as readme_file:
7-
readme = readme_file.read()
5+
import setuptools
86

9-
requirements = [
10-
"numpy>=1.17.0",
11-
"torch>=1.3",
12-
"matplotlib>=3.1.2",
13-
"scikit-learn>=0.20.3",
14-
"h5py>=2.9.0",
15-
"pandas>=0.25",
16-
"tqdm>=4.31.1",
17-
"xlrd>=1.2.0",
18-
"hyperopt==0.1.2",
19-
"anndata>=0.7",
20-
'dataclasses; python_version < "3.7"', # for `dataclass`
21-
"scikit-misc>=0.1.3",
22-
"tables>=3.6.1", # read_hdf pandas in load_posterior
23-
"rich[jupyter]",
24-
"numba>=0.41.0",
25-
]
26-
27-
setup_requirements = ["pip>=18.1"]
28-
29-
test_requirements = [
30-
"pytest>=4.4",
31-
"pytest-runner>=5.0",
32-
"flake8>=3.7.7",
33-
"coverage>=4.5.1",
34-
"codecov>=2.0.8",
35-
"black>=19.3b0",
36-
"nbconvert>=5.4.0",
37-
"nbformat>=4.4.0",
38-
"jupyter>=1.0.0",
39-
"ipython>=7.1.1",
40-
"loompy>=3.0.6",
41-
"scanpy>=1.6",
42-
]
43-
44-
extras_requirements = {
45-
"notebooks": [
46-
"louvain>=0.6.1",
47-
"leidenalg>=0.7.0",
48-
"python-igraph>=0.7.1.post6",
49-
"colour>=0.1.5",
50-
"umap-learn>=0.3.10",
51-
"seaborn>=0.9.0",
52-
"leidenalg>=0.7.0",
53-
"loompy>=3.0.6",
54-
"scanpy>=1.6",
55-
],
56-
"docs": [
57-
"sphinx>=2.0.1",
58-
"nbsphinx",
59-
"sphinx_autodoc_typehints",
60-
"sphinx-rtd-theme>=0.3.1",
61-
"nbsphinx-link",
62-
"scanpydoc",
63-
"pydata-sphinx-theme>=0.4.0",
64-
'typing_extensions; python_version < "3.8"', # for `Literal`
65-
"ipython>=7.1.1",
66-
],
67-
"test": test_requirements,
68-
}
69-
author = (
70-
"Romain Lopez, "
71-
"Jeffrey Regier, "
72-
"Maxime Langevin, "
73-
"Edouard Mehlman, "
74-
"Yining Liu, "
75-
"Achille Nazaret, "
76-
"Gabriel Misrachi, "
77-
"Oscar Clivio, "
78-
"Pierre Boyeau, "
79-
"Adam Gayoso"
80-
)
81-
82-
setup(
83-
author=author,
84-
author_email="[email protected]",
85-
classifiers=[
86-
"Development Status :: 4 - Beta",
87-
"Intended Audience :: Science/Research",
88-
"License :: OSI Approved :: MIT License",
89-
"Natural Language :: English",
90-
"Programming Language :: Python :: 3.6",
91-
"Programming Language :: Python :: 3.7",
92-
"Operating System :: MacOS :: MacOS X",
93-
"Operating System :: Microsoft :: Windows",
94-
"Operating System :: POSIX :: Linux",
95-
"Topic :: Scientific/Engineering :: Bio-Informatics",
96-
],
97-
description="Single-cell Variational Inference",
98-
install_requires=requirements,
99-
license="MIT license",
100-
long_description=readme,
101-
include_package_data=True,
102-
keywords="scvi",
103-
name="scvi",
104-
python_requires=">=3.6",
105-
packages=find_packages(),
106-
setup_requires=setup_requirements,
107-
test_suite="tests",
108-
tests_require=test_requirements,
109-
extras_require=extras_requirements,
110-
url="https://github.com/YosefLab/scVI",
111-
version="0.6.8",
112-
zip_safe=False,
113-
)
7+
if __name__ == "__main__":
8+
setuptools.setup(name="scvi-tools")

0 commit comments

Comments
 (0)