Skip to content

PR #1 Merge grails-data-mapping & grails-geb into grails-core #14325

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 10,000 commits into
base: 7.0.x
Choose a base branch
from

Conversation

jdaugherty
Copy link
Contributor

Per the decision[1], this is the initial PR that merges the grails-data-mapping without any changes into grails-core. This is split across 2 files due to the size of the commits being imported.

[1] https://lists.apache.org/thread/7trbthyv31tp2pkwpr3swn1pm80nd969

matrei and others added 30 commits January 22, 2025 11:28
- Clean up test code by removing an unused method, eliminating the dependency on `jakarta.annotation:jakarta.annotation-api` in this class.
- Update usages of `BeanUtils.instantiate` to the non-deprecated `BeanUtils.instantiateClass`.
…xtension`

- Refactor code to implement the `IGlobalExtension` interface, replacing the deprecated `AbstractGlobalExtension` class.
- Use `@PendingFeature` so that the build fails if the test unexpectedly succeeds, providing an alert that the test passes.
- The `HasManyDefaultMappedBySpec` test now passes, so the `@Ignore` annotation is no longer needed.
- Update tests to use the `@Suite` annotation, replacing the deprecated `@RunWith`.
…xception`

- Update code to use `SecurityException` instead of the deprecated `AccessControlException`.
- Update year and set copyright holder to "the original author or authors."
- Change the license link to use `https`.
- Resolve issues with building using a Groovy snapshot version.
- Explicitly override the Groovy version in the build when requested, as it is now sourced from grails-bom instead of a property.
Previously, some tests in the TCK were marked with `@Ignored`.
This commit replaces `@Ignored` with `@PendingFeatureIf`, using system property conditions to enable
selective execution. This approach ensures tests are only skipped when necessary, improving test coverage
and flexibility.
Introduce a new system property, `mongodb.gorm.suite`, to manage the enabling or disabling of specific tests within the TCK.
Update the CI configuration to include a build matrix for Java versions 17 and 21.
This ensures compatibility and proper testing across multiple supported Java versions.
Re-add the `groovy-test-junit5` dependency to ensure JUnit 5 tests execute correctly.
…mpileClasspath

Switch from `compileOnly` to `compileOnlyApi` to ensure that the `DelegateAsync` AST transformation classes are available
on the downstream `compileClasspath`.
The test `WhereMethodSpec."Test rlike query"` was previously annotated with `@Ignore`, but it is passing. The comment that "rlike not supported by all datastores yet" should not be relevant, as this test runs exclusively in the `grails-datastore-gorm-test` project where it passes successfully.
The GitHub organization secret `MAVEN_PUBLISH_URL` is currently set to https://repo.grails.org/grails/plugins3-snapshot-local. However, these projects have historically been published to https://repo.grails.org/grails/libs-snapshots-local.

This commit explicitly sets the snapshot repository URL to ensure consistency with previous publishing behavior.
The `hibernate6` repository currently does not have GitHub workflows enabled, causing the job to fail and preventing subsequent steps from running.

This commit configures `continue-on-error: true` at the job level to ensure the workflow does not fail if a trigger fails, and at the step level to ensure subsequent steps are still triggered.
Assign proper job names for better output in the GitHub Actions interface.
The `grails-datastore-gorm` module does not require an `api` dependency on `grails-core`. This change removes the unnecessary dependency to align with the module's actual requirements and prevent potential issues.
These tasks were missing after the migration to the Grails Publish Gradle Plugin.
They are usually added by the Grails Plugin Gradle Plugin, but it is not used in this project.

Using `java.withSourcesJar()` and `java.withJavadocJar()` is not compatible with this build.
Update Project dependencies and Publishing
jdaugherty and others added 23 commits April 4, 2025 01:07
publish grails-datamapping-core-test
now == r.modified
|   |  | |
|   |  | Tue Apr 08 12:07:36 UTC 2025 (java.util.Date@58324c9f)
|   |  org.grails.datastore.gorm.RecordCustom : 1
|   false
Tue Apr 08 12:07:36 UTC 2025 (java.util.Date@68ab6ab0)
Turn on functional tests with new Apache coordinates
The Groovy project is currently incompatible with Develocity
Plugin version 4. To avoid breaking the joint build workflow,
we are reverting to version 3.
`asset-pipeline` 5.0.9 has been released with Grails
at apache coordinates.

Closes gh-2082
The Groovy build is now compatible with
Develocity Plugin version 4, so we upgrade accordingly.
build: update Develocity Plugin to v4
@jdaugherty
Copy link
Contributor Author

To be clear, this PR only imports the data-mapping project and there aren't actually any changes in it. The other PR #14324 is where all of the changes are.

@jdaugherty
Copy link
Contributor Author

@jamesfredley I fixed the documentation tasks to be cacheable so that should resolve the issue you reported.

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.

8 participants