This is an automated email from the ASF dual-hosted git repository.

reschke pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/jackrabbit-oak.git


The following commit(s) were added to refs/heads/trunk by this push:
     new 7435450cf0 OAK-11632: Release Oak 1.78.0 - Candidate Release Notes
7435450cf0 is described below

commit 7435450cf04142a8a03ce9b42a09abc616c4fd9c
Author: Julian Reschke <[email protected]>
AuthorDate: Tue Apr 1 11:34:58 2025 +0100

    OAK-11632: Release Oak 1.78.0 - Candidate Release Notes
---
 RELEASE-NOTES.txt | 208 +++++++++++++++++++++++++++++++++++++-----------------
 1 file changed, 143 insertions(+), 65 deletions(-)

diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index fdff814149..92232e6c4c 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -1,4 +1,4 @@
-Release Notes -- Apache Jackrabbit Oak -- Version 1.76.0
+Release Notes -- Apache Jackrabbit Oak -- Version 1.78.0
 
 Introduction
 ------------
@@ -7,92 +7,170 @@ Jackrabbit Oak is a scalable, high-performance hierarchical 
content
 repository designed for use as the foundation of modern world-class
 web sites and other demanding content applications.
 
-Apache Jackrabbit Oak 1.76.0 is an incremental feature release based
+Apache Jackrabbit Oak 1.78.0 is an incremental feature release based
 on and compatible with earlier stable Jackrabbit Oak 1.x
 releases. This release is considered stable and targeted for
 production use.
 
-While Oak 1.76.0 compiles and tests successfully on Java 17, Javadocs
+While Oak 1.78.0 compiles and tests successfully on Java 17, Javadocs
 generation fails on Java 17 (but works as expected on Java 11).
 
 The Oak effort is a part of the Apache Jackrabbit project.
 Apache Jackrabbit is a project of the Apache Software Foundation.
 
-Changes in Oak 1.76.0
+Changes in Oak 1.78.0
 ---------------------
 
 Technical task
 
