diff --git a/.gitignore b/.gitignore index 6825501a..0d7bc0dd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ +/plugin/buildSrc/out/ /plugin/out/ /site/.frontend-gradle-plugin /site/.nuxt/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6a5e683f..0061601c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -110,7 +110,7 @@ gradlew pluginUnderTestMetadata ## Continuous integration The project relies on [GitHub Actions][github-actions] to integrate continuously every changes (pull requests) in the -repository. The configuration actually allows to build and test the plugin with Adoptium Temurin JDK 11 64 bits, on the +repository. The configuration actually allows to build and test the plugin with Adoptium Temurin JDK 17 64 bits, on the environments below: - Linux Ubuntu 22.04.2 @@ -118,7 +118,7 @@ environments below: - Windows Server 2022 Ubuntu is the reference O/S, used to analyze the source code with SonarCloud. Developments are frequently done on a -Windows 10 Professionnal workstation with Adoptium Temurin JDK 11 64 bits and [IntelliJ IDEA][intellij-idea]. +Windows 10 Professionnal workstation with Adoptium Temurin JDK 17 64 bits and [IntelliJ IDEA][intellij-idea]. [apache-commons-compress]: (Apache Commons Compress) [apache-http-components]: (Apache HttpComponents) diff --git a/README.md b/README.md index 46ff13fb..f07ceee2 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Latest release 7.0.0 License Apache 2.0
- Build status + Build status Quality gate status Code coverage Reliability diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 249e5832..c1962a79 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1f017e4e..8707e8b5 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-all.zip +networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index a69d9cb6..aeb74cbb 100644 --- a/gradlew +++ b/gradlew @@ -55,7 +55,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -80,13 +80,10 @@ do esac done -APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit - -APP_NAME="Gradle" +# This is normally unused +# shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum @@ -143,12 +140,16 @@ fi if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then case $MAX_FD in #( max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 MAX_FD=$( ulimit -H -n ) || warn "Could not query maximum file descriptor limit" esac case $MAX_FD in #( '' | soft) :;; #( *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 ulimit -n "$MAX_FD" || warn "Could not set maximum file descriptor limit to $MAX_FD" esac @@ -193,6 +194,10 @@ if "$cygwin" || "$msys" ; then done fi + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + # Collect all arguments for the java command; # * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of # shell script including quotes and variable substitutions, so put them in diff --git a/gradlew.bat b/gradlew.bat index f127cfd4..93e3f59f 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -26,6 +26,7 @@ if "%OS%"=="Windows_NT" setlocal set DIRNAME=%~dp0 if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% diff --git a/site/src/components/property/node-install-directory-property.vue b/site/src/components/property/node-install-directory-property.vue index 7623051e..a454679c 100644 --- a/site/src/components/property/node-install-directory-property.vue +++ b/site/src/components/property/node-install-directory-property.vue @@ -12,7 +12,7 @@ file("${projectDir}/node")). When property is true, this property may be used to point the directory where the distribution is already installed. If null, the - plugin will try to find the installation directory with the FGP_NODEJS_HOME environment + plugin tries to find the installation directory with the FGP_NODEJS_HOME environment variable.

diff --git a/site/src/components/task/install-frontend-task.vue b/site/src/components/task/install-frontend-task.vue index 63a037cd..c2347ea6 100644 --- a/site/src/components/task/install-frontend-task.vue +++ b/site/src/components/task/install-frontend-task.vue @@ -32,8 +32,10 @@ task). Resolving these inputs/outputs is a bit complex, since it depends on the package manager used, the value of the property, and the files present in the project. - That's why incremental build for this task is not supported by now. Hereafter are some - guidelines to help adding custom inputs and outputs under certain circumstances: + That's why incremental build for this task is not available out-of-the-box by now. However, + some examples provide guidelines + to customize this task and limit executions under certain circumstances. Notes hereafter provide + also some unofficial ideas:

  • : inputs may be one or @@ -43,9 +45,8 @@ node_modules directory and the package-lock.json file (see npm install). - The set of input files also depends on the command run. For example, if the - property is set with - run ci, files npm-shrinkwrap.json and + If the property is set with + ci, files npm-shrinkwrap.json and package-lock.json may be the only possible input file, if one or the other exists, and the node_modules directory the only output.
  • @@ -57,8 +58,9 @@
  • : inputs may be one or more of files package.json, yarn.lock, while outputs may be the - node_modules directory or the .pnp.cjs file - () and the + node_modules directory, or the .pnp.cjs file + and the .yarn/cache directory + (), and the yarn.lock file.
diff --git a/site/src/pages/getting-started.vue b/site/src/pages/getting-started.vue index e66ba926..b42160b7 100644 --- a/site/src/pages/getting-started.vue +++ b/site/src/pages/getting-started.vue @@ -7,8 +7,8 @@ The following tools must be installed to use the plugin:

    -
  • 6.1+
  • -
  • JDK 11+ 64 bits
  • +
  • JDK 17 build: 7.3+
  • +
  • JDK 11 build: 6.1+

The plugin is built and tested on Linux, Mac OS, Windows (see the list of build environments used in @@ -38,12 +38,16 @@ @@ -77,11 +85,15 @@ apply plugin: 'org.siouan.frontend-jdk11' url = uri("https://plugins.gradle.org/m2/") } dependencies { + // For JDK 17+ + classpath("org.siouan:frontend-gradle-plugin-jdk17:7.0.0") // For JDK 11+ classpath("org.siouan:frontend-gradle-plugin-jdk11:7.0.0") } } +// For JDK 17+ +apply(plugin = "org.siouan.frontend-jdk17") // For JDK 11+ apply(plugin = "org.siouan.frontend-jdk11")