Skip to content

Commit

Permalink
Merge pull request #84 from pysat/rc_v0.1.0
Browse files Browse the repository at this point in the history
Release Candidate v0.1.0
  • Loading branch information
aburrell authored Apr 11, 2023
2 parents 02681e2 + 17b4d45 commit cb845b8
Show file tree
Hide file tree
Showing 41 changed files with 3,611 additions and 796 deletions.
42 changes: 42 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# 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

on: [push, pull_request]

jobs:
build:

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

name: Documentation tests
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
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
- name: Set up pysat
run: |
mkdir pysatData
python -c "import pysat; pysat.params['data_dirs'] = './pysatData'"
- name: Check documentation build
run: sphinx-build -E -b html docs dist/docs

- name: Check documentation links
run: sphinx-build -b linkcheck docs dist/docs

- name: Load .zenodo.json to check for errors
run: python -c "import json; json.loads(open('.zenodo.json').read())"
62 changes: 62 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# 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

on: [push, pull_request]

jobs:
build:

strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest] # TODO(76): add windows-latest
python-version: ["3.9", "3.10"]
numpy_ver: ["latest"]
include:
- python-version: "3.8"
numpy_ver: "1.21"
os: ubuntu-latest
- python-version: "3.6.8"
numpy_ver: "1.19.5"
os: "ubuntu-20.04"

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

- name: Install standard dependencies
run: |
pip install -r test_requirements.txt
pip install -r requirements.txt;
- name: Install NEP29 dependencies
if: ${{ matrix.numpy_ver != 'latest'}}
run: |
pip install numpy==${{ matrix.numpy_ver }}
- name: Set up pysat
run: |
mkdir pysatData
python -c "import pysat; pysat.params['data_dirs'] = 'pysatData'"
- name: Test PEP8 compliance
run: flake8 . --count --select=D,E,F,H,W --show-source --statistics

- name: Evaluate complexity
run: flake8 . --count --exit-zero --max-complexity=10 --statistics

- name: Test with pytest
run: pytest -x --cov=pysatMadrigal/

- name: Publish results to coveralls
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: coveralls --rcfile=setup.cfg --service=github
45 changes: 45 additions & 0 deletions .github/workflows/pysat_rc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# 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: Test with latest pysat RC

on: [workflow_dispatch]

jobs:
build:
strategy:
fail-fast: false
matrix:
# TODO(#76): add windows tests when bugs are sorted
os: [ubuntu-latest, macos-latest]
python-version: ["3.10"]

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

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

- name: Install standard dependencies
run: |
pip install -r requirements.txt
pip install -r test_requirements.txt
- name: Set up pysat
run: |
mkdir pysatData
python -c "import pysat; pysat.params['data_dirs'] = 'pysatData'"
- name: Test with pytest
run: pytest -vs -x --cov=pysatMadrigal/

- name: Publish results to coveralls
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: coveralls --rcfile=setup.cfg --service=github
36 changes: 0 additions & 36 deletions .travis.yml

This file was deleted.

