Upgrade to Orekit 12.1.1, Hipparchus 3.1, Rugged 4.0-SNAPSHOT
-
Upgraded JAR versions in
pom.xml
Maven spec -
Upgraded JARs and stubs using
dl_jars_and_render_stubs.py
-
Bumped Orekit jpype Python package version in
pyproject.toml
to12.1.1.0
, to track Orekit Java version12.1.1
. This way, if we release a new version of Orekit jpype still based on Orekit java12.1.1
, but with a new version of Rugged for instance, we can bump the Python package version to12.1.1.1
. -
Added a unit test for Rugged
-
Upgraded Rugged version to
4.0-SNAPSHOT
to solve the issue of Rugged 3.0 being not compatible with Orekit 12 (https://gitlab.orekit.org/Petrush/orekit_jpype/-/issues/6, rugged#395 (closed)). Even though 4.0-SNAPSHOT is not an official release and is from Rugged'sdevelop
and notmaster
branch, I think it is important to ship Orekit jpype with a working version of Rugged. And we can release a new version of Orekit jpype e.g.12.1.1.1
as soon as Rugged 4.0 is officially released (hopefully soon).
Merge request reports
Activity
assigned to @Petrush
Hi, many thanks, looks good but there is some issue, that I also have in the JCC version about the stubs. They are somehow missing the javadoc parts, the stubgenj should also include the javadoc as python docstrings but somehow not done. I had this in the past and didn't manage to find the root cause, but changing version of openjdk but haven't managed to get it working for JCC (yet).
It may be better to release with only the stubs having types and no docstrings initially.
I see the javadoc successfully converted to python docstrings, for example this Python docstring corresponds to this javadoc.
15 15 16 16 17 17 class BracketFinder: 18 """ changed this line in version 3 of the diff
Now I understand why there were many
Failed to extract javadoc[...]
errors.It seems this problem involves all Hipparchus classes, even those which were not changed between hipparchus 3.0 and 3.1, for instance Vector3D, so this could be due to a change in the configuration of the javadoc HTML generator in hipparchus.
These errors come from jpype's javadoc extractor, written in java (https://github.com/jpype-project/jpype/blob/653ccffd1df46e4d472217d77f592326ae3d3690/native/java/org/jpype/javadoc/JavadocExtractor.java#L63). I will investigate more to find out why the new HTML extractor files make jpype's javadoc parser unhappy.
Successfully downloaded following JARs: - normal JARs: ['orekit_jpype/jars/hipparchus-core-3.1.jar', 'orekit_jpype/jars/hipparchus-filtering-3.1.jar', 'orekit_jpype/jars/hipparchus-fitting-3.1.jar', 'orekit_jpype/jars/hipparchus-geometry-3.1.jar', 'orekit_jpype/jars/hipparchus-ode-3.1.jar', 'orekit_jpype/jars/hipparchus-optim-3.1.jar', 'orekit_jpype/jars/hipparchus-stat-3.1.jar', 'orekit_jpype/jars/orekit-12.1.1.jar', 'orekit_jpype/jars/rugged-4.0-20240603.065802-2.jar'] - javadoc JARs: ['orekit_jpype/javadoc-jars/hipparchus-core-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/hipparchus-filtering-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/hipparchus-fitting-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/hipparchus-geometry-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/hipparchus-ode-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/hipparchus-optim-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/hipparchus-stat-3.1-javadoc.jar', 'orekit_jpype/javadoc-jars/orekit-12.1.1-javadoc.jar', 'orekit_jpype/javadoc-jars/rugged-4.0-20240603.065802-2-javadoc.jar'] ************* Now generating stubs ************* reference to missing class AttributeValue - generating empty stub reference to missing class AbstractStringBuilder - generating empty stub reference to missing class NamedPackage - generating empty stub reference to missing class ChronoLocalDateImpl - generating empty stub reference to missing inner class ConcurrentHashMap$CollectionView - generating empty stub reference to missing class Striped64 - generating empty stub reference to missing class ZipConstants - generating empty stub reference to missing class SeriesTerm - generating empty stub Failed to extract javadoc for class org.orekit.data.FieldBodiesElements reference to missing class HatchFilter - generating empty stub reference to missing class KalmanEstimationCommon - generating empty stub reference to missing class AttitudeEntry - generating empty stub Failed to extract javadoc for class org.orekit.forces.drag.TimeSpanDragForce Failed to extract javadoc for class org.orekit.forces.empirical.TimeSpanParametricAcceleration Failed to extract javadoc for interface org.orekit.frames.Frames Failed to extract javadoc for class org.orekit.frames.FramesFactory Failed to extract javadoc for class org.orekit.frames.AbstractFrames reference to missing class AbstractGNSSAttitudeProvider - generating empty stub Failed to extract javadoc for class org.orekit.models.earth.troposphere.MendesPavlisModel Failed to extract javadoc for class org.orekit.models.earth.troposphere.ViennaThree Failed to extract javadoc for class org.orekit.models.earth.troposphere.ViennaThreeModel reference to missing class FieldSDP4 - generating empty stub reference to missing class SDP4 - generating empty stub reference to missing class AbstractHarmonicsBasedOrbitalState - generating empty stub reference to missing inner class FieldEventsLogger$FieldLoggingWrapper - generating empty stub reference to missing class OptimizationProblemBuilder - generating empty stub Failed to extract javadoc for interface org.orekit.ssa.collision.shorttermencounter.probability.twod.ShortTermEncounter2DPOCMethod Failed to extract javadoc for class org.orekit.ssa.collision.shorttermencounter.probability.twod.AbstractShortTermEncounter2DPOCMethod Failed to extract javadoc for interface org.hipparchus.Field Failed to extract javadoc for interface org.hipparchus.FieldElement [...] Failed to extract javadoc for class org.hipparchus.util.OpenIntToDoubleHashMap Failed to extract javadoc for class org.hipparchus.util.OpenIntToFieldHashMap
Edited by Clément JonglezUpdate: Hipparchus generates HTML files with Javadoc 17 since version 3.1, whereas in version 3.0 or in Orekit this was done with Javadoc 11.
The HTML files from Javadoc 17 have a different structure, this is why jpype's javadoc extractor must be updated, as of now it is only able to parse HTML files from javadoc versions up to 14. I am working on it and open a pull request to jpype's github repo.
added 10 commits
-
832cdba4...ac94c224 - 5 commits from branch
master
- b3b64084 - pom.xml: upgrade to orekit 12.1.1, hipparchus 3.1
- a949f19a - pom.xml: upgrade to Rugged 4.0-SNAPSHOT, now compatible with orekit 12
- 853998c1 - pyproject.toml: bump orekit_jpype version to 12.1.1.0
- a66e59fa - update JARs and stubs (generated by dl_jars_and_render_stubs.py)
- 0f0e61ba - add rugged direction location test, now working with rugged 4.0-SNAPSHOT
Toggle commit list-
832cdba4...ac94c224 - 5 commits from branch
added 1 commit
- 92b833a4 - [DNI] WIP on fixing javadoc 17+ parsing of jpype
added 1 commit
- 0696e2ed - [DNI] try backcompatibility of jpype rework with old javadoc 11
added 1 commit
- 5de20fdb - [DNI] also try reverting to orekit 12.0.2 and rugged 3.0
Update: I implemented the parsing of HTML files generated by javadoc 17 and opened a PR in the jpype github https://github.com/jpype-project/jpype/pull/1200
I tried to re-run the script
dl_jars_and_render_stubs.py
but it fails because the Rugged4.0-SNAPSHOT
Jar cannot be downloaded from Maven.I cannot find Rugged anymore in the Orekit's Maven-snapshots repo ( https://packages.orekit.org/#browse/browse:maven-snapshots ).
Anyone from the @orekit team knows why? Are snapshot builds automatically deleted after some time, for instance one month?
Edited by Clément Jonglez