Skip to content

Commit e62b8c6

Browse files
authored
Merge pull request #192 from pysat/rc_0_0_5
2 parents f884134 + 14957b6 commit e62b8c6

Some content is hidden

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

74 files changed

+3290
-779
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

+14-20
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,29 @@
11
---
22
name: Bug report
3-
about: Create a report to help us improve
3+
about: Create a report to report a problem that needs to be fixed
4+
labels: bug
5+
title: "BUG: "
46

57
---
68

7-
**Describe the bug**
8-
A clear and concise description of what the bug is.
9+
# Description
10+
A clear and concise description of what the bug is, including a description
11+
of what you expected the outcome to be.
912

10-
**To Reproduce**
13+
# To Reproduce this bug:
1114
Steps to reproduce the behavior:
1215
1. Go to '...'
1316
2. Click on '....'
1417
3. Scroll down to '....'
1518
4. See error
1619

17-
or
20+
Consider including images or test files to help others reproduce the bug and
21+
solve the problem.
1822

19-
```
20-
# test code here
21-
```
22-
23-
**Expected behavior**
24-
A clear and concise description of what you expected to happen.
25-
26-
**Screenshots**
27-
If applicable, add screenshots to help explain your problem.
28-
29-
**Desktop (please complete the following information):**
30-
- OS: [e.g. iOS]
31-
- Version [e.g. Python 3.7]
23+
## Test configuration
24+
- OS: [e.g. Hal]
25+
- Version [e.g. Python 3.47]
3226
- Other details about your setup that could be relevant
3327

34-
**Additional context**
35-
Add any other context about the problem here.
28+
# Additional context
29+
Add any other context about the problem here, including expected behaviour.
+17-7
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,27 @@
11
---
22
name: Feature request
33
about: Suggest an idea for this project
4+
title: "ENH: "
5+
labels: enhancement
46

57
---
68

7-
**Is your feature request related to a problem? Please describe.**
8-
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
9+
# Description
10+
A clear and concise description of the new feature or behaviour you would like.
911

10-
**Describe the solution you'd like**
12+
## Potential impact
13+
14+
- Is the feature related to an existing problem?
15+
- How critical is this feature to your workflow?
16+
- How wide of an impact to you anticipate this enhancement having?
17+
- Would this break any existing functionality?
18+
19+
## Potential solution(s)
1120
A clear and concise description of what you want to happen.
1221

13-
**Describe alternatives you've considered**
14-
A clear and concise description of any alternative solutions or features you've considered.
22+
# Alternatives
23+
A clear description of any alternative solutions or features you've considered.
1524

16-
**Additional context**
17-
Add any other context or screenshots about the feature request here.
25+
# Additional context
26+
Add any other context or screenshots about the feature request here, potentially
27+
including your operational configuration.

.github/ISSUE_TEMPLATE/question.md

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
name: Question
3+
about: A question about this project
4+
title: "QUEST: "
5+
labels: question
6+
7+
---
8+
9+
# Description
10+
A clear and concise summary of your query
11+
12+
## Example code (optional)
13+
If relevant, include sample code, images, or files so that others can understand
14+
the full context of your question.
15+
16+
## Configuration
17+
- OS: [e.g. Hal]
18+
- Version: [e.g. Python 3.47]
19+
- Other details about your setup that could be relevant

.github/pull_request_template.md

+8-5
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Description
22

3-
Addresses # (issue)
3+
Addresses #(issue)
44

55
Please include a summary of the change and which issue is fixed. Please also
66
include relevant motivation and context. List any dependencies that are required
77
for this change. Please see ``CONTRIBUTING.md`` for more guidelines.
88

9-
## Type of change
9+
# Type of change
1010

1111
Please delete options that are not relevant.
1212

@@ -25,9 +25,9 @@ your test configuration
2525
- Test A
2626
- Test B
2727

28-
## Test Configuration
29-
* Operating system: [Os Type]
30-
* Version number: [Python 2.9]
28+
**Test Configuration**:
29+
* Operating system: Hal
30+
* Version number: Python 3.X
3131
* Any details about your local setup that are relevant
3232

3333
# Checklist:
@@ -43,3 +43,6 @@ your test configuration
4343
- [ ] Any dependent changes have been merged and published in downstream modules
4444
- [ ] Add a note to ``CHANGELOG.md``, summarizing the changes
4545
- [ ] Update zenodo.json file for new code contributors
46+
47+
If this is a release PR, replace the first item of the above checklist with the release
48+
checklist on the wiki: https://github.com/pysat/pysat/wiki/Checklist-for-Release

.github/workflows/docs.yml

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
1+
# This workflow will install Python dependencies and check the sphinx build, links in the docs, and the readability of the zenodo file
22
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
33

44
name: Documentation Check
@@ -8,11 +8,11 @@ on: [push, pull_request]
88
jobs:
99
build:
1010

11-
runs-on: ubuntu-latest
11+
runs-on: ["ubuntu-latest"]
1212
strategy:
1313
fail-fast: false
1414
matrix:
15-
python-version: [3.9]
15+
python-version: ["3.11"] # Keep this version at the highest supported Python version
1616

1717
name: Documentation tests
1818
steps:
@@ -25,8 +25,7 @@ jobs:
2525
- name: Install dependencies
2626
run: |
2727
python -m pip install --upgrade pip
28-
pip install -r test_requirements.txt
29-
pip install -r requirements.txt
28+
pip install .[doc]
3029
3130
- name: Set up pysat
3231
run: |

.github/workflows/main.yml

+27-15
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,19 @@ jobs:
1010
strategy:
1111
fail-fast: false
1212
matrix:
13-
os: [ubuntu-latest, macos-latest, windows-latest]
14-
python-version: ["3.9", "3.10"]
15-
numpy_ver: [latest]
13+
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
14+
python-version: ["3.10", "3.11"]
15+
numpy_ver: ["latest"]
16+
test_config: ["latest"]
1617
include:
17-
- python-version: "3.8"
18-
numpy_ver: "1.20"
18+
- python-version: "3.9"
19+
numpy_ver: "1.21"
1920
os: ubuntu-latest
21+
test_config: "NEP29"
22+
- python-version: "3.6.8"
23+
numpy_ver: "1.19.5"
24+
os: "ubuntu-20.04"
25+
test_config: "Ops"
2026

2127
name: Python ${{ matrix.python-version }} on ${{ matrix.os }} with numpy ${{ matrix.numpy_ver }}
2228
runs-on: ${{ matrix.os }}
@@ -31,18 +37,25 @@ jobs:
3137
if: ${{ matrix.os == 'macos-latest' }}
3238
run: brew reinstall gcc
3339

40+
- name: Install Operational dependencies
41+
if: ${{ matrix.test_config == 'Ops'}}
42+
run: |
43+
pip install --no-cache-dir numpy==${{ matrix.numpy_ver }}
44+
pip install "cdflib<1.0"
45+
pip install -r requirements.txt
46+
pip install -r test_requirements.txt
47+
pip install .
48+
3449
- name: Install NEP29 dependencies
35-
if: ${{ matrix.numpy_ver != 'latest'}}
50+
if: ${{ matrix.test_config == 'NEP29'}}
3651
run: |
37-
pip install --no-binary :numpy: numpy==${{ matrix.numpy_ver }}
38-
# Need to force a version of pandas compliant with NEP29
39-
pip install "pandas<1.5"
52+
pip install numpy==${{ matrix.numpy_ver }}
53+
pip install --upgrade-strategy only-if-needed .[test]
4054
4155
- name: Install standard dependencies
56+
if: ${{ matrix.test_config == 'latest'}}
4257
run: |
43-
pip install -r requirements.txt
44-
pip install pysatCDF --no-binary=pysatCDF
45-
pip install -r test_requirements.txt
58+
pip install .[test]
4659
4760
- name: Set up pysat
4861
run: |
@@ -56,10 +69,9 @@ jobs:
5669
run: flake8 . --count --exit-zero --max-complexity=10 --statistics
5770

