[VOTE] Releasing Orekit 12.0 from release candidate 1

This is a VOTE in order to release version 12.0 of the Orekit library.
Version 12.0 is a major release.

Highlights in the 12.0 release are:

  • Zeis model for DSST J2-squared terms
  • RTCM orbit and clock corrections messages
  • Filtering capabilities for CCSDS parsing
  • Central body flatness is now taken into account for eclipse detector and solar radiation pressure
  • Static transform for {Field} elements
  • Measurements can now be evaluated without derivatives
  • Panel dependent coefficients in BoxAndSolarArraySpacecraft
  • Support for new formats: EOP C04, STK ephemeris files, Rinex 3.05 and 4.0, Rinex 2 navigation messages, CCSDS ADM V2, Sinex Differential Code Bias (DCB), and full parsing of ILRS CRD files
  • Prediction of Earth Orientation Parameters
  • Change of TimeInterpolable by TimeInterpolator
  • New {Field} classes: StateCovariance and ImpulseManeuver
  • A new ssa package containing probability of collision computation methods (Laas, Alfano, Alfriend, Patera, and Chan)
  • Python keywords (e.g. init) are now forbidden for method naming
  • A torque-free attitude mode for general (non-symmetrical) body
  • A new model for FDOA measurements
  • A new API for TLE generation including a new method based on a least squares fitting
  • A writer for CCSDS OCM
  • A writer for SP3 files
  • Blending algorithms for orbit and covariance interpolation
  • Az/El based Initial Orbit Determination

The release candidate 1 can be found on the GitLab repository as
tag 12.0-RC1 in the release-12.0 branch:

The release notes can be read here:
(Please note that due to an issue with the website generation, the description and date are not generated. They will for the official release. For more details, see the changes.xml file)

Maven artifacts are available at

The votes will be tallied in 120 hours for now, on 2023-11-03T22:00:00Z
(this is UTC time).

Hi, all,

I am very expecting this new release. There are so many amazing changes.

p.s. I don’t see any info about the enhancement of CRD parsing (issue 938, mr306). Neither in changes-report.html nor in changes.xml file.

That’s an oversight. When merging your contribution (your very important contribution), I forget to update the changes.xml. I apologize for that.
I updated the vote description to include it

+1 for the new release of Orekit!

Thank you for your work @bcazabonne ! Can’t wait to see the release :champagne:

+1, new release is very welcome.

Hi, @bcazabonne ,

Never mind.
Thanks for your huge work.

+1 for the release!

Thank you Bryan!

This looks very awesome! I’m having a problem getting the tests to complete on Apple Silicon running Azul OpenJDK 17 though. I documented it here: org.orekit.time.UTCScaleTest fails building on Apple Silicon w/JDK 17 (#1252) · Issues · Orekit / Orekit · GitLab

Thank you @hankgrabowski for the test. It is a bit difficult to reproduce since it looks to depend on the OS.
As a first investigation, could you try to change the junit version in the pom.xml file from 5.10.0 to 5.9.0 and run the failing command? You can do it with develop branch.
I would like to see if your problem is due to the Junit upgrade.

Thank you,

+1 for the release.

I have seen one problem in a class diagram, but it is minor so should not block the release.
If you need to do another release candidate, though, it may be worth picking up the fix (it’s commit af061980 in the develop branch).

+1 for the release

There are also several checkstyle errors in SpacecraftState and FieldSpacecraftState.
I have fixed them in commit 176f9ec9.

That’s strange they are not highlighted by the CI. Shall I stop the vote the process a RC2?

It is up to you. These are only minor checkstyle errors. I noticed them using the Eclipse checkstyle plugin, maybe it uses a more recent checkstyle version than our pom.xml? (Eclipse version: 2023-09, Eclipse Checkstyle plugin

It does not show on SonarQube neither, where the plugin version is 4.27, which corresponds to Checkstyle v8.27.

My current feeling is to follow the CI and Sonar: if they don’t triggered any warning or error, let the vote continue.
My only comcern is about the error highlighted by @hankgrabowski. I unfortunately can’t reproduce it since everything is ok on my laptops and the CI. It looks to be specific to Apple computer. If it shall be fixed for the release, so a RC-2 will be done including the UML fix and the Javadoc fixes

I am looking at this today. I will keep you posted. I did an OS upgrade to Sonoma yesterday so actually starting with a clean slate attempt. If that still fails I will try your JUnit suggestion.

Update: I tried JUnit 5.9.0 against the latest Azul build of OpenJDK 8, 17, and 21. All of them failed in the same way :(.

I’m going to try playing with some other settings…

Thank you very much @hankgrabowski for taking care of that. Your help is very helpful since the problem looks very specific to an OS :slight_smile:

+1 for the release!