-    [OAK-11357] - Extract StreamUtils from CollectionUtils
-    [OAK-11380] - Remove usage of Guava Files.asByteSource
-    [OAK-11384] - Remove usage of Guava Maps
-    [OAK-11385] - Remove usage of Guava Files.asByteSink
-    [OAK-11387] - Extract ListUtils from CollectionUtils
-    [OAK-11388] - Extract MapUtils from CollectionUtils
-    [OAK-11395] - Extract SetUtils from CollectionUtils
-    [OAK-11396] - Remove usage of Guava Preconditions.checkElementIndex
-    [OAK-11398] - Remove usage of Guava Preconditions.checkPositionIndexes
-    [OAK-11399] - Remove usage of Guava io.BaseEncoding
-    [OAK-11400] - Remove usage of Guava ArrayListMultimap
-    [OAK-11402] - Remove usage of Guava Strings.isNullOrEmpty
-    [OAK-11406] - Remove usage of Guava io.ByteSource
-    [OAK-11407] - Remove usage of Guava Strings.EMPTY_STRING
-    [OAK-11408] - Extract IteratorUtils from CollectionUtils
-    [OAK-11411] - Remove usage of Guava Strings.emptyToNull
-    [OAK-11413] - Extract DequeUtils from CollectionUtils
-    [OAK-11414] - make collectionutils package private
-    [OAK-11417] - Remove usage of Guava ByteStreams
-    [OAK-11420] - Remove usage of Guava Files.move()
-    [OAK-11422] - Remove usage of Guava Strings
-    [OAK-11424] - Remove usage of Guava ObjectArrays.concat
-    [OAK-11427] - Remove usage of Guava Iterables.isEmpty
-    [OAK-11428] - Remove usage of Guava Files.copy()
-    [OAK-11430] - Remove usage of Guava Iterables.all
-    [OAK-11431] - Remove usage of Guava Files.createTempDir()
-    [OAK-11432] - Remove usage of Guava Iterables.size
-    [OAK-11440] - Remove usage of Guava Files.touch()
-    [OAK-11441] - Remove usage of Guava Iterables.addAll
-    [OAK-11442] - Remove usage of Guava Iterables.contains
-    [OAK-11445] - Remove usage of Guava Files.toString()
-    [OAK-11446] - Remove usage of Guava Files.equal()
-    [OAK-11448] - Remove usage of Guava Files.readLines()
-    [OAK-11449] - Remove usage of Guava Iterables.concat() [test cases only]
+    [OAK-11451] - Remove usage of Guava Iterables.concat()
+    [OAK-11462] - Remove usage of Guava Files.write()
+    [OAK-11481] - Remove (once more) usage of Guava Files.createTempDir()
+    [OAK-11482] - Remove usage of Guava Files.newReader
+    [OAK-11484] - Remove usage of Guava io.CountingInputStream
+    [OAK-11494] - Add Iterables.contains replacement in IterableUtils
+    [OAK-11495] - Add Iterables.size replacement in IteratorUtils
+    [OAK-11496] - Add Iterables.all replacement in IterableUtils
+    [OAK-11500] - Remove usage of Guava io.Closeable
+    [OAK-11503] - Add Iterables.isEmpty replacement in IterableUtils
+    [OAK-11507] - Use oak-commons IterableUtils instead of commons-collections4
+    [OAK-11513] - Add Iterables.toArray replacement in IterableUtils
+    [OAK-11514] - Remove usage of Guava Iterables.toArray
+    [OAK-11518] - Add Iterables.partition replacement in IterableUtils
+    [OAK-11519] - Remove usage of Guava Iterables.partition()
+    [OAK-11522] - Remove usage of Guava Iterables.filter()
+    [OAK-11523] - Add Iterables.filter replacement in IterableUtils
+    [OAK-11527] - Remove usage of Guava Iterables.transform()
+    [OAK-11528] - Add Iterables.transform replacement in IterableUtils
+    [OAK-11531] - Add Iterables.mergeSorted replacement in IterableUtils
+    [OAK-11532] - Remove usage of Guava Iterables.mergeSorted()
+    [OAK-11542] - Remove usage of Guava Iterables.elementsEqual()
+    [OAK-11543] - Add Iterables.elementsEqual replacement in IterableUtils
+    [OAK-11546] - Remove usage of Guava io.Closer
+    [OAK-11548] - Add Iterables.limit replacement in IterableUtils
+    [OAK-11549] - Remove usage of Guava Iterables.limit()
+    [OAK-11550] - Add Iterables.toString replacement in IterableUtils
+    [OAK-11551] - Remove usage of Guava Iterables.toString()
+    [OAK-11556] - Remove usage of Guava Iterables.getFirst()
+    [OAK-11557] - Remove usage of Guava Iterables.getOnlyElement()
+    [OAK-11558] - Remove usage of Guava Iterables.tryFind()
+    [OAK-11562] - Remove usage of Guava Iterables.addAll()
+    [OAK-11563] - Add Iterables.getFirst replacement in IterableUtils
+    [OAK-11565] - Add Iterables.get() replacement in IterableUtils
+    [OAK-11566] - Add Iterables.find() replacement in IterableUtils
+    [OAK-11567] - Remove usage of Guava Iterables.size (2)
+    [OAK-11571] - commons: add Closer class (similar to Guava Closer)
+    [OAK-11573] - Add Iterators.size replacement in IteratorUtils
+    [OAK-11574] - Remove usage of Guava Iterators.size()
+    [OAK-11575] - Add Iterables.getLast() replacement in IterableUtils
+    [OAK-11576] - Remove usage of Guava Iterables.get()
+    [OAK-11577] - Remove usage of Guava Iterables.find()
+    [OAK-11578] - Remove usage of Guava Iterables.getLast()
+    [OAK-11580] - Remove usage of Guava Iterables.skip()
+    [OAK-11581] - Remove usage of Guava Iterables.cycle
+    [OAK-11582] - Remove usage of Guava Iterables.removeAll
+    [OAK-11583] - Add Iterators.get replacement in IteratorUtils
+    [OAK-11584] - Add Iterators.getLast replacement in IteratorUtils
+    [OAK-11589] - Remove usage of Iterators.get
+    [OAK-11596] - Remove usage of Guava Iterables (imports)
+    [OAK-11602] - Remove usage of Guava ImmutableSet.copyOf [part 1]
+    [OAK-11605] - Remove usage of Guava ImmutableSet.copyOf [part 2]
+    [OAK-11615] - update groovy dependency to 3.0.24
 
 Bug
 
