From 755d2265054e5140e82d322681566c3034583c95 Mon Sep 17 00:00:00 2001 From: Kostya Date: Tue, 18 Aug 2026 18:19:50 +0300 Subject: Break down purchase receipts by cost/commission, harden XML validation and state I/O Adds a full pre-load validation pass for GM XML seeds (ids, names, options, commission, LMSR liquidity), replaces IO.print with System.out, and surfaces detailed error messages across load/save commands instead of generic failures. --- tools/_util.sh | 7 ++++++- tools/package.sh | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'tools') diff --git a/tools/_util.sh b/tools/_util.sh index 4650616..fa7e3b5 100644 --- a/tools/_util.sh +++ b/tools/_util.sh @@ -15,7 +15,12 @@ RUNTIME_LIB_DIRS="pico jaxb gson" MAIN_CLASS="market.guess.ui.console.App" -JAVA_HOME_DIR=$(java -XshowSettings:properties -version 2>&1 | sed -n 's/^ *java\.home = //p') +JAVA_HOME_DIR=$(java -XshowSettings:properties -version 2>&1 | tr -d '\r' | sed -n 's/^ *java\.home = //p') +case "$(uname -s)" in + CYGWIN*|MINGW*|MSYS*) + JAVA_HOME_DIR=$(cygpath -u "$JAVA_HOME_DIR" 2>/dev/null || echo "$JAVA_HOME_DIR") + ;; +esac JAR="$JAVA_HOME_DIR/bin/jar" [ -x "$JAR" ] || JAR="$JAVA_HOME_DIR/bin/jar.exe" if [ ! -x "$JAR" ]; then diff --git a/tools/package.sh b/tools/package.sh index 5877444..a85ee6c 100644 --- a/tools/package.sh +++ b/tools/package.sh @@ -60,6 +60,8 @@ java -jar "%~dp0ui-console.jar" if errorlevel 1 pause EOF +[ -f README.pdf ] && cp README.pdf "$DIST/" + echo "=== Manifest as it actually landed in the jar ===" # Cheapest check that prevents a Level-0: if Main-Class or Class-Path didn't # survive, it surfaces here instead of on the grader's machine. -- cgit v1.2.3