Here is a further updated table with the views Gradle plugins consolidated into 
grails-gradle-plugin, which is renamed back to its original name.  This update 
also moves grails-test to the correct groupid.  

https://github.com/apache/grails-core/blob/jamesfredley/renameProposal/RENAME.md

PR:  https://github.com/apache/grails-core/pull/14077

On 2025/03/20 00:16:33 James Daugherty wrote:
> Makes sense on the gson-templates update.
> 
> Concerning the gradle plugins, I think there's some confusion here.  The
> "grouping" artifact isn't a gradle plugin.  It only adds the gradle plugins
> to the classpath so it would not be used in a plugin { } block.  I am
> speaking about these lines:
> 
> https://github.com/apache/grails-core/blob/c4f40b77e7693f37d2b4c885db3b27159292c813/RENAME.md?plain=1#L125
> https://github.com/apache/grails-core/blob/c4f40b77e7693f37d2b4c885db3b27159292c813/RENAME.md?plain=1#L71
> 
> For 'grails-gradle-plugin', here are some example usages of this library:
> buildscript usage:
> https://github.com/apache/grails-core/blob/e899196d24c75d1cfb80ca51db2e7aae574b67b4/grails-test-examples/app1/build.gradle#L7
> buildSrc usage:
> https://github.com/apache/grails-views/blob/f9e28f2cfefdc6545f439b72fad15156d5c00781/buildSrc/build.gradle#L29
> 
> I'm not proposing we rename the gradle plugin names from your list, but
> rather just that artifact that includes them all so gradle can resolve
> them.
> 
> On Wed, Mar 19, 2025 at 7:51 PM James Fredley <jamesfred...@apache.org>
> wrote:
> 
> > https://github.com/apache/grails-core/pull/14077/files
> > replaced 'mongo-gson-templates' with 'grails-data-mongodb-gson-templates'
> > to match it up with the project.  It also looks like it was changed from
> > json to gson before I added the prefix.
> >
> > Are you proposing always applying the Grails Gradle plugins with
> > `classpath` and `apply plugin` and not using `plugins {id version}`?  The
> > long groupid and artifactid is only used for `plugins {id version}`.
> >
> > James
> >
> > On 2025/03/19 23:23:57 James Daugherty wrote:
> > > Mattias made a good point in his open PR: there are other security
> > > frameworks such as https://shiro.apache.org/.  This convinced me to keep
> > > the 'spring' in the name to be clear.
> > >
> > > Looking at Mattias' revision and comparing it to James Fredley's, I
> > think I
> > > agree with everything James Fredley has except two points:
> > >
> > > 1. mongo-gson-templates, I think we should keep a prefix of 'grails' at a
> > > minimum in the artifact name.  These templates are specific to grails.
> > >
> > > 2. I don't like the "grouping" artifacts that contain all of the gradle
> > > plugins.  With this proposal, buildScript would look something like this:
> > >
> > > buildscript {
> > >     repositories {
> > >         ...
> > >     }
> > >     dependencies {
> > >         classpath platform("org.apache.grails:grails-bom:$grailsVersion")
> > >         classpath 'org.apache.grails:grails-gradle-plugin-core'
> > >     }
> > > }
> > >
> > > These grouping artifacts should be clearly named to indicate what they
> > > contain.  We currently have 2 of these - one in grails-views and one in
> > > grails-gradle plugin.
> > >
> > > I'd rather see these named something like this:
> > >
> > > org.apache.grails:grails-gradle-plugins
> > > org.apache.grails:grails-view-gradle-plugins
> > >
> > > Or even better, the view gradle plugins are already in a separate gradle
> > > build imported into the grails-views build.  They can easily be moved
> > into
> > > the grails-gradle-plugin repository.  I'd rather see us collapse these
> > > plugins into a single repo and then just have the below as the grouping
> > > artifact:
> > >
> > > org.apache.grails:grails-gradle-plugins
> > >
> > > -James
> > >
> > >
> > >
> > >
> > > On Wed, Mar 19, 2025 at 4:57 PM Gianluca Sartori <g.sart...@gmail.com>
> > > wrote:
> > >
> > > > Mattias' suggestion is the most convincing naming scheme to me.
> > > >
> > > > Keeping the right-to-left grouping strategy I would probably give
> > > > precedence to the hibernate implementation.
> > > > Even though there are reasons to keep the "spring" name in the
> > > > "spring-security" plugins (search the web) I would rather have the
> > > > following instead to stay simple.
> > > >
> > > > org.apache.grails:grails-codecs
> > > > org.apache.grails:grails-controllers
> > > > org.apache.grails:grails-databinding
> > > > org.apache.grails:grails-datasource
> > > > org.apache.grails:grails-domain-class
> > > > org.apache.grails:grails-i18n
> > > > org.apache.grails:grails-interceptors
> > > > org.apache.grails:grails-mimetypes
> > > > org.apache.grails:grails-rest-responder
> > > > org.apache.grails:grails-services
> > > > org.apache.grails:grails-url-mappings
> > > >
> > > > org.apache.grails:grails-async
> > > > org.apache.grails:grails-converters
> > > > org.apache.grails:grails-events
> > > > org.apache.grails:grails-sitemesh3
> > > > org.apache.grails:grails-fields
> > > > org.apache.grails:grails-views-gsp
> > > > org.apache.grails:grails-views-gson
> > > > org.apache.grails:grails-views-markup
> > > > org.apache.grails:grails-scaffolding
> > > >
> > > > org.apache.grails:grails-data-hibernate5
> > > > org.apache.grails:grails-data-hibernate5-migration
> > > > org.apache.grails:grails-data-hibernate6
> > > > org.apache.grails:grails-data-hibernate6-migration
> > > > org.apache.grails:grails-data-mongodb
> > > >
> > > > org.apache.grails:grails-cache
> > > > org.apache.grails:grails-geb
> > > > org.apache.grails:grails-security-acl
> > > > org.apache.grails:grails-security-cas
> > > > org.apache.grails:grails-security-core
> > > > org.apache.grails:grails-security-ldap
> > > > org.apache.grails:grails-security-oauth2
> > > > org.apache.grails:grails-security-rest
> > > > org.apache.grails:grails-security-rest-data
> > > > org.apache.grails:grails-security-rest-grails-cache
> > > > org.apache.grails:grails-security-rest-memcached
> > > > org.apache.grails:grails-security-rest-redis
> > > > org.apache.grails:grails-security-ui
> > > >
> > > > org.apache.grails:grails-redis
> > > > org.apache.grails:grails-quartz
> > > >
> > > > Gianluca
> > > >
> > > > On Wed, 19 Mar 2025 at 17:10, Mattias Reichel <
> > mattias.reic...@gmail.com>
> > > > wrote:
> > > >
> > > > >
> > > > > org.apache.grails:grails-codecs
> > > > > org.apache.grails:grails-controllers
> > > > > org.apache.grails:grails-databinding
> > > > > org.apache.grails:grails-datasource
> > > > > org.apache.grails:grails-domain-class
> > > > > org.apache.grails:grails-i18n
> > > > > org.apache.grails:grails-interceptors
> > > > > org.apache.grails:grails-mimetypes
> > > > > org.apache.grails:grails-rest-responder
> > > > > org.apache.grails:grails-services
> > > > > org.apache.grails:grails-url-mappings
> > > > >
> > > > > org.apache.grails:grails-async
> > > > > org.apache.grails:grails-converters
> > > > > org.apache.grails:grails-events
> > > > > org.apache.grails:grails-sitemesh3
> > > > > org.apache.grails:grails-fields
> > > > > org.apache.grails:grails-views-gsp
> > > > > org.apache.grails:grails-views-gson
> > > > > org.apache.grails:grails-views-markup
> > > > > org.apache.grails:grails-scaffolding
> > > > >
> > > > > org.apache.grails:grails-data-hibernate5
> > > > > org.apache.grails:grails-data-hibernate6
> > > > > org.apache.grails:grails-data-migration-hibernate5
> > > > > org.apache.grails:grails-data-migration-hibernate6
> > > > > org.apache.grails:grails-data-mongodb
> > > > >
> > > > > org.apache.grails:grails-cache
> > > > > org.apache.grails:grails-geb
> > > > > org.apache.grails:grails-spring-security-acl
> > > > > org.apache.grails:grails-spring-security-cas
> > > > > org.apache.grails:grails-spring-security-core
> > > > > org.apache.grails:grails-spring-security-ldap
> > > > > org.apache.grails:grails-spring-security-oauth2
> > > > > org.apache.grails:grails-spring-security-rest
> > > > > org.apache.grails:grails-spring-security-rest-data
> > > > > org.apache.grails:grails-spring-security-rest-grails-cache
> > > > > org.apache.grails:grails-spring-security-rest-memcached
> > > > > org.apache.grails:grails-spring-security-rest-redis
> > > > > org.apache.grails:grails-spring-security-ui
> > > > >
> > > > > org.apache.grails:grails-redis
> > > > > org.apache.grails:grails-quartz
> > > > >
> > > > > Regards
> > > > > Mattias
> > > > >
> > > > > Den ons 19 mars 2025 kl 16:25 skrev James Daugherty
> > > > > <jdaughe...@jdresources.net.invalid>:
> > > > >
> > > > > > Some follow-up notes:
> > > > > >
> > > > > > > The artifactid containing grails-, grails-plugin-,
> > grails-profile- or
> > > > > > grails-gradle-plugin- is important so that the jar filename is
> > clear
> > > > and
> > > > > > descriptive when pulled from maven central and you are viewing
> > them in
> > > > a
> > > > > > fat jar/war or directory.   There are a few that do not have one of
> > > > these
> > > > > > prefixes and I think a prefix should be added to the artifactid.
> > > > > > 1. Did my table miss adding prefixes?  I think I added all of the
> > ones
> > > > I
> > > > > > was aware of ...
> > > > > > 2. I agree with you on the location - starting allows them to be
> > used
> > > > as
> > > > > a
> > > > > > prefix and allows discoverability via maven.
> > > > > >
> > > > > > >grails-gradle-plugins is slightly confusing when
> > > > > grails-gradle-plugin-*'s
> > > > > > exist.  Maybe something like
> > > > grails-gradle-plugin-core/base/main/common,
> > > > > > same for grails-gradle-view-plugins
> > > > > > grails-gradle-plugins isn't a gradle plugin.  It's the grouping
> > for all
> > > > > > gradle plugins under that given repo. This is what we often add to
> > the
> > > > > > classpath in buildScript to import all of the known plugins
> > > > > >
> > > > > > > grails-view-plugin- and grails-security-plugin-, should plugin
> > come
> > > > > > before view and security?  I agree with grails-gradle-plugin, but
> > am
> > > > > unsure
> > > > > > on these two.
> > > > > > I'm fine changing that, but shouldn't gorm & view be included in
> > this?
> > > > > > grails-plugin-gorm, grails-plugin-security, grails-plugin-view,
> > > > > > grails-plugin-gorm - how do these sound?
> > > > > >
> > > > > > > The 2 artifactids that start with views- should start with
> > > > > grails-views-
> > > > > > Can you identify these artifacts?  Are you talking about the gradle
> > > > > plugins
> > > > > > (we renamed these already) or something else?
> > > > > >
> > > > > > > I think org.apache.grails.forge:grails-cli should be
> > > > > > org.apache.grails.forge:grails-forge-cli.  This may be a good time
> > to
> > > > > > rename grails-shell to grails-shell-cli also.
> > > > > > I agree with these.
> > > > > >
> > > > > > > The long artifactids, like, org.grails.grails-gsp.gradle.plugin
> > ...
> > > > are
> > > > > > the way Gradle Plugins can be published to a non-Gradle Plugin
> > Portal
> > > > > > Are you sure about this statement?  I noticed the views plugins
> > > > (markup /
> > > > > > json) do not have this and they are used in projects without issue
> > -
> > > > > that's
> > > > > > why I proposed the change.
> > > > > >
> > > > > > > Can we standardize gorm-, grails-datastore-gorm-,
> > grails-gorm-plugin-
> > > > > and
> > > > > > grails-datastore- around grails-data- and grails-plugin-data-
> > > > > > So grails-plugin-gorm becomes grails-plugin-data?  That's
> > reasonable.
> > > > > For
> > > > > > the datastore & gorm, I think we need to work through each of these
> > > > since
> > > > > > for each gorm implementation there is often a base implementation
> > and
> > > > > then
> > > > > > a plugin that exposes that implementation and then there are the
> > base
> > > > > gorm
> > > > > > libraries that are considered part of the original data-mapping.
> > Can
> > > > you
> > > > > > enumerate what should be renamed to what?
> > > > > >
> > > > > > Regards,
> > > > > > James
> > > > > >
> > > > > >
> > > > > > On Wed, Mar 19, 2025 at 11:11 AM James Fredley <
> > > > jamesfred...@apache.org>
> > > > > > wrote:
> > > > > >
> > > > > > > I put a number of related details in my longer post.  In terms of
> > > > > > location
> > > > > > > of the word `plugin` in the artifactid, I prefer towards the
> > > > beginning
> > > > > vs
> > > > > > > at the end.  This makes grouping and search a bit simpler.  I we
> > go
> > > > > this
> > > > > > > direction, we need to make decisions on grails-view-plugin-,
> > > > > > > grails-gradle-plugin- and grails-security-plugin-.
> > > > > > >
> > > > > > > On 2025/03/19 13:02:18 Søren Berg Glasius wrote:
> > > > > > > > Hi,
> > > > > > > >
> > > > > > > > I agree on most, but wonder why there is inconsistency on some
> > of
> > > > the
> > > > > > > > plugin naming:
> > > > > > > >
> > > > > > > > org.grails.plugins fields org.apache.grails.plugins
> > > > > > grails-plugin-fields
> > > > > > > > grails-views
> > > > > > > > org.grails.plugins gsp org.apache.grails.plugins
> > > > > grails-view-plugin-gsp
> > > > > > > > grails-views
> > > > > > > > org.grails.plugins scaffolding org.apache.grails.plugins
> > > > > > > > grails-plugin-scaffolding grails-views
> > > > > > > > org.grails.plugins views-json org.apache.grails.plugins
> > > > > > > > grails-view-plugin-gson grails-views
> > > > > > > > org.grails views-core org.apache.grails views-core grails-views
> > > > > > > > org.grails views-json-testing-support org.apache.grails.testing
> > > > > > > > views-json-testing-support grails-views
> > > > > > > > org.grails views-markup org.apache.grails.plugins
> > > > > > > grails-view-plugin-markup
> > > > > > > > grails-views
> > > > > > > > IMO we should decide where the word *plugin* is placed in the
> > name.
> > > > > > > > Personally I'd prefer *grails-x-plugin*, and
> > *grails-view-x-plugin*
> > > > > (so
> > > > > > > > *grails-fields-plugin* and *grails-view-gsp-plugin* for
> > examples
> > > > and
> > > > > > > > perhaps *grails-view-core*) for consistency.
> > > > > > > >
> > > > > > > >  Just my 0.02€ worth.
> > > > > > > >
> > > > > > > >
> > > > > > > > Den ons. 19. mar. 2025 kl. 13.46 skrev James Daugherty
> > > > > > > > <jdaughe...@jdresources.net.invalid>:
> > > > > > > >
> > > > > > > > > Hi Everyone,
> > > > > > > > >
> > > > > > > > > Per previous meetings, we agreed to rename the maven
> > coordinates
> > > > as
> > > > > > > part of
> > > > > > > > > transitioning to the ASF.  During this renaming, we also set
> > out
> > > > > > > several
> > > > > > > > > requirements for being consistent with our group ids and
> > artifact
> > > > > > ids.
> > > > > > > > > Since these renames are going to be referenced heavily by
> > anyone
> > > > > > > upgrading
> > > > > > > > > to the ASF packages, I am proposing we create a 'RENAME.md'
> > > > > markdown
> > > > > > > file
> > > > > > > > > in the grails-core repository.  We can then later include
> > this
> > > > file
> > > > > > on
> > > > > > > the
> > > > > > > > > website, grails docs, etc.
> > > > > > > > >
> > > > > > > > > My attempt at mapping the new group ids and artifacts ids are
> > > > here:
> > > > > > > > >
> > > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > https://github.com/apache/grails-core/blob/9ac56cac136f5228d783bda5671a49d433901ba5/RENAME.md
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > The PR to add this file to grails-core is here:
> > > > > > > > > https://github.com/apache/grails-core/pull/14074/files
> > > > > > > > >
> > > > > > > > > Can people either comment on the PR or discuss here for the
> > > > > proposed
> > > > > > > > > renames?
> > > > > > > > >
> > > > > > > > > Regards,
> > > > > > > > > James
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > >
> > > > > > > > Med venlig hilsen,
> > > > > > > > Søren Berg Glasius
> > > > > > > >
> > > > > > > > Hedevej 1, Gl. Rye, 8680 Ry
> > > > > > > > Mobile: +45 40 44 91 88
> > > > > > > > --- Press ESC once to quit - twice to save the changes.
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> 

Reply via email to