Add json-columns module: JSON columns in Hibernate 7.4.14 (@JdbcTypeCode(SqlTypes.JSON)), JSONB querying, GIN/expression indexes, dirty checking, Jackson 3 vs 2 on PostgreSQL 18.6 and MySQL 8.0.46
Co-Authored-By: Claude Sonnet 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_017ic4b6Kg9RWSTJzyz6KP9X
This commit is contained in:
Executable
+49
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env bash
|
||||
# Writes output/13-maven-facts.txt: release dates and metadata read straight from Maven Central (retries on HTTP 429).
|
||||
set -uo pipefail
|
||||
cd "$(dirname "$0")/.."
|
||||
mkdir -p output
|
||||
M=https://repo1.maven.org/maven2
|
||||
get() { # url -> body (retry on 429/empty)
|
||||
for i in 1 2 3 4 5 6; do
|
||||
body="$(curl -sS --fail "$1" 2>/dev/null)" && [ -n "$body" ] && { printf '%s' "$body"; return 0; }
|
||||
sleep 20
|
||||
done
|
||||
return 1
|
||||
}
|
||||
head_lm() { # url -> Last-Modified
|
||||
for i in 1 2 3 4 5 6; do
|
||||
lm="$(curl -sSI "$1" 2>/dev/null | tr -d '\r' | grep -i '^last-modified:' | cut -d' ' -f2-)" && [ -n "$lm" ] && { echo "$lm"; return 0; }
|
||||
sleep 20
|
||||
done
|
||||
echo "unavailable"
|
||||
}
|
||||
meta() { # label path
|
||||
local x; x="$(get "$M/$2/maven-metadata.xml")" || { echo "$1: metadata unavailable"; return; }
|
||||
echo "$1: release=$(grep -o '<release>[^<]*' <<<"$x" | cut -d'>' -f2) lastUpdated=$(grep -o '<lastUpdated>[^<]*' <<<"$x" | cut -d'>' -f2)"
|
||||
sleep 3
|
||||
}
|
||||
{
|
||||
echo "# Maven Central facts, read $(date -u +%Y-%m-%d)"
|
||||
echo
|
||||
echo "# maven-metadata.xml: <release> and <lastUpdated> (yyyyMMddHHmmss, UTC)"
|
||||
meta "com.vladmihalcea:hibernate-types-60 " com/vladmihalcea/hibernate-types-60
|
||||
meta "com.vladmihalcea:hibernate-types-55 " com/vladmihalcea/hibernate-types-55
|
||||
meta "com.vladmihalcea:hibernate-types-5 " com/vladmihalcea/hibernate-types-5
|
||||
meta "io.hypersistence:hypersistence-utils-hibernate-71" io/hypersistence/hypersistence-utils-hibernate-71
|
||||
meta "io.hypersistence:hypersistence-utils-hibernate-73" io/hypersistence/hypersistence-utils-hibernate-73
|
||||
echo
|
||||
echo "# jar Last-Modified on Central (upload time)"
|
||||
for j in org/hibernate/orm/hibernate-core/7.4.14.Final/hibernate-core-7.4.14.Final.jar \
|
||||
org/springframework/boot/spring-boot/4.1.2/spring-boot-4.1.2.jar \
|
||||
io/hypersistence/hypersistence-utils-hibernate-73/3.16.0/hypersistence-utils-hibernate-73-3.16.0.jar; do
|
||||
echo "$(basename "$j"): $(head_lm "$M/$j")"; sleep 3
|
||||
done
|
||||
echo
|
||||
echo "# hibernate.version that hypersistence-utils-hibernate-73:3.16.0 was built against (its pom)"
|
||||
get "$M/io/hypersistence/hypersistence-utils-hibernate-73/3.16.0/hypersistence-utils-hibernate-73-3.16.0.pom" | grep -E '^\s*<hibernate.version>' | sed 's/^ *//'
|
||||
echo
|
||||
echo "# newest Jackson 3 databind on Central"
|
||||
get "$M/tools/jackson/core/jackson-databind/maven-metadata.xml" | grep -E '<release>' | sed 's/^ *//'
|
||||
} > output/13-maven-facts.txt
|
||||
cat output/13-maven-facts.txt
|
||||
Reference in New Issue
Block a user