grails-core
grails-core copied to clipboard
Document Plugin Best Practices
Issue description
Throughout the upgrade of Grails 7, we have discovered several best practices for plugins. The purpose of this ticket is to document those practices and add a section to the Grails Guide for guidance. The intent is to limit the need to update these plugins in the future via this guidance.
Some of these practices include:
- using provided scopes such as 'compileOnly' to not tie to a specific coordinate name
- splitting the plugin logic from it's examples. i.e. the plugin gradle project should only include plugin code
- ensuring github actions are setup to build your plugin
- using grailsPublish to ensure your sources, javadoc, groovydoc, etc are published correctly
https://github.com/apache/grails-core/discussions/15044 - includes this list for now, it should like make it into https://grails.apache.org/docs/snapshot/guide/plugins.html