Skip to content

Conversation

@matthewstuartedwards
Copy link

The Snakemake pipeline was giving a lot of issues. First was the version of python in the Node:16 container was unable to parse syntax in the node-gyp module, specifically the := operator. Updating the container to Node:17 was enough to solve this.

With the update to Node:17, the 1.x.x version of the graphkb_parser was no longer working within the node dependency chain. I updated the graphkb_parser to ^2.0.0 and graphkb-schema to ^3.16.0 which allowed all dependencies to compile. Updating the parser changed how it was to be loaded in the javascript code, so there were a few superficial changes to get the library loaded.

The shell sections of many downloaders included commands to change directory. I don't know if this was causing all the problems or the dedent command, but for me the shell sections of these tasks would execute and exit without error, but without having run any commands. I reworked these tasks to download files without changing the current directory, often by replacing wget with curl --create-dirs -o.

Was still having some Node version issues when executing the pipeline, but npm rebuild seemed to fix that. I'm not sure if something else could be done to fix that, but putting an npm rebuild near the end of the Docker file was enough to solve that problem for me.

matthewstuartedwards and others added 5 commits October 3, 2024 13:16
The Snakemake pipeline was giving a lot of issues.  First was the version of python in the Node:16 container was unable to parse syntax in the node-gyp module, specifically the := operator.  Updating the container to Node:17 was enough to solve this.

With the update to Node:17, the 1.x.x version of the graphkb_parser was no longer working within the node dependency chain.  I updated the graphkb_parser to ^2.0.0 and graphkb-schema to ^3.16.0 which allowed all dependencies to compile.  Updating the parser changed how it was to be loaded in the javascript code, so there were a few superficial changes to get the library loaded.

The shell sections of many downloaders included commands to change directory.  I don't know if this was causing all the problems or the dedent command, but for me the shell sections of these tasks would execute and exit without error, but without having run any commands.  I reworked these tasks to download files without changing directory, often by replacing wget with `curl --create-dirs -o`.

Was still having some Node version issues when executing the pipeline, but npm rebuild seemed to fix that.  I'm not sure if something else could be done to fix that, but putting an `npm rebuild` near the end of the Docker file was enough to solve that problem for me.
Switched to an ubuntu container for running the code.  This allowed curl -L with redirects, which became necessary to download some of the databases.

Extermalized the cosmic downloader to a script with different parameters and was able to simplify the different cosmic downloaders.

URL Encoded the URL string for downloading ENSEMBL and put it in an external .txt file.
@mathieulemieux mathieulemieux self-requested a review October 28, 2025 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants