Skip to content

Commit

Permalink
Merge pull request pysat#1162 from pysat/rc_3_2_0
Browse files Browse the repository at this point in the history
Release Candidate 3.2.0
  • Loading branch information
jklenzing authored Mar 27, 2024
2 parents d8adb05 + 474ccf9 commit 7bd8a23
Show file tree
Hide file tree
Showing 99 changed files with 3,942 additions and 5,043 deletions.
26 changes: 13 additions & 13 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,29 @@
---
name: Bug report
about: Create a report to help us improve
labels: bug
title: "BUG: "

---

**Describe the bug**
A clear and concise description of what the bug is.
# Description
A clear and concise description of what the bug is, including a description
of what you expected the outcome to be.

**To Reproduce**
# To Reproduce this bug:
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.
Consider including images or test files to help others reproduce the bug and
solve the problem.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Version [e.g. 22]
## Test configuration
- OS: [e.g., Hal]
- Version [e.g., Python 3.47]
- Other details about your setup that could be relevant

**Additional context**
Add any other context about the problem here.
# Additional context
Add any other context about the problem here, including expected behaviour.
24 changes: 17 additions & 7 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,27 @@
---
name: Feature request
about: Suggest an idea for this project
title: "ENH: "
labels: enhancement

---

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

**Describe the solution you'd like**
## Potential impact

- Is the feature related to an existing problem?
- How critical is this feature to your workflow?
- How wide of an impact to you anticipate this enhancement having?
- Would this break any existing functionality?

## Potential solution(s)
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
# Alternatives
A clear description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
# Additional context
Add any other context or screenshots about the feature request here, potentially
including your operational configuration.
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Question
about: A question about this project
title: "QUEST: "
labels: question

---

# Description
A clear and concise summary of your query

## Example code (optional)
If relevant, include sample code, images, or files so that others can understand
the full context of your question.

## Configuration
- OS: [e.g., Hal]
- Version: [e.g., Python 3.47]
- Other details about your setup that could be relevant
14 changes: 10 additions & 4 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Description

Addresses # (issue)
Addresses #(issue)

Please include a summary of the change and which issue is fixed. Please also
include relevant motivation and context. List any dependencies that are required
Expand All @@ -23,7 +23,10 @@ instructions so we can reproduce. Please also list any relevant details for
your test configuration

- Test A
- Test B

```
Test B
```

**Test Configuration**:
* Operating system: Hal
Expand All @@ -35,13 +38,16 @@ your test configuration
- [ ] Make sure you are merging into the ``develop`` (not ``main``) branch
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have linted the files updated in this pull request
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream modules
- [ ] Add a note to ``CHANGELOG.md``, summarizing the changes
- [ ] Update zenodo.json file for new code contributors

If this is a release PR, replace the first item of the above checklist with the release
checklist on the wiki: https://github.com/pysat/pysat/wiki/Checklist-for-Release
If this is a release PR, replace the first item of the above checklist with the
release checklist on the wiki:
https://github.com/pysat/pysat/wiki/Checklist-for-Release
18 changes: 8 additions & 10 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
# This workflow will install Python dependencies, run tests and lint with a
# variety of Python versions. For more information see:
# https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Documentation Check

Expand All @@ -8,25 +9,22 @@ on: [push, pull_request]
jobs:
build:

runs-on: ubuntu-latest
runs-on: ["ubuntu-latest"]
strategy:
fail-fast: false
matrix:
python-version: [3.9]
python-version: ["3.10"]

name: Documentation tests
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r test_requirements.txt
pip install -r requirements.txt
run: pip install .[doc]

- name: Set up pysat
run: |
Expand Down
61 changes: 42 additions & 19 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
# This workflow will install Python dependencies, run tests and lint with a
# variety of Python versions. For more information see:
# https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Pytest with Flake8

Expand All @@ -10,39 +11,48 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
python-version: ["3.9", "3.10"]
os: ["ubuntu-latest", "windows-latest", "macos-latest"]
python-version: ["3.10", "3.11", "3.12"]
numpy_ver: ["latest"]
test_config: ["latest"]
include:
- python-version: "3.8"
numpy_ver: "1.20"
# NEP29 compliance settings
- python-version: "3.9"
numpy_ver: "1.23"
os: ubuntu-latest
test_config: "NEP29"
# Operational compliance settings
- python-version: "3.6.8"
numpy_ver: "1.19.5"
os: "ubuntu-20.04"
test_config: "Ops"

