diff --git a/.github/workflows/validation.yml b/.github/workflows/validation.yml index 5be42a5b18..ee554f9f59 100644 --- a/.github/workflows/validation.yml +++ b/.github/workflows/validation.yml @@ -26,7 +26,7 @@ jobs: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: - node-version: 14 + node-version: 22 - name: Install dependencies run: npm install `cat npm-requirements.txt` - name: Run style checks diff --git a/.remarkrc b/.remarkrc index 8d6c26487a..5f10c62bdf 100644 --- a/.remarkrc +++ b/.remarkrc @@ -4,7 +4,7 @@ "preset-lint-recommended", "remark-gfm", ["lint-no-duplicate-headings", false], - ["lint-list-item-indent", "tab-size"], + ["lint-list-item-indent", "tab"], ["lint-emphasis-marker", "consistent"], ["lint-maximum-line-length", false], ["lint-maximum-heading-length", false], diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c34f9cb514..208d0bd43b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -202,28 +202,28 @@ Don't do this: ```Markdown | **Key name** | **Description** | -|--------------|----------------------------------------------------------| +| ------------ | -------------------------------------------------------- | | Manufacturer | Manufacturer of the equipment, for example (`Siemens`) | ``` That would look like this: | **Key name** | **Description** | -|--------------|----------------------------------------------------------| +| ------------ | -------------------------------------------------------- | | Manufacturer | Manufacturer of the equipment, for example (`Siemens`) | But do this instead: ```Markdown | **Key name** | **Description** | -|--------------|----------------------------------------------------------| +| ------------ | -------------------------------------------------------- | | Manufacturer | Manufacturer of the equipment, for example (`"Siemens"`) | ``` That would look like this: | **Key name** | **Description** | -|--------------|----------------------------------------------------------| +| ------------ | -------------------------------------------------------- | | Manufacturer | Manufacturer of the equipment, for example (`"Siemens"`) | diff --git a/DECISION-MAKING.md b/DECISION-MAKING.md index af1547a3b9..f31b2eacbf 100644 --- a/DECISION-MAKING.md +++ b/DECISION-MAKING.md @@ -20,7 +20,7 @@ Current and past members of the steering group can be found ### Maintainers Group | Name | Time commitment | Scope | Joined | -|---------------------------------------------------------------------------|-----------------|---------------------------------------|----------| +| ------------------------------------------------------------------------- | --------------- | ------------------------------------- | -------- | | Stefan Appelhoff ([@sappelhoff](https://github.com/sappelhoff)) | 1h/week | | Mar 2020 | | Chris Markiewicz ([@effigies](https://github.com/effigies)) | 5h/week | | Mar 2020 | | Ross Blair ([@rwblair](https://github.com/rwblair)) | | Maintainer of the bids-validator | Mar 2020 | @@ -46,7 +46,7 @@ is rotating among current maintainers. #### Past maintainers group members | Name | Duration | -|--------------------------------------------------------------------------------|---------------------| +| ------------------------------------------------------------------------------ | ------------------- | | Franklin Feingold ([@franklin-feingold](https://github.com/franklin-feingold)) | Mar 2020 - Jul 2022 | ### BEP Leads Group diff --git a/npm-requirements.txt b/npm-requirements.txt index 7ef67d23b8..c2eaebe9b7 100644 --- a/npm-requirements.txt +++ b/npm-requirements.txt @@ -1,5 +1,5 @@ -remark-cli@9.0.0 -remark-gfm@1 -remark-preset-lint-recommended@5.0.0 -remark-preset-lint-markdown-style-guide@4.0.0 +remark-cli@12 +remark-gfm@4 +remark-preset-lint-recommended@7 +remark-preset-lint-markdown-style-guide@6 remark-lint-no-trailing-spaces@2 diff --git a/src/appendices/file-collections.md b/src/appendices/file-collections.md index 93d8391c1d..1df4677c75 100644 --- a/src/appendices/file-collections.md +++ b/src/appendices/file-collections.md @@ -47,7 +47,7 @@ and a guide for using macros can be found at }} | **Suffix** | **Linking entities** | **Application** | **Description** | -|------------|-----------------------|--------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| ---------- | --------------------- | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | VFA | flip | Variable flip angle | The VFA method involves at least two spoiled gradient echo (SPGR) of steady-state free precession (SSFP) images acquired at different flip angles. Depending on the provided metadata fields and the sequence type, data may be eligible for DESPOT1, DESPOT2 and their variants ([Deoni et al. 2005](https://doi.org/10.1002/mrm.20314)). | | IRT1 | inv, part | Inversion recovery T1 mapping | The IRT1 method involves multiple inversion recovery spin-echo images acquired at different inversion times ([Barral et al. 2010](https://doi.org/10.1002/mrm.22497)). | | MP2RAGE | flip, inv, echo, part | Magnetization prepared two gradient echoes | The MP2RAGE method is a special protocol that collects several images at different flip angles and inversion times to create a parametric T1map by combining the magnitude and phase images ([Marques et al. 2010](https://doi.org/10.1016/j.neuroimage.2009.10.002)). | @@ -81,7 +81,7 @@ and a guide for using macros can be found at }} | **Suffix** | **Meta-data relevant entity** | **Application** | **Description** | -|------------|--------------------------------------------------------|------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| ---------- | ------------------------------------------------------ | ---------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | TB1DAM | flip | Double-angle B1+ mapping | The double-angle B1+ method ([Insko and Bolinger 1993](https://doi.org/10.1006/jmra.1993.1133)) is based on the calculation of the actual angles from signal ratios, collected by two acquisitions at different nominal excitation flip angles. Common sequence types for this application include spin echo and echo planar imaging. | | TB1EPI | flip, echo | B1+ mapping with 3D EPI | This B1+ mapping method ([Jiru and Klose 2006](https://doi.org/10.1002/mrm.21083)) is based on two EPI readouts to acquire spin echo (SE) and stimulated echo (STE) images at multiple flip angles in one sequence, used in the calculation of deviations from the nominal flip angle. | | TB1AFI | Please see the [qMRI appendix](../appendices/qmri.md). | Actual Flip Angle Imaging (AFI) | This method ([Yarnykh 2007](https://doi.org/10.1002/mrm.21120)) calculates a B1+ map from two images acquired at interleaved (two) TRs with identical RF pulses using a steady-state sequence. | diff --git a/src/appendices/licenses.md b/src/appendices/licenses.md index 90cb6aa73f..adc02c23af 100644 --- a/src/appendices/licenses.md +++ b/src/appendices/licenses.md @@ -9,7 +9,7 @@ The terms of any license should be consistent with the informed consent obtained from participants and any institutional limitations on distribution. | **Identifier** | **License name** | **Description** | -| ---------------| ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | +| -------------- | ------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | | PD | Public Domain | No license required for any purpose; the work is not subject to copyright in any jurisdiction. | | [PDDL][pddl] | Open Data Commons Public Domain Dedication and License | License to assign public domain like permissions without giving up the copyright. | | [CC0][cc0] | Creative Commons Zero 1.0 Universal. | Use this if you are a holder of copyright or database rights, and you wish to waive all your interests in your work worldwide. | diff --git a/src/appendices/meg-systems.md b/src/appendices/meg-systems.md index 189d0ead31..9ae9fa3012 100644 --- a/src/appendices/meg-systems.md +++ b/src/appendices/meg-systems.md @@ -14,7 +14,7 @@ Preferred names of MEG systems comprise restricted keywords for Manufacturer fie Restricted keywords for ManufacturersModelName field in the `*_meg.json` file: | **System Model Name** | **Manufacturer** | **Details** | -|-------------------------- | --------- ------------| -------------------------------------------------------------------------------------------- | +| ------------------------- | --------- ----------- | -------------------------------------------------------------------------------------------- | | CTF-64 | CTF | | | CTF-151 | CTF | [https://www.ctf.com/products](https://www.ctf.com/products) | | CTF-275 | CTF | CTF-275: OMEGA 2000 | diff --git a/src/appendices/qmri.md b/src/appendices/qmri.md index 31e3b3ef7d..8aad465f24 100644 --- a/src/appendices/qmri.md +++ b/src/appendices/qmri.md @@ -208,7 +208,7 @@ but also by which metadata fields are provided in accompanying json files. #### Anatomy imaging data | **File collection** | **REQUIRED metadata** | **OPTIONAL metadata** | -|----------------------|------------------------------------------------------------------------------------------------------------------------------|----------------------------| +| -------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -------------------------- | | VFA | `FlipAngle`, `PulseSequenceType`, `RepetitionTimeExcitation` | `SpoilingRFPhaseIncrement` | | IRT1 | `InversionTime` | | | MP2RAGE\* | `FlipAngle`, `InversionTime`, `RepetitionTimeExcitation`, `RepetitionTimePreparation`, `NumberShots`,`MagneticFieldStrength` | `EchoTime` | @@ -282,7 +282,7 @@ and a guide for using macros can be found at }} | **File collection** | **REQUIRED metadata** | -|----------------------|------------------------------------------------------------------------------------------------------| +| -------------------- | ---------------------------------------------------------------------------------------------------- | | TB1DAM | `FlipAngle` | | TB1EPI | `EchoTime`, `FlipAngle`, `TotalReadoutTime`, `MixingTime` | | TB1AFI | `RepetitionTime` | @@ -447,7 +447,7 @@ This approach aims at: - keeping an inheritance track of the qMRI methods described within the specification. | **File-collection suffix** | **If REQUIRED metadata == Value** | **OPTIONAL metadata (`entity`/`fixed`)** | **Derived application name (NOT a suffix)** | -|----------------------------|-----------------------------------|------------------------------------------|---------------------------------------------| +| -------------------------- | --------------------------------- | ---------------------------------------- | ------------------------------------------- | | VFA | `PulseSequenceType` == `SPGR` | | DESPOT1 | | VFA | `PulseSequenceType` == `SSFP` | `SpoilingRFPhaseIncrement` (`fixed`) | DESPOT2 | | MP2RAGE | | `EchoTime` (`echo`) | MP2RAGE-ME | diff --git a/src/appendices/units.md b/src/appendices/units.md index 0edf271b16..4e4355483f 100644 --- a/src/appendices/units.md +++ b/src/appendices/units.md @@ -47,7 +47,7 @@ Examples for CMIXF-12 (including the five unicode symbols mentioned above): ## Unit table | **Unit name** | **Unit symbol** | **Quantity name** | -| ---------------| --------------- | ------------------------------------------ | +| -------------- | --------------- | ------------------------------------------ | | meter | m | length | | kilogram | kg | mass | | liter | L | volume | @@ -84,7 +84,7 @@ Examples for CMIXF-12 (including the five unicode symbols mentioned above): ### Multiples | **Prefix name** | **Prefix symbol** | **Factor** | -| --------------------------------------------| ------------------| --------------- | +| ------------------------------------------- | ----------------- | --------------- | | [deca](https://www.wikiwand.com/en/Deca-) | da | 101 | | [hecto](https://www.wikiwand.com/en/Hecto-) | h | 102 | | [kilo](https://www.wikiwand.com/en/Kilo-) | k | 103 | diff --git a/src/derivatives/common-data-types.md b/src/derivatives/common-data-types.md index 5a2e725e91..63f0809c55 100644 --- a/src/derivatives/common-data-types.md +++ b/src/derivatives/common-data-types.md @@ -329,7 +329,7 @@ A guide for using macros can be found at Contents of the `descriptions.tsv` file: | desc_id | description | -|---------|-------------------------------------------------------------------------------------------------| +| ------- | ----------------------------------------------------------------------------------------------- | | Filt | low-pass filtered at 30Hz | | FiltDs | low-pass filtered at 30Hz, downsampled to 250Hz | | preproc | low-pass filtered at 30Hz, downsampled to 250Hz, and rereferenced to a common average reference | diff --git a/src/derivatives/introduction.md b/src/derivatives/introduction.md index 669719cdc1..af798f38bd 100644 --- a/src/derivatives/introduction.md +++ b/src/derivatives/introduction.md @@ -108,7 +108,7 @@ The following extension table is reproduced in part from Section 9.0 of the or combinations of data arrays. | Intent | Extension | -|-------------|---------------| +| ----------- | ------------- | | Coordinates | `.coord.gii` | | Functional | `.func.gii` | | Labels | `.label.gii` | diff --git a/src/modality-specific-files/magnetic-resonance-imaging-data.md b/src/modality-specific-files/magnetic-resonance-imaging-data.md index 6396aa0e8c..d5e8e6abc9 100644 --- a/src/modality-specific-files/magnetic-resonance-imaging-data.md +++ b/src/modality-specific-files/magnetic-resonance-imaging-data.md @@ -573,11 +573,11 @@ sparse sequences. | | **`RepetitionTime`** | **`SliceTiming`** | **`AcquisitionDuration`** | **`DelayTime`** | **`VolumeTiming`** | | -------- | -------------------- | ----------------- | ------------------------- | --------------- | ------------------ | -| option A | \[ X ] | | \[ ] | | \[ ] | -| option B | \[ ] | \[ X ] | | \[ ] | \[ X ] | -| option C | \[ ] | | \[ X ] | \[ ] | \[ X ] | -| option D | \[ X ] | \[ X ] | \[ ] | | \[ ] | -| option E | \[ X ] | | \[ ] | \[ X ] | \[ ] | +| option A | \[ X ] | | \[ ] | | \[ ] | +| option B | \[ ] | \[ X ] | | \[ ] | \[ X ] | +| option C | \[ ] | | \[ X ] | \[ ] | \[ X ] | +| option D | \[ X ] | \[ X ] | \[ ] | | \[ ] | +| option E | \[ X ] | | \[ ] | \[ X ] | \[ ] | **Legend** @@ -1029,7 +1029,7 @@ imposed on the Dependent fields in column 3. See the [ASL Appendix](../appendice form of flowcharts. | **Source field** | **Value** | **Dependent field** | **Requirements** | -|--------------------------|--------------|----------------------|--------------------------------------------------| +| ------------------------ | ------------ | -------------------- | ------------------------------------------------ | | MRAcquisitionType | 2D / 3D | SliceTiming | \[X\] / \[\] | | LookLocker | true | FlipAngle | \[X\] | | ArterialSpinLabelingType | PCASL | LabelingDuration | \[X\] | diff --git a/src/modality-specific-files/motion.md b/src/modality-specific-files/motion.md index f0bbcb96ef..af357581e1 100644 --- a/src/modality-specific-files/motion.md +++ b/src/modality-specific-files/motion.md @@ -210,7 +210,7 @@ The description of the `reference_frame` column SHOULD use the `"Levels"` field to describe the named field using [objects][object] with following fields. | Key name | Requirement Level | Data type | Description | -|---------------|--------------------------------------------------------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| ------------- | ------------------------------------------------------ | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | RotationOrder | RECOMMENDED | [string][] | The sequence in which the extrinsic rotations are applied around the three axes. One of `"XYZ"`, `"XZY"`, `"YXZ"`, `"YZX"`, `"ZXY"`, or `"ZYX"`. | | RotationRule | RECOMMENDED | [string][] | The direction of rotation around each axis. One of `"left-hand"` or `"right-hand"`. | | SpatialAxes | RECOMMENDED | [string][] | The coordinate system in which the motion data are to be interpreted. A sequence of characters from the set `{'A', 'P', 'L', 'R', 'S', 'I', '_'}` indicating the direction of each axis. For example `"ARS"` indicates positive values in the X, Y, Z axes are respectively anterior, right, and superior of the origin, while `"PLI"` indicates positive values are posterior, left, and inferior of the origin. The `"_"` character may be used for unused axes. | diff --git a/src/modality-specific-files/near-infrared-spectroscopy.md b/src/modality-specific-files/near-infrared-spectroscopy.md index 16ffc1ba98..7382560a43 100644 --- a/src/modality-specific-files/near-infrared-spectroscopy.md +++ b/src/modality-specific-files/near-infrared-spectroscopy.md @@ -279,7 +279,7 @@ As several of these data types are commonly acquired using NIRS devices they are Note that upper-case is REQUIRED. | **Keyword** | **Description** | -| --------------------------- | -----------------------------------------------------------------------------------------------------------------------------------------------------------| +| --------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | | NIRSCWAMPLITUDE | Continuous wave amplitude measurements. Equivalent to dataType 001 in SNIRF. | | NIRSCWFLUORESCENSEAMPLITUDE | Continuous wave fluorescence amplitude measurements. Equivalent to dataType 051 in SNIRF. | | NIRSCWOPTICALDENSITY | Continuous wave change in optical density measurements. Equivalent to dataTypeLabel dOD in SNIRF. |