* Wed Aug 23 2017 firstname.lastname@example.org
- Implement single-spec version
- Update to version 0.8.1
* Add support for datetime math. (Issue #510, thanks robertd)
* Fixed _repr_html_ in Python 2.7. (Issue #512)
* Implemented BaseRegistry.auto_reduce_dimensions. (Issue #500, thanks robertd)
* Fixed dimension compatibility bug introduced on Registry refactoring (Issue #523, thanks dalito)
- Update to version 0.8
* Refactored the Registry in multiple classes for better separation of concerns and clarity.
* Implemented support for defining multiple units per define call (one definition per line). (Issue #462)
* In pow and ipow, allow array exponents (with len > 1) when base is dimensionless. (Issue #483)
* Wraps now gets the canonical name of the unit when passed as string. (Issue #468)
* NumPy exp and log keeps the type (Issue #95)
* Implemented a function decorator to ensure that a context is active (with_context) (Issue #465)
* Add warning when a System contains an unknown Group. (Issue #472)
* Add conda-forge installation snippet. (Issue #485, thanks stadelmanma)
* Properly support floor division and modulo. (Issue #474, thanks tecki)
* Measurement Correlated variable fix. (Issue #463, thanks tadhgmister)
* Implement degree sign handling. (Issue #449, thanks iamthad)
* Change UndefinedUnitError to inherit from AttributeError (Issue #480, thanks jhidding)
* Simplified travis for faster testing.
* Fixed order units in siunitx formatting. (Issue #441)
* Changed Systems lister to return a list instead of frozenset. (Issue #425, thanks GloriaVictis)
* Fixed issue with negative values in to_compact() method. (Issue #443, thanks nowox)
* Improved defintions. (Issues #448, thanks gdonval)
* Improved Parser to support capital ?E? on scientific notation. (Issue #390, thanks javenoneal)
* Make sure that prefixed units are defined on the registry when unplicking. (Issue #405)
* Automatic unit names translation through babel. (Issue #338, thanks alexbodn)
* Support pickling Unit objects. (Issue #349)
* Add support for wavenumber/kayser in spectroscopy context. (Issue #321, thanks gerritholl)
* Improved formatting. (thanks endolith and others)
* Add support for inline comments in definitions file. (Issue #366)
* Implement Unit.__deepcopy__. (Issue #357, thanks noahl)
* Allow changing shape for Quantities with numpy arrays. (Issue #344, thanks tecki)
* Fri Jun 03 2016 email@example.com
- update to 0.7.2:
- Fixed backward incompatibility problem when parsing dimensionless units.
- Use NIST as source for most of the unit information.
- Added message to assertQuantityEqual.
- Added detection of circular dependencies in definitions.
- Added Systems and groups.
- Implemented references for wraps decorator.
- Added check decorator to UnitRegistry.
- Added compact conversion.
- Added compact formating code.
- New Unit Class.
- Refactor UnitRegistry.
- Move definitions, errors, and converters into their own modules.
- UnitsContainer is now immutable
- New parser and evaluator.
- Added support for Unicode identifiers.
- Added m_as as way top retrieve the magnitude in different units.
- Added Short form for magnitude and units.
- Improved deepcopy.
- Improved testing infrastructure.
- Improved docs.
- Fixed short names on electron_volt and hartree.
- Fixed definitions of scruple and drachm.
- Fixed troy ounce to 480 'grains'.
- Added 'quad' as a unit of energy (= 10**15 Btu).
- Added "hectare" as a supported unit of area and 'ha' as the symbol for hectare.
- Added peak sun hour and Langley.
- Added photometric units: lumen & lux.
- A fraction magnitude quantity is conserved
- Improved conversion performance by removing unnecessart try/except.
- Added to_tuple and from_tuple to facilitate serialization.
- Fixed support for NumPy 1.10 due to a change in the Default casting rule
- Infrastructure: Added doctesting.
- Infrastructure: Better way to specify exclude matrix in travis.
- Use gzip tarball instead of zip
* Tue Nov 11 2014 firstname.lastname@example.org
- Update to 0.6
- Fix operations with measurments and user defined units. (Issue #204)
- Faster conversions through caching and other performance improvements. (Issue #193, thanks MatthieuDartiailh)
- Better error messages on Quantity.__setitem__. (Issue #191)
- Fixed abbreviation of fluid_ounce. (Issue #187, thanks hsoft)
- Defined Angstrom symbol. (Issue #181, thanks JonasOlson)
- Removed fetching version from git repo as it triggers XCode installation on OSX. (Issue #178, thanks deanishe)
- Improved context documentation. (Issue #176 and 179, thanks rsking84)
- Added Chemistry context. (Issue #179, thanks rsking84)
- Fix help(UnitRegisty) (Issue #168)
- Optimized "get_dimensionality" and "get_base_name". (Issue #166 and #167, thanks jbmohler)
- Renamed ureg.parse_units parameter "to_delta" to "as_delta" to make clear. that no conversion happens. Accordingly, the parameter/property "default_to_delta" of UnitRegistry was renamed to "default_as_delta". (Issue #158, thanks dalit)
- Fixed problem when adding two uncertainties. (thanks dalito)
- Full support for Offset units (e.g. temperature) (Issue #88, #143, #147 and #161, thanks dalito)
* Mon Jul 07 2014 email@example.com
- Update to 0.5.1
- Implemented a standard way to change the registry used in unpickling operations. (Issue #148)
- Fix bug where conversion would fail due to caching. (Issue #140, thanks jdreaver)
- Allow assigning Not a Number to a quantity array. (Issue #127)
- Decoupled Quantity in place and not in place unit conversion methods.
- Return None in functions that modify quantities in place.
- Improved testing infrastructure to check for unwanted warnings.
- Added test function at the package level to run all tests.
* Thu May 08 2014 firstname.lastname@example.org
- Update to 0.5.0
- Improved test suite helper functions.
- Print honors default format w/o format().
- Fixed sum() by treating number zero as a special case.
- Improved behaviour in ScaleConverter, OffsetConverter
- Reimplemented loading of default definitions to allow Pint in
a cx_freeze or similar package.
- Implemented parsing of pretty printed units.
- Fixed representation of dimensionless quantities.
- Raise error when invalid formatting code is given.
- Default registry to lazy load, raise error on redefinition.
- Added condensed format.
- Added UnitRegistry () operator to parse
expression replacing .
- Optional case insensitive unit parsing.
- Change the Quantity mutability depending on magnitude type.
- Implemented API to list compatible units.
- Implemented cache of key UnitRegistry methods.
- Rewrote the Measurement class to use uncertainties.
* Thu Mar 27 2014 email@example.com
- Update to 0.4.2
- Python 2.6 support
- Fixed symbol for inch.
- Stop raising AttributeError when wrapping funcs without all of the attributes.
- Fixed warning appearing in Py2.x when comparing a Numpy Array with an empty string.
- Add links to AUR packages in docs.
- Fixed garbage collection related problem.
* Tue Feb 04 2014 firstname.lastname@example.org
- Initial version (0.4.1)
* Fri May 15 2020 Tomá? Chvátal <email@example.com>
- Package requires pytest 4.x or newer
* Mon Apr 20 2020 Tomá? Chvátal <firstname.lastname@example.org>
- Remove py2 dep as the package is marked as python3 only
* Thu Jan 30 2020 Todd R <email@example.com>
- Update to 0.10.1
* Fixed bug introduced in 0.10 that prevented creation of size-zero Quantities
from NumPy arrays by multiplication.
* Fixed several Sphinx issues. Fixed intersphinx hooks to all classes missing.
* Fixed __array__ signature to match numpy docs
- Update to 0.10
* **BREAKING CHANGE**:
Boolean value of Quantities with offsets units is ambiguous, and so, now a ValueError
is raised when attempting to cast such a Quantity to boolean.
* **BREAKING CHANGE**:
`__array_ufunc__` has been implemented on `pint.Unit` to permit
multiplication/division by units on the right of ufunc-reliant array types (like
Sparse) with proper respect for the type casting hierarchy. However, until an
upstream issue with NumPy is resolved,
this breaks creation of Masked Array Quantities by multiplication on the right.
* Documentation on Pint's array type compatibility has been added to the NumPy support
page, including a graph of the duck array type casting hierarchy as understood by Pint
for N-dimensional arrays.
* Improved compatibility for downcast duck array types like Sparse.COO. A collection
of basic tests has been added.
* Improvements to wraps and check:
> fail upon decoration (not execution) by checking wrapped function signature against
(might BREAK test code)
> wraps only accepts strings and Units (not quantities) to avoid confusion with magnitude.
(might BREAK code not conforming to documentation)
> when strict=True, strings that can be parsed to quantities are accepted as arguments.
* Add revolutions per second (rps)
* Improved compatibility for upcast types like xarray's DataArray or Dataset, to which
Pint Quantities now fully defer for arithmetic and NumPy operations. A collection of
basic tests for proper deferral has been added (for full integration tests, see
xarray's test suite). The list of upcast types is available at
`pint.compat.upcast_types` in the API.
* Moved docstrings to Numpy Docs
* Added tests for immutability of the magnitude's type under common operations
* Switched test configuration to pytest and added tests of Pint's matplotlib support.
* Deprecate array protocol fallback except where explicitly defined (`__array__`,
`__array_priority__`, `__array_function__`, `__array_ufunc__`). The fallback will
remain until the next minor version, or if the environment variable
`PINT_ARRAY_PROTOCOL_FALLBACK` is set to 0.
* Removed eval usage when creating UnitDefinition and PrefixDefinition from string.
* Added `fmt_locale` argument to registry.
* Better error message when Babel is not installed.
* It is now possible to redefine units within a context, and use pint for currency
* NaN (any capitalization) in a definitions file is now treated as a number
* Added slinch to Avoirdupois group
* Fix bug where ureg.disable_contexts() would fail to fully disable throwaway contexts
* Use black, flake8, and isort on the project
* Auto-increase package version at every commit when pint is installed from the git tip,
e.g. pip install git+https://github.com/hgrecco/pint.git.
* Fix HTML (Jupyter Notebook) and LateX representation of some units
* Fixed the definition of RKM unit as gf / tex
* **BREAKING CHANGE**:
Implement NEP-18 <https://numpy.org/neps/nep-0018-array-function-protocol.html> for
Pint Quantities. Most NumPy functions that previously stripped units when applied to
Pint Quantities will now return Quantities with proper units (on NumPy v1.16 with
the array_function protocol enabled or v1.17+ by default) instead of ndarrays. Any
non-explictly-handled functions will now raise a "no implementation found" TypeError
instead of stripping units. The previous behavior is maintained for NumPy < v1.16 and
when the array_function protocol is disabled.
* Implementation of NumPy ufuncs has been refactored to share common utilities with
NumPy function implementations
* Pint Quantities now support the `@` matrix mulitiplication operator (on NumPy v1.16+),
as well as the `dot`, `flatten`, `astype`, and `item` methods.
* **BREAKING CHANGE**:
Fix crash when applying pprint to large sets of Units.
DefinitionSyntaxError is now a subclass of SyntaxError (was ValueError).
DimensionalityError and OffsetUnitCalculusError are now subclasses of TypeError (was
* All Exceptions can now be pickled and can be accessed from the top-level package.
* Mark regex as raw strings to avoid unnecessary warnings.
* Implement registry-based string preprocessing as list of callables.
* Context activation and deactivation is now instantaneous; drastically reduced memory
footprint of a context (it used to be ~1.6MB per context; now it's a few bytes)
* **BREAKING CHANGE**:
Drop support for Python < 3.6, numpy < 1.14, and uncertainties < 3.0;
if you still need them, please install pint 0.9.
Pint now adheres to NEP-29 <https://numpy.org/neps/nep-0029-deprecation_policy.html>
as a rolling dependencies version policy.
* Show proper code location of UnitStrippedWarning exception.
* Reimplement _Quantity.__iter__ to return an iterator.
* Add http://www.dimensionalanalysis.org/ to README
* Allow for user defined units formatting.
* Quantity, Unit, and Measurement are now accessible as top-level classes
(pint.Quantity, pint.Unit, pint.Measurement) and can be
instantiated without explicitly creating a UnitRegistry
* Contexts don't need to have a name anymore
* "Board feet" unit added top default registry
* New syntax to add aliases to already existing definitions
* copy.deepcopy() can now copy a UnitRegistry
* Enabled many tests in test_issues when numpy is not available
* Document the '_' symbols found in the definitions files
* Improve OffsetUnitCalculusError message.
* Atomic units for intensity and electric field.
* Allow np arrays of scalar quantities to be plotted.
* Updated gravitational constant to CODATA 2018.
* Update to new SI definition and CODATA 2018.
* Allow units with aliases but no symbol.
* Fix definition of dimensionless units and constants.
* Added RKM unit (used in textile industry).
* Remove __name__ method definition in BaseRegistry.
* Added t_force, short_ton_force and long_ton_force.
* Fixed error message of DefinitionSyntaxError
* Expanded the potential use of Decimal type to parsing.
* Fixed gram name to allow translation by babel.
* Default group should only have orphan units.
* Added custom constructors from_sequence and from_list.
* Add quantity formatting with ndarray.
* Add pint-pandas notebook docs
* Use as default abbreviation for micro.
* Sat Mar 30 2019 Tomá? Chvátal <firstname.lastname@example.org>
- Fix funcsigs dependency
- Remove unused devel package dep
- Remove test bconds
* Tue Mar 12 2019 Matej Cepl <email@example.com>
- Update to version 0.9:
- Add support for registering with matplotlib?s unit handling
(gh#hgrecco/pint#317, thanks dopplershift)
- Add converters for matplotlib?s unit support.
(gh#hgrecco/pint#317, thanks Ryan May)
- Fix unwanted side effects in auto dimensionality reduction.
(gh#hgrecco/pint#516, thanks Ben Loer)
- Allow dimensionality check for non Quantity arguments.
- Make Quantity and UnitContainer objects hashable.
(gh#hgrecco/pint#286, thanks Nevada Sanchez)
- Fix unit tests errors with numpy >=1.13.
(gh#hgrecco/pint#577, thanks cpascual)
- Avoid error in in-place exponentiation with numpy > 1.11.
(gh#hgrecco/pint#577, thanks cpascual)
- fix compatible units in context. (thanks enrico)
- Added warning for unsupported ufunc. (gh#hgrecco/pint#626,
- Improve IPython pretty printers. (gh#hgrecco/pint#590, thanks
- Drop Support for Python 2.6, 3.0, 3.1 and 3.2.
- Prepare for deprecation announced in Python 3.7
(gh#hgrecco/pint#747, thanks Simon Willison)
- Added several new units and Systems (gh#hgrecco/pint#749,
- Started experimental pandas support (gh#hgrecco/pint#746 and
others. Thanks andrewgsavage, znicholls and others)
- wraps and checks now supports kwargs and defaults.
(gh#hgrecco/pint#660, thanks jondoesntgit)