name: Python ${{ matrix.python-version }} on ${{ matrix.os }} with numpy ${{ matrix.numpy_ver }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install NEP29/Operational dependencies
if: ${{ matrix.numpy_ver != 'latest'}}
- name: Install Operational dependencies
if: ${{ matrix.test_config == 'Ops'}}
run: |
pip install --no-binary :numpy: numpy==${{ matrix.numpy_ver }}
pip install numpy==${{ matrix.numpy_ver }}
pip install -r requirements.txt
pip install -r test_requirements.txt
pip install .
- name: Install standard dependencies and pysat
- name: Install NEP29 dependencies
if: ${{ matrix.test_config == 'NEP29'}}
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
python setup.py install
pip install numpy==${{ matrix.numpy_ver }}
pip install --upgrade-strategy only-if-needed .[test]
- name: Install requirements for testing setup
run: pip install -r test_requirements.txt
- name: Install standard dependencies
if: ${{ matrix.test_config == 'latest'}}
run: pip install .[test]

- name: Set up pysat
run: |
Expand All @@ -56,9 +66,22 @@ jobs:
run: flake8 . --count --exit-zero --max-complexity=10 --statistics

- name: Test with pytest
run: pytest --cov=pysat/
run: pytest

- name: Publish results to coveralls
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: coveralls --rcfile=setup.cfg --service=github
COVERALLS_PARALLEL: true
run: coveralls --rcfile=pyproject.toml --service=github

finish:
name: Finish Coverage Analysis
needs: build
runs-on: ubuntu-latest
steps:
- name: Coveralls Finished
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
pip install --upgrade coveralls
coveralls --service=github --finish
41 changes: 41 additions & 0 deletions .github/workflows/pip_rc_install.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# This workflow will install Python dependencies and the latest RC of pysat from
# test pypi. This test should be manually run before a pysat RC is officially
# approved and versioned. For more information see:
# https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Test install of latest RC from pip

on: [workflow_dispatch]

jobs:
build:
strategy:
fail-fast: false
matrix:
os: ["ubuntu-latest", "macos-latest", "windows-latest"]
python-version: ["3.11"] # Keep this version at the highest supported Python version

name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install standard dependencies
run: pip install -r requirements.txt

- name: Install pysat RC
run: pip install --no-deps --pre -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ pysat

- name: Set up pysat
run: |
mkdir pysatData
python -c "import pysat; pysat.params['data_dirs'] = 'pysatData'"
- name: Check that install imports correctly
run: |
cd ..
python -c "import pysat; print(pysat.__version__)"
18 changes: 8 additions & 10 deletions .github/workflows/stats.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
# This workflow will install Python dependencies, run tests and lint with a
# variety of Python versions. For more information see:
# https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Statistics of supported instruments

Expand All @@ -9,26 +10,23 @@ on:
jobs:
build:

runs-on: ubuntu-latest
runs-on: ["ubuntu-latest"]
strategy:
fail-fast: false
matrix:
python-version: ["3.9"]
python-version: ["3.11"]

name: Summary of instrument libraries
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
pip install -r requirements.txt
# Need to install pysat before ecosystem
python setup.py install
pip install -r test_requirements.txt
pip install .[test]
pip install `awk '{print $1}' ecosystem.txt`
- name: Set up pysat
Expand Down
28 changes: 13 additions & 15 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,20 @@
# Required
version: 2

build:
os: ubuntu-22.04
tools:
python: "3.10"

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/conf.py

# Build documentation with MkDocs
#mkdocs:
# configuration: mkdocs.yml
configuration: docs/conf.py

# Optionally build your docs in additional formats such as PDF
formats:
- pdf

# Optionally set the version of Python and requirements
# required to build your docs
# Declare the Python requirements required to build your docs
# This method includes a local build of the package
python:
version: 3.7
install:
- requirements: docs/requirements.txt

install:
- method: pip
path: .
extra_requirements:
- doc
Loading

0 comments on commit 7bd8a23

Please sign in to comment.