Release notes
Sub-task
GEOS-12066 Present keywords as a table
GEOS-12067 Add Full Screen OpenLayers 10.8.0 layer preview
GEOS-12086 Keyboard navigation for file browser
Bug
GEOS-10509 WFS Request fails when XML POST body is larger than 8kB
GEOS-10877 [B/R Community Module] Restore Tasklet always fails on resources validation
GEOS-11678 CVE-2025-23043 XML External Entity Injection Vulnerability in features-templating Extension
GEOS-11903 WPS does not respect raw response output selection when there are multiple outputs
GEOS-11904 OGC API Processes: add support for envelope input/output
GEOS-11905 OGC API processes status response lacks jobid and links to self
GEOS-11907 OGC API Processes: support multiple raw responses
GEOS-11908 OGC API Processes page should be pageable
GEOS-11916 Data directory migration performed on built-in default security configuration
GEOS-11926 ogcapi plugin makes WFS advertising an outputFormat which is actually unavailable
GEOS-11930 OGC-API extension breaks security REST API
GEOS-11942 ImagePPIO does not run any longer
GEOS-11964 Metadata Bulk Operations: wicket error
GEOS-11965 KMZ export incorrectly references remote icon URLs instead of embedding them in the KMZ archive
GEOS-11981 POST /security/authproviders | 400: Unsupported className
GEOS-11983 GSR /query fails with HTTP 500 when where parameter is empty
GEOS-11988 Fix bug: preserve metaTilingThreads=0 in saneConfig()
GEOS-11999 The version of Jetty (12) no longer supports web.xml CORS configuration
GEOS-12000 Ignore DescribeFeatureType requests without typeName in Features Templating schemas override
GEOS-12002 hz-cluster: homepage pop-up fails
GEOS-12044 STAC search endpoint should report invalid collection names as invalid parameters instead of internal errors
GEOS-12065 WMS Layer REST PUT always returns 500 due to Collections.emptySet() in getRemoteStyleInfos()
GEOS-12073 Remove log location configuration from Admin Console and REST API
GEOS-12084 TemplateController REST endpoints accept non-existent workspace, store, and resource names
GEOS-12085 LocalSettingsController does not validate workspace existence
GEOS-12089 GWC sqlite community module breaks legend preview in style page
GEOS-12092 DescribeFeatureType fails to render a single option restriction in JSON format
GEOS-12101 Workspace styles not persisted to disk after restore
GEOS-12112 OIDC OAuth2 login principals should also expose GeoServer user properties
GEOS-12114 GeoServer fails to start on FIPS-enabled system due to unsupported SHA1PRNG SecureRandom
GEOS-12115 Jetty 12.1.9 is not parsing Windows working directory settings
GEOS-12118 ReprojectingFeatureCollection can fail with ClassCastException while inserting CompoundCurve via WFS-T
GEOS-12119 Workspace-scoped OGC API Styles endpoint returns styles from other workspaces
GEOS-12129 Longitudinal profile positive altitude includes first elevation as ascent from zero
Improvement
GEOS-11581 Set up leaner attribute transformations when attribute customization is enabled
GEOS-11886 Sort entries in all .properties files alphabetically
GEOS-11906 OGC API Processes: use correct error code for access to results when execution is not complete
GEOS-11909 Add support for OGC API Echo process
GEOS-11915 OGC API Processes: improve support for binary input and output
GEOS-11980 Add support for uploading a single parquet file to GeoServer via REST
GEOS-12013 Support vector datasets ingestion in VectorMosaic via REST
GEOS-12015 Switch tests using H2 to GeoPackage
GEOS-12023 Improve developer logging during catalog resources loading and WMS capabilities requests
GEOS-12024 Add Git branch name in GEOSERVER_NODE_OPTS
GEOS-12070 REST Support for CRSs
GEOS-12072 Remove deprecated REST endpoint on the DataStoreFileController
GEOS-12074 Remove activeMQ-broker community module
GEOS-12077 Remove H2/DB based index and binary index from CoverageMultidim/NetCDF stores
GEOS-12081 Update MapML.js ( custom element suite) to v0.17.0
GEOS-12082 CoverageStore - quick fail for incorrect files
GEOS-12083 Skip brute force login delays when checking for default administrator password
GEOS-12098 Rename JWT Header assembly so it is collected for nightly downloads
GEOS-12103 Reduce contention in concurrent requests
New Feature
GEOS-12061 New Community Module for PNG-WIND output format for wind datasets
GEOS-12062 Add DuckDB datastore community extension (gs-duckdb)
GEOS-12063 GSIP-238 - GeoServer 3 UI / UX Refresh
GEOS-12132 GSIP 239 ‐ Promote OIDC Community Module to Extension
Task
GEOS-11941 Clean up Java 17 javadoc warnings
GEOS-11972 GSIP 233 - Community Pending Release Profile
GEOS-11987 ImageN 0.9.1 migration requires renaming of registryFile.jai to registryFile.imagen
GEOS-12004 Make WMS indepependent of WFS
GEOS-12005 Remove GeoServer H2 extension
GEOS-12006 GWC, removal of leftover H2 references
GEOS-12007 Add AWS credential chain authentication UI and documentation for GeoParquet
GEOS-12011 Move KML module to extension
GEOS-12016 Move WCS 1.1 module to extension
GEOS-12017 Move WCS 1.0 to extension
GEOS-12018 Switch GeoServer tests away from H2
GEOS-12019 Turn arcgrid and worldimage formats into plugins
GEOS-12025 Split WMS 1.1 and 1.3
GEOS-12040 Updating BouncyCatle libraries to LTS 2.73.10
GEOS-12041 Update Spring LDAP to 4.0.1
GEOS-12064 CSS: add documentation for localized @title and @abstract metadata
GEOS-12069 Align the hazelcast version in hz-cluster to the rest of GeoServer
GEOS-12071 Remove the WPS remote module
GEOS-12110 Make use of XMLUtils for better integration with GeoTools.getEntityResolver()
GEOS-12136 IOTestUtils.createRandomDirectory() replacing mkdir call to more recent java.nio.files API
GEOS-12137 Update OSHI from 6.8.2 to 7.3.0