Skip to content

Commit a8911c3

Browse files
committed
Upgrade dependencies (especially fastp) to address deadlock problem of fastp
1 parent fe1345d commit a8911c3

File tree

6 files changed

+225
-447
lines changed

6 files changed

+225
-447
lines changed

Dockerfile

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,60 @@
1-
FROM python:3.9-alpine as builder
1+
FROM python:3.11-alpine as builder
22
RUN apk add gcc make g++ zlib-dev bzip2-dev xz-dev linux-headers ncurses-dev curl-dev coreutils
33

44
FROM builder as samtools_builder
5-
ARG SAMTOOLS_VERSION=1.10
5+
ARG SAMTOOLS_VERSION=1.17
66
RUN wget -O /tmp/samtools.tar.bz2 "https://github.com/samtools/samtools/releases/download/${SAMTOOLS_VERSION}/samtools-${SAMTOOLS_VERSION}.tar.bz2" && \
77
tar -xjC /tmp -f /tmp/samtools.tar.bz2 && \
88
cd /tmp/samtools-${SAMTOOLS_VERSION} && \
99
./configure --prefix=/usr/local/samtools && \
1010
make && make install
1111

1212
FROM builder as minimap2_installer
13-
ARG MINIMAP2_VERSION=2.22
13+
ARG MINIMAP2_VERSION=2.26
1414
RUN wget -O /tmp/minimap2.tar.bz2 "https://github.com/lh3/minimap2/releases/download/v${MINIMAP2_VERSION}/minimap2-${MINIMAP2_VERSION}_x64-linux.tar.bz2" && \
1515
tar -xjC /tmp -f /tmp/minimap2.tar.bz2 && \
1616
mv /tmp/minimap2-${MINIMAP2_VERSION}_x64-linux /usr/local/minimap2
1717

1818
FROM builder as pysam_builder
19-
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.9/site-packages/_manylinux.py
20-
RUN pip install 'cython==0.29.32'
21-
RUN pip install 'pysam==0.20.0'
19+
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.11/site-packages/_manylinux.py
20+
RUN pip install 'cython==0.29.35'
21+
RUN pip install 'pysam==0.21.0'
2222

2323
FROM builder as orjson_builder
24-
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.9/site-packages/_manylinux.py
24+
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.11/site-packages/_manylinux.py
2525
RUN apk add rust cargo patchelf
26-
RUN pip install 'orjson==3.8.0'
26+
RUN pip install 'orjson==3.9.1'
2727

2828
FROM builder as cutadapt_builder
29-
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.9/site-packages/_manylinux.py
30-
RUN pip install 'cutadapt==4.2'
29+
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.11/site-packages/_manylinux.py
30+
RUN pip install 'cutadapt==4.4'
3131

3232
FROM builder as pydep_builder
3333
COPY --from=pysam_builder /root/.cache/ /root/.cache/
3434
COPY --from=orjson_builder /root/.cache/ /root/.cache/
3535
COPY --from=cutadapt_builder /root/.cache/ /root/.cache/
36-
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.9/site-packages/_manylinux.py
37-
RUN pip install 'cython==0.29.32'
36+
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.11/site-packages/_manylinux.py
37+
RUN pip install 'cython==0.29.35'
3838
COPY requirements.txt /codfreq/
3939
RUN pip install -r /codfreq/requirements.txt
4040

4141

4242
FROM builder as py_builder
4343
COPY --from=pydep_builder /root/.cache/ /root/.cache/
44-
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.9/site-packages/_manylinux.py
45-
RUN pip install 'cython==0.29.32'
44+
RUN echo 'manylinux2014_compatible = True' > /usr/local/lib/python3.11/site-packages/_manylinux.py
45+
RUN pip install 'cython==0.29.35'
4646
COPY . /codfreq/
4747
RUN pip install --ignore-installed --target /python-packages /codfreq
4848
RUN mv /python-packages/bin /python-scripts
4949

