Skip to content

Simplot-cl 1.0.3#1602

Merged
erinyoung merged 5 commits intoStaPH-B:masterfrom
RaheelSyedAhmed:simplot-cl-1.0.3
Apr 1, 2026
Merged

Simplot-cl 1.0.3#1602
erinyoung merged 5 commits intoStaPH-B:masterfrom
RaheelSyedAhmed:simplot-cl-1.0.3

Conversation

@RaheelSyedAhmed
Copy link
Copy Markdown
Contributor

Pull Request (PR) checklist:

  • Include a description of what is in this pull request in this message.
  • The dockerfile successfully builds to a test target for the user creating the PR. (i.e. docker build --tag samtools:1.15test --target test docker-builds/build-files/samtools/1.15 )
  • Directory structure as name of the tool in lower case with special characters removed with a subdirectory of the version number in build-files (i.e. docker-builds/build-files/spades/3.12.0/Dockerfile)
    • (optional) All test files are located in same directory as the Dockerfile (i.e. build-files/shigatyper/2.0.1/test.sh)
  • Create a simple container-specific README.md in the same directory as the Dockerfile (i.e. docker-builds/build-files/spades/3.12.0/README.md)
    • If this README is longer than 30 lines, there is an explanation as to why more detail was needed
  • Dockerfile includes the recommended LABELS
  • Main README.md has been updated to include the tool and/or version of the dockerfile(s) in this PR
  • Program_Licenses.md contains the tool(s) used in this PR and has been updated for any missing

This pull request is for a new tool, simplot-cl version 1.0.3. It includes a micromamba based dockerfile with needed dependencies for the main executable, simplot.py to work appropriately. The README.md for v1.0.3. is longer than 30 lines. I found it useful to include formats of files that could be passed as arguments, and having the arguments themselves as well as descriptions of the overall steps and outputs were noted for ease of access. Appropriate details / dropdowns have been made to condense the rendered space.

…implot.py is linked to /usr/local/bin for python path access.
Comment on lines +36 to +39
RUN micromamba install --name base -f /opt/simplot-cl-${SIMPLOT_CL_VER}/environment.yml -y && \
micromamba clean -a -f -y && \
mkdir /data

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From https://github.com/hodcroftlab/simplot-cl/blob/main/environment.yml, it looks like the micromamba environment is very simple. It looks like it just consists of python packages and mafft. This image would be more stable and smaller without micromamba.

Could you try using the ubuntu:noble base?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, I'll give it a try, and I'll let you know if I run into any issues.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I updated the base to python 3.13.12-slim. File size went from 2.07 GB to 643.58 MB. Ubuntu noble was giving me some issues with pip.

@erinyoung
Copy link
Copy Markdown
Contributor

Tests worked

#13 [test 3/5] RUN simplot.py -h
#13 0.872 usage: simplot.py [-h] -s SEQUENCES (-q QUERY_ID [QUERY_ID ...] |
#13 0.872                   -r REFERENCE_SEQUENCES) [-i] [-n] [-m METADATA]
#13 0.872                   [-mi METADATA_ID_COL] [-mg METADATA_GENOTYPE_COL]
#13 0.872                   [-mm {reference,query,both}] [-c COLORS] [-ws WINDOWSIZE]
#13 0.872                   [-ss STEPSIZE] [-g GAPS] [-t THREADS] [-f OUTFORMAT]
#13 0.872                   [-p OUTPLOTS] [-o OUTCSV] [-oa OUTALN] [-wd WIDTH]
#13 0.872                   [-ht HEIGHT]
#13 0.872 
#13 0.872 Similarity plot generator v1.0.0
#13 0.872 
#13 0.872 options:
#13 0.872   -h, --help            show this help message and exit
#15 2.685 [INFO] Processing query sequence: MZ171089.1
#15 2.685     └── Splitting alignment into windows (window size: 200, step size: 100)
#15 2.685     └── Calculating pairwise distances for each window
#15 2.685         └── Skipping comparison between MZ171089.1 and MG571834.1 at step 7300 due to insufficient valid positions (4.50% valid; likely caused by gaps).
#15 2.685         └── Skipping comparison between MZ171089.1 and MG571834.1 at step 7400 due to insufficient valid positions (0.00% valid; likely caused by gaps).
#15 2.685     └── Assigning colors for plotting
#15 2.685         └── No metadata or colors provided. Using default colors by sequence.
#15 2.685     └── Creating SimPlot
#15 2.685         └── SimPlot saved to simplots/MZ171089.1_simplot.png
#15 2.685 [INFO] Finished processing query sequence: MZ171089.1
#15 2.685 ============================================================
#15 DONE 2.8s

Updated README.md to include additional tools and example usage.
@erinyoung
Copy link
Copy Markdown
Contributor

This looks good. I adjusted the tool-specific README

  • added mafft with its version
  • removed a lot of the text that seemed to have been copied from the original repository (a lot of extra usage text is often very difficult to maintain, especially for new tools that are likely to undergo a lot of changes)

Copy link
Copy Markdown
Contributor

@erinyoung erinyoung left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have no changes to recommend.

Thank you for putting this together!

@erinyoung erinyoung merged commit 06c9db3 into StaPH-B:master Apr 1, 2026
2 checks passed
@erinyoung
Copy link
Copy Markdown
Contributor

The status of the deployment can be found here : https://github.com/StaPH-B/docker-builds/actions/runs/23865101657

Since this is a new tool, it was appear as a private repo on quay. Hopefully I remember on my own to switch it to public once deployed there, but please remind me to do so if I have forgotten.

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.

2 participants