-
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 pantax #50983
add pantax #50983
Changes from 8 commits
5268cf5
26c947f
3ea2ff2
cf7ac6c
dea4574
5b16876
fe19494
15006dd
fa9a0c5
dfb06a8
1bef665
3825b81
4a53b89
60d398c
80218be
10c9f3a
9b9dd6c
41021f1
83fa662
ac057c5
34e2e53
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,24 @@ | ||||||||||||||||||||||
#!/usr/bin/env bash | ||||||||||||||||||||||
|
||||||||||||||||||||||
if [ "$(uname)" == "Darwin" ]; then | ||||||||||||||||||||||
cp -rf $SRC_DIR $PREFIX | ||||||||||||||||||||||
else | ||||||||||||||||||||||
martin-g marked this conversation as resolved.
Show resolved
Hide resolved
zwh82 marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||||||||||||||
cd ${PREFIX}/gurobi11 | ||||||||||||||||||||||
${PYTHON} -m pip install gurobipy-11.0.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl | ||||||||||||||||||||||
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. I think it is not allowed to install dependencies with Pip like this. 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. Where does it install it, by the way ? It looks like it is no inside 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. Why? Are there any rules that restrict this installation behavior? I have already installed the artifact locally and tested it sucessfully, and PanTax is works well. Gurobipy, as a Python package, should be installed in the 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. About the question of |
||||||||||||||||||||||
rm gurobipy-11.0.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl | ||||||||||||||||||||||
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. Improve error handling and Python version flexibility.
-cd ${PREFIX}/gurobi11
+cd ${PREFIX}/gurobi11 || exit 1
-${PYTHON} -m pip install gurobipy-11.0.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
+${PYTHON} -m pip install gurobipy-11.0.2-cp${PYTHON_VERSION/./}-cp${PYTHON_VERSION/./}-manylinux2014_x86_64.manylinux_2_17_x86_64.whl This assumes that the
🧰 Tools🪛 Shellcheck
|
||||||||||||||||||||||
|
||||||||||||||||||||||
mkdir -p ${PREFIX}/bin/tools | ||||||||||||||||||||||
cd ${PREFIX}/vg | ||||||||||||||||||||||
cp vg* ${PREFIX}/bin/tools/vg | ||||||||||||||||||||||
chmod +x ${PREFIX}/bin/tools/vg | ||||||||||||||||||||||
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. 🛠️ Refactor suggestion Improve error handling and file copying specificity.
-cd ${PREFIX}/vg
+cd ${PREFIX}/vg || exit 1
-cp vg* ${PREFIX}/bin/tools/vg
+cp vg vg_* ${PREFIX}/bin/tools/ This assumes that the main executable is named 📝 Committable suggestion
Suggested change
🧰 Tools🪛 Shellcheck
|
||||||||||||||||||||||
|
||||||||||||||||||||||
cd $SRC_DIR/scripts | ||||||||||||||||||||||
chmod +x pantax | ||||||||||||||||||||||
chmod +x data_preprocessing | ||||||||||||||||||||||
cp $SRC_DIR/scripts/pantax $SRC_DIR/scripts/data_preprocessing ${PREFIX}/bin | ||||||||||||||||||||||
cp $SRC_DIR/scripts/*py ${PREFIX}/bin | ||||||||||||||||||||||
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. 🛠️ Refactor suggestion Improve error handling and file copying specificity.
-cd $SRC_DIR/scripts
+cd $SRC_DIR/scripts || exit 1
-cp $SRC_DIR/scripts/*py ${PREFIX}/bin
+cp $SRC_DIR/scripts/{pantax.py,data_preprocessing.py} ${PREFIX}/bin Replace
🧰 Tools🪛 Shellcheck
|
||||||||||||||||||||||
|
||||||||||||||||||||||
cd $SRC_DIR/tools/fastix | ||||||||||||||||||||||
cargo install fastix --root ./ | ||||||||||||||||||||||
zwh82 marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||||||||||||||
cp $SRC_DIR/tools/fastix/bin/fastix ${PREFIX}/bin/tools | ||||||||||||||||||||||
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. 🛠️ Refactor suggestion Improve error handling and add Cargo availability check.
-cd $SRC_DIR/tools/fastix
+cd $SRC_DIR/tools/fastix || exit 1
+if ! command -v cargo &> /dev/null; then
+ echo "Cargo is not installed. Please install Rust and Cargo to build Fastix."
+ exit 1
+fi
cargo install fastix --root ./ This change ensures that the script fails gracefully if Cargo is not available on the system. 📝 Committable suggestion
Suggested change
🧰 Tools🪛 Shellcheck
|
||||||||||||||||||||||
fi |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
{% set name = "pantax" %} | ||
{% set version = "1.0.1" %} | ||
|
||
package: | ||
name: {{ name }} | ||
version: {{ version }} | ||
|
||
source: | ||
- url: https://github.com/LuoGroup2023/PanTax/releases/download/v1.0.1/pantax.tar.gz | ||
sha256: 93f39878f15cb76d40a80e8ae1b3521f1a4bc799c0cc4519c3df9c4ea9c4b9ba | ||
|
||
- url: https://files.pythonhosted.org/packages/07/0f/6039cf6e22f9cbec57cdedff103949e4856c18fd2cb714bc70cdc8b52941/gurobipy-11.0.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl | ||
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. Please require this as a dependency and do not pip install them 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. Gurobipy can be install with 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. You can use only dependencies from |
||
sha256: 164e72462c2f1a705fcec73acc060aa639e745827bfe877714ff7b2ccabc5237 | ||
folder: gurobi11 | ||
|
||
- url: https://github.com/vgteam/vg/releases/download/v1.59.0/vg | ||
sha256: a2270237c8541867ac345ad924c1641881bc9fd60be157a6d3d29fa910aacfc2 | ||
folder: vg | ||
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. Can you instead require VG in the requirements section? 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. This is impossible. The requirement PGGB works with vg 1.40, but I need updated versions (vg 1.52) in other parts of my codes. 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. https://anaconda.org/bioconda/vg provides a newer version |
||
|
||
build: | ||
skip: True # [osx] | ||
number: 0 | ||
run_exports: | ||
- {{ pin_subpackage(name, max_pin="x.x") }} | ||
zwh82 marked this conversation as resolved.
Show resolved
Hide resolved
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. 🛠️ Refactor suggestion Review pin_subpackage directive and remove trailing space. The build section is generally well-defined. However, consider the following points:
Consider updating the run_exports:
- {{ pin_subpackage(name, max_pin="x") }} This change allows for minor version updates while still maintaining compatibility. 🧰 Tools🪛 yamllint
|
||
|
||
requirements: | ||
build: | ||
- {{ compiler('rust') }} | ||
host: | ||
- python ==3.10 | ||
- pip | ||
run: | ||
- python =3.10 | ||
martin-g marked this conversation as resolved.
Show resolved
Hide resolved
|
||
- samtools =1.19.2 | ||
- bcftools =1.19 | ||
- htslib =1.19.1 | ||
- pggb =0.5.4 | ||
- graphaligner =1.0.17 | ||
- h5py =3.10.0 | ||
- pandas =2.2.0 | ||
- tqdm =4.66.1 | ||
- numpy =1.26.3 | ||
- networkx =3.2.1 | ||
- time =1.8 | ||
|
||
test: | ||
commands: | ||
- pantax -h | ||
zwh82 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
about: | ||
home: https://github.com/LuoGroup2023/PanTax | ||
license: GPL-3.0 | ||
zwh82 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
summary: Strain-level taxonomic classification of metagenomic data using pangenome graphs | ||
|
||
extra: | ||
skip-lints: | ||
- should_be_noarch_python |
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.
The meta.yaml says to skip OSX