5050
FROM builder as fastp_installer
51-
ARG FASTP_VERSION=0.23.2
51+
ARG FASTP_VERSION=0.23.4
5252
RUN wget -O /usr/local/bin/fastp http://opengene.org/fastp/fastp.${FASTP_VERSION}
5353
RUN chmod +x /usr/local/bin/fastp
5454

5555
FROM builder as htslib_builder
5656
RUN apk add automake autoconf
57-
ARG HTSLIB_VERSION=1.16
57+
ARG HTSLIB_VERSION=1.17
5858
RUN wget -O /tmp/htslib.tar.gz https://github.com/samtools/htslib/releases/download/${HTSLIB_VERSION}/htslib-${HTSLIB_VERSION}.tar.bz2
5959
RUN tar -xjC /tmp -f /tmp/htslib.tar.gz
6060
RUN cd /tmp/htslib-${HTSLIB_VERSION} && \
@@ -65,7 +65,7 @@ RUN cd /tmp/htslib-${HTSLIB_VERSION} && \
6565
FROM builder as ivar_builder
6666
RUN apk add automake autoconf
6767
COPY --from=htslib_builder /usr/local/htslib/ /usr/local/htslib/
68-
ARG IVAR_VERSION=1.3.1
68+
ARG IVAR_VERSION=1.4.2
6969
RUN wget -O /tmp/ivar.tar.gz https://github.com/andersen-lab/ivar/archive/refs/tags/v${IVAR_VERSION}.tar.gz
7070
RUN tar -xzC /tmp -f /tmp/ivar.tar.gz
7171
RUN export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/htslib/lib && \
@@ -77,12 +77,12 @@ RUN export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/htslib/lib && \
7777
./configure --prefix=/usr/local/ivar && \
7878
make && make install
7979

80-
FROM python:3.9-alpine
80+
FROM python:3.11-alpine
8181
ENV LANG="C.UTF-8" \
8282
HTSLIB_CONFIGURE_OPTIONS="--enable-plugins"
8383
RUN apk add --no-cache bash libc6-compat libcurl jq zip pigz
8484
COPY --from=py_builder /python-scripts/ /usr/local/bin/
85-
COPY --from=py_builder /python-packages/ /usr/local/lib/python3.9/site-packages/
85+
COPY --from=py_builder /python-packages/ /usr/local/lib/python3.11/site-packages/
8686
COPY --from=orjson_builder /usr/lib/libgcc_s.so.1 /usr/lib/libgcc_s.so.1
8787
COPY --from=samtools_builder /usr/local/samtools/ /usr/local/samtools/
8888
COPY --from=minimap2_installer /usr/local/minimap2/ /usr/local/minimap2/

Makefile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
requirements.txt: Pipfile Pipfile.lock
2-
@pipenv lock --requirements > requirements.txt
3-
# @sed -i '' -E 's/; (sys_platform|python_(full_)?version).*$$//' requirements.txt
2+
@pipenv requirements > requirements.txt
43

54
login-ecr:
65
@aws ecr get-login-password --region us-west-2 | docker login \

Pipfile

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ verify_ssl = true
88
boto3 = "*"
99

1010
[packages]
11-
cython = "*"
12-
pysam = ">=0.19.1"
11+
cython = ">=0.29.35"
12+
pysam = ">=0.21.0"
1313
click = "*"
1414
tqdm = "*"
1515
more-itertools = "*"
1616
awscli = "*"
1717
urllib3 = ">=1.26.5"
1818
Pygments = ">=2.7.4"
1919
PyYAML = ">=5.4"
20-
post-align = {file = "https://github.com/hivdb/post-align/archive/59e7285942a8b42b4b0f1b91a3902f1ac8c7bea4.zip"}
20+
post-align = {file = "https://github.com/hivdb/post-align/archive/cb28b83e2d9639960533f805f7dc2612ea63ddc6.zip"}
2121
typing-extensions = "*"
22-
cutadapt = ">=4.1"
22+
cutadapt = ">=4.4"
2323

2424
[requires]
25-
python_version = "3.9"
25+
python_version = "3.11"

0 commit comments

Comments
 (0)