Skip to content
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

conversion to python package #4

Open
nick-youngblut opened this issue Apr 19, 2022 · 5 comments
Open

conversion to python package #4

nick-youngblut opened this issue Apr 19, 2022 · 5 comments
Labels
enhancement New feature or request

Comments

@nick-youngblut
Copy link

Any plans on making KEMET a legit python package that can be installed via pip (from pypi)? I see that the setup.py is non-standard. Converting the current code in the setup.py to a separate script that is referenced via scripts: in a standard setup.py would likely be all that is needed.

@Matteopaluh Matteopaluh added the enhancement New feature or request label Apr 19, 2022
@Matteopaluh
Copy link
Owner

Matteopaluh commented Apr 19, 2022

Thanks for the suggestion!

That was an early thought of mine, to make it even easier to install KEMET, but I never tried before and didn't wantt to mess up the code.
I also wanted to know if there would be enough users for the tool, but I guess the easier it is, the more users would be interested in!

I guess that if it's feasible, as you suggest, I'll be able to do that in a relatively small time-frame.

Best,
Matteo

@nick-youngblut
Copy link
Author

Yeah, it should be a quick change. You can basically just copy & edit a setup.py from various existing bioinformatics python packages.

An example (maybe not the best, but hopefully useful):

Availability via pypi also helps with creating a conda recipe for the tool.

@Matteopaluh
Copy link
Owner

I actually tried a few different setups, but had an hard time packaging both the python code and the external dependencies (mafft, hmmer, prodigal, diamond) which I'm now accessing via conda channels.
Conversely, building a conda recipe would miss the dependencies that are now being installed via pip (carveme, and reframed - one of its requirement).

KEMET acts as a long script which performs system calls of those other programs.
I think that finding the right way to package the whole thing is longer than it seemed at first..
So, for the moment, I think I'm keeping the installation procedure as it is.

Any contribution is well recieved though, if it's helping the community access the tool or if it adds other relevant features!

@nick-youngblut
Copy link
Author

I actually tried a few different setups, but had an hard time packaging both the python code and the external dependencies (mafft, hmmer, prodigal, diamond) which I'm now accessing via conda channels.
Conversely, building a conda recipe would miss the dependencies that are now being installed via pip (carveme, and reframed - one of its requirement).

Why have any dependencies bundled with KEMET? I don't see any reason for why this would be needed, given conda. If you have altered any code in the dependencies, then it is best to use a fork of the repo for the conda recipe dependency versus bundling in the KEMET software.

@jolespin
Copy link

@nick-youngblut I agree. You don't need to have software bundled since bioconda has all the dependencies. This will make it easier to include in other pipelines and software tools. If you can get this packaged up, I will include it in my software packages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants