Skip to content

Commit d0d5c37

Browse files
committed
Merge commit 'v1.10.0-35-g5f7004819' (master) into enh-project-datasettype
* commit 'v1.10.0-35-g5f7004819': (218 commits) Include entity-less "scans.json" into an example of inheritance principle (#1945) fix(checks): Enforce timing mutual exclusions on BOLD/ASL data only (#1969) refactor contributing (#1965) [pre-commit.ci] pre-commit autoupdate (#1967) [SCHEMA] Allow physio files for anat datatype (#1961) [pre-commit.ci] pre-commit autoupdate Add an empty line in hope to get table rendered properly in "Ordering rules" section (#1953) schema: add check for duplicate READMEs (#1952) [MAINT] switch bidsschematools to pyproject.toml (#1948) fix(schema): Disable TaskName check for channels and markers files Permit and warn on task/acquisition/run for electrodes and coordsystems [FIX] Allow (but discourage) task entity for coordsystem.json fix(schema): Limit MRI metadata checks to NIfTIs fix: Only check for sorted times in arrays py3.13 (#1947) [pre-commit.ci] pre-commit autoupdate (#1946) [FIX] Update changelog links to avoid redirects (#1944) [ENH] Update DWI suffixes to include most common scanner derivatives (#1864) [pre-commit.ci] pre-commit autoupdate [MAINT] Update Release_Protocol.md ...
2 parents 2d9bfdf + 5f70048 commit d0d5c37

File tree

113 files changed

+3977
-2064
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

113 files changed

+3977
-2064
lines changed

.all-contributorsrc

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,14 @@
274274
"name": "Anthony Galassi",
275275
"profile": "https://github.com/bendhouseart"
276276
},
277+
{
278+
"contributions": [
279+
"doc"
280+
],
281+
"login": "arianna_sala",
282+
"name": "Arianna Sala",
283+
"profile": "https://www.coma.uliege.be/people/arianna-sala/"
284+
},
277285
{
278286
"avatar_url": [
279287
"https://avatars.githubusercontent.com/u/118582?v=4"
@@ -383,10 +391,13 @@
383391
},
384392
{
385393
"contributions": [
386-
"doc"
394+
"doc",
395+
"code",
396+
"test"
387397
],
388398
"login": "benjamin_dichter",
389-
"name": "Benjamin Dichter"
399+
"name": "Benjamin Dichter",
400+
"profile": "https://bendichter.com/"
390401
},
391402
{
392403
"contributions": [
@@ -1999,11 +2010,14 @@
19992010
{
20002011
"avatar_url": "https://avatars.githubusercontent.com/u/6051303?v=4",
20012012
"contributions": [
2002-
"doc"
2013+
"doc",
2014+
"code",
2015+
"data",
2016+
"review"
20032017
],
20042018
"login": "markmikkelsen",
20052019
"name": "Mark Mikkelsen",
2006-
"profile": "https://vivo.weill.cornell.edu/display/cwid-mam4041"
2020+
"profile": "https://mikkelsenlab.weill.cornell.edu/"
20072021
},
20082022
{
20092023
"contributions": [
@@ -2303,6 +2317,13 @@
23032317
"login": "nicole_c_swann",
23042318
"name": "Nicole C. Swann"
23052319
},
2320+
{
2321+
"contributions": [
2322+
"doc"
2323+
],
2324+
"login": "nbeliy",
2325+
"name": "Nikita Beliy"
2326+
},
23062327
{
23072328
"contributions": [
23082329
"doc"
@@ -2636,6 +2657,13 @@
26362657
"login": "samuel_garcia",
26372658
"name": "Samuel Garcia"
26382659
},
2660+
{
2661+
"contributions": [
2662+
"doc"
2663+
],
2664+
"login": "SamGuay",
2665+
"name": "Samuel Guay"
2666+
},
26392667
{
26402668
"avatar_url": [
26412669
"https://avatars.githubusercontent.com/u/3496566?v=4"
@@ -3079,6 +3107,13 @@
30793107
"login": "viacovella",
30803108
"name": "Vittorio Iacovella"
30813109
},
3110+
{
3111+
"contributions": [
3112+
"doc"
3113+
],
3114+
"login": "viviana_siless",
3115+
"name": "Viviana Siless"
3116+
},
30823117
{
30833118
"contributions": [
30843119
"doc"

.github/workflows/changelog_generator.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ jobs:
123123
git add ${{ github.workspace }}/src/CHANGES.md
124124
git commit -m "[DOC] Auto-generated changelog entry"
125125
- name: Create Pull Request
126-
uses: peter-evans/create-pull-request@v6
126+
uses: peter-evans/create-pull-request@v7
127127
with:
128128
token: ${{ secrets.GITHUB_TOKEN }}
129129
branch: changelog_generator_update

.github/workflows/publish_schema.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: "Publish schema"
2+
3+
on:
4+
push:
5+
branches:
6+
- "master"
7+
8+
concurrency:
9+
group: ${{ github.workflow }}-${{ github.ref }}
10+
cancel-in-progress: true
11+
12+
defaults:
13+
run:
14+
shell: bash
15+
16+
env:
17+
GIT_AUTHOR_NAME: BIDS CI
18+
GIT_AUTHOR_EMAIL: [email protected]
19+
GIT_COMMITTER_NAME: BIDS CI
20+
GIT_COMMITTER_EMAIL: [email protected]
21+
22+
permissions:
23+
contents: write
24+
id-token: write
25+
26+
jobs:
27+
publish:
28+
runs-on: ubuntu-latest
29+
steps:
30+
- uses: actions/checkout@v4
31+
with:
32+
fetch-depth: 0
33+
filter: "blob:none"
34+
- uses: actions/setup-python@v5
35+
with:
36+
python-version: 3
37+
- name: Install bidsschematools
38+
run: |
39+
pip install --upgrade tools/schemacode
40+
git clean -fxd tools/schemacode
41+
- name: Checkout jsr-dist
42+
run: |
43+
git checkout -t origin/jsr-dist
44+
- name: Regenerate schema
45+
run: bst export > schema.json
46+
- name: Regenerate context types
47+
run: |
48+
jq .meta.context schema.json \
49+
| npx quicktype --src-lang schema --lang ts -t Context --just-types \
50+
> context.ts
51+
- name: Regenerate metaschema types
52+
run: |
53+
# Name the file schema so the type will be named Schema
54+
bst export-metaschema > /tmp/schema.json
55+
npx --package=json-schema-to-typescript json2ts --unknownAny /tmp/schema.json > metaschema.ts
56+
- name: Determine next version
57+
run: |
58+
BASE=$( jq -r .schema_version schema.json )
59+
if [[ "$BASE" =~ ^[0-9]*.[0-9]*.[0-9]*$ ]]; then
60+
# Release, so unconditionally update version
61+
VERSION=$BASE
62+
jq ".version = \"$VERSION\"" jsr.json > tmp.json && mv tmp.json jsr.json
63+
else
64+
DENOVER=$( jq -r .version jsr.json )
65+
# Get the reference of the latest commit to touch the schema directory
66+
HASH=$( git log -n 1 --pretty=%h $REF -- src/schema )
67+
if [[ $DENOVER =~ ^"$BASE".[0-9] ]]; then
68+
PREFIX=${DENOVER%+*}
69+
let SERIAL=1+${PREFIX#$BASE.}
70+
else
71+
SERIAL=1
72+
fi
73+
VERSION="$BASE.$SERIAL+$HASH"
74+
fi
75+
echo VERSION=$VERSION | tee -a $GITHUB_ENV
76+
env:
77+
REF: ${{ github.ref }}
78+
- name: Check for changes, set version and commit
79+
run: |
80+
if ! git diff -s --exit-code; then
81+
jq ".version = \"$VERSION\"" jsr.json > tmp.json && mv tmp.json jsr.json
82+
git add jsr.json schema.json context.ts metaschema.ts
83+
git commit -m "Update schema JSR distribution"
84+
git push
85+
fi
86+
- name: Publish to JSR
87+
if: success()
88+
run: |
89+
npx jsr publish

.github/workflows/schemacode_ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
- name: "Install build dependencies"
3434
run: pip install --upgrade build twine
3535
- name: "Install test dependencies on tag"
36-
run: pip install --upgrade tools/schemacode[test]
36+
run: pip install --upgrade tools/schemacode[all]
3737
if: ${{ startsWith(github.ref, 'refs/tags/schema-') }}
3838
- name: "Build archive on tag"
3939
run: pytest tools/schemacode/bidsschematools -k make_archive
@@ -56,7 +56,7 @@ jobs:
5656
fail-fast: false
5757
matrix:
5858
os: ["ubuntu-latest"]
59-
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
59+
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
6060
include:
6161
- os: macos-latest
6262
python-version: 3

.mailmap

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,3 +64,5 @@ Patrick Park <[email protected]>
6464
Ezequiel Mikulan <[email protected]>
6565

6666
Guillaume Flandin <[email protected]>
67+
68+
Dimitri Papadopoulos Orfanos <[email protected]>

.pre-commit-config.yaml

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,28 @@ ci:
55
exclude: 'tools/schemacode/bidsschematools/tests/data/broken_dataset_description.json'
66
repos:
77
- repo: https://github.com/pre-commit/pre-commit-hooks
8-
rev: v4.6.0
8+
rev: v5.0.0
99
hooks:
1010
- id: trailing-whitespace
1111
- id: end-of-file-fixer
1212
- id: check-yaml
1313
- id: check-json
14+
- id: check-toml
1415
- id: check-ast
1516
- id: check-added-large-files
1617
- id: check-case-conflict
18+
- repo: https://github.com/python-jsonschema/check-jsonschema
19+
rev: 0.29.4
20+
hooks:
21+
- id: check-dependabot
22+
- id: check-github-workflows
23+
args: ["--verbose"]
24+
- id: check-metaschema
25+
files: src/metaschema.json
26+
- id: check-readthedocs
27+
files: readthedocs.yml
1728
- repo: https://github.com/psf/black
18-
rev: 24.4.2
29+
rev: 24.10.0
1930
hooks:
2031
- id: black
2132
files: ^tools/(?!schemacode)
@@ -35,10 +46,10 @@ repos:
3546
files: tools/schemacode
3647
args: ["--settings-file", "tools/schemacode/pyproject.toml"]
3748
- repo: https://github.com/pyCQA/flake8
38-
rev: 7.1.0
49+
rev: 7.1.1
3950
hooks:
4051
- id: flake8
41-
args: [--config=tools/schemacode/setup.cfg]
52+
args: [--config=tools/schemacode/.flake8]
4253
- repo: https://github.com/pre-commit/mirrors-prettier
4354
rev: v4.0.0-alpha.8
4455
hooks:
@@ -51,13 +62,18 @@ repos:
5162
- id: yamllint
5263
args: [-f=standard, -c=.yamllint.yml]
5364
files: src/schema/.*/.*\.yaml
65+
- repo: https://github.com/macisamuele/language-formatters-pre-commit-hooks
66+
rev: v2.14.0
67+
hooks:
68+
- id: pretty-format-toml
69+
args: [--autofix, --indent, '4', --no-sort]
5470
- repo: https://github.com/codespell-project/codespell
5571
rev: v2.3.0
5672
hooks:
5773
- id: codespell
5874
args: ["--config=.codespellrc", "--dictionary=-", "--dictionary=.codespell_dict"]
5975
- repo: https://github.com/pre-commit/mirrors-mypy
60-
rev: v1.10.0
76+
rev: v1.12.1
6177
hooks:
6278
- id: mypy
6379
# Sync with project.optional-dependencies.typing
@@ -71,6 +87,8 @@ repos:
7187
- types-PyYAML
7288
- types-tabulate
7389
- types-jsonschema
90+
- jsonschema
91+
- httpx
7492
args: ["tools/schemacode/bidsschematools"]
7593
pass_filenames: false
7694
- repo: https://github.com/koalaman/shellcheck-precommit

.tributors

Lines changed: 54 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,16 @@
244244
"name": "Anthony Galassi",
245245
"orcid": "0000-0001-6550-4574"
246246
},
247+
"arianna_sala": {
248+
"affiliation": "université de Liège, Belgium",
249+
"blog": "https://www.coma.uliege.be/people/arianna-sala/",
250+
"contributions": [
251+
"doc"
252+
],
253+
"email": "[email protected]",
254+
"name": "Arianna Sala",
255+
"orcid": "0000-0001-8121-0891"
256+
},
247257
"arokem": {
248258
"affiliation": "University of Washington, Psychology, Seattle, WA, 98107, United States of America",
249259
"blog": "https://arokem.org/",
@@ -348,10 +358,17 @@
348358
"publish_email": true
349359
},
350360
"benjamin_dichter": {
361+
"affiliation": "CatalystNeuro",
362+
"blog": "https://bendichter.com/",
351363
"contributions": [
352-
"doc"
364+
"doc",
365+
"code",
366+
"test"
353367
],
354-
"name": "Benjamin Dichter"
368+
"email": "[email protected]",
369+
"github": "bendichter",
370+
"name": "Benjamin Dichter",
371+
"orcid": "0000-0001-5725-6910"
355372
},
356373
"benjamin_gagl": {
357374
"affiliation": "University of Vienna",
@@ -1941,12 +1958,16 @@
19411958
"name": "Marie-Hélène Bourget"
19421959
},
19431960
"markmikkelsen": {
1944-
"affiliation": "Weill Cornell Medicine, Department of Radiology, New York, NY, 10021, USA",
1945-
"blog": "https://vivo.weill.cornell.edu/display/cwid-mam4041",
1961+
"affiliation": "Weill Cornell Medicine",
1962+
"blog": "https://mikkelsenlab.weill.cornell.edu/",
19461963
"contributions": [
1947-
"doc"
1964+
"doc",
1965+
"code",
1966+
"data",
1967+
"review"
19481968
],
19491969
"email": "[email protected]",
1970+
"github": "markmikkelsen",
19501971
"name": "Mark Mikkelsen",
19511972
"orcid": "0000-0002-0349-3782",
19521973
"publish_email": true
@@ -2241,6 +2262,16 @@
22412262
],
22422263
"name": "Nicole C. Swann"
22432264
},
2265+
"nbeliy": {
2266+
"affiliation": "University of Liege (Liege, Belgium)",
2267+
"contributions": [
2268+
"doc"
2269+
],
2270+
"email": "[email protected]",
2271+
"github": "nbeliy",
2272+
"name": "Nikita Beliy",
2273+
"orcid": "0009-0002-0830-3279"
2274+
},
22442275
"nima_bigdely_shamlo": {
22452276
"contributions": [
22462277
"doc"
@@ -2556,6 +2587,16 @@
25562587
],
25572588
"name": "Samuel Garcia"
25582589
},
2590+
"SamGuay": {
2591+
"affiliation": "Université de Montréal, Montreal, Québec, CA",
2592+
"contributions": [
2593+
"doc"
2594+
],
2595+
"email": "[email protected]",
2596+
"github": "SamGuay",
2597+
"name": "Samuel Guay",
2598+
"orcid": "0000-0001-6990-839X"
2599+
},
25592600
"snastase": {
25602601
"affiliation": "Princeton University",
25612602
"blog": "https://snastase.github.io/",
@@ -3005,6 +3046,14 @@
30053046
"name": "Vittorio Iacovella",
30063047
"orcid": "0000-0002-0853-1573"
30073048
},
3049+
"viviana_siless": {
3050+
"affiliation": "Business School, Universidad Torcuato di Tella",
3051+
"contributions": [
3052+
"doc"
3053+
],
3054+
"email": "[email protected]",
3055+
"name": "Viviana Siless"
3056+
},
30083057
"vladimir_litvak": {
30093058
"affiliation": "UCL Queen Square Institute of Neurology",
30103059
"contributions": [

0 commit comments

Comments
 (0)