Conversation
|
👋 Hello! Thanks for contributing to our project. You can see the progress at the end of this page and at https://github.com/uyuni-project/uyuni/pull/11781/checks If you are unsure the failing tests are related to your code, you can check the "reference jobs". These are jobs that run on a scheduled time with code from master. If they fail for the same reason as your build, it means the tests or the infrastructure are broken. If they do not fail, but yours do, it means it is related to your code. Reference tests: KNOWN ISSUES Sometimes the build can fail when pulling new jar files from download.opensuse.org . This is a known limitation. Given this happens rarely, when it does, all you need to do is rerun the test. Sorry for the inconvenience. For more tips on troubleshooting, see the troubleshooting guide. Happy hacking! |
0402d4e to
ee3b7c6
Compare
8c15b41 to
bddd29b
Compare
bddd29b to
40b5f3e
Compare
Hibernate 7 supports JSON out of the box and thus the additional dependency has been removed in favour of the Hibernate JSON implementation.
40b5f3e to
3ab96cb
Compare
There was a problem hiding this comment.
Pull request overview
Removes the hypersistence-utils dependency and switches JSON mapping to Hibernate 7’s built-in JSON support.
Changes:
- Dropped
hypersistence-utils-hibernate-71from Maven/Ivy/OBS config and RPM spec dependencies. - Migrated JSON-mapped entity fields from Hypersistence
JsonTypeto@JdbcTypeCode(SqlTypes.JSON). - Added/updated Hibernate tests and test DB SQL scripts to validate JSON (de)serialization behavior.
Reviewed changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| java/spacewalk-java.spec | Removes hypersistence RPM deps; adds explicit Jackson runtime/build deps. |
| java/pom.xml | Removes hypersistence Maven dependency; ensures Jackson databind present; bumps Netty versions. |
| java/core/pom.xml | Removes hypersistence dependency from core module. |
| java/buildconf/ivy/obs-maven-config.yaml | Removes hypersistence artifact mapping from OBS Maven config. |
| java/buildconf/ivy/ivy-suse.xml | Removes hypersistence dependency; bumps Netty revisions. |
| java/buildconf/build-props.xml | Removes hypersistence from hibernatedeps property. |
| java/core/src/main/java/com/suse/manager/model/attestation/ServerCoCoAttestationReport.java | Migrates JSON mappings to @JdbcTypeCode(SqlTypes.JSON) on getters. |
| java/core/src/main/java/com/redhat/rhn/domain/server/Pillar.java | Migrates JSON mapping to Hibernate JSON via @JdbcTypeCode. |
| java/core/src/main/java/com/redhat/rhn/domain/server/CPU.java | Migrates JSON mapping to Hibernate JSON via @JdbcTypeCode. |
| java/core/src/test/java/com/redhat/rhn/common/hibernate/HibernateBaseTest.java | Refactors test DB setup/teardown to run SQL scripts from resources. |
| java/core/src/test/java/com/redhat/rhn/common/hibernate/HibernateTest.java | Adds JSON-focused tests validating Map-based JSON read/write behavior. |
| java/core/src/test/java/com/redhat/rhn/domain/TestInterface.java | Adds additionalData accessors to support JSON tests. |
| java/core/src/test/java/com/redhat/rhn/domain/TestEntity.java | Adds JSONB column mapping (additional_data) using Hibernate JSON. |
| java/core/src/test/resources/com/redhat/rhn/common/hibernate/create_test_db.sql | Creates test schema including JSONB column + seed JSON row. |
| java/core/src/test/resources/com/redhat/rhn/common/hibernate/drop_test_db.sql | Drops test schema objects created for Hibernate tests. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| * This field stores CPU architecture-specific information. Although the | ||
| * corresponding database field is of type | ||
| * JSONB, it is mapped here as a String due to limitations in XML mapping for | ||
| * JSON types. |
There was a problem hiding this comment.
The Javadoc for archSpecs says the JSONB field is mapped as a String, but the field is actually a Map<String, Object>. Please update the comment to match the current mapping (or remove the outdated “mapped as a String” note) to avoid confusion for future maintainers.
What does this PR change?
Hibernate 7 supports JSON out of the box and thus the additional dependency has been removed in favour of the Hibernate JSON implementation.
Codespace
Check if you already have a running container clicking on
GUI diff
No difference.
Documentation
No documentation needed: only internal and user invisible changes
DONE
Test coverage
ℹ️ If a major new functionality is added, it is strongly recommended that tests for the new functionality are added to the Cucumber test suite
No tests: already covered
DONE
Changelogs
Make sure the changelogs entries you are adding are compliant with https://github.com/uyuni-project/uyuni/wiki/Contributing#changelogs and https://github.com/uyuni-project/uyuni/wiki/Contributing#uyuni-projectuyuni-repository
If you don't need a changelog check, please mark this checkbox:
If you uncheck the checkbox after the PR is created, you will need to re-run
changelog_test(see below)Re-run a test
If you need to re-run a test, please mark the related checkbox, it will be unchecked automatically once it has re-run:
Before you merge
Check How to branch and merge properly!