From a0940eb98a4bdbff6412a9d285ede36d55a642ed Mon Sep 17 00:00:00 2001 From: Marcus Lagergren <1062473+lagergren@users.noreply.github.com> Date: Mon, 6 Jul 2026 13:50:07 +0200 Subject: [PATCH 1/3] Upgrade Gradle to 9.6.1 --- CardGame/gradle/wrapper/gradle-wrapper.jar | Bin 45633 -> 48462 bytes .../gradle/wrapper/gradle-wrapper.properties | 4 +- CardGame/gradlew | 6 +-- CardGame/gradlew.bat | 35 ++++++------------ gradle/wrapper/gradle-wrapper.properties | 6 +-- gradlew | 4 +- gradlew.bat | 4 +- 7 files changed, 25 insertions(+), 34 deletions(-) diff --git a/CardGame/gradle/wrapper/gradle-wrapper.jar b/CardGame/gradle/wrapper/gradle-wrapper.jar index f8e1ee3125fe0768e9a76ee977ac089eb657005e..b1b8ef56b44f16b14dc800fa8103a6d89abb526f 100644 GIT binary patch delta 39839 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 Nq7gt%)$b|i{{Upf@NED9 delta 37062 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 echo Please set the JAVA_HOME variable in your environment to match the 1>&2 echo location of your Java installation. 1>&2 -goto fail +"%COMSPEC%" /c exit 1 :findJavaFromJavaHome set JAVA_HOME=%JAVA_HOME:"=% @@ -65,29 +65,18 @@ echo. 1>&2 echo Please set the JAVA_HOME variable in your environment to match the 1>&2 echo location of your Java installation. 1>&2 -goto fail +"%COMSPEC%" /c exit 1 :execute @rem Setup the command line -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* +@rem Execute gradlew +@rem endlocal doesn't take effect until after the line is parsed and variables are expanded +@rem which allows us to clear the local environment before executing the java command +endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel -:end -@rem End local scope for the variables with windows NT shell -if %ERRORLEVEL% equ 0 goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -set EXIT_CODE=%ERRORLEVEL% -if %EXIT_CODE% equ 0 set EXIT_CODE=1 -if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% -exit /b %EXIT_CODE% - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +:exitWithErrorLevel +@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts +"%COMSPEC%" /c exit %ERRORLEVEL% diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4f5ceb6..a9db115 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,9 +1,9 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.0-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip networkTimeout=10000 -retries=3 -retryBackOffMs=1000 +retries=0 +retryBackOffMs=500 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index b9bb139..249efbb 100755 --- a/gradlew +++ b/gradlew @@ -20,7 +20,7 @@ ############################################################################## # -# Gradle start up script for POSIX generated by Gradle. +# gradlew start up script for POSIX generated by Gradle. # # Important for running: # @@ -29,7 +29,7 @@ # bash, then to run this script, type that shell name before the whole # command line, like: # -# ksh Gradle +# ksh gradlew # # Busybox and similar reduced shells will NOT work, because this script # requires all of these POSIX shell features: diff --git a/gradlew.bat b/gradlew.bat index 24c62d5..a51ec4f 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -19,7 +19,7 @@ @if "%DEBUG%"=="" @echo off @rem ########################################################################## @rem -@rem Gradle startup script for Windows +@rem gradlew startup script for Windows @rem @rem ########################################################################## @@ -72,7 +72,7 @@ echo location of your Java installation. 1>&2 -@rem Execute Gradle +@rem Execute gradlew @rem endlocal doesn't take effect until after the line is parsed and variables are expanded @rem which allows us to clear the local environment before executing the java command endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel From 546b669b9b8144a63639b3d1717c7cafa3196602 Mon Sep 17 00:00:00 2001 From: Marcus Lagergren <1062473+lagergren@users.noreply.github.com> Date: Mon, 6 Jul 2026 14:19:53 +0200 Subject: [PATCH 2/3] Make card-game a proper composite-build subproject CardGame landed via a self-merged PR (#12) as a standalone build in the repo root: its own Gradle wrapper, settings.gradle.kts, gradle.properties and version catalog, PascalCase-named, and never wired into the root composite build. Convert it to match the other single-module examples (welcome/banking/counter): - Rename CardGame -> card-game (kebab-case, like chess-game). - Delete the redundant wrapper (gradlew, gradlew.bat, gradle/wrapper/*), settings.gradle.kts, gradle.properties and gradle/libs.versions.toml; it now shares the root wrapper, properties and version catalog. - Reuse build-logic: build.gradle.kts applies id("xtc-conventions") instead of the raw XTC plugin alias. - Wire into the root build: include(":card-game") in settings and xtcModule(projects.cardGame) in the root build. - Dockerfile copies the card-game build file and sources; drop the CardGame/ exclusion from .dockerignore. The compiled module is still cardGame; installDist now aggregates cardGame.xtc alongside the other example modules. --- .dockerignore | 1 - CardGame/.gitignore | 15 -- CardGame/build.gradle.kts | 15 -- CardGame/gradle.properties | 11 - CardGame/gradle/libs.versions.toml | 8 - CardGame/gradle/wrapper/gradle-wrapper.jar | Bin 48462 -> 0 bytes .../gradle/wrapper/gradle-wrapper.properties | 9 - CardGame/gradlew | 248 ------------------ CardGame/gradlew.bat | 82 ------ CardGame/settings.gradle.kts | 24 -- Dockerfile | 2 + build.gradle.kts | 1 + card-game/build.gradle.kts | 18 ++ {CardGame => card-game}/src/main/x/cardGame.x | 0 .../src/main/x/cardGame/Card.x | 0 .../src/main/x/cardGame/CardCollection.x | 0 .../src/main/x/cardGame/Deck.x | 0 .../src/main/x/cardGame/Eights.x | 0 .../src/main/x/cardGame/GameConstants.x | 0 .../src/main/x/cardGame/Hand.x | 0 .../src/main/x/cardGame/Player.x | 0 .../src/main/x/cardGame/Rank.x | 0 .../src/main/x/cardGame/Suit.x | 0 .../src/test/x/CardCollectionTest.x | 0 .../src/test/x/CardGameTest.x | 0 {CardGame => card-game}/src/test/x/CardTest.x | 0 {CardGame => card-game}/src/test/x/DeckTest.x | 0 .../src/test/x/EightsTest.x | 0 {CardGame => card-game}/src/test/x/HandTest.x | 0 .../src/test/x/PlayerTest.x | 0 settings.gradle.kts | 1 + 31 files changed, 22 insertions(+), 413 deletions(-) delete mode 100644 CardGame/.gitignore delete mode 100644 CardGame/build.gradle.kts delete mode 100644 CardGame/gradle.properties delete mode 100644 CardGame/gradle/libs.versions.toml delete mode 100644 CardGame/gradle/wrapper/gradle-wrapper.jar delete mode 100644 CardGame/gradle/wrapper/gradle-wrapper.properties delete mode 100755 CardGame/gradlew delete mode 100644 CardGame/gradlew.bat delete mode 100644 CardGame/settings.gradle.kts create mode 100644 card-game/build.gradle.kts rename {CardGame => card-game}/src/main/x/cardGame.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Card.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/CardCollection.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Deck.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Eights.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/GameConstants.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Hand.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Player.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Rank.x (100%) rename {CardGame => card-game}/src/main/x/cardGame/Suit.x (100%) rename {CardGame => card-game}/src/test/x/CardCollectionTest.x (100%) rename {CardGame => card-game}/src/test/x/CardGameTest.x (100%) rename {CardGame => card-game}/src/test/x/CardTest.x (100%) rename {CardGame => card-game}/src/test/x/DeckTest.x (100%) rename {CardGame => card-game}/src/test/x/EightsTest.x (100%) rename {CardGame => card-game}/src/test/x/HandTest.x (100%) rename {CardGame => card-game}/src/test/x/PlayerTest.x (100%) diff --git a/.dockerignore b/.dockerignore index ddf7c1e..a8dead5 100644 --- a/.dockerignore +++ b/.dockerignore @@ -25,7 +25,6 @@ data/ xunit/ # Examples not in the composite build / not referenced by the Dockerfile -CardGame/ shopping/ # The Dockerfile itself doesn't need to be inside the image diff --git a/CardGame/.gitignore b/CardGame/.gitignore deleted file mode 100644 index bdf70b3..0000000 --- a/CardGame/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -# Gradle -.gradle/ -build/ - -# IDE -.idea/ -*.iml -.vscode/ - -# XTC -*.xtc - -# OS -.DS_Store -Thumbs.db diff --git a/CardGame/build.gradle.kts b/CardGame/build.gradle.kts deleted file mode 100644 index 0f5dc6d..0000000 --- a/CardGame/build.gradle.kts +++ /dev/null @@ -1,15 +0,0 @@ -plugins { - alias(libs.plugins.xtc) -} - -dependencies { - xdkDistribution(libs.xdk) -} - -// Run configuration - can be overridden from command line: -// ./gradlew runXtc --module=other --method=main --args=arg1,arg2 -xtcRun { - module { - moduleName = "cardGame" - } -} diff --git a/CardGame/gradle.properties b/CardGame/gradle.properties deleted file mode 100644 index 05155d2..0000000 --- a/CardGame/gradle.properties +++ /dev/null @@ -1,11 +0,0 @@ -# Project configuration -group=CardGame -version=0.1.0-SNAPSHOT - -# Enable native access for Java 24+ -org.gradle.jvmargs=--enable-native-access=ALL-UNNAMED - -# Gradle performance -org.gradle.parallel=true -org.gradle.caching=true -org.gradle.configuration-cache=true diff --git a/CardGame/gradle/libs.versions.toml b/CardGame/gradle/libs.versions.toml deleted file mode 100644 index 0194840..0000000 --- a/CardGame/gradle/libs.versions.toml +++ /dev/null @@ -1,8 +0,0 @@ -[versions] -xtc = "0.4.4-SNAPSHOT" - -[plugins] -xtc = { id = "org.xtclang.xtc-plugin", version.ref = "xtc" } - -[libraries] -xdk = { module = "org.xtclang:xdk", version.ref = "xtc" } diff --git a/CardGame/gradle/wrapper/gradle-wrapper.jar b/CardGame/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index b1b8ef56b44f16b14dc800fa8103a6d89abb526f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48462 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 R2np~f1o-$>Q}y+){|A@R9n$~+ diff --git a/CardGame/gradle/wrapper/gradle-wrapper.properties b/CardGame/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index a9db115..0000000 --- a/CardGame/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,9 +0,0 @@ -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip -networkTimeout=10000 -retries=0 -retryBackOffMs=500 -validateDistributionUrl=true -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists diff --git a/CardGame/gradlew b/CardGame/gradlew deleted file mode 100755 index 249efbb..0000000 --- a/CardGame/gradlew +++ /dev/null @@ -1,248 +0,0 @@ -#!/bin/sh - -# -# Copyright © 2015 the original authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -# SPDX-License-Identifier: Apache-2.0 -# - -############################################################################## -# -# gradlew start up script for POSIX generated by Gradle. -# -# Important for running: -# -# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is -# noncompliant, but you have some other compliant shell such as ksh or -# bash, then to run this script, type that shell name before the whole -# command line, like: -# -# ksh gradlew -# -# Busybox and similar reduced shells will NOT work, because this script -# requires all of these POSIX shell features: -# * functions; -# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», -# «${var#prefix}», «${var%suffix}», and «$( cmd )»; -# * compound commands having a testable exit status, especially «case»; -# * various built-in commands including «command», «set», and «ulimit». -# -# Important for patching: -# -# (2) This script targets any POSIX shell, so it avoids extensions provided -# by Bash, Ksh, etc; in particular arrays are avoided. -# -# The "traditional" practice of packing multiple parameters into a -# space-separated string is a well documented source of bugs and security -# problems, so this is (mostly) avoided, by progressively accumulating -# options in "$@", and eventually passing that to Java. -# -# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, -# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; -# see the in-line comments for details. -# -# There are tweaks for specific operating systems such as AIX, CygWin, -# Darwin, MinGW, and NonStop. -# -# (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/3d91ce3b8caaf77ad09f381f43615b715b53f72c/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt -# within the Gradle project. -# -# You can find Gradle at https://github.com/gradle/gradle/. -# -############################################################################## - -# Attempt to set APP_HOME - -# Resolve links: $0 may be a link -app_path=$0 - -# Need this for daisy-chained symlinks. -while - APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path - [ -h "$app_path" ] -do - ls=$( ls -ld "$app_path" ) - link=${ls#*' -> '} - case $link in #( - /*) app_path=$link ;; #( - *) app_path=$APP_HOME$link ;; - esac -done - -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} -# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD=maximum - -warn () { - echo "$*" -} >&2 - -die () { - echo - echo "$*" - echo - exit 1 -} >&2 - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -nonstop=false -case "$( uname )" in #( - CYGWIN* ) cygwin=true ;; #( - Darwin* ) darwin=true ;; #( - MSYS* | MINGW* ) msys=true ;; #( - NONSTOP* ) nonstop=true ;; -esac - - - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD=$JAVA_HOME/jre/sh/java - else - JAVACMD=$JAVA_HOME/bin/java - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD=java - if ! command -v java >/dev/null 2>&1 - then - die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -fi - -# Increase the maximum file descriptors if we can. -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=SC2039,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=SC2039,SC3045 - ulimit -n "$MAX_FD" || - warn "Could not set maximum file descriptor limit to $MAX_FD" - esac -fi - -# Collect all arguments for the java command, stacking in reverse order: -# * args from the command line -# * the main class name -# * -classpath -# * -D...appname settings -# * --module-path (only if needed) -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. - -# For Cygwin or MSYS, switch paths to Windows format before running java -if "$cygwin" || "$msys" ; then - APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - - JAVACMD=$( cygpath --unix "$JAVACMD" ) - - # Now convert the arguments - kludge to limit ourselves to /bin/sh - for arg do - if - case $arg in #( - -*) false ;; # don't mess with options #( - /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath - [ -e "$t" ] ;; #( - *) false ;; - esac - then - arg=$( cygpath --path --ignore --mixed "$arg" ) - fi - # Roll the args list around exactly as many times as the number of - # args, so each arg winds up back in the position where it started, but - # possibly modified. - # - # NB: a `for` loop captures its iteration list before it begins, so - # changing the positional parameters here affects neither the number of - # iterations, nor the values presented in `arg`. - shift # remove old arg - set -- "$@" "$arg" # push replacement arg - 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 optsEnvironmentVar are not allowed to contain shell fragments, -# and any embedded shellness will be escaped. -# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be -# treated as '${Hostname}' itself on the command line. - -set -- \ - "-Dorg.gradle.appname=$APP_BASE_NAME" \ - -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ - "$@" - -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - -# Use "xargs" to parse quoted args. -# -# With -n1 it outputs one arg per line, with the quotes and backslashes removed. -# -# In Bash we could simply go: -# -# readarray ARGS < <( xargs -n1 <<<"$var" ) && -# set -- "${ARGS[@]}" "$@" -# -# but POSIX shell has neither arrays nor command substitution, so instead we -# post-process each arg (as a line of input to sed) to backslash-escape any -# character that might be a shell metacharacter, then use eval to reverse -# that process (while maintaining the separation between arguments), and wrap -# the whole thing up as a single "set" statement. -# -# This will of course break if any of these variables contains a newline or -# an unmatched quote. -# - -eval "set -- $( - printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | - xargs -n1 | - sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | - tr '\n' ' ' - )" '"$@"' - -exec "$JAVACMD" "$@" diff --git a/CardGame/gradlew.bat b/CardGame/gradlew.bat deleted file mode 100644 index 8508ef6..0000000 --- a/CardGame/gradlew.bat +++ /dev/null @@ -1,82 +0,0 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem -@rem SPDX-License-Identifier: Apache-2.0 -@rem - -@if "%DEBUG%"=="" @echo off -@rem ########################################################################## -@rem -@rem gradlew startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables, and ensure extensions are enabled -setlocal EnableExtensions - -set DIRNAME=%~dp0 -if "%DIRNAME%"=="" set DIRNAME=. -@rem This is normally unused -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if %ERRORLEVEL% equ 0 goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -"%COMSPEC%" /c exit 1 - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. 1>&2 -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 -echo. 1>&2 -echo Please set the JAVA_HOME variable in your environment to match the 1>&2 -echo location of your Java installation. 1>&2 - -"%COMSPEC%" /c exit 1 - -:execute -@rem Setup the command line - - - -@rem Execute gradlew -@rem endlocal doesn't take effect until after the line is parsed and variables are expanded -@rem which allows us to clear the local environment before executing the java command -endlocal & "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* & call :exitWithErrorLevel - -:exitWithErrorLevel -@rem Use "%COMSPEC%" /c exit to allow operators to work properly in scripts -"%COMSPEC%" /c exit %ERRORLEVEL% diff --git a/CardGame/settings.gradle.kts b/CardGame/settings.gradle.kts deleted file mode 100644 index 01f3155..0000000 --- a/CardGame/settings.gradle.kts +++ /dev/null @@ -1,24 +0,0 @@ -@file:Suppress("UnstableApiUsage") - -rootProject.name = "cardGame" - -pluginManagement { - repositories { - mavenLocal() - maven("https://central.sonatype.com/repository/maven-snapshots/") { - mavenContent { snapshotsOnly() } - } - mavenCentral() - gradlePluginPortal() - } -} - -dependencyResolutionManagement { - repositories { - mavenLocal() - maven("https://central.sonatype.com/repository/maven-snapshots/") { - mavenContent { snapshotsOnly() } - } - mavenCentral() - } -} diff --git a/Dockerfile b/Dockerfile index 6ae0577..b3e23e0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,6 +8,7 @@ COPY gradle/ gradle/ COPY build-logic/ build-logic/ COPY banking/build.gradle.kts banking/build.gradle.kts COPY counter/build.gradle.kts counter/build.gradle.kts +COPY card-game/build.gradle.kts card-game/build.gradle.kts COPY chess-game/settings.gradle.kts chess-game/build.gradle.kts chess-game/ COPY chess-game/app/build.gradle.kts chess-game/app/ COPY chess-game/db/build.gradle.kts chess-game/db/ @@ -17,6 +18,7 @@ RUN gradle dependencies --no-daemon 2>/dev/null || true # Layer 2: Source code — only this layer rebuilds when sources change COPY banking/ banking/ COPY counter/ counter/ +COPY card-game/ card-game/ COPY chess-game/ chess-game/ COPY welcome/ welcome/ diff --git a/build.gradle.kts b/build.gradle.kts index c812d01..6297d95 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -20,6 +20,7 @@ dependencies { xtcModule(projects.welcome) xtcModule(projects.banking) xtcModule(projects.counter) + xtcModule(projects.cardGame) // Chess-game is an included composite build. Gradle's composite-build // dependency substitution routes these coordinate-based deps to the diff --git a/card-game/build.gradle.kts b/card-game/build.gradle.kts new file mode 100644 index 0000000..a46f065 --- /dev/null +++ b/card-game/build.gradle.kts @@ -0,0 +1,18 @@ +/* + * Build file for the "card-game" example. + * + * A console XTC application (no webapp), so it applies only the shared + * xtc-conventions build-logic plugin. The compiled XTC module is `cardGame`. + */ + +plugins { + id("xtc-conventions") +} + +// Run configuration - can be overridden from command line: +// ./gradlew :card-game:runXtc --module=other --method=main --args=arg1,arg2 +xtcRun { + module { + moduleName = "cardGame" + } +} diff --git a/CardGame/src/main/x/cardGame.x b/card-game/src/main/x/cardGame.x similarity index 100% rename from CardGame/src/main/x/cardGame.x rename to card-game/src/main/x/cardGame.x diff --git a/CardGame/src/main/x/cardGame/Card.x b/card-game/src/main/x/cardGame/Card.x similarity index 100% rename from CardGame/src/main/x/cardGame/Card.x rename to card-game/src/main/x/cardGame/Card.x diff --git a/CardGame/src/main/x/cardGame/CardCollection.x b/card-game/src/main/x/cardGame/CardCollection.x similarity index 100% rename from CardGame/src/main/x/cardGame/CardCollection.x rename to card-game/src/main/x/cardGame/CardCollection.x diff --git a/CardGame/src/main/x/cardGame/Deck.x b/card-game/src/main/x/cardGame/Deck.x similarity index 100% rename from CardGame/src/main/x/cardGame/Deck.x rename to card-game/src/main/x/cardGame/Deck.x diff --git a/CardGame/src/main/x/cardGame/Eights.x b/card-game/src/main/x/cardGame/Eights.x similarity index 100% rename from CardGame/src/main/x/cardGame/Eights.x rename to card-game/src/main/x/cardGame/Eights.x diff --git a/CardGame/src/main/x/cardGame/GameConstants.x b/card-game/src/main/x/cardGame/GameConstants.x similarity index 100% rename from CardGame/src/main/x/cardGame/GameConstants.x rename to card-game/src/main/x/cardGame/GameConstants.x diff --git a/CardGame/src/main/x/cardGame/Hand.x b/card-game/src/main/x/cardGame/Hand.x similarity index 100% rename from CardGame/src/main/x/cardGame/Hand.x rename to card-game/src/main/x/cardGame/Hand.x diff --git a/CardGame/src/main/x/cardGame/Player.x b/card-game/src/main/x/cardGame/Player.x similarity index 100% rename from CardGame/src/main/x/cardGame/Player.x rename to card-game/src/main/x/cardGame/Player.x diff --git a/CardGame/src/main/x/cardGame/Rank.x b/card-game/src/main/x/cardGame/Rank.x similarity index 100% rename from CardGame/src/main/x/cardGame/Rank.x rename to card-game/src/main/x/cardGame/Rank.x diff --git a/CardGame/src/main/x/cardGame/Suit.x b/card-game/src/main/x/cardGame/Suit.x similarity index 100% rename from CardGame/src/main/x/cardGame/Suit.x rename to card-game/src/main/x/cardGame/Suit.x diff --git a/CardGame/src/test/x/CardCollectionTest.x b/card-game/src/test/x/CardCollectionTest.x similarity index 100% rename from CardGame/src/test/x/CardCollectionTest.x rename to card-game/src/test/x/CardCollectionTest.x diff --git a/CardGame/src/test/x/CardGameTest.x b/card-game/src/test/x/CardGameTest.x similarity index 100% rename from CardGame/src/test/x/CardGameTest.x rename to card-game/src/test/x/CardGameTest.x diff --git a/CardGame/src/test/x/CardTest.x b/card-game/src/test/x/CardTest.x similarity index 100% rename from CardGame/src/test/x/CardTest.x rename to card-game/src/test/x/CardTest.x diff --git a/CardGame/src/test/x/DeckTest.x b/card-game/src/test/x/DeckTest.x similarity index 100% rename from CardGame/src/test/x/DeckTest.x rename to card-game/src/test/x/DeckTest.x diff --git a/CardGame/src/test/x/EightsTest.x b/card-game/src/test/x/EightsTest.x similarity index 100% rename from CardGame/src/test/x/EightsTest.x rename to card-game/src/test/x/EightsTest.x diff --git a/CardGame/src/test/x/HandTest.x b/card-game/src/test/x/HandTest.x similarity index 100% rename from CardGame/src/test/x/HandTest.x rename to card-game/src/test/x/HandTest.x diff --git a/CardGame/src/test/x/PlayerTest.x b/card-game/src/test/x/PlayerTest.x similarity index 100% rename from CardGame/src/test/x/PlayerTest.x rename to card-game/src/test/x/PlayerTest.x diff --git a/settings.gradle.kts b/settings.gradle.kts index 278e0ce..d1d8848 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -47,4 +47,5 @@ rootProject.name = "examples" include(":welcome") include(":banking") include(":counter") +include(":card-game") includeBuild("chess-game") From 8ac9640fe2f378f5aab3c1cac36e026801d4b640 Mon Sep 17 00:00:00 2001 From: Marcus Lagergren <1062473+lagergren@users.noreply.github.com> Date: Mon, 6 Jul 2026 15:21:22 +0200 Subject: [PATCH 3/3] Replace deprecated Kotlin DSL delegated accessors for Gradle 10 Gradle 9.6.1 deprecates the `val x by tasks.registering/existing` property- delegate syntax, scheduled for removal in Gradle 10. Switch the root build and the webapp-conventions build-logic plugin to the named/register APIs (`tasks.register("x")`, `tasks.named(...)`), matching xtclang/xvm#494. Verified: `./gradlew build installDist --warning-mode all` is BUILD SUCCESSFUL with no deprecation warnings, and no delegated accessors remain. --- build-logic/src/main/kotlin/webapp-conventions.gradle.kts | 6 +++--- build.gradle.kts | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build-logic/src/main/kotlin/webapp-conventions.gradle.kts b/build-logic/src/main/kotlin/webapp-conventions.gradle.kts index dea37cc..10058e3 100644 --- a/build-logic/src/main/kotlin/webapp-conventions.gradle.kts +++ b/build-logic/src/main/kotlin/webapp-conventions.gradle.kts @@ -53,10 +53,10 @@ if (file("webapp/package.json").exists()) { nodeProjectDir.set(file("webapp")) } - val npmInstall by tasks.existing - val processResources by tasks.existing + val npmInstall = tasks.named("npmInstall") + val processResources = tasks.named("processResources") - val buildWebapp by tasks.registering(NpmTask::class) { + val buildWebapp = tasks.register("buildWebapp") { args.set(listOf("run", "build")) workingDir.set(file("webapp")) dependsOn(npmInstall) diff --git a/build.gradle.kts b/build.gradle.kts index 6297d95..98dc39a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -40,7 +40,7 @@ dependencies { * You can then run any example with: * xtc run -L build/install/examples/lib */ -val installDist by tasks.registering(Copy::class) { +val installDist = tasks.register("installDist") { group = "distribution" description = "Install all example modules to build/install/examples/lib" from(configurations.xtcModule)