Grails Engineering Meeting Notes (03 18 2021) - grails/grails-core GitHub Wiki

Date: 03/18/2021

Attendees

  • Puneet Behl
  • David Estes
  • Jason Schindler
  • James Kleeh

Agenda

  • Grails Plugin Publishing
  • Current Development Activities
  • Open Discussion

Grails Plugin Publishing

  • David: I think we are missing some information that we need before publishing the article for publishing plugins like how to send the metadata to the plugin portal.
  • David: We should also include information about publishing a public GPG key
  • Puneet: I think that would be good information to include and I'm hoping to have something out here tomorrow
  • James: I think we should release information about publishing soon because that is the first step
  • Puneet: I originally linked to other documentation for things like GPG and didn't describe it much
  • James: I think linking out to other documentation is probably better so that our document doesn't get out of date
  • David: The GPG key publishing caught me off guard because it wasn't referenced in the documentation
  • James: I'm OK with including that, I just don't want us to duplicate common information.
  • James: Historically, it was our responsibility to tell users how to publish plugins because it was our infrastructure, but now it is more about getting users over that initial hurdle of the transition period. After that how they publish to Maven Central isn't really our responsibility
  • David: If you don't make it easy, people will no longer contribute to Grails, and right now it is not easy.
  • David: I have 27 plugins to publish. Once I get the process down it won't be a big deal
  • David: If I was brand new I would find this frustrating
  • David: Another option is to do this the way we did with Grails 2
  • James: We evaluated that and decided against it due to the amount of maintenance involved and it makes us more reliant on JFrog
  • David: I missed that meeting and after going through this I disagree 100%
  • David: I think that there will basically be existing plugins being maintained and not much new coming in.
  • Puneet: I'd like to add that we are not forcing anyone in the community to publish to Maven Central.
  • Puneet: We are providing information on how to do that because we think it is the best option.
  • Puneet: People can publish to anywhere that they have access as long as we add the metadata to the JSON for the plugin portal
  • David: I know we have to deal with Maven Central for now, but I feel like we need to think about a longer term solution.
  • David: Maven Central is just a HTTP Server right?
  • James: At its core it is, but there is a lot more around permissions and metadata
  • David: We could make our own Cloud Front Micronaut S3 repository as an alternative option. I don't think that is a bad idea
  • Jason: I don't think we should take that on right now
  • David: Maven Central is the only short-term answer
  • David: The reason I'm being opinionated about this is I really want to make sure we provide as easy of a way as possible for developers to contribute to Grails
  • David: Can we update the create-plugin profile to include all of this stuff?
  • Puneet: Yes, that is the plan
  • James: We can include a README in the create-plugin result that includes this information
  • Puneet: The thing I don't like about this is that some people would rather publish to GitHub or other places
  • James: You could potentially have a feature for Maven publishing and another for GitHub publishing
  • David: That's a good idea
  • James: Generally, I think the default should be Maven Central
  • David: Did you see that there is a new URL that they are putting new users on?
  • James: Are you referring to s01?
  • David: Yeah

Current Development Activities

David

  • I sent some PRs to Grails GSP and it looks like Travis is broken
    • Puneet: I think GSP is using GitHub Actions. I'll check that

Puneet

  • Last week I worked on Grails Forge. It wasn't seeing the latest Grails 4 release because it was trying to use Bintray
  • I also filtered the versions that you will see on Grails Forge to the latest versions
  • I'm working on the Grails plugin portal to start using metadata from GitHub instead of Bintray. That will probably be done this week

James

  • There is some logic for cascading in Gorm for Mongo that will always cascade on insert no matter what
  • Even if you set cascade to none, it still does the cascade
  • Should we fix this, and what version should the fix be in?
  • Puneet: It sounds like a bug and I think we should fix it
  • David: This sounds like a minor thing, I think it could be a patch release
  • James: I'll do a PR and maybe when I go to make the change it will make sense to me why we always do cascade on inserts