Skip to content
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

Rename Project #83

Closed
JasonTypesCodes opened this issue Nov 28, 2022 · 3 comments
Closed

Rename Project #83

JasonTypesCodes opened this issue Nov 28, 2022 · 3 comments

Comments

@JasonTypesCodes
Copy link

Issue description

Hello @rainboyan .

I've been following your work on Twitter and I think it is great that you have an interest in growing and evolving the Grails framework codebase.

On Twitter, and in some commits within your forked repo, you have been referring to this project as "Grails 2022".

The Grails framework is an open source project released under the Apache 2 license which affords you the right to fork, modify, and redistribute the source code with your modifications.

While the Grails framework is available under an open source software license, that license does not include the right or license to use Grails trademarks, which includes the word "Grails".

For more information, please see the Grails Foundation's Trademark Policy. In particular, this line:

§ You may not use one or more Grails trademarks, or anything similar, in the name or logo of forked software projects.

What I would prefer, is that we work together to bring some of your ideas into the Grails framework. To that end, I'd like to re-extend the invitation that I sent you privately for you to meet with the Grails Foundation's core development team to talk through some of your ideas and to explore and kick-off opportunities for you to contribute many of them directly to the Grails codebase.

If you would prefer to work on your own and release your own framework forked from the Grails codebase, please rename your project so that it follows the Trademark Policy of the Grails Foundation and can't be confused as being supported, backed, or otherwise affiliated with the Grails Foundation.

If you do choose to fork the framework, presuming you continue to release your modifications as open source, we will watch your progress and may incorporate some of your additions in to the Grails framework.

@rainboyan
Copy link
Owner

Hi @JasonTypesCodes,
As you requested, I've deleted all my tweets about "Grails 2022" and changed the name of this project.
Hope this can make up for my mistake. If there is any need to give feedback to the framework, I am also happy to contribute.

@JasonTypesCodes
Copy link
Author

Hello @rainboyan ,

I'm really looking forward to working with you on advancements in the Grails framework! I've started a discussion with our dev team around the ideas that you've shared with me and I think this will ultimately result in a big win for the Grails community. Thank you!

I want to be clear in that I didn't request for you to delete your tweets, but I do appreciate your efforts toward minimizing confusion around the source repos and development efforts of the Grails Foundation.

Thank you again for all of your efforts!

@rainboyan
Copy link
Owner

The following is from my email reply with Jason and Puneet. We also tried to communicate and collaborate on Grails improvements, but we were slow to move forward on specific issues, and then we stopped, I closed most of the issues I had raised. I didn't think we agreed on feature priorities and development goals, and then I started developing on my own.


The following are some issues I submitted on several Grails projects, some of which were directly submitted as PRs, which did not include the merged PRs I submitted.

  1. Upgrade Bootstrap to 5.1.3
    Upgrade Bootstrap to 5.1.3 grails-profiles/web#33

On Grails supporting Bootstrap, the previous version has not been upgraded to the latest version. I submitted a PR to upgrade to 4.6.1, but the overall development experience is very bad, and the code of several projects needs to be modified, including Base, Web, Scaffolding, I think the design of this Profile is not suitable, it is difficult to maintain, and it is not conducive to third-party developers to expand. You can refer to the web-bootstrap that I modified directly based on the base. I hope to support more front-end framework options, but it is also difficult to deal with the integration using feature in Profile.

  1. Upgrade to Groovy 3.0.7 and Grails 5.0.x, and lasted version of rxjava1, rxjava2
    Upgrade to Groovy 3.0.7 and Grails 5.0.x, and lasted version of rxjava1, rxjava2 grails/grails-async#38

This issue is submitted because the library has not updated the dependency version for a long time, and it does not support rxjava3, and reactor

  1. Grails app should auto import spring component
    Grails app should auto import spring component grails/grails-core#12389

I have never understood why Grails has not supported @ComponentScan for a long time. Of course, more importantly, Grails still uses EnableWebAutoConfiguration. This annotation has great limitations. Spring Boot does not recommend it. I guess this has something to do with Grails Controllers plug-in design.

  1. Gradle plugin 5.1.x compile profile errors
    Gradle plugin 5.1.x compile profile errors grails/grails-gradle-plugin#94

After submitting this question, no one responded, maybe the developer does not need to customize the Profile

  1. Improvement: allow grails-profile plugin contains groovy source files
    Improvement: allow grails-profile plugin contains groovy source files grails/grails-gradle-plugin#95

This feature is useful for providing custom commands in profile, the existing commands are very limited.

  1. Upgrade to Gradle 7
    Upgrade to Gradle 7 grails/grails-gradle-plugin#99

After this question was submitted, no one responded. As Gradle is used every day, a lot of warning messages are prompted, which greatly affects the development experience. However, the upgrade involves multiple projects, and the workload may be relatively large.

  1. Performance Improvement: Enable Lazy Initialization
    Performance Improvement: Enable Lazy Initialization grails/grails-core#12500

This problem is also related to grails#12389. The answer given at the beginning is related to performance. Later, I compared some data and found that performance is not a problem. I also submitted a PR and never got a reply to merge it.

  1. BeanPostProcessorChecker detected Grails Beans are not eligible for getting processed by all BeanPostProcessors
    BeanPostProcessorChecker detected Grails Beans are not eligible for getting processed by all BeanPostProcessors grails/grails-core#12534

This problem has always existed in all versions from Grails 3 to 5. Has no one noticed that this is a BUG?

  1. DefaultGrailsPluginManager: Add necessary log information when loading plugins
    DefaultGrailsPluginManager: Add necessary log information when loading plugins grails/grails-core#12538

When I first submitted this question, I wanted to monitor Grails plugin loading performance data, but there are better ways to monitor performance.

  1. Improvement: Make GrailsApplicationPostProcessor implements Ordered
    Improvement: Make GrailsApplicationPostProcessor implements Ordered grails/grails-core#12540

As one of the most important classes in Grails, GrailsApplicationPostProcessor has a lot of room for improvement.

  1. Allow defining localeResolver in Configuration
    Allow defining localeResolver in Configuration grails/grails-core#12471

I submitted a PR for this issue, but it is difficult to solve. The main reason is that Grails does not use Spring's Configuration mechanism.

There are some others, I didn't submit issues, because most of them were submitted, and they were not discussed. The core developers don't seem to have time to deal with them, maybe they are understaffed. In addition, the community does not seem to care about these issues. Most of the issues focus on the maintenance of old plug-ins and the upgrade of third-party libraries. The biggest upgrade may be Groovy and Spring Framework, Spring Boot, but it was not upgraded in time, and it was about a month behind.Of course, I also know that this is an open source project after all, and the project maintainer has the right to decide the priority of the problem and the processing result.So forgive me for not being malicious and disrespectful.In fact, this framework has brought together so many excellent developers, and this project has attracted much attention in the past 10 years.

Another big topic is the relationship between Grails and Micronaut. Grails is built on Spring Framework and Spring Boot, but it has limited support for new features of the framework, which has hardly changed in recent years. After integrating Micronaut, the performance has improved, but in terms of use, the documentation is not detailed enough and there are few examples. I hope that the integration of Micronaut is optional, because Micronaut and Spring have many overlapping libraries, and it should be left to the developer to choose which to use.

There are still many details, such as Grails Banner, Console, etc., which are reflected in the ease of use and experience of the framework. I think it is also worthy of attention, after all, developers use it every day.

Finally, I deleted some of the tweets I had post about Grails in the last few days, and also changed the project name.

The above content, maybe my expression may be wrong in terms of wording, but I really hope that Grails can get better, and the Grails community to get better. In case you don't believe it, I've been using Grails since before 1.0, and have followed the Groovy and Grails communities since then.I also publish a lot of articles and news about Groovy and Grails on social platforms and blogs to promote Groovy and Grails so that more developers can use them.

As you requested, I've deleted all my tweets about "Grails 2022" and changed the name of the project.
Hope this can make up for my mistake. If there is any need to give feedback to the framework, I am also happy to contribute.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants