diff --git a/Dockerfile b/Dockerfile index 496db5d..2668d25 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,22 +7,18 @@ FROM python:3.12-alpine AS builder RUN apk update --no-cache && apk add --no-cache build-base bash cmake git # Build mafft from source -# mafft creates an entire directory, that's what we copy later and that's why it needs -# to be added to the path -RUN wget https://mafft.cbrc.jp/alignment/software/mafft-7.525-without-extensions-src.tgz -RUN tar -xzf mafft-7.525-without-extensions-src.tgz -RUN cd mafft-7.525-without-extensions/core && \ +RUN git clone https://gitlab.com/manulera/mafft.git +RUN cd mafft && git checkout 3cf6cfa8b81756b27eed28ed368474b9ee50e2da +RUN cd mafft/core && \ sed -i 's/^PREFIX = .*/PREFIX = \/usr\/local\/bin\/mafft/' Makefile && \ make && \ make install # Build MARS from source -RUN wget https://github.com/manulera/MARS/archive/refs/tags/v0.2.3.tar.gz && \ -tar -xzf v0.2.3.tar.gz && \ -cd MARS-0.2.3 && \ +RUN wget https://github.com/manulera/MARS/archive/refs/tags/v0.2.6.tar.gz && \ +tar -xzf v0.2.6.tar.gz && \ +cd MARS-0.2.6 && \ ./pre-install.sh && \ -# Fix https://github.com/lorrainea/MARS/issues/20 -sed -i '/template /i\ #ifdef PAGESIZE\n#undef PAGESIZE\n#endif' ./seqan/file/file_page.h && \ make -f Makefile && \ mv mars /usr/local/bin/mars diff --git a/poetry.lock b/poetry.lock index 079f741..53958bb 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.1.3 and should not be changed by hand. [[package]] name = "annotated-doc" @@ -1431,33 +1431,19 @@ description = "Simple primer design and analysis" optional = false python-versions = ">=3.8" groups = ["main"] -files = [ - {file = "primer3_py-2.2.0-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:6eac54399aa03f5238964a6d82520018cd5e5ace4afdc778138f8a338b7be825"}, - {file = "primer3_py-2.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:90db12e7a22c00db7b79d9dcd33e031e0c6339d54d848f584d739658e029a80b"}, - {file = "primer3_py-2.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:f631b02273c17366d6f67fc34352259cf74963bbc04df7670734569c537d0dee"}, - {file = "primer3_py-2.2.0-cp311-cp311-macosx_10_14_x86_64.whl", hash = "sha256:acd46659275b1e34298611f9f647d5a4c08812abf2beface2d4f88e77e604e38"}, - {file = "primer3_py-2.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ebe237f5ca451d336ce2a9b7e35619e031264085a2e793c20e4dca3261b1e288"}, - {file = "primer3_py-2.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:b25d928971c9d6b04722723da0ac96a053ea3ab8470634b7de6ef3307c12b185"}, - {file = "primer3_py-2.2.0-cp312-cp312-macosx_10_14_x86_64.whl", hash = "sha256:e9a0b1d51683c9cb03b59b3c905569935ce8d820a6d04fec64a7bb90cad203cb"}, - {file = "primer3_py-2.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52cbc454d0551d7040820373cdf3b7471cdad4a3eccf84ee4e5d04635a72ab5f"}, - {file = "primer3_py-2.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:9464dd0253d2be7bd3955191615d0975f463d64ba0c32793873cf378642ee311"}, - {file = "primer3_py-2.2.0-cp313-cp313-macosx_10_14_x86_64.whl", hash = "sha256:75fa4af6127ce33b48221a7376aeb0e4460b3ac20d275e3b44d245b07d7134e3"}, - {file = "primer3_py-2.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a8868054236f301ed46d1f420ca5de650f0c3ddd1ed49dc92681b1eb85a46137"}, - {file = "primer3_py-2.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:7fd1d10e38f01c2ce61da5460807cb9fde53ce3c4c65d6aed10e34e88d178dc6"}, - {file = "primer3_py-2.2.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:80972c9e179755295b0da63771915e7194dfa86f2804232118f914764cc2b11d"}, - {file = "primer3_py-2.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4e0cf6e5a7efe9314a2deaaf310554eab9ae39a502753f98d26b9b058e4696ed"}, - {file = "primer3_py-2.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:22a162b9575dc85aea124e788523086f67101ab71e6d61e878c4afade12fc708"}, - {file = "primer3_py-2.2.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:ca7a712ce9b6dc8ae70e666e2aed7d57ede2ed1d4121909df3c132babfd7f2de"}, - {file = "primer3_py-2.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9bd21dcbda40c834c5d1fd6047bb0b825172ac82bbdedc558aa621fd77b01360"}, - {file = "primer3_py-2.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6ed4fb2cc8f945326c267195204361e96c7c12ad8494b7e3a20766cb0b07b282"}, - {file = "primer3_py-2.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:22d25fee9d090e9b0b249eb35ab411bdcf8783d7795ecf38a89a62326ec1bd08"}, - {file = "primer3_py-2.2.0.tar.gz", hash = "sha256:c71f8cccdf1e3f7f769f85c2551adff7488a1bd8f722e373b702ed25b4c1fa90"}, -] +files = [] +develop = false [package.extras] dev = ["pre-commit (>=3.5.0,<3.6.0)", "pytest (>=7.4.0,<7.5.0)", "tomli (>=2.0.0,<2.1.0)"] docs = ["myst-parser", "sphinx", "sphinx-autodoc-typehints", "sphinx_rtd_theme (==2.0.0)"] +[package.source] +type = "git" +url = "https://github.com/manulera/primer3-py" +reference = "bef7f2cc18119c527098b987ffa7d23fdf748546" +resolved_reference = "bef7f2cc18119c527098b987ffa7d23fdf748546" + [[package]] name = "prompt-toolkit" version = "3.0.52" @@ -2694,4 +2680,4 @@ test = ["pytest (>=6.0.0)", "setuptools (>=65)"] [metadata] lock-version = "2.1" python-versions = "^3.11" -content-hash = "66cafb4bdee008393fc8504786d074cd2ba9d54a88978de413825a42ba8b69d5" +content-hash = "852046784fc2debc03aad54490b2b62c24af058f38f75795b6064ad006738424" diff --git a/pyproject.toml b/pyproject.toml index d411499..2c2db41 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -25,7 +25,7 @@ pydantic = "^2.7.1" pandas = "^2.2.3" openpyxl = "^3.1.5" pyyaml = "^6.0.2" -primer3-py = "2.2.0" +primer3-py = {git = "https://github.com/manulera/primer3-py", rev = "bef7f2cc18119c527098b987ffa7d23fdf748546"} biopython = "^1.85" packaging = "^25.0" pairwise-alignments-to-msa = "^0.1.1"