From 519bd7f3172d3d112e075bfbbdd857815906a2ae Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Mon, 29 Jan 2024 16:22:28 -0500 Subject: [PATCH 01/71] Add TablePosition tag to the MRI Hardware section and to the glossary --- src/schema/objects/metadata.yaml | 14 ++++++++++++++ src/schema/rules/sidecars/mri.yaml | 1 + 2 files changed, 15 insertions(+) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 7e85b4ac..17952dad 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3366,6 +3366,20 @@ SubjectArtefactDescription: If this field is set to `"n/a"`, it will be interpreted as absence of major source of artifacts except cardiac and blinks. type: string +TablePosition: + name: TablePosition + display_name: Table Position + description: | + The x, y and z coordinates of the table relative to an implementation + specific reference point. The array MUST contain three numeric values + corresponding to x, y, and z axis of the coordinate system in that exact + order. + type: array + minItems: 3 + maxItems: 3 + items: + type: number + unit: mm TaskDescription: name: TaskDescription display_name: Task Description diff --git a/src/schema/rules/sidecars/mri.yaml b/src/schema/rules/sidecars/mri.yaml index 521a70c7..dea556c5 100644 --- a/src/schema/rules/sidecars/mri.yaml +++ b/src/schema/rules/sidecars/mri.yaml @@ -34,6 +34,7 @@ MRIHardware: MRTransmitCoilSequence: recommended MatrixCoilMode: recommended CoilCombinationMethod: recommended + TablePosition: recommended MRIScannerHardwareASL: selectors: From 0f3d4bce846bcd92cf261a70fe75d87692091d31 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Mon, 29 Jan 2024 16:34:50 -0500 Subject: [PATCH 02/71] Added Alexandre D'Astous to the list of contributors --- src/appendices/contributors.md | 1 + 1 file changed, 1 insertion(+) diff --git a/src/appendices/contributors.md b/src/appendices/contributors.md index 2ffab474..80adbfcc 100644 --- a/src/appendices/contributors.md +++ b/src/appendices/contributors.md @@ -54,6 +54,7 @@ If you contributed to the BIDS ecosystem and your name is not listed, please add | Alexander Jones | 💻🐛 | | Alexander L. Cohen | 🐛💻📖💬 | | Alexander von Lautz | 📖 | +| Alexandre D'Astous | 📖 | | Alexandre Gramfort | 📖💡 | | Alexandre Hutton | 📖 | | Alexandre Routier | 📖 | From 3d71f5985f1a4b85d73638052b1d10265fb2f996 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Mon, 29 Jan 2024 16:22:28 -0500 Subject: [PATCH 03/71] Add TablePosition tag to the MRI Hardware section and to the glossary --- src/schema/objects/metadata.yaml | 14 ++++++++++++++ src/schema/rules/sidecars/mri.yaml | 1 + 2 files changed, 15 insertions(+) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 7e85b4ac..17952dad 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3366,6 +3366,20 @@ SubjectArtefactDescription: If this field is set to `"n/a"`, it will be interpreted as absence of major source of artifacts except cardiac and blinks. type: string +TablePosition: + name: TablePosition + display_name: Table Position + description: | + The x, y and z coordinates of the table relative to an implementation + specific reference point. The array MUST contain three numeric values + corresponding to x, y, and z axis of the coordinate system in that exact + order. + type: array + minItems: 3 + maxItems: 3 + items: + type: number + unit: mm TaskDescription: name: TaskDescription display_name: Task Description diff --git a/src/schema/rules/sidecars/mri.yaml b/src/schema/rules/sidecars/mri.yaml index 521a70c7..dea556c5 100644 --- a/src/schema/rules/sidecars/mri.yaml +++ b/src/schema/rules/sidecars/mri.yaml @@ -34,6 +34,7 @@ MRIHardware: MRTransmitCoilSequence: recommended MatrixCoilMode: recommended CoilCombinationMethod: recommended + TablePosition: recommended MRIScannerHardwareASL: selectors: From ef8a798a6a01acdded6fccf97740aee48b016456 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Mon, 29 Jan 2024 16:34:50 -0500 Subject: [PATCH 04/71] Added Alexandre D'Astous to the list of contributors --- src/appendices/contributors.md | 1 + 1 file changed, 1 insertion(+) diff --git a/src/appendices/contributors.md b/src/appendices/contributors.md index 2ffab474..80adbfcc 100644 --- a/src/appendices/contributors.md +++ b/src/appendices/contributors.md @@ -54,6 +54,7 @@ If you contributed to the BIDS ecosystem and your name is not listed, please add | Alexander Jones | 💻🐛 | | Alexander L. Cohen | 🐛💻📖💬 | | Alexander von Lautz | 📖 | +| Alexandre D'Astous | 📖 | | Alexandre Gramfort | 📖💡 | | Alexandre Hutton | 📖 | | Alexandre Routier | 📖 | From 3bb11d17f03015161180a5023cd76f245d4ff014 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Thu, 14 Mar 2024 13:51:25 -0400 Subject: [PATCH 05/71] Update TablePosition metadata according to code review. --- src/schema/objects/metadata.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index c1704615..76386151 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3370,10 +3370,10 @@ TablePosition: name: TablePosition display_name: Table Position description: | - The x, y and z coordinates of the table relative to an implementation - specific reference point. The array MUST contain three numeric values - corresponding to x, y, and z axis of the coordinate system in that exact - order. + The table position, relative to an implementation-specific reference point, + often the isocenter. Values must be an array of three distances in + millimeters, respectively right, anterior and superior (RAS+) of the image + affine. type: array minItems: 3 maxItems: 3 From bb55a38a9ade465c90d5bcd60e23c9c7f2321b0f Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Fri, 22 Mar 2024 17:42:44 -0400 Subject: [PATCH 06/71] Minor rewording of the origin of the table position --- src/schema/objects/metadata.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 76386151..e11f6ccc 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3372,8 +3372,8 @@ TablePosition: description: | The table position, relative to an implementation-specific reference point, often the isocenter. Values must be an array of three distances in - millimeters, respectively right, anterior and superior (RAS+) of the image - affine. + millimeters, respectively right, anterior and superior (RAS+) where the + origin is defined by the image affine. type: array minItems: 3 maxItems: 3 From 4a171a07cc862cc684974826cbe952517106e808 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Tue, 16 Apr 2024 11:09:28 -0400 Subject: [PATCH 07/71] Change from patient coordinate system to device --- src/schema/objects/metadata.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index e11f6ccc..449e79c3 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3372,8 +3372,11 @@ TablePosition: description: | The table position, relative to an implementation-specific reference point, often the isocenter. Values must be an array of three distances in - millimeters, respectively right, anterior and superior (RAS+) where the - origin is defined by the image affine. + millimeters. The coordinates are respectively right, anterior and superior + (RAS+) as if it were acquired in head first supine (HFS) orientation. In + other words, moving the table into the scanner will increase the 3rd value + in the array (even in the feet first orientation). The origin is defined by + the image affine. type: array minItems: 3 maxItems: 3 From 054d8778da564f6790a47f5d31f265f343b2495f Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Tue, 16 Apr 2024 12:43:41 -0400 Subject: [PATCH 08/71] Apply suggestions from code review --- src/schema/objects/metadata.yaml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 4fa3f93d..39e9a6bf 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3397,12 +3397,13 @@ TablePosition: display_name: Table Position description: | The table position, relative to an implementation-specific reference point, - often the isocenter. Values must be an array of three distances in - millimeters. The coordinates are respectively right, anterior and superior - (RAS+) as if it were acquired in head first supine (HFS) orientation. In - other words, moving the table into the scanner will increase the 3rd value - in the array (even in the feet first orientation). The origin is defined by - the image affine. + often the isocenter. Values must be an array (1x3) of three distances in + millimeters in absolute coordinates (i.e.: world coordinates). The + absolute coordinates are respectively right, anterior and superior (RAS+) + as if it was acquired in head first supine (HFS) orientation. In + other words, moving the table into the scanner will always increase the 3rd + value in the array regardless of the patient positioning (e.g.: feet + first). The origin is defined by the image affine. type: array minItems: 3 maxItems: 3 From 2142da34091dbe4e7f44e14c2f07c1eedd64c7b4 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Tue, 16 Apr 2024 12:44:24 -0400 Subject: [PATCH 09/71] Apply suggestions from code review --- src/schema/objects/metadata.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 39e9a6bf..5ace53c8 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3402,7 +3402,7 @@ TablePosition: absolute coordinates are respectively right, anterior and superior (RAS+) as if it was acquired in head first supine (HFS) orientation. In other words, moving the table into the scanner will always increase the 3rd - value in the array regardless of the patient positioning (e.g.: feet + value in the array regardless of the patient positioning (e.g.: feet first). The origin is defined by the image affine. type: array minItems: 3 From bc70fc15785d0ebd5e43cd0bf2da2c557168de88 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Tue, 16 Apr 2024 13:08:15 -0400 Subject: [PATCH 10/71] Remove regardless --- src/schema/objects/metadata.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 5ace53c8..9cafcedf 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3402,7 +3402,7 @@ TablePosition: absolute coordinates are respectively right, anterior and superior (RAS+) as if it was acquired in head first supine (HFS) orientation. In other words, moving the table into the scanner will always increase the 3rd - value in the array regardless of the patient positioning (e.g.: feet + value in the array, even for other patient positions (e.g.: feet first). The origin is defined by the image affine. type: array minItems: 3 From b2529a068c6371cdf7552fccba4d33736da85b00 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Tue, 16 Apr 2024 13:11:28 -0400 Subject: [PATCH 11/71] Change e.g. --- src/schema/objects/metadata.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 9cafcedf..b949d5b6 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3402,7 +3402,7 @@ TablePosition: absolute coordinates are respectively right, anterior and superior (RAS+) as if it was acquired in head first supine (HFS) orientation. In other words, moving the table into the scanner will always increase the 3rd - value in the array, even for other patient positions (e.g.: feet + value in the array, regardless of the patient positioning (i.e.: feet first). The origin is defined by the image affine. type: array minItems: 3 From 383fbe6f409af557e18ad76043db4c77ba682ed3 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Tue, 16 Apr 2024 13:19:56 -0400 Subject: [PATCH 12/71] Remove latin abbreviations --- src/schema/objects/metadata.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index b949d5b6..34bd71a3 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3398,12 +3398,12 @@ TablePosition: description: | The table position, relative to an implementation-specific reference point, often the isocenter. Values must be an array (1x3) of three distances in - millimeters in absolute coordinates (i.e.: world coordinates). The + millimeters in absolute coordinates (world coordinates). The absolute coordinates are respectively right, anterior and superior (RAS+) as if it was acquired in head first supine (HFS) orientation. In other words, moving the table into the scanner will always increase the 3rd - value in the array, regardless of the patient positioning (i.e.: feet - first). The origin is defined by the image affine. + value in the array, regardless of the patient positioning (feet + first for example). The origin is defined by the image affine. type: array minItems: 3 maxItems: 3 From 1d4ffe04d7b9a93c2b518322dcfca6db6cd84ec1 Mon Sep 17 00:00:00 2001 From: Alexandre D'Astous Date: Wed, 5 Jun 2024 15:25:37 -0400 Subject: [PATCH 13/71] Update the definition --- src/schema/objects/metadata.yaml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index 34bd71a3..5436c2d7 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -3398,12 +3398,11 @@ TablePosition: description: | The table position, relative to an implementation-specific reference point, often the isocenter. Values must be an array (1x3) of three distances in - millimeters in absolute coordinates (world coordinates). The - absolute coordinates are respectively right, anterior and superior (RAS+) - as if it was acquired in head first supine (HFS) orientation. In - other words, moving the table into the scanner will always increase the 3rd - value in the array, regardless of the patient positioning (feet - first for example). The origin is defined by the image affine. + millimeters in absolute coordinates (world coordinates). If an observer + stands in front of the scanner looking at it, a table moving to the left, + up or into the scanner (from the observer's point of view) will increase + the 1st, 2nd and 3rd value in the array respectively. The origin is defined + by the image affine. type: array minItems: 3 maxItems: 3 From 82674bca3a7f299116926ec9ffbb4a1b7f8a4d79 Mon Sep 17 00:00:00 2001 From: Stefan Appelhoff Date: Thu, 6 Jun 2024 09:28:40 +0200 Subject: [PATCH 14/71] add deprecation check --- src/schema/rules/checks/deprecations.yml | 53 ++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/schema/rules/checks/deprecations.yml diff --git a/src/schema/rules/checks/deprecations.yml b/src/schema/rules/checks/deprecations.yml new file mode 100644 index 00000000..d7a3c273 --- /dev/null +++ b/src/schema/rules/checks/deprecations.yml @@ -0,0 +1,53 @@ +AnatomicalLandmarkCoordinateSystemDeprecation: + issue: + code: ELEKTA_NEUROMAG_DEPRECATED + message: | + "ElektaNeuromag" as a coordinate system is deprecated. + Use "NeuromagElektaMEGIN" instead. + level: warning + selectors: + - sidecar.AnatomicalLandmarkCoordinateSystem + checks: + - sidecar.AnatomicalLandmarkCoordinateSystem != "ElektaNeuromag" + +DigitizedHeadPointsCoordinateSystemDeprecation: + $ref: rules.checks.deprecations.AnatomicalLandmarkCoordinateSystemDeprecation + selectors: + - sidecar.DigitizedHeadPointsCoordinateSystem + checks: + - sidecar.DigitizedHeadPointsCoordinateSystem != "ElektaNeuromag" + +EEGCoordinateSystemDeprecation: + $ref: rules.checks.deprecations.AnatomicalLandmarkCoordinateSystemDeprecation + selectors: + - sidecar.EEGCoordinateSystem + checks: + - sidecar.EEGCoordinateSystem != "ElektaNeuromag" + +FiducialsCoordinateSystemDeprecation: + $ref: rules.checks.deprecations.AnatomicalLandmarkCoordinateSystemDeprecation + selectors: + - sidecar.FiducialsCoordinateSystem + checks: + - sidecar.FiducialsCoordinateSystem != "ElektaNeuromag" + +HeadCoilCoordinateSystemDeprecation: + $ref: rules.checks.deprecations.AnatomicalLandmarkCoordinateSystemDeprecation + selectors: + - sidecar.HeadCoilCoordinateSystem + checks: + - sidecar.HeadCoilCoordinateSystem != "ElektaNeuromag" + +MEGCoordinateSystemDeprecation: + $ref: rules.checks.deprecations.AnatomicalLandmarkCoordinateSystemDeprecation + selectors: + - sidecar.MEGCoordinateSystem + checks: + - sidecar.MEGCoordinateSystem != "ElektaNeuromag" + +NIRSCoordinateSystemDeprecation: + $ref: rules.checks.deprecations.AnatomicalLandmarkCoordinateSystemDeprecation + selectors: + - sidecar.NIRSCoordinateSystem + checks: + - sidecar.NIRSCoordinateSystem != "ElektaNeuromag" From 2f933e8ae9ba61a8277a7c22990784a1395b7f29 Mon Sep 17 00:00:00 2001 From: Stefan Appelhoff Date: Thu, 6 Jun 2024 14:19:27 +0200 Subject: [PATCH 15/71] [FIX] Consistently refer to Neuromag/Elekta/MEGIN (#1310) * DRAFT: consistently refer to Neuromag/Elekta/MEGIN * add deprecation notices * add links to deprecation --- src/appendices/coordinate-systems.md | 5 +++-- src/schema/objects/enums.yaml | 10 +++++++++- src/schema/rules/sidecars/meg.yaml | 5 ++++- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/appendices/coordinate-systems.md b/src/appendices/coordinate-systems.md index c5b44207..c3312a3e 100644 --- a/src/appendices/coordinate-systems.md +++ b/src/appendices/coordinate-systems.md @@ -108,11 +108,12 @@ Restricted keywords for the `CoordinateSystem` field in the `coordinatesystem.json` file for MEG datasets: - `CTF`: ALS orientation and the origin between the ears -- `ElektaNeuromag`: RAS orientation and the origin between the ears +- `NeuromagElektaMEGIN`: RAS orientation and the origin between the ears - `4DBti`: ALS orientation and the origin between the ears - `KitYokogawa`: ALS orientation and the origin between the ears - `ChietiItab`: RAS orientation and the origin between the ears - Any keyword from the list of [Standard template identifiers](#standard-template-identifiers): RAS orientation and the origin at the center of the gradient coil for template NifTI images +- The use of `ElektaNeuromag` is [DEPRECATED][deprecated]. Dataset curators SHOULD use `NeuromagElektaMEGIN` instead. In the case that MEG was recorded simultaneously with EEG, the restricted keywords for @@ -146,7 +147,7 @@ the restricted keywords for can also be applied to EEG: - `CTF` -- `ElektaNeuromag` +- `NeuromagElektaMEGIN` - `4DBti` - `KitYokogawa` - `ChietiItab` diff --git a/src/schema/objects/enums.yaml b/src/schema/objects/enums.yaml index f01d16cd..2f630064 100644 --- a/src/schema/objects/enums.yaml +++ b/src/schema/objects/enums.yaml @@ -20,7 +20,8 @@ _MEGCoordSys: type: string enum: - $ref: objects.enums.CTF.value - - $ref: objects.enums.ElektaNeuromag.value + - $ref: objects.enums.ElektaNeuromag.value # deprecated + - $ref: objects.enums.NeuromagElektaMEGIN.value - $ref: objects.enums.4DBti.value - $ref: objects.enums.KitYokogawa.value - $ref: objects.enums.ChietiItab.value @@ -305,6 +306,13 @@ CTF: ElektaNeuromag: value: ElektaNeuromag display_name: Elekta Neuromag + description: | + RAS orientation and the origin between the ears. + [DEPRECATED](SPEC_ROOT/common-principles.md#definitions). + Dataset curators SHOULD use `NeuromagElektaMEGIN` instead. +NeuromagElektaMEGIN: + value: NeuromagElektaMEGIN + display_name: Neuromag Elekta MEGIN description: | RAS orientation and the origin between the ears. 4DBti: diff --git a/src/schema/rules/sidecars/meg.yaml b/src/schema/rules/sidecars/meg.yaml index a989d40f..33d851f6 100644 --- a/src/schema/rules/sidecars/meg.yaml +++ b/src/schema/rules/sidecars/meg.yaml @@ -20,8 +20,11 @@ MEGHardware: level: recommended description_addendum: | For MEG scanners, this must be one of: - `"CTF"`, `"Elekta/Neuromag"`, `"BTi/4D"`, `"KIT/Yokogawa"`, + `"CTF"`, `"Neuromag/Elekta/MEGIN"`, `"BTi/4D"`, `"KIT/Yokogawa"`, `"ITAB"`, `"KRISS"`, `"Other"`. + The use of `"Elekta/Neuromag"` is + [DEPRECATED](SPEC_ROOT/common-principles.md#definitions). + Dataset curators SHOULD use `"Neuromag/Elekta/MEGIN"` instead. See the [MEG Systems Appendix](SPEC_ROOT/appendices/meg-systems.md) for preferred names. ManufacturersModelName: From 4259163bc92b7da7771be8e8ded9cdc66d910ae0 Mon Sep 17 00:00:00 2001 From: Stefan Appelhoff Date: Fri, 7 Jun 2024 11:45:34 +0200 Subject: [PATCH 16/71] Update requirements.txt --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 25f0520a..81609f6b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -mkdocs>=1.1 +mkdocs>=1.1.0 mkdocs-material>=5.4 pymdown-extensions>=7.0.0 mkdocs-branchcustomization-plugin~=0.1.3 From eba3e08e2dbfd3ad2e57c2a52c3bda8c1961dc6c Mon Sep 17 00:00:00 2001 From: Stefan Appelhoff Date: Fri, 7 Jun 2024 12:38:19 +0200 Subject: [PATCH 17/71] fix changelog generation [build changelog] xref: https://github.com/bids-standard/bids-specification/pull/1850 --- .github/workflows/changelog_generator.yml | 36 +++++++++++++---------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/.github/workflows/changelog_generator.yml b/.github/workflows/changelog_generator.yml index 45d9948d..7e0291b5 100644 --- a/.github/workflows/changelog_generator.yml +++ b/.github/workflows/changelog_generator.yml @@ -101,10 +101,11 @@ jobs: commit_generated_changelog: permissions: - # Give the default GITHUB_TOKEN write permission to commit and push the - # added or changed files to the repository. contents: write + pull-requests: write needs: lint_generated_changelog + # Run only if the head commit message contains "[build changelog]"" + if: contains(github.event.head_commit.message, '[build changelog]') runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -113,18 +114,21 @@ jobs: with: name: changelog_post_lint path: ~/changelog_build - - name: Changelog deployment + - name: add changelog to git run: | - if (git log -1 --pretty=%s | grep Merge*) && (! git log -1 --pretty=%b | grep REL:) ; then - mv ~/changelog_build/CHANGES.md ${{ github.workspace }}/src/CHANGES.md - merge_message=$(git log -1 | grep Merge | grep "pull") - PR_number=$(echo $merge_message | cut -d ' ' -f 4) - git config credential.helper 'cache --timeout=120' - git config user.email "bids.maintenance@gmail.com" - git config user.name "bids-maintenance" - git add ${{ github.workspace }}/src/CHANGES.md - git commit -m "[DOC] Auto-generate changelog entry for PR ${PR_number}" - git push https://${{ secrets.GITHUB_TOKEN }}@github.com/bids-standard/bids-specification.git master - else - echo "Did not detect a "Merge commit" to master, or detected a Release ... doing nothing." - fi + mv ~/changelog_build/CHANGES.md ${{ github.workspace }}/src/CHANGES.md + git config credential.helper 'cache --timeout=120' + git config user.email "bids.maintenance@gmail.com" + git config user.name "bids-maintenance" + git add ${{ github.workspace }}/src/CHANGES.md + git commit -m "[DOC] Auto-generated changelog entry" + - name: Create Pull Request + uses: peter-evans/create-pull-request@v6 + with: + token: ${{ secrets.GITHUB_TOKEN }} + branch: changelog_generator_update + delete-branch: true + title: '[DOC] Auto-generated changelog entry' + labels: | + exclude-from-changelog + draft: false From b0cfe7b7bc7fc065cb8ab023cf0f60dd6ed3ce92 Mon Sep 17 00:00:00 2001 From: Chris Markiewicz Date: Sun, 9 Jun 2024 22:28:29 -0400 Subject: [PATCH 18/71] schema: Add regression test to expression tests --- src/schema/meta/expression_tests.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/schema/meta/expression_tests.yaml b/src/schema/meta/expression_tests.yaml index 5ebb7dce..8ab60a28 100644 --- a/src/schema/meta/expression_tests.yaml +++ b/src/schema/meta/expression_tests.yaml @@ -112,6 +112,9 @@ result: [1, 2, 3] - expression: allequal(sorted([3, 2, 1]), [1, 2, 3]) result: true +# Regression test. Javascript will sort lexically by default. +- expression: sorted([9, 81, 729, 6561]) + result: [9, 81, 729, 6561] - expression: min([-1, "n/a", 1]) result: -1 - expression: max([-1, "n/a", 1]) From a98153595e9ae653c4f87c5b6781e05291afbd37 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 13 Jun 2024 19:28:27 +0200 Subject: [PATCH 19/71] [DOC] Auto-generated changelog entry (#1852) Co-authored-by: bids-maintenance --- src/CHANGES.md | 145 ++++++++++++++++++++++++++++++++++--------------- 1 file changed, 102 insertions(+), 43 deletions(-) diff --git a/src/CHANGES.md b/src/CHANGES.md index 087368ff..106f7e1a 100644 --- a/src/CHANGES.md +++ b/src/CHANGES.md @@ -1,15 +1,50 @@ # Changelog +## [Unreleased](https://github.com/bids-standard/bids-specification/tree/HEAD) + +- \[ENH] Add use of session entity as example of encoding multi-site studies in a single dataset [#1803](https://github.com/bids-standard/bids-specification/pull/1803) ([yarikoptic](https://github.com/yarikoptic)) +- \[ENH] Describe Inheritance Principle in Common Principles [#1807](https://github.com/bids-standard/bids-specification/pull/1807) ([Lestropie](https://github.com/Lestropie)) +- \[ENH] Use deidentification consistently in place of anonymization [#1799](https://github.com/bids-standard/bids-specification/pull/1799) ([DimitriPapadopoulos](https://github.com/DimitriPapadopoulos)) +- \[INFRA] Introduce metaschema [#1787](https://github.com/bids-standard/bids-specification/pull/1787) ([bendichter](https://github.com/bendichter)) +- \[ENH] Add warning about deidentification when sharing sourcedata [#1769](https://github.com/bids-standard/bids-specification/pull/1769) ([Remi-Gau](https://github.com/Remi-Gau)) +- ENH: Use "Tag XXXX, YYYY" not "Tag (XXXX,YYYY)" for DICOM Tags [#1758](https://github.com/bids-standard/bids-specification/pull/1758) ([yarikoptic](https://github.com/yarikoptic)) +- \[ENH]\[SCHEMA] Allow .bval and .bvec files for pepolar fmaps [#1754](https://github.com/bids-standard/bids-specification/pull/1754) ([mattcieslak](https://github.com/mattcieslak)) +- FIX: Move `\_stim.\` specification within the Task Events module [#1750](https://github.com/bids-standard/bids-specification/pull/1750) ([oesteban](https://github.com/oesteban)) +- ENH: Add compressed TSV files to the common principles [#1749](https://github.com/bids-standard/bids-specification/pull/1749) ([oesteban](https://github.com/oesteban)) +- \[MAINT] split physio metadata tables [#1746](https://github.com/bids-standard/bids-specification/pull/1746) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[FIX] Move `rawdata/` into `sourcedata/raw` in alternative structure example, clarify on naming of datasets themselves [#1741](https://github.com/bids-standard/bids-specification/pull/1741) ([yarikoptic](https://github.com/yarikoptic)) +- \[FIX] Remove mentions of sourcedata in the datatype specific pages [#1737](https://github.com/bids-standard/bids-specification/pull/1737) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[ENH] events.tsv should be sorted by onset values [#1732](https://github.com/bids-standard/bids-specification/pull/1732) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[FIX] fix typo in motion.md [#1731](https://github.com/bids-standard/bids-specification/pull/1731) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[ENH] Specify the naming of scanner-generated TRACE and ADC volumes [#1725](https://github.com/bids-standard/bids-specification/pull/1725) ([effigies](https://github.com/effigies)) +- FIX: Re-add run entity to electrodes.tsv [#1722](https://github.com/bids-standard/bids-specification/pull/1722) ([effigies](https://github.com/effigies)) +- \[FIX] Add misssing files in filename template for NIRS [#1716](https://github.com/bids-standard/bids-specification/pull/1716) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[FIX] Missing word in `genetic-descriptor.md` [#1715](https://github.com/bids-standard/bids-specification/pull/1715) ([markmikkelsen](https://github.com/markmikkelsen)) +- Add `descriptions.tsv` to the schema [#1707](https://github.com/bids-standard/bids-specification/pull/1707) ([tsalo](https://github.com/tsalo)) +- \[FIX] Remove task entity from DWI and PERF time series file templates [#1703](https://github.com/bids-standard/bids-specification/pull/1703) ([Remi-Gau](https://github.com/Remi-Gau)) +- ENH: Clarify the relation of motion.tsv columns to channels.tsv rows [#1699](https://github.com/bids-standard/bids-specification/pull/1699) ([effigies](https://github.com/effigies)) +- \[STY] apply black 24.1.0 [#1688](https://github.com/bids-standard/bids-specification/pull/1688) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[ENH] Describe parametric images above the suffix table, rather than below [#1687](https://github.com/bids-standard/bids-specification/pull/1687) ([CPernet](https://github.com/CPernet)) +- \[ENH] Add support for HiP-CT [#1686](https://github.com/bids-standard/bids-specification/pull/1686) ([balbasty](https://github.com/balbasty)) +- \[FIX] Add `part-` to the PEPOLAR fieldmaps [#1685](https://github.com/bids-standard/bids-specification/pull/1685) ([oesteban](https://github.com/oesteban)) +- \[MISC] Restructure MEG empty room example texts [#1677](https://github.com/bids-standard/bids-specification/pull/1677) ([guiomar](https://github.com/guiomar)) +- ENH: Add sample metadata to MRI and PET [#1593](https://github.com/bids-standard/bids-specification/pull/1593) ([effigies](https://github.com/effigies)) +- \[ENH] Add noRF suffix for MR excitation-free noise scans [#1451](https://github.com/bids-standard/bids-specification/pull/1451) ([tsalo](https://github.com/tsalo)) +- \[ENH] Add generic metadata from BEP22 to MRI [#1396](https://github.com/bids-standard/bids-specification/pull/1396) ([Remi-Gau](https://github.com/Remi-Gau)) +- \[FIX] Consistently refer to Neuromag/Elekta/MEGIN [#1310](https://github.com/bids-standard/bids-specification/pull/1310) ([sappelhoff](https://github.com/sappelhoff)) + ## [v1.9.0](https://github.com/bids-standard/bids-specification/tree/v1.9.0) (2023-11-20) +- \[ENH] Add `descriptions.tsv` file relating to the `desc-