mirror of
https://github.com/chanzuckerberg/cellxgene.git
synced 2026-10-04 02:18:11 +08:00
extract prepare from main install (#887)
* extract prepare from main install * add requirements-prepare to manifest
This commit is contained in:
+2
-1
@@ -1,4 +1,5 @@
|
|||||||
recursive-include server/app/web/templates *
|
recursive-include server/app/web/templates *
|
||||||
recursive-include server/app/web/static *
|
recursive-include server/app/web/static *
|
||||||
|
|
||||||
include server/requirements.txt
|
include server/requirements.txt
|
||||||
|
include server/requirements-prepare.txt
|
||||||
|
|||||||
@@ -185,11 +185,6 @@ def launch(
|
|||||||
else:
|
else:
|
||||||
click.echo(f"[cellxgene] Loading data from {basename(data)}.")
|
click.echo(f"[cellxgene] Loading data from {basename(data)}.")
|
||||||
|
|
||||||
# Fix for anaconda python. matplotlib typically expects python to be installed as a framework TKAgg is usually
|
|
||||||
# available and fixes this issue. See https://matplotlib.org/faq/virtualenv_faq.html
|
|
||||||
import matplotlib as mpl
|
|
||||||
|
|
||||||
mpl.use("TkAgg")
|
|
||||||
from server.app.scanpy_engine.scanpy_engine import ScanpyEngine
|
from server.app.scanpy_engine.scanpy_engine import ScanpyEngine
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
+21
-15
@@ -41,18 +41,18 @@ from scipy.sparse.csc import csc_matrix
|
|||||||
"--make-var-names-unique", default=True, is_flag=True, help="Ensure var index is unique.", show_default=True
|
"--make-var-names-unique", default=True, is_flag=True, help="Ensure var index is unique.", show_default=True
|
||||||
)
|
)
|
||||||
def prepare(
|
def prepare(
|
||||||
data,
|
data,
|
||||||
layout,
|
layout,
|
||||||
recipe,
|
recipe,
|
||||||
output,
|
output,
|
||||||
plotting,
|
plotting,
|
||||||
sparse,
|
sparse,
|
||||||
overwrite,
|
overwrite,
|
||||||
set_obs_names,
|
set_obs_names,
|
||||||
set_var_names,
|
set_var_names,
|
||||||
run_qc,
|
run_qc,
|
||||||
make_obs_names_unique,
|
make_obs_names_unique,
|
||||||
make_var_names_unique,
|
make_var_names_unique,
|
||||||
):
|
):
|
||||||
"""Preprocesses data for use with cellxgene.
|
"""Preprocesses data for use with cellxgene.
|
||||||
|
|
||||||
@@ -65,10 +65,16 @@ def prepare(
|
|||||||
|
|
||||||
# collect slow imports here to make CLI startup more responsive
|
# collect slow imports here to make CLI startup more responsive
|
||||||
click.echo("[cellxgene] Starting CLI...")
|
click.echo("[cellxgene] Starting CLI...")
|
||||||
import matplotlib
|
try:
|
||||||
|
import matplotlib
|
||||||
|
|
||||||
matplotlib.use("Agg")
|
matplotlib.use("Agg")
|
||||||
import scanpy as sc
|
import scanpy as sc
|
||||||
|
except ImportError:
|
||||||
|
raise click.ClickException(
|
||||||
|
"[cellxgene] cellxgene prepare has not been installed. Please run `pip install cellxgene[prepare]` "
|
||||||
|
"to install the necessary requirements."
|
||||||
|
)
|
||||||
|
|
||||||
# scanpy settings
|
# scanpy settings
|
||||||
sc.settings.verbosity = 0
|
sc.settings.verbosity = 0
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
scanpy>=1.3.7
|
||||||
@@ -6,11 +6,7 @@ Flask-Compress>=1.4.0
|
|||||||
Flask-Cors>=3.0.6
|
Flask-Cors>=3.0.6
|
||||||
Flask-RESTful>=0.3.6
|
Flask-RESTful>=0.3.6
|
||||||
flatbuffers>=1.10.0
|
flatbuffers>=1.10.0
|
||||||
# TODO revert after scanpy updates their dependency on this
|
|
||||||
matplotlib<3.1
|
|
||||||
numpy>=1.15.2
|
numpy>=1.15.2
|
||||||
pandas>=0.23.1
|
pandas>=0.23.1
|
||||||
scanpy>=1.3.7
|
|
||||||
scipy>=1.1.0
|
scipy>=1.1.0
|
||||||
scikit-learn>=0.19.1,!=0.20.0
|
|
||||||
tables==3.5.1
|
tables==3.5.1
|
||||||
|
|||||||
@@ -6,6 +6,9 @@ with open("README.md", "rb") as fh:
|
|||||||
with open("server/requirements.txt") as fh:
|
with open("server/requirements.txt") as fh:
|
||||||
requirements = fh.read().splitlines()
|
requirements = fh.read().splitlines()
|
||||||
|
|
||||||
|
with open("server/requirements-prepare.txt") as fh:
|
||||||
|
requirements_prepare = fh.read().splitlines()
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name="cellxgene",
|
name="cellxgene",
|
||||||
version="0.11.0",
|
version="0.11.0",
|
||||||
@@ -36,5 +39,5 @@ setup(
|
|||||||
"Topic :: Scientific/Engineering :: Bio-Informatics",
|
"Topic :: Scientific/Engineering :: Bio-Informatics",
|
||||||
],
|
],
|
||||||
entry_points={"console_scripts": ["cellxgene = server.cli.cli:cli"]},
|
entry_points={"console_scripts": ["cellxgene = server.cli.cli:cli"]},
|
||||||
extras_require=dict(louvain=["python-igraph", "louvain>=0.6"], gui=["PySide2>=5.12.3", "cefpython3>=66", "requests"]),
|
extras_require=dict(prepare=requirements_prepare, louvain=["python-igraph", "louvain>=0.6"], gui=["PySide2>=5.12.3", "cefpython3>=66", "requests"]),
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user