-    [OAK-11287] - Cleanup May Delete Referenced Segments
-    [OAK-11401] - Increase Log levels for FullGC deletion logs to INFO
-    [OAK-11409] - Membership cache fails to update changes on cached properties
-    [OAK-11423] - Jdbc driver dependencies need to have scope compile in order 
to be included in oak-run.
-    [OAK-11425] - MarkSweepGarbageColllector.iterateNodeTree() passes open 
file to FileIOUtils.sort()
-    [OAK-11433] - Create separate config variable for fullGC max revision age 
millis and apply it in VersionGarbageCollector
-    [OAK-11434] - oak-run: DataStoreCheckCommand tries to move open files
-    [OAK-11439] - Provide support to set remaining full gc modes
-    [OAK-11450] - GlobalNameMapper.isExpandedName() does sometimes return 
incorrect results
-    [OAK-11453] - Provide support to set fullGC max revision age millis from 
oak-run
+    [OAK-11461] - DocumentNodeStoreService - setClusterInvisible via config
+    [OAK-11464] - oak-it-osgi fails to load the bundle oak-search-elastic if 
the profile rdb-mysql is used for building and testing.
+    [OAK-11475] - oak-search-elastic: WordDelimiter filter does not convert 
type mappings
+    [OAK-11480] - AzureRepositoryLock: NPE in refresh thread
+    [OAK-11499] - Warning: Parameter 'aggregate' is unknown for plugin 
'maven-javadoc-plugin:3.4.1:jar (default)'
+    [OAK-11508] - oak-search-elastic: is null / is not null queries should 
resolve the field name
+    [OAK-11529] - Infinite recursion in AstElement (for some platforms and 
configs)
+    [OAK-11536] - oak-search-elastic: synonym filter has to be lenient by 
default
+    [OAK-11539] - Flaky test: 
MembershipProviderTest#testGetMembershipInherited()
+    [OAK-11564] - oak-run FullGC leaves background threads running
+    [OAK-11570] - oak-run fullGC fullGcMaxAge default value is wrongly 
calculated
+    [OAK-11603] - Lucene 4.x fuzzy queries don't work in Elastic
+    [OAK-11619] - Fix flaky ConcurrentMultiplexingIndexWriterTest
+    [OAK-11624] - Elastic full-text queries are not lenient when the input 
value cannot be converted
+    [OAK-11630] - CommandTestUtils captureSystem* should normalize line feeds
+
+Epic
+
+    [OAK-11047] - Oak should compile & test on Java 23
+
+Story
+
+    [OAK-11444] - [full-gc] Save document id and empty properties names before 
deletion
+    [OAK-11491] - segment.azure.v12.enabled should be set to false after test 
execution is finished
+
+New Feature
+
+    [OAK-8748] - Run performance tests and compare with baseline
 
 Improvement
 
