Skip to content

Release 7.0.0#113

Merged
fkleedorfer merged 3 commits into
mainfrom
release-7.0.0-1753196555
Jul 22, 2025
Merged

Release 7.0.0#113
fkleedorfer merged 3 commits into
mainfrom
release-7.0.0-1753196555

Conversation

@qudtlib-bot
Copy link
Copy Markdown
Collaborator

Changes

7.0.0 - 2025-07-22

Added

  • Unit.dependents - the number of units that refer to that unit as one of its factor units or are scaled from that base unit.
    this value is required to achieve better sorting in Qudt.derivedUnitListFromFactorUnits, allowing to prefer
    more important units (those with more dependents)

Changed

  • when using qudtlib as a dependency, you have to add <type>pom</type> (see updatede README.md). This is due to more rigorous
    artifact checks by sonatype that prevent jar artifacts without sources.
  • Upgrade to QUDT 3.1.4
    • Calculation of scalings and factor units now happens in QUDT (see PR 1129)
      However, a few things have changed:
      • rename qudt:isScalingOf to qudt:scalingOf
      • rename qudt:factorUnit/qudt:unit to qudt:hasFactorUnit/qudt:hasUnit
    • Currency units have changed:
      • they were moved back into the graph 'http://qudt.org/vocab/unit/'
      • their localnames have received the prefix CCY_
      • both changes are 'soft', ie, the old way is still available, but deprecated
      • for example: http://qudt.org/vocab/currency/EUR is now http://qudt.org/vocab/unit/CCY_EUR.
      • QUDTLib makes the change now instead of adopting the deprecation, as there are other breaking changes as well, so upgrading will require work anyway.
      • for QUDTLib constants, this means that the pattern ${CurrencyName}_Currency is dropped in favor of the QUDT style CCY_${CurrencyName}, e.g. Qudt.Units.EUR_Currency becomes Qudt.Units.CCY_EUR
    • Many conversion multipliers were changed in QUDT. They now consistently have at most 34 significant digits (ie, BigDecimal's precision of 34). This fixes problems such as the one reported in Conversion error from MilliSV__PER__HR to MicroSV__PER__HR.
    • scalings of unit:GM deserve special mention:
      • in the upcoming QUDT release we have unit:GM qudt:scalingOf unit:KiloGM, making qudt:scalingOf and qudt:conversionMultiplier consistent in all cases
      • QUDTLib makes the change as well, with the effect that unit factorization does not use Units.GM (which probably surprised a few people) for the mass dimension but Units.KiloGM (which is what one would expect)
    • Sorting in Qudt.derivedUnitListFromFactorUnits now takes more aspects into account and ordering has changed in some cases.
    • When creating a Unit instance, its factor units are checked for factors x^N^M, where x has no more factors.
      Such factors are simplified as x^(N*M). The same is applied to newly instantiated FactorUnits objects.

Fixed

  • Fixed a sorting bug in Qudt.derivedUnitListFromFactorUnits that caused wrong sorting for some very similar units.

Release info

Automated release through workflow: 'Release and deploy to Sonatype staging repo'
Triggered by: fkleedorfer
Version: 7.0.0
Next development version: 7.0.1-SNAPSHOT

Next Steps

Please rebase this PR on top of main after publishing the release via the
Sonatype Repository Manager.

@fkleedorfer fkleedorfer merged commit 5340ac9 into main Jul 22, 2025
1 check passed
@fkleedorfer fkleedorfer deleted the release-7.0.0-1753196555 branch July 22, 2025 15:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants