diff --git a/.github/workflows/run_tests_cli.yml b/.github/workflows/run_tests_cli.yml index c030779b..e7b7af43 100644 --- a/.github/workflows/run_tests_cli.yml +++ b/.github/workflows/run_tests_cli.yml @@ -25,9 +25,10 @@ jobs: sudo apt-get -y install octave liboctave-dev - name: Info run: octave --version - - uses: actions/setup-node@v4 + - name: Install Deno + uses: denoland/setup-deno@v1 with: - node-version: 18 + deno-version: v1.x - uses: actions/setup-python@v5 name: Set up Python ${{ matrix.python-version }} with: diff --git a/.github/workflows/run_tests_notebooks.yml b/.github/workflows/run_tests_notebooks.yml index 7fa538e4..aa8858de 100644 --- a/.github/workflows/run_tests_notebooks.yml +++ b/.github/workflows/run_tests_notebooks.yml @@ -11,7 +11,7 @@ on: - .github/workflows/*system* - lib - # Allows you to run this workflow manually from the Actions tab + # Allows you to run this workflow manually from the Actions tab workflow_dispatch: jobs: diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index fed1fd04..e195872b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -235,10 +235,10 @@ jobs: - name: test ${{ matrix.script }} run: test ${{ matrix.script }} - - name: Install Node - uses: actions/setup-node@v4 + - name: Install Deno + uses: denoland/setup-deno@v1 with: - node-version: 18 + deno-version: v1.x - name: Install python uses: actions/setup-python@v5 diff --git a/.github/workflows/tests_octave.yml b/.github/workflows/tests_octave.yml index 93bd47e2..b4779777 100644 --- a/.github/workflows/tests_octave.yml +++ b/.github/workflows/tests_octave.yml @@ -63,10 +63,10 @@ jobs: sudo apt-get -y -qq update sudo apt-get -y install unzip wget git-annex - - name: Install Node - uses: actions/setup-node@v4 + - name: Install Deno + uses: denoland/setup-deno@v1 with: - node-version: 18 + deno-version: v1.x - name: Install python uses: actions/setup-python@v5 diff --git a/.github/workflows/tests_windows.yml b/.github/workflows/tests_windows.yml index 10a57409..1ca42a9d 100644 --- a/.github/workflows/tests_windows.yml +++ b/.github/workflows/tests_windows.yml @@ -61,10 +61,10 @@ jobs: if: matrix.test_type == 'system' run: echo ${{ matrix.test_type }} test ${{ matrix.script }} - - name: Install Node - uses: actions/setup-node@v4 + - name: Install Deno + uses: denoland/setup-deno@v1 with: - node-version: 18 + deno-version: v1.x - name: Install python uses: actions/setup-python@v5 diff --git a/Dockerfile b/Dockerfile index 04052e7e..6dcdbd34 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM bids/base_validator:1.13.1 +FROM ubuntu:noble-20240801@sha256:8a37d68f4f73ebf3d4efafbcf66379bf3728902a8038616808f04e34a9ab63ee LABEL org.opencontainers.image.source="https://github.com/cpp-lln-lab/bidspm" LABEL org.opencontainers.image.url="https://github.com/cpp-lln-lab/bidspm" @@ -41,6 +41,12 @@ RUN apt-get update -qq && \ /var/lib/apt/lists/* \ /var/log/apt/term* +## Install validator +RUN curl -fsSL https://deno.land/install.sh | sh && \ + export DENO_INSTALL="/root/.deno" && \ + export PATH="$DENO_INSTALL/bin:$PATH" && \ + deno install -Agf -n bids-validator jsr:@bids/validator@1.14.12 + ## Install SPM RUN mkdir /opt/spm12 && \ curl -SL https://github.com/spm/spm12/archive/r7771.tar.gz | \ diff --git a/Makefile b/Makefile index e503d73f..17bb7fd0 100644 --- a/Makefile +++ b/Makefile @@ -33,7 +33,7 @@ ARG = -nodisplay -nosplash -nodesktop .PHONY: help clean clean_demos clean_test update fix_submodule install: - npm install -g bids-validator + deno install -Agf -n bids-validator jsr:@bids/validator pip3 install .[dev] help: ## Show what this Makefile can do diff --git a/bidspm.def b/bidspm.def index 4c31a5a9..cd690316 100644 --- a/bidspm.def +++ b/bidspm.def @@ -42,6 +42,11 @@ From: bids/base_validator:1.13.1 /var/lib/apt/lists/* \ /var/log/apt/term* + curl -fsSL https://deno.land/install.sh | sh + export DENO_INSTALL="/root/.deno" + export PATH="$DENO_INSTALL/bin:$PATH" + deno install -Agf -n bids-validator jsr:@bids/validator@1.14.12 + mkdir /opt/spm12 curl -fsSL --retry 5 https://github.com/spm/spm12/archive/r7771.tar.gz | tar -xzC /opt/spm12 --strip-components 1 curl -fsSL --retry 5 https://raw.githubusercontent.com/spm/spm-octave/main/spm12_r7771.patch | patch -p0 @@ -55,8 +60,6 @@ From: bids/base_validator:1.13.1 git -C /opt/bidspm/ submodule foreach --recursive 'git clean --force -dfx' git -C /opt/bidspm/ status - - pip install --upgrade pip pip install -r /opt/bidspm/requirements.txt pip install /opt/bidspm