That is a great point about the profile not being included in the final 
distribution. 

consolidation of the profiles would be great.  Do you have any time to work on 
this task?

On 2025/03/20 00:48:09 Michael Yan wrote:
> If using  'org.apache.grails.profiles'  as groupId, why do we need to add
> the prefix grails-profile-? The profile artifact will not be packaged in
> the final distributions.
> Also I think we don't need so many profiles, some of theme can be merged,
> included base. Maybe we also can make angular, react, vue just be optional
> features.
> 
> web = base + (web / web-plugin / rest-api)
> 
> 
> | org.grails.profiles                | angular
>             | org.apache.grails.profiles | grails-profile-angular
>            |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | base
>            | org.apache.grails.profiles | grails-profile-base
>           |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | plugin
>            | org.apache.grails.profiles | grails-profile-plugin
>           |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | profile
>             | org.apache.grails.profiles | grails-profile-core
>             |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | react
>             | org.apache.grails.profiles | grails-profile-react
>            |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | rest-api
>            | org.apache.grails.profiles | grails-profile-rest-api
>           |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | rest-api-plugin
>             | org.apache.grails.profiles | grails-profile-rest-api-plugin
>            |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | vue
>             | org.apache.grails.profiles | grails-profile-vue
>            |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | web
>             | org.apache.grails.profiles | grails-profile-web
>            |                        |                          |
> grails-profiles        |
> | org.grails.profiles                | web-plugin
>            | org.apache.grails.profiles | grails-profile-web-plugin
>           |                        |                          |
> grails-profiles        |
> 
> James Fredley <jamesfred...@apache.org> 于2025年3月20日周四 08:43写道:
> 
> > 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