Releases: pjazdzyk/unitility
Releases · pjazdzyk/unitility
v2.2.0 - Parsing quantities unit symbol without square brackets
CHANGE LOG (02.01.2024):
- backward compatibility - COMPATIBLE
- quantities used in path params and query params does not have to be in square brackets. From now on this: 20[oC] and be replaced by 20oC. Square brackets used in path variables or query params were causing issues with Tomcat application servers.
- minor fixes and refactoring
v2.1.1 - Fixed arithmetic operations
CHANGE LOG (02.01.2024):
- backward compatibility - COMPATIBLE
- fixed arithmetic operations chainability
v2.1.0 - Add geographic quantities
CHANGE LOG (02.01.2024):
- backward compatibility - NOT COMPATIBLE
- added Latitude, Longitude, GeoCordinate and GeoDistance calculated based on Haversine equations,
- fixed arithmetic equations, they now work properly between different quantities sharing the same unit family,
- removed unsafe unchecked casting,
- reworked packages structure in jackson, spring and quarkus module
v2.0.0 - Frameworks support: Spring and Quarkus
CHANGE LOG (10.12.2023):
- backward compatibility - NOT COMPATIBLE
- changed project to multimodule structure, provided BOM module for dependency management,
- added support for Spring Boot (auto register Jackson serializers / deserializers, register converters for WebMVC),
- added support for Quarkus (auto register Jackson serializers / deserializers, register converters for JakartaParamProvider),
- PhysicalQuantity types can be now used in Query Params / Path Variables in web applications,
- refactor arithmetic operation methods to allow use of overloaded operators in Kotlin and Groovy,
- toFormattedString() now is refactored to toEngineeringFormat() and will output quantities in format: "20.12 [K]"
- minor clean-up and refactoring,
v1.2.0 - Simplified architecture, improved transformation methods
CHANGE LOG (03.09.2023):
- simplified architecture, removed generic type from Unit,
- changed PhysicalQuantity generic type from itself to Unit type,
- transformation methods returns implementation type not generic supertype, what allows for easy usage in streams via method references without any additional casting,
- equals method will now do equality check based on value in base units, so Units of Meters(1000) and Kilometers(1) will now be considered as equal,
- added / reworked toFormattedString methods with variable name, suffix and separator,
- minor fixes and refactoring.
v1.1.0 - Simplified property value access
CHANGE LOG (26.08.2023):
- removed to(..) methods for each unit, and replaced them with getIn(..) methods returning converted value as double for more convenient usage for calculations
- minor fixed and refactoring
v1.0.2 - Transformation methods and logic operations
CHANGE LOG (06.08.2023):
- new transformation methods: add, subtract, multiply, divide,
- new logic operation methods: isLowerThan(), isGreaterThan(), isEqualOrLowerThan(), isEqualOrGreaterThan()
- add convenient methods for getting value of most popular units, for ie: temperature.getValueAsCelsius();
- fixed minor bugs + refactoring
v1.0.1 - Momentum and Torque, package optimization
CHANGE LOG (25.06.2023):
- new units: Torque, Momentum,
- flattened packages, grouped by unit family,
- added toStringWithRelevantDigits() to allow user get formatted output with specified number of relevant digits
- added isEqualsWithPrecision() method to enable possibility to check for equality from the business perspective
- toString() is now standard non formatted toString()
- minor refactoring and code cleaning
v1.0.0 - First release
The first release of the Physics Unit Conversion Solution for Java - UNITILITY.
- plain Java, no frameworks,
- covered with unit tests (>74% of coverage),
- quality and security checked via SonarCloud quality gate,
Supported units:
COMMON: Distance, Area, Volume, Mass, Angle
MECHANICAL: Force
THERMODYNAMIC: Temperature, Pressure, Energy, Power, Specific heat, Density, Dynamic viscosity, Kinematic viscosity, Specific enthalpy, Thermal conductivity
FLOWS: Mass flow, Volumetric flow
HUMID AIR SPECIFIC: Humidity ratio, Relative humidity
DIMENSIONLESS: Grashof number, Prandtl number, Reynolds number
v0.0.1-beta- Simplified approach based on Enum and Generics
- created new concept for unit system in Java based on enums and generic classes,
- removed validation from units / physical quantities, validation should be done in physics implementation not in the units themselves,
- added more units
- added more unit tests
- retained previous concept in "first concept"