-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1,891 changed files
with
2,687 additions
and
2,624 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,24 @@ | ||
[![Revved up by Gradle Enterprise](https://img.shields.io/badge/Revved%20up%20by-Gradle%20Enterprise-06A0CE?logo=Gradle&labelColor=02303A)](https://ge.grails.org/scans) | ||
|
||
#### Build Status | ||
- ![Java CI](https://github.com/grails/grails-core/workflows/Java%20CI/badge.svg) | ||
- ![Grails Joint Validation Build](https://github.com/grails/grails-core/workflows/Grails%20Joint%20Validation%20Build/badge.svg) | ||
|
||
#### Slack Signup | ||
- [Slack Signup](https://slack.grails.org/) | ||
|
||
Grails | ||
Grace Framework | ||
=== | ||
|
||
[Grails](https://grails.org/) is a framework used to build web applications with the [Groovy](https://groovy-lang.org/) programming language. The core framework is very extensible and there are numerous [plugins](https://plugins.grails.org/) available that provide easy integration of add-on features. | ||
|
||
Grails development is lead by the [Grails Foundation](https://grails.org/foundation/) and is sponsored by [Object Computing Inc.](https://objectcomputing.com/) in St. Louis Missouri. Please contact <[email protected]> for support inquiries. | ||
[Grace](https://graceframework.org/) is a framework used to build web applications with the [Groovy](https://groovy-lang.org/) programming language. The core framework is very extensible and there are numerous [plugins](https://plugins.graceframework.org/) available that provide easy integration of add-on features. | ||
|
||
Getting Started | ||
--- | ||
|
||
You need a Java Development Kit (JDK) installed, but it is not necessary to install Groovy because it's bundled with the Grails distribution. | ||
You need a Java Development Kit (JDK) installed, but it is not necessary to install Groovy because it's bundled with the Grace distribution. | ||
|
||
To install Grails, visit https://grails.org/download.html and download the version you would like to use. Set a `GRAILS_HOME` environment variable to point to the root of the extracted download and add `GRAILS_HOME/bin` to your executable `PATH`. Then in a shell, type the following: | ||
To install Grace, visit https://graceframework.org/download.html and download the version you would like to use. Set a `GRACE_HOME` environment variable to point to the root of the extracted download and add `GRACE_HOME/bin` to your executable `PATH`. Then in a shell, type the following: | ||
|
||
grails create-app sampleapp | ||
grace create-app sampleapp | ||
cd sampleapp | ||
grails run-app | ||
grace run-app | ||
|
||
To build Grails, clone this GitHub repository and execute the install Gradle target: | ||
To build Grace, clone this GitHub repository and execute the install Gradle target: | ||
|
||
git clone https://github.com/grails/grails-core.git | ||
cd grails-core | ||
./gradlew install | ||
git clone https://github.com/graceframework/grace-framework.git | ||
cd grace-framework | ||
./gradlew pTML zipDist | ||
|
||
If you encounter out of memory errors when trying to run the install target, try adjusting Gradle build settings. For example: | ||
|
||
|
@@ -43,20 +32,4 @@ See [RELEASE.md](RELEASE.md). | |
License | ||
--- | ||
|
||
Grails and Groovy are licensed under the terms of the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.html). | ||
|
||
*** | ||
|
||
YourKit is kindly supporting Grails open source projects with its full-featured Java Profiler. | ||
YourKit, LLC is the creator of innovative and intelligent tools for profiling | ||
Java and .NET applications. Take a look at YourKit's leading software products: | ||
[YourKit Java Profiler](https://www.yourkit.com/java/profiler/features/) and | ||
[YourKit .NET Profiler](https://www.yourkit.com/.net/profiler/features/). | ||
|
||
Dependencies | ||
--- | ||
|
||
**Gradle Plugins** | ||
|
||
* SDKMAN! Vendor Plugin [Github](https://github.com/sdkman/sdkman-vendor-gradle-plugin). | ||
* Gradle Nexus Staging Plugin [Github](https://github.com/Codearte/gradle-nexus-staging-plugin) | ||
Grace is licensed under the terms of the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.html). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -31,17 +31,17 @@ ext { | |
homeSrcDir = file("src") | ||
} | ||
|
||
ext."signing.keyId" = System.getenv("SIGNING_KEY") ?: project.hasProperty("signing.keyId") ? project.getProperty('signing.keyId') : null | ||
ext."signing.password" = System.getenv("SIGNING_PASSPHRASE") ?: project.hasProperty("signing.password") ? project.getProperty('signing.password') : null | ||
ext."signing.secretKeyRingFile" = project.hasProperty("signing.secretKeyRingFile") ? project.getProperty('signing.secretKeyRingFile') : null | ||
|
||
// Groovy is added as a dependency to both the 'groovy' and 'compile' | ||
// configurations, so place the dependency in a shared variable. The | ||
// 'compile' is required so that Groovy appears as a dependency in the | ||
// artifacts' POMs. | ||
ext.jointBuildGroovyJarProperty = System.getProperty('groovy.jar') | ||
ext.groovyDependency = null | ||
|
||
ext."signing.keyId" = System.getenv("SIGNING_KEY") ?: project.hasProperty("signing.keyId") ? project.getProperty('signing.keyId') : null | ||
ext."signing.password" = System.getenv("SIGNING_PASSPHRASE") ?: project.hasProperty("signing.password") ? project.getProperty('signing.password') : null | ||
ext."signing.secretKeyRingFile" = project.hasProperty("signing.secretKeyRingFile") ? project.getProperty('signing.secretKeyRingFile') : null | ||
|
||
if (jointBuildGroovyJarProperty) { | ||
def jointBuildGroovyJar = file(jointBuildGroovyJarProperty) | ||
if (jointBuildGroovyJar.exists()) { | ||
|
@@ -57,37 +57,34 @@ if (jointBuildGroovyJarProperty) { | |
} | ||
|
||
version = grailsVersion | ||
group = "org.grails" | ||
group = "org.graceframework" | ||
|
||
apply plugin: 'idea' | ||
apply plugin: 'maven-publish' | ||
apply plugin: "io.github.gradle-nexus.publish-plugin" | ||
|
||
if (isReleaseVersion) { | ||
apply plugin: 'maven-publish' | ||
apply plugin: "io.github.gradle-nexus.publish-plugin" | ||
|
||
nexusPublishing { | ||
repositories { | ||
sonatype { | ||
def ossUser = System.getenv("SONATYPE_USERNAME") ?: project.hasProperty("sonatypeOssUsername") ? project.sonatypeOssUsername : '' | ||
def ossPass = System.getenv("SONATYPE_PASSWORD") ?: project.hasProperty("sonatypeOssPassword") ? project.sonatypeOssPassword : '' | ||
def ossStagingProfileId = System.getenv("SONATYPE_STAGING_PROFILE_ID") ?: project.hasProperty("sonatypeOssStagingProfileId") ? project.sonatypeOssStagingProfileId : '' | ||
nexusUrl = uri("https://s01.oss.sonatype.org/service/local/") | ||
username = ossUser | ||
password = ossPass | ||
stagingProfileId = ossStagingProfileId | ||
} | ||
nexusPublishing { | ||
repositories { | ||
sonatype { | ||
def ossUser = System.getenv("SONATYPE_USERNAME") ?: project.hasProperty("sonatypeOssUsername") ? project.sonatypeOssUsername : '' | ||
def ossPass = System.getenv("SONATYPE_PASSWORD") ?: project.hasProperty("sonatypeOssPassword") ? project.sonatypeOssPassword : '' | ||
def ossStagingProfileId = System.getenv("SONATYPE_STAGING_PROFILE_ID") ?: project.hasProperty("sonatypeOssStagingProfileId") ? project.sonatypeOssStagingProfileId : '' | ||
nexusUrl = uri("https://s01.oss.sonatype.org/service/local/") | ||
snapshotRepositoryUrl = uri("https://s01.oss.sonatype.org/content/repositories/snapshots/") | ||
username = ossUser | ||
password = ossPass | ||
stagingProfileId = ossStagingProfileId | ||
} | ||
} | ||
|
||
transitionCheckOptions { | ||
maxRetries.set(40) | ||
delayBetween.set(java.time.Duration.ofMillis(2000)) | ||
} | ||
transitionCheckOptions { | ||
maxRetries.set(40) | ||
delayBetween.set(java.time.Duration.ofMillis(2000)) | ||
} | ||
} | ||
|
||
allprojects { | ||
repositories { | ||
mavenLocal() | ||
mavenCentral() | ||
maven { url "https://plugins.gradle.org/m2/" } | ||
maven { url "https://repo.grails.org/grails/core" } | ||
|
@@ -132,18 +129,20 @@ apply from: "gradle/idea.gradle" | |
|
||
subprojects { project -> | ||
version = grailsVersion | ||
group = "org.grails" | ||
group = "org.graceframework" | ||
|
||
configurations { | ||
documentation | ||
} | ||
|
||
ext.isTestSuite = project.name.startsWith("grails-test-suite") | ||
ext.isTestSuite = project.name.startsWith("grace-test-suite") | ||
ext.isCiBuild = project.hasProperty("isCiBuild") || System.getenv().get("CI") as Boolean | ||
ext.pomInfo = { | ||
delegate.name 'Grails Framework' | ||
delegate.description 'Grails Web Application Framework' | ||
delegate.url 'https://grails.org/' | ||
if (project.name != 'grace-gradle-plugin') { | ||
delegate.name 'Grace' | ||
delegate.description 'Grace Web Application Framework' | ||
} | ||
delegate.url 'https://github.com/graceframework/grace-framework' | ||
|
||
delegate.licenses { | ||
delegate.license { | ||
|
@@ -154,9 +153,9 @@ subprojects { project -> | |
} | ||
|
||
delegate.scm { | ||
delegate.url 'scm:[email protected]:rainboyan/grails-framework.git' | ||
delegate.connection 'scm:[email protected]:rainboyan/grails-framework.git' | ||
delegate.developerConnection 'scm:[email protected]:rainboyan/grails-framework.git' | ||
delegate.url 'scm:[email protected]:graceframework/grace-framework.git' | ||
delegate.connection 'scm:[email protected]:graceframework/grace-framework.git' | ||
delegate.developerConnection 'scm:[email protected]:graceframework/grace-framework.git' | ||
} | ||
|
||
delegate.developers { | ||
|
@@ -204,40 +203,31 @@ subprojects { project -> | |
} | ||
|
||
if (!isTestSuite) { | ||
publishing { | ||
if (isBuildSnapshot) { | ||
repositories { | ||
maven { | ||
credentials { | ||
def u = System.getenv("ARTIFACTORY_USERNAME") ?: project.hasProperty("artifactoryPublishUsername") ? project.artifactoryPublishUsername : '' | ||
def p = System.getenv("ARTIFACTORY_PASSWORD") ?: project.hasProperty("artifactoryPublishPassword") ? project.artifactoryPublishPassword : '' | ||
username = u | ||
password = p | ||
} | ||
url "https://repo.grails.org/grails/libs-snapshots-local" | ||
} | ||
} | ||
} | ||
|
||
if (project.name in ['grails-bom', 'grails-dependencies', 'grails-gradle-plugin']) return | ||
|
||
publishing { | ||
publications { | ||
mavenJava(MavenPublication) { | ||
maven(MavenPublication) { | ||
from components.java | ||
|
||
pom.withXml { | ||
def xml = asNode() | ||
if (project.name != 'grace-gradle-plugin') { | ||
pom.withXml { | ||
def xml = asNode() | ||
|
||
xml.children().last() + pomInfo | ||
xml.children().last() + pomInfo | ||
} | ||
} | ||
} | ||
} | ||
} | ||
|
||
// signing { | ||
// required { isReleaseVersion && gradle.taskGraph.hasTask("publish") } | ||
// sign publishing.publications.mavenJava | ||
// } | ||
afterEvaluate { | ||
if (project.name != 'grace-gradle-plugin') { | ||
signing { | ||
required { isReleaseVersion && gradle.taskGraph.hasTask("publish") } | ||
sign publishing.publications.maven | ||
} | ||
} | ||
} | ||
|
||
tasks.withType(Sign) { | ||
onlyIf { isReleaseVersion } | ||
|
@@ -259,18 +249,36 @@ subprojects { project -> | |
|
||
} | ||
|
||
if (project.name in ['grails-bom', 'grails-dependencies']) return | ||
if (project.name == 'grace-dependencies') return | ||
if (project.name == 'grace-bom') return | ||
|
||
sourceCompatibility = 11 | ||
targetCompatibility = 11 | ||
|
||
jar { | ||
if (project.name =~ /^(grace-web|grace-plugin-|grace-test-suite|grace-test)/) { | ||
dependencies { | ||
api libs.javax.servlet | ||
// MockHttpServletRequest/Response/Context used in many classes | ||
api libs.spring.test, { | ||
exclude group: 'commons-logging', module:'commons-logging' | ||
} | ||
} | ||
} | ||
|
||
if (project.name =~ /^(grace-plugin-datasource|grace-test-suite)/) { | ||
dependencies { | ||
testImplementation libs.hsqldb | ||
testImplementation libs.h2 | ||
} | ||
} | ||
|
||
jar{ | ||
manifest.mainAttributes( | ||
"Built-By": System.properties['user.name'], | ||
"Created-By": System.properties['java.vm.version'] + " (" + System.properties['java.vm.vendor'] + ")", | ||
"Implementation-Title": "Grails Framework", | ||
"Implementation-Title": "Grace", | ||
"Implementation-Version": grailsVersion, | ||
"Implementation-Vendor": 'grails.org') | ||
"Implementation-Vendor": 'graceframework.org') | ||
} | ||
|
||
checkstyle { | ||
|
@@ -298,14 +306,11 @@ subprojects { project -> | |
groovyOptions.fork(memoryInitialSize: '128M', memoryMaximumSize: '1G') | ||
groovyOptions.encoding = "UTF-8" | ||
options.encoding = "UTF-8" | ||
options.deprecation = true | ||
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" | ||
} | ||
|
||
configure([compileJava, compileTestJava]) { | ||
options.deprecation = true | ||
options.debug = true | ||
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" | ||
} | ||
|
||
configure([groovydoc]) { | ||
|
@@ -339,7 +344,7 @@ subprojects { project -> | |
testImplementation libs.junit.platform.runner | ||
testRuntimeOnly libs.junit.jupiter.engine | ||
|
||
if (project.name != "grails-docs") { | ||
if (project.name != "grace-docs") { | ||
// Logging | ||
api libs.slf4j.api | ||
api libs.slf4j.jcl | ||
|
@@ -405,7 +410,11 @@ subprojects { project -> | |
configurations { | ||
meta | ||
published.extendsFrom archives, meta | ||
all*.exclude group:'commons-logging', module: 'commons-logging' | ||
testRuntimeOnly { | ||
exclude group: 'commons-logging', module: 'commons-logging' | ||
exclude group: 'org.grails', module: 'grails-bootstrap' | ||
exclude group: 'org.grails', module: 'grails-core' | ||
} | ||
} | ||
|
||
if (!isTestSuite) { | ||
|
@@ -470,8 +479,8 @@ sdkman { | |
api = "https://vendors.sdkman.io" | ||
consumerKey = System.getenv("GVM_SDKVENDOR_KEY") ?: project.hasProperty("gvmSdkvendorKey") ? project.gvmSdkvendorKey : '' | ||
consumerToken = System.getenv("GVM_SDKVENDOR_TOKEN") ?: project.hasProperty("gvmSdkvendorToken") ? project.gvmSdkvendorToken : '' | ||
candidate = "grails" | ||
candidate = "grace" | ||
version = project.version | ||
url = "https://github.com/grails/grails-core/releases/download/v${project.version}/grails-${project.version}.zip" | ||
url = "https://github.com/graceframework/grace-framework/releases/download/v${project.version}/grace-${project.version}.zip" | ||
hashtag = "#grailsfw" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
## grails-api | ||
## grace-api | ||
|
||
This subproject contains much of the code for the Core API of Grails. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
## grails-bom | ||
## grace-bom | ||
|
||
Build support for generating the Maven bill of materials. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,3 @@ | ||
## grails-boot | ||
## grace-boot | ||
|
||
This subproject contains much of the code for the core of Grails support Spring Boot. |
Oops, something went wrong.