-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
DRAFT: Merge tools into orm #11123
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
base: main
Are you sure you want to change the base?
DRAFT: Merge tools into orm #11123
Conversation
Thanks for your pull request! This pull request appears to follow the contribution rules. › This message was automatically generated. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CodeQL found more than 20 potential problems in the proposed changes. Check the Files changed tab for more details.
9d4e4ec
to
094c21a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added a few comments below to track things we discussed and that we shouldn't forget.
Also created a Jira issue: https://hibernate.atlassian.net/browse/HHH-19879
import org.hibernate.tool.gradle.task.GenerateJavaTask; | ||
import org.hibernate.tool.gradle.task.RunSqlTask; | ||
|
||
public class Plugin implements org.gradle.api.Plugin<Project> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should probably be the same plugin as enhancement, so that we can use a syntax like this one:
hibernate {
enhancement { ... }
reveng { ... }
}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honest question: would this make sense to use in an application/framework as a library, and if so do we want to keep this module under tooling/
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Todo: migrate (all?) other tests from Tools. We can target h2 only for a start.
Main challenge would be conveting hbm.xml to orm.xml (mapping.xml?) or annotations.
@Mojo( | ||
name = "hbm2orm", | ||
defaultPhase = GENERATE_RESOURCES, | ||
requiresDependencyResolution = ResolutionScope.RUNTIME) | ||
public class TransformHbmMojo extends AbstractMojo { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is great and I know people have been asking for it.
We need it documented, though :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is something wrong here. Seem you duplicated the package? The SchemaExport
class already exists in this module.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As discussed, the classes you duplicated here should instead be moved from hibernate-ant
to this module.
491fda1
to
a12942e
Compare
…erge the relevant ant/gradle/maven plugins - Add the Reverse Engineering module
a12942e
to
be638d2
Compare
[Please describe here what your change is about]
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license
and can be relicensed under the terms of the LGPL v2.1 license in the future at the maintainers' discretion.
For more information on licensing, please check here.
https://hibernate.atlassian.net/browse/HHH-19879