Skip to content

Commit a6faf00

Browse files
authored
Merge branch 'main' into bugfix/mixed-int-str-data
2 parents 2107949 + 4c865d6 commit a6faf00

File tree

146 files changed

+9576
-1958
lines changed

Some content is hidden

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

146 files changed

+9576
-1958
lines changed

.github/ISSUE_TEMPLATE/bug-report.md

-39
This file was deleted.

.github/ISSUE_TEMPLATE/bugreport.yml

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: Bug Report
2+
description: File a bug report to help us improve
3+
title: '[Bug]: '
4+
labels: [bug, 'needs triage']
5+
assignees: []
6+
body:
7+
- type: textarea
8+
id: what-happened
9+
attributes:
10+
label: What happened?
11+
description: |
12+
Thanks for reporting a bug! Please describe what you were trying to get done.
13+
Tell us what happened, what went wrong.
14+
validations:
15+
required: true
16+
17+
- type: textarea
18+
id: what-did-you-expect-to-happen
19+
attributes:
20+
label: What did you expect to happen?
21+
description: |
22+
Describe what you expected to happen.
23+
validations:
24+
required: false
25+
26+
- type: textarea
27+
id: sample-code
28+
attributes:
29+
label: Minimal Complete Verifiable Example
30+
description: |
31+
Minimal, self-contained copy-pastable example that generates the issue if possible. Please be concise with code posted. See guidelines below on how to provide a good bug report:
32+
33+
- [Minimal Complete Verifiable Examples](https://stackoverflow.com/help/mcve)
34+
- [Craft Minimal Bug Reports](http://matthewrocklin.com/blog/work/2018/02/28/minimal-bug-reports)
35+
36+
Bug reports that follow these guidelines are easier to diagnose, and so are often handled much more quickly.
37+
This will be automatically formatted into code, so no need for markdown backticks.
38+
render: python
39+
40+
- type: textarea
41+
id: log-output
42+
attributes:
43+
label: Relevant log output
44+
description: Please copy and paste any relevant output. This will be automatically formatted into code, so no need for markdown backticks.
45+
render: python
46+
47+
- type: textarea
48+
id: extra
49+
attributes:
50+
label: Anything else we need to know?
51+
description: |
52+
Please describe any other information you want to share.
53+
54+
- type: textarea
55+
id: show-versions
56+
attributes:
57+
label: Environment
58+
description: |
59+
Paste the output of `xr.show_versions()` here
60+
validations:
61+
required: true

.github/ISSUE_TEMPLATE/feature-request.md

-22
This file was deleted.

.github/ISSUE_TEMPLATE/newfeature.yml

+37
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Feature Request
2+
description: Suggest an idea for xarray
3+
title: '[FEATURE]: '
4+
labels: [enhancement]
5+
assignees: []
6+
body:
7+
- type: textarea
8+
id: description
9+
attributes:
10+
label: Is your feature request related to a problem?
11+
description: |
12+
Please do a quick search of existing issues to make sure that this has not been asked before.
13+
Please provide a clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
14+
validations:
15+
required: true
16+
- type: textarea
17+
id: solution
18+
attributes:
19+
label: Describe the solution you'd like
20+
description: |
21+
A clear and concise description of what you want to happen.
22+
- type: textarea
23+
id: alternatives
24+
attributes:
25+
label: Describe alternatives you've considered
26+
description: |
27+
A clear and concise description of any alternative solutions or features you've considered.
28+
validations:
29+
required: false
30+
- type: textarea
31+
id: additional-context
32+
attributes:
33+
label: Additional context
34+
description: |
35+
Add any other context about the feature request here.
36+
validations:
37+
required: false

.github/PULL_REQUEST_TEMPLATE.md

-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,5 @@
22

33
- [ ] Closes #xxxx
44
- [ ] Tests added
5-
- [ ] Passes `pre-commit run --all-files`
65
- [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst`
76
- [ ] New functions/methods are listed in `api.rst`

.github/workflows/benchmarks.yml

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Benchmark
2+
3+
on:
4+
pull_request:
5+
types: [opened, reopened, synchronize, labeled]
6+
workflow_dispatch:
7+
8+
jobs:
9+
benchmark:
10+
if: ${{ contains( github.event.pull_request.labels.*.name, 'run-benchmark') && github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' }}
11+
name: Linux
12+
runs-on: ubuntu-20.04
13+
env:
14+
ASV_DIR: "./asv_bench"
15+
16+
steps:
17+
# We need the full repo to avoid this issue
18+
# https://github.com/actions/checkout/issues/23
19+
- uses: actions/checkout@v2
20+
with:
21+
fetch-depth: 0
22+
23+
- name: Setup Miniconda
24+
uses: conda-incubator/setup-miniconda@v2
25+
with:
26+
# installer-url: https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
27+
installer-url: https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Linux-x86_64.sh
28+
29+
- name: Setup some dependencies
30+
shell: bash -l {0}
31+
run: |
32+
pip install asv
33+
sudo apt-get update -y
34+
35+
- name: Run benchmarks
36+
shell: bash -l {0}
37+
id: benchmark
38+
env:
39+
OPENBLAS_NUM_THREADS: 1
40+
MKL_NUM_THREADS: 1
41+
OMP_NUM_THREADS: 1
42+
ASV_FACTOR: 1.5
43+
ASV_SKIP_SLOW: 1
44+
run: |
45+
set -x
46+
# ID this runner
47+
asv machine --yes
48+
echo "Baseline: ${{ github.event.pull_request.base.sha }} (${{ github.event.pull_request.base.label }})"
49+
echo "Contender: ${GITHUB_SHA} (${{ github.event.pull_request.head.label }})"
50+
# Use mamba for env creation
51+
# export CONDA_EXE=$(which mamba)
52+
export CONDA_EXE=$(which conda)
53+
# Run benchmarks for current commit against base
54+
ASV_OPTIONS="--split --show-stderr --factor $ASV_FACTOR"
55+
asv continuous $ASV_OPTIONS ${{ github.event.pull_request.base.sha }} ${GITHUB_SHA} \
56+
| sed "/Traceback \|failed$\|PERFORMANCE DECREASED/ s/^/::error::/" \
57+
| tee benchmarks.log
58+
# Report and export results for subsequent steps
59+
if grep "Traceback \|failed\|PERFORMANCE DECREASED" benchmarks.log > /dev/null ; then
60+
exit 1
61+
fi
62+
working-directory: ${{ env.ASV_DIR }}
63+
64+
- name: Add instructions to artifact
65+
if: always()
66+
run: |
67+
cp benchmarks/README_CI.md benchmarks.log .asv/results/
68+
working-directory: ${{ env.ASV_DIR }}
69+
70+
- uses: actions/upload-artifact@v2
71+
if: always()
72+
with:
73+
name: asv-benchmark-results-${{ runner.os }}
74+
path: ${{ env.ASV_DIR }}/.asv/results

.github/workflows/ci-additional.yaml

+13-10
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,13 @@ jobs:
4040
os: ["ubuntu-latest"]
4141
env:
4242
[
43-
"py37-bare-minimum",
44-
"py37-min-all-deps",
45-
"py38-all-but-dask",
46-
"py38-flaky",
43+
# Minimum python version:
44+
"py38-bare-minimum",
45+
"py38-min-all-deps",
46+
47+
# Latest python version:
48+
"py39-all-but-dask",
49+
"py39-flaky",
4750
]
4851
steps:
4952
- uses: actions/checkout@v2
@@ -52,7 +55,7 @@ jobs:
5255

5356
- name: Set environment variables
5457
run: |
55-
if [[ ${{ matrix.env }} == "py38-flaky" ]] ;
58+
if [[ ${{ matrix.env }} == "py39-flaky" ]] ;
5659
then
5760
echo "CONDA_ENV_FILE=ci/requirements/environment.yml" >> $GITHUB_ENV
5861
echo "PYTEST_EXTRA_FLAGS=--run-flaky --run-network-tests" >> $GITHUB_ENV
@@ -75,7 +78,7 @@ jobs:
7578
mamba-version: "*"
7679
activate-environment: xarray-tests
7780
auto-update-conda: false
78-
python-version: 3.8
81+
python-version: 3.9
7982
use-only-tar-bz2: true
8083

8184
- name: Install conda dependencies
@@ -128,7 +131,7 @@ jobs:
128131
mamba-version: "*"
129132
activate-environment: xarray-tests
130133
auto-update-conda: false
131-
python-version: "3.8"
134+
python-version: "3.9"
132135

133136
- name: Install conda dependencies
134137
run: |
@@ -164,10 +167,10 @@ jobs:
164167
channel-priority: strict
165168
mamba-version: "*"
166169
auto-update-conda: false
167-
python-version: "3.8"
170+
python-version: "3.9"
168171

169172
- name: minimum versions policy
170173
run: |
171174
mamba install -y pyyaml conda python-dateutil
172-
python ci/min_deps_check.py ci/requirements/py37-bare-minimum.yml
173-
python ci/min_deps_check.py ci/requirements/py37-min-all-deps.yml
175+
python ci/min_deps_check.py ci/requirements/py38-bare-minimum.yml
176+
python ci/min_deps_check.py ci/requirements/py38-min-all-deps.yml

.github/workflows/ci-pre-commit-autoupdate.yaml

-44
This file was deleted.

.github/workflows/ci-pre-commit.yml

-17
This file was deleted.

0 commit comments

Comments
 (0)