5871
- name: Test with pytest
59-
run: |
60-
pytest -vs --cov=pysatNASA/
72+
run: pytest
6173

6274
- name: Publish results to coveralls
6375
env:
6476
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
65-
run: coveralls --rcfile=setup.cfg --service=github
77+
run: coveralls --rcfile=pyproject.toml --service=github

.github/workflows/pip_rc_install.yml

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# This workflow will install Python dependencies and the latest RC of pysatNASA from test pypi.
2+
# This test should be manually run before a pysatNASA RC is officially approved and versioned.
3+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
4+
5+
name: Test install of latest RC from pip
6+
7+
on: [workflow_dispatch]
8+
9+
jobs:
10+
build:
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
15+
python-version: ["3.11"] # Keep this version at the highest supported Python version
16+
17+
name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
18+
runs-on: ${{ matrix.os }}
19+
steps:
20+
- uses: actions/checkout@v3
21+
- name: Set up Python ${{ matrix.python-version }}
22+
uses: actions/setup-python@v4
23+
with:
24+
python-version: ${{ matrix.python-version }}
25+
26+
- name: Install standard dependencies
27+
run: pip install -r requirements.txt
28+
29+
- name: Install pysatNASA RC
30+
run: pip install --no-deps --pre -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ pysatNASA
31+
32+
- name: Set up pysat
33+
run: |
34+
mkdir pysatData
35+
python -c "import pysat; pysat.params['data_dirs'] = 'pysatData'"
36+
37+
- name: Check that install imports correctly
38+
run: |
39+
cd ..
40+
python -c "import pysatNASA; print(pysatNASA.__version__)"

.github/workflows/pysat_rc.yml

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
1+
# This workflow will install Python dependencies and the latest RC of pysat from test pypi.
2+
# All unit tests for pysatNASA will be run using the pysat RC.
3+
# This test should be manually run before a pysat RC is officially approved and versioned.
24
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
35

46
name: Test with latest pysat RC
@@ -10,8 +12,8 @@ jobs:
1012
strategy:
1113
fail-fast: false
1214
matrix:
13-
os: [ubuntu-latest, macos-latest, windows-latest]
14-
python-version: ["3.10"]
15+
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
16+
python-version: ["3.11"] # Keep this version at the highest supported Python version
1517

1618
name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
1719
runs-on: ${{ matrix.os }}
@@ -27,14 +29,12 @@ jobs:
2729
run: brew reinstall gcc
2830

2931
- name: Install pysat RC
30-
run: |
31-
pip install -r test_requirements.txt
32-
pip install --no-deps -i https://test.pypi.org/simple/ pysat
32+
run: pip install --no-deps --pre -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ pysat
3333

3434
- name: Install standard dependencies
3535
run: |
3636
pip install -r requirements.txt
37-
pip install pysatCDF --no-binary=pysatCDF
37+
pip install -r test_requirements.txt
3838
3939
- name: Set up pysat
4040
run: |

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -70,3 +70,6 @@ custom_lint.sh
7070

7171
# IDEs
7272
.idea/
73+
74+
# vscode
75+
.vscode

.readthedocs.yml

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# .readthedocs.yml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
# Required
6+
version: 2
7+
8+
# Set the version of Python and other tools you might need
9+
build:
10+
os: ubuntu-22.04
11+
tools:
12+
python: "3.10"
13+
14+
# Build documentation in the docs/ directory with Sphinx
15+
sphinx:
16+
configuration: docs/conf.py
17+
18+
19+
# Optionally declare the Python requirements required to build your docs
20+
python:
21+
install:
22+
- requirements: docs/requirements.txt

.zenodo.json

+5
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@
2020
"name": "Smith, Jonathon",
2121
"orcid": "0000-0002-8191-4765"
2222
},
23+
{
24+
"affilitation":"University of Colorado at Boulder",
25+
"name": "Navarro, Luis",
26+
"orcid": "0000-0002-6362-6575"
27+
},
2328
{
2429
"affiliation": "Predictive Science",
2530
"name": "Pembroke, Asher"

0 commit comments

Comments
 (0)