Skip to content

Releases: pjazdzyk/unitility

v2.2.0 - Parsing quantities unit symbol without square brackets

28 Jan 15:30
Compare
Choose a tag to compare

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

02 Jan 18:47
Compare
Choose a tag to compare

CHANGE LOG (02.01.2024):

  • backward compatibility - COMPATIBLE
  • fixed arithmetic operations chainability

v2.1.0 - Add geographic quantities

02 Jan 17:16
Compare
Choose a tag to compare

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

10 Dec 19:04
Compare
Choose a tag to compare

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

03 Sep 18:35
abd605b
Compare
Choose a tag to compare

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

26 Aug 17:04
7a0cf19
Compare
Choose a tag to compare

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

06 Aug 16:49
Compare
Choose a tag to compare

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

25 Jun 16:57
Compare
Choose a tag to compare

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

30 May 14:11
Compare
Choose a tag to compare

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

02 Apr 06:25
Compare
Choose a tag to compare
  • 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"