Skip to content

Commit

Permalink
Merge pull request #860 from effigies/mnt/upgrade
Browse files Browse the repository at this point in the history
MNT: Update environment definition files
  • Loading branch information
effigies authored Mar 8, 2024
2 parents 6edfb38 + 9aadcb8 commit dc783d8
Show file tree
Hide file tree
Showing 3 changed files with 53 additions and 78 deletions.
17 changes: 12 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#
# MIT License
#
# Copyright (c) 2022 The NiPreps Developers
# Copyright (c) The NiPreps Developers
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
Expand All @@ -23,7 +23,7 @@
# SOFTWARE.

# Ubuntu 22.04 LTS - Jammy
ARG BASE_IMAGE=ubuntu:jammy-20230308
ARG BASE_IMAGE=ubuntu:jammy-20240125

#
# Build wheel
Expand All @@ -42,7 +42,7 @@ RUN python -m build /src
# Utilities for downloading packages
FROM ${BASE_IMAGE} as downloader
# Bump the date to current to refresh curl/certificates/etc
RUN echo "2023.12.12"
RUN echo "2024.03.08"
RUN apt-get update && \
apt-get install -y --no-install-recommends \
binutils \
Expand All @@ -61,7 +61,7 @@ RUN curl -sSL https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/7.3.2/frees
# AFNI
FROM downloader as afni
# Bump the date to current to update AFNI
RUN echo "2023.07.20"
RUN echo "2024.03.08"
RUN mkdir -p /opt/afni-latest \
&& curl -fsSL --retry 5 https://afni.nimh.nih.gov/pub/dist/tgz/linux_openmp_64.tgz \
| tar -xz -C /opt/afni-latest --strip-components 1 \
Expand All @@ -81,9 +81,16 @@ RUN mkdir -p /opt/afni-latest \

# Micromamba
FROM downloader as micromamba

# Install a C compiler to build extensions when needed.
# traits<6.4 wheels are not available for Python 3.11+, but build easily.
RUN apt-get update && \
apt-get install -y --no-install-recommends build-essential && \
apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*

WORKDIR /
# Bump the date to current to force update micromamba
RUN echo "2023.04.05"
RUN echo "2024.03.08"
RUN curl -Ls https://micro.mamba.pm/api/micromamba/linux-64/latest | tar -xvj bin/micromamba