-    [OAK-9500] - Automatically deploy snapshot artifacts to Maven repo through 
GHA
-    [OAK-11312] - Refactor CollectionUtils
-    [OAK-11364] - For oak-jcr tests, support automatic starting/stopping of 
docker containers used as RDB servers for RDBDocumentStore
-    [OAK-11365] - Incremental index store: ability to set a timeout
-    [OAK-11383] - Improve performance of DefaultStatisticsProvider
-    [OAK-11389] - Disable Checkstyle
-    [OAK-11416] - Docker support for oak-jcr tests with RdbDocumentStore needs 
a way to specify environment variables for the container
-    [OAK-11418] - RdbConnectionUtils should use SystemPropertySupplier
-    [OAK-11421] - Update MySql JDBC driver version to 
com.mysql:mysql-connector-j:9.0.1 in profile rdb-mysql
+    [OAK-11390] - Generate aggregate UT/IT reports
+    [OAK-11397] - Provide a way to get expanded names for items
+    [OAK-11435] - oak-search: the special baseline configuration may be 
removed from the pom.
+    [OAK-11436] - oak-segment-aws: the special baseline configuration may be 
removed from the pom.
+    [OAK-11454] - Explain query output: fix "synchronousPropertyCondition"
+    [OAK-11457] - Tree store sometimes contains bundled properties
+    [OAK-11460] - Allow configuring "index.mapping.total_fields.limit"
+    [OAK-11466] - Replace Fixed to Exponential retries in oak-segment-azure
+    [OAK-11468] - RDBDataSourceFactory unnecessarily loads the JDBC driver 
class explicitly.
+    [OAK-11469] - Speedup resolution of mount paths
+    [OAK-11472] - Improve error handling when index is missing Tika config
+    [OAK-11478] - Node store statistics: support the tree store
+    [OAK-11483] - Throttle log warn messages during indexing in Elastic
+    [OAK-11488] - Flaky test 
org.apache.jackrabbit.oak.plugins.document.VersionGarbageCollectorIT. 
testDeletedPropsAndUnmergedBCWithCollisionWithDryRunMode
+    [OAK-11489] - Flaky test 
org.apache.jackrabbit.oak.plugins.document.BranchCommitGCTest.unmergedAddsThenMergedAddThenUnmergedRemovesChildren
+    [OAK-11490] - VersionGarbageCollectorIT takes 1 hour to run
+    [OAK-11501] - Disable spotbugs
+    [OAK-11504] - Elasticsearch: support "flattened" fields
+    [OAK-11505] - Reduce object allocation in FullTextIndexEditor
+    [OAK-11509] - Incremental flat file store: reduce logging
+    [OAK-11510] - Performance improvements to IndexDefinition class
+    [OAK-11511] - Performance improvements to FullTextDocumentMaker class
+    [OAK-11515] - Fix indentation on indexing related classes
+    [OAK-11520] - Performance improvements to Aggregate class in indexing logic
+    [OAK-11526] - Reduce logging verbosity in IndexWriterPool when closing 
writers
+    [OAK-11530] - Elasticsearch: "field name cannot be an empty string" if 
fields start with a dot
+    [OAK-11533] - Reduce calls to PathUtils.concat() in FulltextIndexEditor
+    [OAK-11534] - Auto-merge indexes if string matches single-value array
+    [OAK-11538] - Cleanups and small performance improvements to 
CompositeEditor and CompositeIndexEditorProvider
+    [OAK-11544] - Flaky test 
PipelinedTreeStoreIT.createFFSCustomExcludePathsRegexNoRetryOnConnectionErrorRegexFiltering
+    [OAK-11547] - oak-search-elastic: upgrade Elasticsearch Java Client to 
8.17.x
+    [OAK-11553] - Elastic: index name is swallowed in case of 
IllegalArgumentException
+    [OAK-11555] - Elastic: support dot and other special characters in 
property and function names
+    [OAK-11568] - Elastic: improved compatibility for analyzer definitions
+    [OAK-11597] - increase toxiproxy startup attempts
+    [OAK-11598] - Bump testcontainers to v1.20.6
+    [OAK-11606] - indexing-job: throttle messages warning about enqueuing 
delays in IndexWriterPool
+    [OAK-11610] - Clarify javadoc of 
o.a.j.api.security.user.UserManager.createUser() with respect to null passwords
+    [OAK-11613] - Expose ELASTIC_ENABLED metric
+    [OAK-11614] - ES StatisticalFacets: log search request on timeout
+
+Test
+
+    [OAK-11252] - flaky BranchCommitGCTest.unmergedRemoveChild + 
unmergedAddsThenMergedAddsChildren
+    [OAK-11477] - Flaky test: 
DocumentDiscoveryLiteServiceIT.testLargeStartStopFiesta
 
 Task
 
-    [OAK-11027] - flaky IncrementalStoreTest
-    [OAK-11264] - CacheWarming tests seems flaky
-    [OAK-11286] - blob-cloud, segment: update netty version to 4.1.115
-    [OAK-11394] - Avoid creation of iterator object when creating a 
CompositeEditor
-    [OAK-11412] - indexing job: delay creation of index writers backend until 
the start of the indexing phase
-    [OAK-11415] - TypeEditor: constraint exception for node type violations 
should contain that node's effective type
-    [OAK-11419] - oak-store-document - persistent cache: remove unused UDP/TCP 
broadcasters
-    [OAK-11470] - Undo changes to remove usage of Guava ImmutableSet
+    [OAK-11438] - indexing job: parallelize Lucene writer backend
+    [OAK-11456] - oak-solr-osgi embeds vulnerable Zookeeper 3.9.2
+    [OAK-11458] - Create IterableUtils in oak-commons
+    [OAK-11459] - Code cleanups on indexing related packages
+    [OAK-11506] - Update oak-segment-azure tools to use azure sdk v12 
implementation
+    [OAK-11524] - Update oak-commons SetUtils to use commons-collections4 
methods
+    [OAK-11541] - FullGC Mongo query has too broad scope
+    [OAK-11569] - Potential regression introduced with OAK-11287
+    [OAK-11586] - webapp: update Tomcat dependency to 9.0.102
+    [OAK-11594] - Converting existing indexes from a type to another leaves 
the async lane the same
+    [OAK-11595] - update Tomcat JDBC dependency to 9.0.102
+    [OAK-11611] - blob-cloud, segment: update netty version to 4.1.119
+    [OAK-11623] - Clean oak-segment-azure lib embedding and exporting
 
 
 In addition to the above-mentioned changes, this release contains all

Reply via email to