Skip to content

Releases: ConorMacBride/mcalf

MCALF v1.0.0

28 Mar 22:20
8f2a3df
Compare
Choose a tag to compare

Breaking changes

  • Change default Voigt implementation to voigt_faddeeva by @ConorMacBride in #52
    To restore the old behaviour, pass impl=mcalf.profiles.voigt.voigt_integrate to any of the following classes or functions when you use them:
    • mcalf.models.IBIS8542Model (after initialisation it will remember which to use for fitting and plotting)
    • mcalf.visualisation.plot_ibis8542
    • mcalf.profiles.voigt.voigt_nobg
    • mcalf.profiles.voigt.voigt
    • mcalf.profiles.voigt.double_voigt_nobg
    • mcalf.profiles.voigt.double_voigt

New features

Documentation

Testing/CI

Full Changelog: v0.3.0...v1.0.0

MCALF v0.3.0

24 Dec 17:23
v0.3.0
2443a06
Compare
Choose a tag to compare

New features

  • Support for Python 3.9 added, with Python 3.6 dropped as well as other dependency version changes. (#42)
  • Stationary line core wavelength is recorded in FITS files from mcalf.models.FitResults.save. (#47)
  • MCALF version string is included in mcalf.models.FitResults.save files as a VERSION header in the primary HDU. (#37)
  • Add MCALF version info string at mcalf.version.version, using generated _version.py, or setuptools_scm for dev installs. (#37)
  • Added classes for managing collections of variable parameters. (#38)

Refactors

  • Migrate from deprecated Distutils to Setuptools. (#48)

Documentation

  • Include default parameter values in model signatures using features introduced in #38. (#41)
  • Add JOSS citation to README and documentation. (#36)

Testing/CI

  • Added support for skipping Azure Pipelines runs if a command such as [skip ci] is included in the commit message. (#43)
  • Remove pinned docs dependency versions. (#45)
  • Configured a new tox environment codestyle that runs flake8 and isort to check the code style during an Azure Pipelines run. (#46)

Full Changelog: v0.2.1...v0.3.0

MCALF v0.2.1

17 May 16:10
v0.2.1
5f7e6e7
Compare
Choose a tag to compare

New features

  • Added random_state parameter to mcalf.models.IBIS8542Model, which is passed to the sklearn.neural_network.MLPClassifier during initialisation of the default mcalf.models.IBIS8542Model.neural_network attribute. This aids reproducibility. Default is random_state=None, so same default behaviour as previous versions of MCALF. (#33)

Documentation

  • Added example Working with IBIS data to Example Gallery, using a real IBIS spectral imaging dataset. A neural network training dataset based on this IBIS dataset is included to demonstrate the classifying capabilities. Pre-computed results for the example are also included. (#31,#32,#34)
  • Updated LabellingTutorial.ipynb example to run as-is with the real IBIS spectral imaging dataset. (#31,#32)
  • Added example Using IBIS8542Model to Example Gallery, using randomly generated data as sample data. (#27)
  • Added JOSS paper to /paper/, and updated .zenodo.json to match paper title. (#28,#30)

MCALF v0.2.0

14 Apr 22:48
v0.2.0
741b881
Compare
Choose a tag to compare

New features

  • Redesigned all of the plotting functions in mcalf.visualisation to be more general and integrate better with matplotlib
  • Added mcalf.utils.plot module with lots of new functions
  • Added function mcalf.utils.misc.merge_results to merge multiple files exported by mcalf.models.FitResults.save

Refactors

  • In mcalf.models, refactored mcalf.models.ModelBase and mcalf.models.IBIS8542Model to make the base model more general and the IBIS model more specific
  • In mcalf.models, improved handling of default parameters between a model and its parent classes
  • In mcalf.models, moved all classes and functions from submodules into mcalf.models
  • In mcalf.models, deprecated the inclusion of a prefilter when initialising the model in favor of processing outside of the package, however, the existing functionality remains but a warning is given
  • Moved functions in mcalf.profiles to separate mcalf.profiles.voigt and mcalf.profiles.gaussian modules
  • Removed unused, undocumented and untested skew normal functions from mcalf.profiles
  • Moved functions in mcalf.utils to separate submodules
  • Merged all submodules of mcalf.visualisation

Documentation

  • Docstrings are made more consistent, typos are corrected and more examples are added
  • Integrated sphinx-gallery package into documentation
  • Added examples to the example gallery for all functions in mcalf.visualisation
  • Added detailed documentation on running tests on the code
  • Added citation for new paper (doi:10.1098/rsta.2020.0171)
  • In mcalf.models, generated docstrings from replacement strings to improve consistency
  • In mcalf.profiles.voigt, generated docstrings from replacement strings to improve consistency
  • Added intersphinx mappings to other packages' documentation
  • Included private members of mcalf.models.ModelBase in subclasses (astropy/sphinx-automodapi#121)
  • Automatically update the year in documentation

Testing/CI

  • Increased test coverage throughout the package
  • Using pytest-mpl to verify matplotlib figures produced during tests
  • Migrated testing from Travis CI to Azure Pipelines
  • Moved tests from the package root to mcalf.tests inside the package source directory to enable testing wheels
  • Moved details from setup.py to setup.cfg
  • Moved testing and documentation dependencies to separate extra requirements sections
  • Added custom configuration settings for pytest, coverage and tox
  • Using setuptools_scm to keep track of package version number and files
  • Force mcalf.models.voigt to not use the C library if running on readthedocs as they do not support building C extensions

MCALF v0.1.1

09 Nov 22:23
v0.1.1
01108b6
Compare
Choose a tag to compare
  • Added documentation
  • Added tests and code coverage checking
  • Added support for Windows
  • Added ability to export results to FITS files
  • Various minor bug fixes and code improvements
  • Migrated from deploying to PyPI using Travis CI to Azure Pipelines such that wheels can be more easily built
  • MCALF will be available on conda-forge

MCALF v0.1

30 Jun 19:00
v0.1
87f754c
Compare
Choose a tag to compare

This is the first release of MCALF