Skip to content

Latest commit

 

History

History
278 lines (171 loc) · 7.98 KB

CHANGELOG.md

File metadata and controls

278 lines (171 loc) · 7.98 KB

Changelog

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.

[0.14.2] - 2023-08-04

Added

  • Much more automation via CI/CD.
  • Build and deploy documentation to server after publishing new releases to PyPi.
  • Added version verifying script to ensure version strings in the pyproject.toml and change log match the tag ref name.

Fixed

  • Fixed changing an Angles sub-angle via the setitem() method not recomputing the internal rotation matrix.

[0.14.1] - 2023-08-02

Added

  • Workflows to automatically build and distrubute releases and packages for use. This has no effect on the public API.

0.14.0 - 2023-07-31

Changed

  • The alpha, beta, and gamma attributes of the Angles type are now properties of the class. This allows angles attributes of ReferenceFrame objects to call back to the owner and update the internal rotation matrix.
  • The angles attribute is now copied when constructing ReferenceFrames. The angles object was stored as a reference before, which meant changing an angles attribute changed the attribute for all ReferenceFrame objects that were constructed with that Angles instance. Due to an implementation detail this is no longer possible.

Removed

  • Removed the alpha, beta, and gamma attributes of ReferenceFrame objects. These attributes were used to change the underlying matrix of the ReferenceFrame object, which is now handled by via a callback mechanism in the Angles class.
  • Tests and examples packages are no longer distributed with pyevspace. They can still be found in the source repository.

Fixed

  • Improved docstring format for prettier printing while using the help command.

0.13.1 - 2023-07-24

Security

  • Upgraded Pygments to 2.15.1 due to ReDoS vulnerability.
  • Upgraded requests to 2.31.0 due to potentially leaking Proxy-Authorization headers.

0.13.0 - 2023-07-24

Added

  • This change log file.

Changed

  • Changed prior version number, so the project now adheres to semantic versioning.

Note for versions prior to 0.13.0:

Prior to version 0.13.0 this project did not adhere strictly to semantic versioning. While all versions are < 1.0.0, they do follow the rule that the api is not stable and can change at any time, however the numbering scheme used an incorrect formatting. A leading zero ('0.') was used and was meant to signify the alpha nature of the project. This of course was not needed, and should not have been used. From version 0.13.0 and on, all previous versions will be refered to without the leading zero, with the exception of the versions found on pypi (or using pip), and the version numbers used in git commit messages. Moving forward these versions should not need to be referenced too often, and upon stable release will be removed from pip and git releases.

0.12.5 - 2023-01-25

Added

  • Source code is compliant back to python 3.8.
  • Now use tox to test against all compatible python versions.
  • Added a Github workflow to test every commit pushed to repo.

Fixed

  • Fixed typo in Py_UNUSED macro that prevented successful build on Linux environment.
  • Improved efficiency for offset rotation functions.

0.12.4 - 2023-01-10

Added

  • Added to documentation.

Fixed

  • Reduced long names in source for readability.
  • Fixed ReferenceFrame method signatures to take EVSpace_ReferenceFrame* instead of EVSpace_Matrix* type.

Removed

  • Removed Rotation type from the c-api capsule.

0.12.3 - 2023-01-08

Fixed

  • Replaced matrix transpose with left-hand vector/matrix multiplication for efficiency increases.

0.12.2 - 2023-01-08

Added

  • Added left-hand vector multiplication of matrices.

0.12.1 - 2023-01-08

Fixed

  • Set project descriptions for pypi based on module docstring and readme.

0.12.0 - 2023-01-08

Added

  • Readme now links to documentation.
  • Added rotation functionality with Euler angle and axis order types.
  • Added functions for generating matrices, rotating vectors and automating the rotation process for you.

Changed

  • Changed EVector and EMatrix data type names to Vector and Matrix respectively.
  • Changed to Rotation object to ReferenceFrame type.

Fixed

  • Function docstrings now properly show signatures.

0.11.2 - 2022-12-06

Added

  • Documentation and buld info with Sphinx.

0.11.1 - 2022-11-27

Changed

  • Made short description a single line.

0.11.0 - 2022-11-27

Changed

  • Added/updated readme and loading readme as doc for package.

0.10.4 - 2022-11-27

Added

  • Buffer protocol for Vector and Matrix types.

0.10.3 - 2022-11-26

Added

  • Efficiency improvments in methods constructing new Vector types (via move semantics).

0.10.1 - 2022-11-26

Fixed

  • Fixed str() and repr() raising exceptions due to C-string buffer overflows.

0.10.0 - 2022-11-17

Fixed

  • Fixed inability for vectors that are extremely close to equate to True.

0.9.0 - 2022-11-16

Added

  • Added empty constructor for EVector.
  • Added dot(), cross(), norm(), vang(), and vcxl() as module methods.
  • Test and example modules within pyevspace package.
  • Added elementary vectors and matrix.
  • Added reduce() methods for pickling and copying using native modules.

Changed

  • Completely reorganized internal source structure.
  • Rewrote tests and examples.

0.8.0 - 2022-08-29

Changed

  • Moved test files out of src directory.
  • Cleaned up example files.
  • Cleaned up setup.py.

0.7.0 - 2022-08-28

Fixed

  • Graft include directory with MANIFEST.in while uploading to pypi.

0.6.0 -

0.5.0 -

0.4.0 - 2022-07-23

Added

  • Updated readme to reflect recent additions.

0.3.0 - 2022-07-23

Added

  • Added initialization of EMatrix types with sequences.
  • Added class methods for returning copies of instances.

Changed

  • vang() function return units now return radians instead of degrees.

0.2.0 - 2022-05-04

Added

  • Added to readme.

Fixed

  • Fixed poor grammer in docstrings.

0.1.0 - 2022-05-04

Initial version of project.