ENV MAMBA_ROOT_PREFIX="/opt/conda"
Expand Down
12 changes: 6 additions & 6 deletions env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,23 @@ channels:
- conda-forge
# Update this ~yearly; last updated April 2023
dependencies:
- python=3.10
- python=3.11
# Intel Math Kernel Library for numpy
- mkl=2022.1
- mkl=2023.2
- mkl-service=2.4
# Base scientific python stack; required by FSL, so pinned here
- numpy=1.26
- scipy=1.11
- matplotlib=3.8
- pandas=2.1
- pandas=2.2
- h5py=3.10
# Dependencies compiled against numpy, best to stick with conda
- scikit-image=0.22
- scikit-learn=1.3
- scikit-learn=1.4
# Utilities
- graphviz=6.0
- graphviz=9.0
# Workflow dependencies: ANTs
- ants=2.5.0
- ants=2.5
# Workflow dependencies: FSL (versions pinned in 6.0.7.4)
- fsl-bet2=2111.4
- fsl-flirt=2111.2
Expand Down
102 changes: 35 additions & 67 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,11 @@
#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
# pip-compile
#
# This file was autogenerated by uv via the following command:
# uv pip compile pyproject.toml -c - -p 3.11 -o requirements.txt
astor==0.8.1
# via formulaic
attrs==23.1.0
# via niworkflows (pyproject.toml)
bids-validator==1.14.0
attrs==23.2.0
bids-validator==1.14.1
# via pybids
certifi==2023.11.17
certifi==2024.2.2
# via requests
charset-normalizer==3.3.2
# via requests
Expand All @@ -30,28 +25,23 @@ etelemetry==0.3.1
# via nipype
filelock==3.13.1
# via nipype
fonttools==4.46.0
fonttools==4.49.0
# via matplotlib
formulaic==0.5.2
# via pybids
greenlet==3.0.2
greenlet==3.0.3
# via sqlalchemy
h5py==3.10.0
# via nitransforms
idna==3.6
# via requests
imageio==2.33.1
imageio==2.34.0
# via scikit-image
importlib-resources==6.1.1 ; python_version < "3.11"
# via
# niworkflows (pyproject.toml)
# templateflow
interface-meta==1.3.0
# via formulaic
isodate==0.6.1
# via rdflib
jinja2==3.1.2
# via niworkflows (pyproject.toml)
jinja2==3.1.3
joblib==1.3.2
# via
# nilearn
Expand All @@ -61,41 +51,33 @@ kiwisolver==1.4.5
lazy-loader==0.3
# via scikit-image
looseversion==1.3.0
# via
# nipype
# niworkflows (pyproject.toml)
lxml==4.9.3
# via nipype
lxml==5.1.0
# via
# nilearn
# prov
# svgutils
markupsafe==2.1.3
markupsafe==2.1.5
# via jinja2
matplotlib==3.8.2
# via
# niworkflows (pyproject.toml)
# seaborn
matplotlib==3.8.3
# via seaborn
networkx==3.2.1
# via
# nipype
# prov
# scikit-image
nibabel==5.2.0
nibabel==5.2.1
# via
# nilearn
# nipype
# nitransforms
# niworkflows (pyproject.toml)
# pybids
nilearn==0.10.2
# via niworkflows (pyproject.toml)
nilearn==0.10.3
nipype==1.8.6
# via niworkflows (pyproject.toml)
nitransforms==23.0.1
# via niworkflows (pyproject.toml)
num2words==0.5.13
# via pybids
numpy==1.26.2
numpy==1.26.4
# via
# contourpy
# formulaic
Expand All @@ -106,7 +88,6 @@ numpy==1.26.2
# nilearn
# nipype
# nitransforms
# niworkflows (pyproject.toml)
# pandas
# pybids
# scikit-image
Expand All @@ -121,43 +102,38 @@ packaging==23.2
# nibabel
# nilearn
# nipype
# niworkflows (pyproject.toml)
# scikit-image
pandas==2.1.4
pandas==2.2.1
# via
# formulaic
# nilearn
# niworkflows (pyproject.toml)
# pybids
# seaborn
pillow==10.1.0
pillow==10.2.0
# via
# imageio
# matplotlib
# scikit-image
prov==2.0.0
# via nipype
pybids==0.16.4
# via
# niworkflows (pyproject.toml)
# templateflow
pydot==1.4.2
# via templateflow
pydot==2.0.0
# via nipype
pyparsing==3.1.1
pyparsing==3.1.2
# via
# matplotlib
# pydot
# rdflib
python-dateutil==2.8.2
python-dateutil==2.9.0.post0
# via
# matplotlib
# nipype
# pandas
# prov
pytz==2023.3.post1
pytz==2024.1
# via pandas
pyyaml==6.0.1
# via niworkflows (pyproject.toml)
rdflib==7.0.0
# via
# nipype
Expand All @@ -168,52 +144,44 @@ requests==2.31.0
# nilearn
# templateflow
scikit-image==0.22.0
# via niworkflows (pyproject.toml)
scikit-learn==1.3.2
scikit-learn==1.4.1.post1
# via nilearn
scipy==1.11.4
# via
# formulaic
# nilearn
# nipype
# nitransforms
# niworkflows (pyproject.toml)
# pybids
# scikit-image
# scikit-learn
seaborn==0.13.0
# via niworkflows (pyproject.toml)
seaborn==0.13.2
simplejson==3.19.2
# via nipype
six==1.16.0
# via
# isodate
# python-dateutil
sqlalchemy==2.0.23
sqlalchemy==2.0.28
# via pybids
svgutils==0.3.4
# via niworkflows (pyproject.toml)
templateflow==23.1.0
# via niworkflows (pyproject.toml)
threadpoolctl==3.2.0
templateflow==24.0.0
threadpoolctl==3.3.0
# via scikit-learn
tifffile==2023.12.9
tifffile==2024.2.12
# via scikit-image
tqdm==4.66.1
tqdm==4.66.2
# via templateflow
traits==6.3.2
# via
# nipype
# niworkflows (pyproject.toml)
# via nipype
transforms3d==0.4.1
# via niworkflows (pyproject.toml)
typing-extensions==4.9.0
typing-extensions==4.10.0
# via
# formulaic
# sqlalchemy
tzdata==2023.3
tzdata==2024.1
# via pandas
urllib3==2.1.0
urllib3==2.2.1
# via requests
wrapt==1.16.0
# via formulaic

0 comments on commit dc783d8

Please sign in to comment.