PlasmaPy v0.5.0 (2020-12-09)
This release of PlasmaPy contains 58 commits in 31 merged pull requests closing 16 issues from 8 people, 4 of which are first-time contributors to PlasmaPy.
The people who have contributed to the code for this release are:
Dominik Stańczak
Nick Murphy
Peter Heuer
Ramiz Qudsi *
Steve Richardson *
Tiger D *
Cody Skinner *
rocco8773
Where a * indicates their first contribution to PlasmaPy.
Backwards Incompatible Changes
Created
plasmapy.dispersion
in accordance with PlasmaPy Enhancement Proposal 7 (PLEP 7) and migrated the dispersion functionality (dispersionfunction.py
) fromplasmapy.formulary
toplasmapy.dispersion
. (#910)Removed default values for the
ion
andparticle
arguments of functions contained inplasmapy.formulary.parameters
, in accordance with #453, and updated all relevant calls to modified functionality. (#911)Moved test helper exceptions from
plasmapy.utils.pytest_helpers
toplasmapy.tests.helpers
. (#919)Updated
plasmapy.formulary.parameters.mass_density
so it calculates the mass density for a specific particle from a given number density. Original function calculated the total mass density (ion + electron). (#957)
Features
Added a function to calculate the power spectrum of thermal bremsstrahlung emitted by a Maxwellian plasma. (#892)
Added support for multiple electron components to diagnostics.thomson.spectral_density. Also fixed a bug for multiple ion populations. (#893)
Added dependency
pygments >= 2.4.1
. (#898)Created the
plasmapy.analysis
package as per PLEP 7 and initialize the package with thefit_functions
module. Fit functions are designed to wrap together an analytical function, a curve fitter, uncertainty propagation, and a root solver to make curve fitting a little less painful. (#908)Created a new subpackage,
plasmapy.tests.helpers
, to contain test helper functionality. (#919)Created decorator
modify_docstring
, which allows for programmatically prepending and/or appending a docstring. (#943)
Bug Fixes
Allowed implicit conversions of AstroPy units in inputs and outputs of validated functions to happen without warnings. Most notably, this removes warnings on eV inputs to temperature fields. (#886)
Updated
plasmapy.formulary.parameters.Alfven_speed
to properly use the updatedplasmapy.formulary.parameters.mass_density
and maintain the same behavior. Also added handling of theion
input keyword, soParticle
and theParticle
convertible representations can be used as inputs. (#957)
Improved Documentation
Improved the release guide after the release of 0.4.0. (#872)
- Added various improvements to the documentation.
Replaced home link with the plasmapy logo.
Added module and index navigation links to sidebar header.
Replaced raw html on the main page that simulates a
nbgallery
with a realnbgallery
directive.Moved link to view page source code from the header to footer.
Added link to footer the jumps the user back to the top of the page.
Created and added custom CSS stylesheet.
Created
_templates
directory and templates to customize page elements. (#875)
Added static stub files to
docs/api_static
so all modules ofplasmapy
are indexed. This is necessary to expose all ofplasmapy
since not all modules are indexed in the narrative documentation. (#878)Decomposed sub-package
plasmapy/utils/roman/
into theplasmapy/utils/roman.py
file. Moveed definition ofroman
specific exceptions intoplasmapy.utils.exceptions
. (#883)Replaced references to
Riot.im
with references toElement.io
or Matrix, as appropriate, following their recent rebranding. (#891)Updated the information on how to cite PlasmaPy, including in the release guide. (#900)
Trivial/Internal Changes
Applied isort to entire codebase, bringing it back to the pre-commit hook suite. (#857)
Expanded package metadata contained in
codemeta.json
, following the CodeMeta standard. (#902)Changed remaining instances of @u.quantity_input to @validate_quantities in response to issue #880. (#905)
Switched from Azure Pipelines to GitHub Actions for PR tests to make things easier for contributors. Moved away from Travis CI for test cron jobs. (#952)