Release Notes for XWiki 18.10.0-rc-1
This is the release notes for XWiki Commons, XWiki Rendering and XWiki Platform. They share the same release notes as they are released together and have the same version.
<insert description of release here>
New and Noteworthy (since XWiki <version - 1>)
Full list of issues fixed and Dashboard for <final version here even for RC, e.g. 10.5>.
For Users
For Admins
S3 blob store with services that do not support conditional writes:
The S3 blob store can now be used with S3-compatible object stores that do not implement conditional requests, such as OVHcloud Object Storage: two new properties, store.s3.conditionalWrites and store.s3.conditionalCopies, disable the conditions XWiki sends with uploads and copies, as described in Configure S3 as Blob Store.
When a service rejects a condition with 501, the error message names the property to change.
Without the conditions, a write that must only create an absent object checks its existence first, which is not atomic.java.util.logging logs now follow the XWiki logging configuration:
Some libraries used by XWiki, like Lucene (the search engine behind Solr), produce their logs with java.util.logging. These logs now go through Logback like the other XWiki logs: they use the same format and destinations, and their levels can be configured in the logback.xml file (see Logging). For example, on Java 21 or later, the Lucene message starting with Using MemorySegmentIndexInput is not displayed anymore when the embedded Solr opens its indexes, since it's below the default warn level.
For Developers
Upgrades
The following runtime dependencies have been upgraded (they have a different release cycle than XWiki Commons, XWiki Rendering and XWiki Platform):
Moved Modules
<description deprecated, retired and moved projects>
Translations
The following translations have been updated:
Tested Browsers & Databases
Automated Testing
XWiki executes a lot of automated tests during its build, testing all supported configurations.
Security Issues
Security issues are not listed in issue lists or dashboards to avoid disclosing ways to use them, but they will appear automatically in them once they're disclosed. See the XWiki Security Policy for more details.
Known issues
Backward Compatibility and Migration Notes
General Notes
- When upgrading make sure you compare and merge the following XWiki configuration files since some parameters may have been modified, removed or added:
- xwiki.cfg
- xwiki.properties
- web.xml
- hibernate.cfg.xml
- Add xwiki.store.migration=1 in xwiki.cfg so that XWiki will attempt to automatically migrate your current database to any new schema. Make sure you backup your Database before doing anything.
Issues specific to XWiki 18.10.0-rc-1
Upgrade to Solr 9.11.0
XWiki now bundles Solr 9.11.0 and Lucene 9.12.3 (previously Solr 9.4.1 and Lucene 9.8.0), see XWIKI-21954. It has the following consequences:
- Embedded Solr: as with previous Solr upgrades, the search core is recreated at the first startup and filled again by the synchronization with the database, so search results are incomplete until the indexing is finished. The other cores (events, extension index, ratings, etc.) keep their data.
- Remote Solr: the new configuration of the search core requires Solr 9.11 or later (a Solr 9.4.1 server, for example, fails to load it). You can either keep the current configuration of your search core as is, or upgrade your Solr server to 9.11 or later first and then install the new configuration (see Setup a remote Solr server). In particular:
- if you use the Debian xwiki-solr9-* packages, upgrade Solr to 9.11 or later before upgrading them
- if you build your Solr image from the contrib/solr Dockerfile of the XWiki Docker repository, rebuild it with
pull, so that its solr:9 base image is 9.11 or later
- Remote Solr: when the new configuration of the search core is installed on a core which already contains data, XWiki detects at startup that the indexed data is not compatible with it anymore, deletes the index, and it's filled again by the synchronization with the database (if solr.synchronizeAtStartup is disabled, you need to trigger the synchronization manually). If several XWiki instances share the same remote Solr server, each of them might delete the index when starting, but the synchronization at startup takes care of filling it again.
- The search core now uses the Solr schema version 1.7, in which fields don't support "uninverting" anymore by default. This means that a custom Solr query (in a script or an extension) which sorts or facets on a tokenized text field (like title_en or doccontent_fr) will now fail. All the fields provided by XWiki for sorting and faceting (like title_sort, the *_sort* fields, wiki, space_facet, locale, date, etc.) are not impacted.
- The stopwords of several languages (Danish, German, Spanish, Finnish, French, Hungarian, Italian, Dutch, Norwegian, Portuguese, Russian, Swedish) were updated to the latest Solr version. In particular, for French, several words which are also homonyms of meaningful words (like "son", "été", "est", "sommes", "as") are not stopwords anymore and are now indexed and searchable.
- Since Solr 9.5, Solr uses Jersey 3 (JAX-RS 3.1, jakarta.* packages), while XWiki uses Jersey 2. To avoid any conflict, the solr-core JAR is now replaced by xwiki-platform-search-solr-core-shaded, which contains solr-core and its own private (relocated) copy of Jersey 3 and HK2 3. The Solr classes keep their package, so this should be transparent for extensions using Solr.
- On Java 21 or later, Lucene now logs a warning at startup about its use of the Java Vector API (see XWIKI-25453). It does not have any functional impact.
API Breakages
The following APIs were modified since XWiki <version - 1>: