-
Notifications
You must be signed in to change notification settings - Fork 3.3k
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 59 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
e94e23d
1d420f6
cceb927
a7b15b1
3078e4f
b4d55d9
fd83fbc
fe2166e
ace7c98
f68cace
addf656
fab1f61
c3de49f
37f36ee
129ffad
3798d9a
279610b
b203376
1aa4448
e84caeb
1264133
5d2ed24
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,72 @@ | ||
{% 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 }}" | ||
- path: dill_patch.patch | ||
|
||
build: | ||
number: 0 | ||
noarch: python | ||
run_exports: | ||
- "{{ pin_subpackage(name, max_pin='x.x') }}" | ||
script: "{{ PYTHON }} -m pip install . -vv" | ||
|
||
requirements: | ||
build: | ||
- python >=3.10,<3.11 | ||
- pip | ||
- setuptools | ||
- wheel | ||
|
||
host: | ||
- python >=3.10,<3.11 | ||
- pip | ||
- setuptools | ||
- wheel | ||
|
||
run: | ||
- python >=3.10,<3.11 | ||
- aiohttp | ||
- arboreto | ||
- attrs | ||
- boltons | ||
- cloudpickle | ||
- cytoolz | ||
- dill | ||
- dask >=2023.4.1 | ||
- distributed >=2023.4.1,<2023.5.0 | ||
- 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 | ||
- interlap | ||
- ctxcore | ||
|
||
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. Review and update dependency specifications. The requirements section is well-structured, but there are some points to consider:
Consider the following changes: - python >=3.10,<3.11
+ python >=3.10
- numpy ==1.23.5
+ numpy >=1.23.5
- distributed >=2023.4.1,<2023.5.0
+ distributed >=2023.4.1 Regarding
Would you like assistance in implementing these changes or investigating alternatives for
|
||
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 |
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.
Review and update dependency specifications.
The
multiprocessing_on_dill
package is missing from the dependencies. As discussed in the past comments, this package has licensing issues. Consider one of the following options:a. Work with the upstream authors to resolve the licensing issue and add it to conda-forge.
b. Include it as a pip-installed dependency in the build script, although this is not preferred by the Bioconda team.
c. Find an alternative solution that doesn't require this package.
The numpy version is pinned to a specific version (1.23.5), which might be too restrictive. Consider allowing a range of compatible versions instead.
Some other dependencies might benefit from more flexible version constraints. Review each dependency and consider if strict version pinning is necessary.
Suggested changes:
Please choose the most appropriate solution for handling the
multiprocessing_on_dill
dependency based on the options provided above.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.
@coderabbitai Item 1, the multiprocessing_on_dill import is replaced by multiprocessing in the patch,
dill_patch.patch
. multiprocessing_on_dill should not need to be in the dependencies.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.
@aliciaaevans Thank you for the clarification. You're right, since
multiprocessing_on_dill
has been replaced withmultiprocessing
in the patchdill_patch.patch
, there's no need to includemultiprocessing_on_dill
in the dependencies. I'll note this for future reviews.(_/)
( •_•)
/ >💡
✏️ Learnings added