95 changes: 67 additions & 28 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,75 @@
# Change Log
Change Log
==========
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](https://semver.org/).

## [0.0.4] - 2021-06-11
- Made changes to structure to comply with updates in pysat 3.0.0
- Deprecations
- Restructed Instrument methods, moving `madrigal` to `general` and extracting
[0.1.0] - 2023-04-11
--------------------
* Enhancements
* Improved definitions of general and GNSS meta data
* Removed unused logic in cleaning routines
* Moved warning for no cleaning of JRO ISR data to preprocess
* Added a general Madrigal instrument for time-series data
* Added functions to specify all known Madrigal instrument codes and
file formats
* Adapted general listing functions to allow file formats with '*' wildcards
between '.' delimiters, required for some Madrigal file formats
* Standardized the Instrument method kwarg defaults
* Added 'site' tag to the GNSS TEC Instrument
* Added support for varied use of `two_digit_year_break` to
`methods.general.list_remote_files`
* Implemented `two_digit_year_break` support for `vtec` GNSS TEC Instrument
* Implemented directory creation function in pysat
* Documentation
* Added examples for JRO and GNSS data
* Improved the docstring and CHANGELOG style
* Testing
* Added unit tests for DMSP, general, JRO, and GNSS methods
* Added the packaging module to handle version logic
* Added quick-fail for main pytest command
* Bug
* Fixed bugs in the coordinate conversion functions
* Maintenance
* Updated GitHub action and NEP29 versions
* Updated the minimum Madrigal version to allow HDF4 downloads
* Update pysat instrument testing suite, pytest syntax
* Add manual GitHub Actions tests for pysat RC

[0.0.4] - 2021-06-11
--------------------
* Made changes to structure to comply with updates in pysat 3.0.0
* Migrated CI tests from Travis CI to GitHub Actions
* Deprecations
* Restructed Instrument methods, moving `madrigal` to `general` and extracting
local methods from the instrument modules to platform-specific method files
- Cycled testing support to cover Python 3.7-3.9
- Enhancements
- Added coords from pysat.utils
- Added Vertical TEC Instrument
- Added documentation
- Added load routine for simple formatted data
- Expanded feedback during data downloads
- Updated documentation configuration to improve maintainability
- Updated documentation style, displaying logo on sidebar in html format
- Changed zenodo author name format for better BibTeX compliance
- Updated CONTRIBUTING and README information
- Bug Fix
- Updated Madrigal methods to simplify compound data types and enable
* Cycled testing support to cover Python 3.7-3.9
* Enhancements
* Added coords from pysat.utils
* Added Vertical TEC Instrument
* Added documentation
* Added load routine for simple formatted data
* Expanded feedback during data downloads
* Updated documentation configuration to improve maintainability
* Updated documentation style, displaying logo on sidebar in html format
* Changed zenodo author name format for better BibTeX compliance
* Updated CONTRIBUTING and README information
* Bug Fix
* Updated Madrigal methods to simplify compound data types and enable
creation of netCDF4 files using `Instrument.to_netcdf4()`
- Updated load for multiple files in pandas format
- Fixed remote listing routine to return filenames instead of experiments
- Fixed bug introduced by change in xarray requiring engine kwarg
- Fixed bug that would not list multiple types of files
* Updated load for multiple files in pandas format
* Fixed remote listing routine to return filenames instead of experiments
* Fixed bug introduced by change in xarray requiring engine kwarg
* Fixed bug that would not list multiple types of files
* Updated JRO ISR drift variable names

## [0.0.3] - 2020-06-15
- pypi compatibility
[0.0.3] - 2020-06-15
--------------------
* pypi compatibility

## [0.0.2] - 2020-05-13
- zenodo link
[0.0.2] - 2020-05-13
--------------------
* zenodo link

## [0.0.1] - 2020-05-13
- Alpha release
[0.0.1] - 2020-05-13
--------------------
* Alpha release
11 changes: 3 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

# pysatMadrigal
[![Documentation Status](https://readthedocs.org/projects/pysatmadrigal/badge/?version=latest)](https://pysatmadrigal.readthedocs.io/en/latest/?badge=latest)
[![Build Status](https://travis-ci.org/pysat/pysatMadrigal.svg?branch=main)](https://travis-ci.com/pysat/pysatMadrigal)
[![Build Status](https://github.com/github/docs/actions/workflows/main.yml/badge.svg)](https://github.com/github/docs/actions/workflows/main.yml/badge.svg)
[![Coverage Status](https://coveralls.io/repos/github/pysat/pysatMadrigal/badge.svg?branch=main)](https://coveralls.io/github/pysat/pysatMadrigal?branch=main)
[![DOI](https://zenodo.org/badge/258384773.svg)](https://zenodo.org/badge/latestdoi/258384773)
[![PyPI version](https://badge.fury.io/py/pysatMadrigal.svg)](https://badge.fury.io/py/pysatMadrigal)
Expand All @@ -26,8 +26,8 @@ for the Space Physics community. This module officially supports Python 3.7+.

| Common modules | Community modules |
| -------------- | ----------------- |
| h5py | madrigalWeb |
| numpy | pysat >= 3.0.0 |
| h5py | madrigalWeb>=2.6 |
| numpy | pysat >= 3.0.3 |
| pandas | |
| xarray | |

Expand All @@ -50,11 +50,6 @@ cd pysatMadrigal/
python setup.py install
```

Note: pre-0.1.0 version
-----------------------
pysatMadrigal is currently provided as an alpha pre-release. Feedback and
contributions are appreciated.

# Examples

The instrument modules are portable and designed to be run like any pysat
Expand Down
5 changes: 3 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,8 @@
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
"""Configuration file for documentation."""

import json
import os
import sys
Expand Down Expand Up @@ -68,7 +69,7 @@
doc_dir = os.path.abspath(os.path.dirname(__file__))
with open(os.path.join(doc_dir, "..", project, "version.txt"), "r") as fin:
version = fin.read().strip()
release = '{:s}-alpha'.format(version) # Include alpha/beta/rc tags.
release = '{:s}-beta'.format(version) # Include alpha/beta/rc tags.

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
2 changes: 2 additions & 0 deletions docs/examples.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,5 @@ tools

.. toctree::
examples/ex_init.rst
examples/ex_gnss_tec.rst
examples/ex_jro_isr_beam.rst
Loading

0 comments on commit cb845b8

Please sign in to comment.