-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add PySCENIC #50445
base: master
Are you sure you want to change the base?
Add PySCENIC #50445
Changes from 35 commits
503da2c
fb12e0d
d77b6a1
a7919aa
c96f7c3
bda27f2
40cafec
7e781be
91f1071
ba4e079
27d5c50
630446e
e64ed57
39e6142
01766c3
7e4b20a
61e9c0c
cbb5542
c1b0901
20738d2
5af301e
e38ae0f
fa8c511
73f2370
41d453b
688d373
33305a8
a682b74
4a6664a
fcf15bc
d65d721
989524a
cfe4b92
1af7f2d
3e0abb1
e541c22
241cfea
621e4e2
222e3a5
0d26c18
4efa1f2
42120e7
9d0b5a2
61f1c05
2c107d0
d8337b2
a620bd0
7a8e9bd
49f288d
70cae7a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
#!/bin/bash | ||
set -ex | ||
|
||
if [ -z "${PYTHON}" ]; then | ||
PYTHON=$(which python) | ||
fi | ||
|
||
for package in arboreto-0.1.6 interlap-0.2.7 multiprocessing_on_dill-3.5.0a4 ctxcore-0.2.0; do | ||
pushd ${SRC_DIR}/${package} | ||
|
||
if [ "$package" == "arboreto-0.1.6" ] && [ ! -f requirements.txt ]; then | ||
echo "dask[complete]" > requirements.txt | ||
echo "distributed" >> requirements.txt | ||
echo "numpy>=1.16.5" >> requirements.txt | ||
echo "pandas" >> requirements.txt | ||
echo "scikit-learn" >> requirements.txt | ||
echo "scipy" >> requirements.txt | ||
fi | ||
|
||
${PYTHON} -m pip install . --use-pep517 --no-deps --ignore-installed -vv | ||
popd | ||
done | ||
|
||
pushd ${SRC_DIR}/pyscenic-0.12.1 | ||
${PYTHON} -m pip install . --use-pep517 --no-deps --ignore-installed -vv | ||
popd |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
{% set name = "pyscenic" %} | ||
{% set version = "0.12.1" %} | ||
{% set sha256 = "ae8fafa707d2578ffe08f9eed85f14a4cd9e1b53d57217420e2e956f0a8ddba2" %} | ||
|
||
package: | ||
name: "{{ name|lower }}" | ||
version: "{{ version }}" | ||
|
||
source: | ||
- url: "https://pypi.io/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz" | ||
sha256: "{{ sha256 }}" | ||
folder: pyscenic-0.12.1 | ||
- url: "https://files.pythonhosted.org/packages/source/a/arboreto/arboreto-0.1.6.tar.gz" | ||
sha256: "32fdac5e8a3e0ef2e196b5827f067d815ac4e689d2fca0dc437f42abdeeb89ab" | ||
folder: arboreto-0.1.6 | ||
- url: "https://files.pythonhosted.org/packages/source/i/interlap/interlap-0.2.7.tar.gz" | ||
sha256: "31e4f30c54b067c4939049f5d8131ae5e2fa682ec71aa56f89c0e5b900806ec9" | ||
folder: interlap-0.2.7 | ||
- url: "https://files.pythonhosted.org/packages/source/m/multiprocessing_on_dill/multiprocessing_on_dill-3.5.0a4.tar.gz" | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. As I mentioned above, the licensing for There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Working out a license like that could take a long time, in the meantime this could be used like this and possibly improved once that is resolved. There are many packages in bioconda that recourse to pip installing dependencies that are not available in conda, for instance https://github.com/bioconda/bioconda-recipes/blob/def3a07b68330abb40f7650b3747b8bee189ab66/recipes/latch/build.sh There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Thanks, I see your point. I will get some clarity on this from the core team. |
||
sha256: "d6d50c300ff4bd408bb71eb78725e60231039ee9b3d0d9bb7697b9d0e15045e7" | ||
folder: multiprocessing_on_dill-3.5.0a4 | ||
- url: "https://github.com/aertslab/ctxcore/archive/refs/tags/0.2.0.tar.gz" | ||
sha256: "a7ebf0f2625641b76a390993e12042e92fff7d0ac242c7fad5e3bff3ff3cd67a" | ||
folder: ctxcore-0.2.0 | ||
|
||
build: | ||
number: 0 | ||
run_exports: | ||
- "{{ pin_subpackage(name, max_pin='x.x') }}" | ||
|
||
requirements: | ||
build: | ||
- "{{ compiler('c') }}" | ||
- "{{ compiler('cxx') }}" | ||
- make | ||
- python >=3.10,<3.11 # Pinning Python version to 3.10 | ||
- pip | ||
- setuptools | ||
- wheel | ||
- setuptools_scm | ||
|
||
host: | ||
- python >=3.10,<3.11 # Pinning Python version to 3.10 | ||
- pip | ||
- setuptools | ||
- wheel | ||
|
||
run: | ||
- python >=3.10,<3.11 # Pinning Python version to 3.10 | ||
- aiohttp | ||
- attrs | ||
- boltons | ||
- cloudpickle | ||
- cytoolz | ||
- dill | ||
- dask | ||
- distributed | ||
- frozendict | ||
- fsspec | ||
- llvmlite | ||
- loompy | ||
- networkx | ||
- numba >=0.51.2 | ||
- numexpr | ||
- pandas >=1.3.5 | ||
- pyyaml | ||
- requests | ||
- scikit-learn | ||
- scipy | ||
- tqdm | ||
- umap-learn | ||
- numpy ==1.23.5 | ||
- pyarrow | ||
|
||
test: | ||
imports: | ||
- pyscenic | ||
|
||
about: | ||
home: https://github.com/aertslab/pySCENIC | ||
summary: 'pySCENIC is a python implementation of the SCENIC pipeline' | ||
license: MIT | ||
license_family: MIT | ||
|
||
extra: | ||
recipe-maintainers: | ||
- 179018299 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What does this number refer to? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. it was my github id, deleted it |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@LiliyaBioinf arboreto is available from conda, and as such should be used as a conda dependency. Can you remove it from the sources and add under requirements.run please? Can you do the same with any of the above sources that might also be in conda (usually searching for conda + name of the package should allow you to find them if the exists as conda packages). Thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://anaconda.org/bioconda/arboreto
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
and of course, if added to the requirements, then shouldn't go in the
build.sh
.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like there was some discussion a while back to add multiprocessing_on_dill to conda-forge , but the upstream maintainers did not approve the PR to add the license. That would need to be resolved in some way so it can be added to conda-forge.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe in the meantime multiprocessing_on_dill can be installed through pip so that the community can benefit soon from the pyscenic recipe.