Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

[2.0.0] - 12-FEB-2023

Added

  • Builds for Python 3.11

Changed

  • Switched to using pdm for dependency and build management

Fixed

  • Support pint >=0.20 by updating a few imports

Removed

  • The GitHub Actions docs job, which now runs directly on readthedocs for each PR

[1.4.0] - 11-FEB-2023

Changed

  • Capped the version of pint. We don’t support 0.20 with this version due to a missing module.

1.3.0 - 14-MAR-2022

Added

  • Plots!

  • Python 3.10 support

  • Default units can now be specified for State instances

Changed

  • Python >= 3.9 requires CoolProp from their source repository

1.2.1 - 21-JUL-2020

Changed

  • Allow Pint up to 1.0, they seem to be pretty stable between minor version releases

Fixed

  • Typo in pythonpackage.yml

1.2.0 - 14-JUL-2020

Added

  • Build CoolProp from the master branch to avoid any regressions

  • Cache the built CoolProp wheel, based on the CoolProp master commit hash

Changed

  • CoolProp 6.4.0 was released which supports Python 3.8 with their built wheels. Move the tests for Python 3.8 to the main test build.

  • The default branch is now called main.

Fixed

  • Bump the MACOSX_DEPLOYMENT_TARGET for GitHub Actions, seems like they moved to 10.14

  • Bump Pint version in the Conda recipe

  • Add Matplotlib as a dependency in the Conda recipe

1.1.0 - 12-APR-2020

Added

  • Build CoolProp and run the tests on Python 3.8

  • Set up the Matplotlib functionality built into Pint. This bumps the minimum Pint version to 0.9 and adds Matplotlib as a dependency

Changed

  • Updated documentation links in README and conda recipe to ReadTheDocs

Fixed

  • The Rankine cycle example had a dimensionality error due to better NumPy support in Pint. Fixes #24.

1.0.0 - 03-MAR-2020

Added

  • Switch to ReadTheDocs for documentation website

  • Use setup.cfg and pyproject.toml for PEP 517 compliance

Changed

  • Switch to src directory source layout

  • Move tests outside of the package

  • Apply Black formatter to tests

  • Use tox to test against multiple Python versions

  • Use GitHub Actions for CI services

  • Run Black formatter on abbreviations.py and _version.py

  • License year in LICENSE.md. Happy New Year :tada:

Fixed

  • README.md and CHANGELOG.md are now included in the sdist

  • hx and xh are added to the disallowed property pairs because they raise ValueErrors in CoolProp

  • Missing docstrings from some functions in thermostate.py

0.5.3 - 04-MAR-2019

Added

  • Check if temperature, pressure, and specific volume are positive (in absolute units)

  • Check if the quality is between 0 and 1

Changed

  • Bump maximum allowed version of Pint

0.5.2 - 01-FEB-2019

Added

  • Install conda-verify on Travis when building tags to fix a warning from conda-build

Changed

  • Formatted thermostate.py with the Black formatter

Fixed

  • Broken link in CONTRIBUTING.md to LICENSE.md

  • Installation instructions for CoolProp updated for Python 3.7

  • Equality checking for States now considers the substance [#17]. Resolves #16 (Thanks @egurra!)

0.5.1 - 05-JAN-2019

Added

  • JOSE badge to README

Changed

  • Allow version 6.2.* of CoolProp

  • Install CoolProp package for Python 3.7 from conda

Fixed

  • License year in LICENSE.md. Happy new year! :tada:

0.5.0 - 23-OCT-2018

Added

  • Add JOSE paper

  • Add installation, documentation, code of conduct, and contributing links to README

  • Document the classes in the abbreviations module

  • Example of a cascade refrigeration cycle using EE units

  • Test on Python 3.7 using the nightly version of CoolProp

Changed

  • Use the generic Python 3 for the intersphinx config rather than version specific

Fixed

  • Fix numpy and matplotlib need to be installed on Travis to build the docs

  • Fix typo in code of conduct

Removed

  • Don’t load the Sphinx coverage extensions

0.4.2 - 21-SEP-2018

Fixed

  • Travis PyPI password

0.4.1 - 21-SEP-2018

Added

  • Add codemeta.json

Fixed

  • Fix builds in .travis.yml

  • Can’t use Python 3.6 type hinting with Python 3.5

0.4.0 - 21-SEP-2018

Added

  • _render_traceback_ function added to StateError to improve formatting of the traceback in IPython and Jupyter

  • Add several examples demonstrating the use of ThermoState

Changed

  • Bump intersphinx mapping to Python 3.7

  • Change docs license to CC-BY 4.0

Fixed

  • Ignore more pytest files

0.3.0 - 09-JUL-2018

Fixed

  • Added flake8 configuration to setup.cfg since linter-flake8 reads it and ignores built-in options

  • Only define _render_traceback_ if IPython is installed

0.2.4 - 08-JUL-2018

Added

  • Added _render_traceback_ function to improve traceback formatting of pint.DimensionalityError

Fixed

  • Added oxygen, nitrogen, and carbondioxide as available substances to the Tutorial

0.2.3 - 24-SEP-2017

Added

  • Distributions are now uploaded to PyPI

Changed

  • Conda packages are noarch builds

  • Appveyor tests run in a single job to speed them up

  • Minimum Python version is 3.5

0.2.2 - 13-APR-2017

Added

  • Oxygen (O2) is available as a substance

  • Nitrogen (N2) is available as a substance

Fixed

0.2.1

Added

  • Carbon dioxide is available as a substance

  • The software version is available as the module-level __version__ attribute

0.2.0

Added

  • Equality comparison of State instances

Changed

  • Improve several error messages

  • Refactor property getting/setting to use less boilerplate code

  • Preface all class attributes with _

  • Refactor _set_properties to use CoolProp low-level API

0.1.7

Added

  • Phase as a gettable attribute of the State

  • Isobutane is an available substance

  • Add cp and cv to Tutorial

Changed

  • Updated Tutorial with more detail of setting properties

  • Fail Travis when a single command fails

0.1.6

Added

  • Tutorial in the docs using nbsphinx for formatting

  • Specific heat capacities at constant pressure and volume are now accessible via cp and cv attributes

Changed

  • Offset units are automatically converted to base units in Pint

0.1.5

Changed

  • Unknown property pairs are no longer allowed to be set

0.1.4

Fixed

  • Rename units module to abbreviations so it no longer shadows units registry in thermostate

0.1.3

Added

  • Common unit abbreviations in thermostate.EnglishEngineering and thermostate.SystemInternational

Fixed

  • Typo in CHANGELOG.md

0.1.2

Fixed

  • Fix Anaconda.org upload keys

0.1.1

Fixed

  • Only load pytest-runner if tests are being run

0.1.0

Added

  • First Release