We had a meeting about some bugfixes and conda packaging for run_dbcan. I have updated my changes to the latest version in git, 3.0.5, so they are ready to merge in. To summarize:
The meta.yaml file can be used to build conda packages successfully on my machine. We have these packages installed on several machines successfully(both a linux box and some windows machines using WSL) for our SACCHARIS dev work and it works without errors.
There was a bug with absolute pathnames not being recognized properly and causing empty folder trees to be created, which has been fixed.
The package is fully importable as a python module, without the need to run subprocess(). I also changed the hmmscan parsing code to be imported as a python module by dbcan_cli. This fixes a bug that prevented run_dbcan from executing, which I am fairly sure was caused by the way WSL handles the python interpreter.
As part of making run_dbcan importable as a python module I also split out the argparse functionality into a separate function. This is for clarity, and to simplify calling run_dbcan from other python scripts. It is a large number of line changes but it's mostly just reorganizing the code.
None of the changes remove functionality, however I did have to rename hmmscan-parser.py to hmmscan_parser.py, because you cannot use dashes in a python module name when importing. This is a python naming convention that has been baked into the module import. This wouldn't have any effect on users that call run_dbcan through the normal CLI, but could be considered a breaking change for anyone that calls hmmscan-parser.py directly.
For versioning, the meta.yaml imports the version number from setup.py, keeping a single source of truth for version info.
Let me know if there are any changes you want explained further, I can go over it on a video call. You can contact me here or email me at alexander.fraser@alumni.ubc.ca
Hi,
We had a meeting about some bugfixes and conda packaging for run_dbcan. I have updated my changes to the latest version in git, 3.0.5, so they are ready to merge in. To summarize:
As part of making run_dbcan importable as a python module I also split out the argparse functionality into a separate function. This is for clarity, and to simplify calling run_dbcan from other python scripts. It is a large number of line changes but it's mostly just reorganizing the code.
None of the changes remove functionality, however I did have to rename hmmscan-parser.py to hmmscan_parser.py, because you cannot use dashes in a python module name when importing. This is a python naming convention that has been baked into the module import. This wouldn't have any effect on users that call run_dbcan through the normal CLI, but could be considered a breaking change for anyone that calls hmmscan-parser.py directly.
For versioning, the meta.yaml imports the version number from setup.py, keeping a single source of truth for version info.
To get run_dbcan on the bioconda channel, you need to fork the bioconda repo and add only the meta.yaml and merge it back in, as per https://bioconda.github.io/contributor/index.html
Let me know if there are any changes you want explained further, I can go over it on a video call. You can contact me here or email me at alexander.fraser@alumni.ubc.ca
Alex