Skip to content

Commit bf8ecfc

Browse files
committed
Merge branch 'enh-metasum' of github.com:moloney/nibabel into enh-metasum
2 parents 59fab27 + a2c94da commit bf8ecfc

File tree

223 files changed

+8445
-4316
lines changed

Some content is hidden

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

223 files changed

+8445
-4316
lines changed

.azure-pipelines/windows.yml

Lines changed: 0 additions & 51 deletions
This file was deleted.

.github/CODE_OF_CONDUCT.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Community Guidelines
22

33
Nibabel is a [NIPY](https://nipy.org) project, and we strive to adhere to the
4-
[NIPY Community Code](https://nipy.org/conduct.html), reproduced below.
4+
[NIPY code of conduct](https://nipy.org/conduct.html), reproduced below.
55

66
The NIPY community is a community of practice devoted to the use of the Python programming language
77
in the analysis of neuroimaging data. The following code of conduct is a guideline for our behavior
@@ -17,7 +17,7 @@ The Neuroimaging in Python (NIPY) community is made up of members with a diverse
1717
personalities, background, and experiences. We welcome these differences because they are the
1818
source of diverse ideas, solutions and decisions about our work. Decisions we make affect users,
1919
colleagues, and through scientific results, the general public. We take these consequences
20-
seriously when making decisions. When you are working with members of the community, we encourage
20+
seriously when making decisions. When you are working with members of the community, we ask
2121
you to follow these guidelines, which help steer our interactions and help keep NIPY a positive,
2222
successful, and growing community.
2323

@@ -30,15 +30,15 @@ implementation of methods, on finding technical solutions, establishing best pra
3030
otherwise. We are accepting of all who wish to take part in our activities, fostering an
3131
environment where anyone can participate and everyone can make a difference.
3232

33-
#### Be collaborative!
33+
#### Collaborative
3434

3535
Our work will be used by other people, and in turn we will depend on the work of others. When we
3636
make something for the benefit of others, we are willing to explain to others how it works, so that
3737
they can build on the work to make it even better. We are willing to provide constructive criticism
3838
on the work of others and accept criticism of our own work, as the experiences and skill sets of
3939
other members contribute to the whole of our efforts.
4040

41-
#### Be inquisitive!
41+
#### Inquisitive
4242

4343
Nobody knows everything! Asking questions early avoids many problems later, so questions are
4444
encouraged, though they may be directed to the appropriate forum. Those who are asked should be
@@ -51,7 +51,7 @@ efforts of others, keeping in mind that often-times the labor was completed simp
5151
the community. We are attentive in our communications, whether in person or online, and we are
5252
tactful when approaching differing views.
5353

54-
#### Be careful in the words that you choose:
54+
#### Careful in the words we choose
5555

5656
We value courtesy, kindness and inclusiveness in all our interactions. Therefore, we take
5757
responsibility for our own speech. In particular, we avoid:
@@ -66,7 +66,7 @@ responsibility for our own speech. In particular, we avoid:
6666
* Repeated harassment of others. In general, if someone asks you to stop, then stop.
6767
* Advocating for, or encouraging, any of the above behaviour.
6868

69-
#### Try to be concise in communication
69+
#### Concise
7070

7171
Keep in mind that what you write once will be read by many others. Writing a short email means
7272
people can understand the conversation as efficiently as possible. Even short emails should always

.github/workflows/README

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
These files implement NiBabel CI for GitHub actions.
2+
The testing logic is implemented in tools/ci/*.sh, and these files adapt
3+
the generic logic to the details of GH.
4+
5+
Each file should differ only by strategy, and env and steps should be identical.

.github/workflows/misc.yml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
name: Miscellaneous checks
2+
3+
# This file runs doctests on the documentation and style checks
4+
5+
on:
6+
push:
7+
branches:
8+
- master
9+
- maint/*
10+
pull_request:
11+
branches:
12+
- master
13+
- maint/*
14+
15+
defaults:
16+
run:
17+
shell: bash
18+
19+
jobs:
20+
misc:
21+
runs-on: 'ubuntu-latest'
22+
continue-on-error: true
23+
strategy:
24+
matrix:
25+
python-version: [3.8]
26+
install: ['setup']
27+
check: ['style', 'doc']
28+
pip-flags: ['']
29+
depends: ['REQUIREMENTS']
30+
env:
31+
DEPENDS: ${{ matrix.depends }}
32+
OPTIONAL_DEPENDS: ${{ matrix.optional-depends }}
33+
INSTALL_TYPE: ${{ matrix.install }}
34+
CHECK_TYPE: ${{ matrix.check }}
35+
EXTRA_PIP_FLAGS: ${{ matrix.pip-flags }}
36+
37+
steps:
38+
- uses: actions/checkout@v2
39+
with:
40+
submodules: recursive
41+
fetch-depth: 0
42+
- name: Set up Python ${{ matrix.python-version }}
43+
uses: actions/setup-python@v2
44+
with:
45+
python-version: ${{ matrix.python-version }}
46+
architecture: ${{ matrix.architecture }}
47+
- name: Display Python version
48+
run: python -c "import sys; print(sys.version)"
49+
- name: Create virtual environment
50+
run: tools/ci/create_venv.sh
51+
- name: Build archive
52+
run: |
53+
source tools/ci/build_archive.sh
54+
echo "ARCHIVE=$ARCHIVE" >> $GITHUB_ENV
55+
- name: Install dependencies
56+
run: tools/ci/install_dependencies.sh
57+
- name: Install NiBabel
58+
run: tools/ci/install.sh
59+
- name: Run tests
60+
run: tools/ci/check.sh
61+
if: ${{ matrix.check != 'skiptests' }}
62+
- name: Submit coverage
63+
run: tools/ci/submit_coverage.sh
64+
if: ${{ always() }}
65+
- name: Upload pytest test results
66+
uses: actions/upload-artifact@v2
67+
with:
68+
name: pytest-results-${{ matrix.os }}-${{ matrix.python-version }}
69+
path: for_testing/test-results.xml
70+
if: ${{ always() && matrix.check == 'test' }}

.github/workflows/pre-release.yml

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
name: Pre-release checks
2+
3+
# This file tests against pre-release wheels for dependencies
4+
5+
on:
6+
push:
7+
branches:
8+
- master
9+
- maint/*
10+
pull_request:
11+
branches:
12+
- master
13+
- maint/*
14+
schedule:
15+
- cron: '0 0 * * *'
16+
17+
defaults:
18+
run:
19+
shell: bash
20+
21+
jobs:
22+
pre-release:
23+
# Check pre-releases of dependencies on stable Python
24+
runs-on: ${{ matrix.os }}
25+
continue-on-error: true
26+
strategy:
27+
matrix:
28+
os: ['ubuntu-latest', 'windows-latest', 'macos-latest']
29+
python-version: [3.8, 3.9]
30+
architecture: ['x64', 'x86']
31+
install: ['setup']
32+
check: ['test']
33+
pip-flags: ['PRE_PIP_FLAGS']
34+
depends: ['REQUIREMENTS']
35+
optional-depends: ['DEFAULT_OPT_DEPENDS']
36+
include:
37+
# Pydicom master
38+
- os: ubuntu-latest
39+
python-version: 3.8
40+
install: setup
41+
check: test
42+
pip-flags: ''
43+
depends: REQUIREMENTS
44+
optional-depends: PYDICOM_MASTER
45+
exclude:
46+
- os: ubuntu-latest
47+
architecture: x86
48+
- os: macos-latest
49+
architecture: x86
50+
- os: windows-latest
51+
python-version: 3.9
52+
- os: macos-latest
53+
python-version: 3.9
54+
55+
env:
56+
DEPENDS: ${{ matrix.depends }}
57+
OPTIONAL_DEPENDS: ${{ matrix.optional-depends }}
58+
INSTALL_TYPE: ${{ matrix.install }}
59+
CHECK_TYPE: ${{ matrix.check }}
60+
EXTRA_PIP_FLAGS: ${{ matrix.pip-flags }}
61+
62+
steps:
63+
- uses: actions/checkout@v2
64+
with:
65+
submodules: recursive
66+
fetch-depth: 0
67+
- name: Set up Python ${{ matrix.python-version }}
68+
uses: actions/setup-python@v2
69+
with:
70+
python-version: ${{ matrix.python-version }}
71+
architecture: ${{ matrix.architecture }}
72+
- name: Display Python version
73+
run: python -c "import sys; print(sys.version)"
74+
- name: Create virtual environment
75+
run: tools/ci/create_venv.sh
76+
- name: Build archive
77+
run: |
78+
source tools/ci/build_archive.sh
79+
echo "ARCHIVE=$ARCHIVE" >> $GITHUB_ENV
80+
- name: Install dependencies
81+
run: tools/ci/install_dependencies.sh
82+
- name: Install NiBabel
83+
run: tools/ci/install.sh
84+
- name: Run tests
85+
run: tools/ci/check.sh
86+
if: ${{ matrix.check != 'skiptests' }}
87+
- name: Submit coverage
88+
run: tools/ci/submit_coverage.sh
89+
if: ${{ always() }}
90+
- name: Upload pytest test results
91+
uses: actions/upload-artifact@v2
92+
with:
93+
name: pytest-results-${{ matrix.os }}-${{ matrix.python-version }}
94+
path: for_testing/test-results.xml
95+
if: ${{ always() && matrix.check == 'test' }}

0 commit comments

Comments
 (0)