Release Notes -- Apache Jackrabbit -- Version 2.20.0

Introduction
------------

This is Apache Jackrabbit(TM) 2.20.0, a fully compliant implementation of the
Content Repository for Java(TM) Technology API, version 2.0 (JCR 2.0) as
specified in the Java Specification Request 283 (JSR 283).

Apache Jackrabbit 2.20.0 is an incremental feature release based on
and compatible with earlier stable Jackrabbit 2.x releases. Jackrabbit
2.20.x releases are considered stable and targeted for production use.

The minimum Java version for this release is Java 8. See

  http://jackrabbit.apache.org/jcr/downloads.html
  
for maintenance versions that support earlier Java versions.

Be aware of the artifact changes below:

1) jackrabbit-api has been removed; use Jackrabbit Oak's oak-jackrabbit-api
   instead (JCR-4449)
2) jackrabbit-bundle has been removed (JCR-4440)
3) jackrabbit-standalone-components has been added (JCR-4401)


Changes in Jackrabbit 2.20.0
----------------------------

Bug

    [JCR-4408] - jackrabbit-webapp: test dependency for httpcore breaks war file
    [JCR-4420] - Release Notes: term "SHA1" no longer allowed
    [JCR-4425] - NodeSetPrimaryTypeTest.testSetPrimaryType() must not use nt:activity
    [JCR-4455] - condition index-rule handling more broken after JCR-4339
    [JCR-4458] - When JcrRemotingServlet deployed on non-root context, AclResource Webdav request fails
    [JCR-4459] - Basic Authentication for HTTPS URIs does not work
    [JCR-4482] - jcr2spi: WorkspaceContentHandler leaks temp files
    [JCR-4483] - jcr2spi: potential NPE in ImportHandler.endDocument
    [JCR-4484] - jcr-tests: SerializationTest needs to cleanup after parse failures in import tests
    [JCR-4485] - InternalValueFactory.create(File) does not close input stream

New Feature

    [JCR-4429] - Add extension of JackrabbitAccessControlList bound to a principal

Improvement

    [JCR-4278] - Remove all usage of java.security.acl.Group for Java 11
    [JCR-4401] - Split jackrabbit-standalone to jackrabbit-standalone-components and the rest
    [JCR-4448] - Update committer list in jackrabbit-parent/pom.xml
    [JCR-4467] - Remove all usage of java.security.acl.Group for Java 14
    [JCR-4469] - link jackrabbit-api api docs from Oak
    [JCR-4470] - update javadoc-plugin dependency to 3.1.1
    [JCR-4475] - Improve o.a.j.jcr2dav.RepositoryStubImpl to test with custom servlet path mapping
    [JCR-4497] - pass computed args to surefire/failsafe invocations
    [JCR-4499] - Update jacoco dependency to 0.8.5 and align config with Oak
    [JCR-4500] - jcr-commons: enable coverage checks
    [JCR-4501] - jcr-commons: add test coverage for ISO8601 util
    [JCR-4502] - ISO8601: add convenience methods that do not require passing a Calendar, also support short format without ms information

Task

    [JCR-4394] - switch bundle comparisonVersion for 2.18
    [JCR-4400] - Update tika dependency to 1.20
    [JCR-4403] - update spotbugs dependency to 3.1.10
    [JCR-4404] - update maven-assembly-plugin dependency to 3.1.1
    [JCR-4405] - update maven-jar-plugin dependency to 3.1.1
    [JCR-4406] - update maven-bundle-plugin dependency to 4.1.0
    [JCR-4407] - Update httpcore dependency to 4.4.11
    [JCR-4409] - jackrabbit-webapp: embed JCR 2.0 API
    [JCR-4410] - jackrabbit-webapp: cleanup left over Oak references
    [JCR-4411] - Update httpclient/mime dependencies to 4.5.7
    [JCR-4415] - Update Jetty dependency to 9.2.26.v20180806
    [JCR-4416] - Update slf4j dependency to 1.7.26
    [JCR-4422] - Update httpclient/mime dependencies to 4.5.8
    [JCR-4427] - set baseline comparisonVersion to latest stable (2.18.1)
    [JCR-4428] - update Apache parent pom to version 21
    [JCR-4437] - Update Tika dependency to 1.21
    [JCR-4438] - jcr-webdav: AbstractLocatorFactory - fix Javadoc and add trace logging
    [JCR-4439] - disable baseline check for jackrabbit-bundle
    [JCR-4440] - remove jackrabbit-bundle
    [JCR-4441] - Update surefire/failsafe dependencies to 2.22.2
    [JCR-4442] - Update animal-sniffer dependency to 1.18
    [JCR-4443] - set baseline comparisonVersion to latest stable (2.18.2)
    [JCR-4447] - jackrabbit-jcr-commons: update cglib dependency
    [JCR-4449] - remove jackrabbit-api and use oak-jackrabbit-api instead
    [JCR-4450] - update checkstyle-plugin dependency to 3.1.0
    [JCR-4451] - update jar-plugin dependency to 3.1.2
    [JCR-4452] - update war-plugin dependency to 3.2.3
    [JCR-4453] - update pmd-plugin dependency to 3.12.0
    [JCR-4454] - update surefire-report-plugin dependency to 2.22.2
    [JCR-4457] - Update httpclient/mime dependencies to 4.5.9
    [JCR-4460] - allow to run remoted conformance tests with a custom servlet context path
    [JCR-4464] - Update Tika dependency to 1.22
    [JCR-4472] - jcr-rmi: switch to package-level version annotations
    [JCR-4473] - set baseline comparisonVersion to latest stable (2.18.3)
    [JCR-4476] - Update httpcore dependency to 4.4.12
    [JCR-4478] - Update httpclient/mime dependencies to 4.5.10
    [JCR-4489] - Update jacoco dependency to 0.8.4
    [JCR-4492] - Update Jackrabbit trunk to Oak 1.18.0
    [JCR-4496] - align ISO8601 class in tests with jcr-commons version
    [JCR-4503] - Update Oak dependency to 1.20.0
    [JCR-4504] - Update maven-bundle-plugin to 4.2.1
    [JCR-4505] - Update maven-assembly-plugin to 3.2.0
    [JCR-4506] - Update maven-jar-plugin to 3.2.0
    [JCR-4507] - Update spotbugs-maven-plugin to 3.1.12.2
    [JCR-4508] - Upgrade maven-scr-plugin to 1.26.2
    [JCR-4510] - Update Tika dependency to 1.23
    [JCR-4511] - Update slf4j dependency to 1.7.29
    [JCR-4512] - Update maven-scr-plugin to 1.26.4


For more detailed information about all the changes in this and other
Jackrabbit releases, please see the Jackrabbit issue tracker at

    https://issues.apache.org/jira/browse/JCR

Release Contents
----------------

This release consists of a single source archive packaged as a zip file.
The archive can be unpacked with the jar tool from your JDK installation.
See the README.txt file for instructions on how to build this release.

The source archive is accompanied by an SHA512 checksum and a
PGP signature that you can use to verify the authenticity of your
download. The public key used for the PGP signature can be found at
https://www.apache.org/dist/jackrabbit/KEYS.

About Apache Jackrabbit
-----------------------

Apache Jackrabbit is a fully conforming implementation of the Content
Repository for Java Technology API (JCR). A content repository is a
hierarchical content store with support for structured and unstructured
content, full text search, versioning, transactions, observation, and
more.

For more information, visit http://jackrabbit.apache.org/

About The Apache Software Foundation
------------------------------------

Established in 1999, The Apache Software Foundation provides organizational,
legal, and financial support for more than 140 freely-available,
collaboratively-developed Open Source projects. The pragmatic Apache License
enables individual and commercial users to easily deploy Apache software;
the Foundation's intellectual property framework limits the legal exposure
of its 3,800+ contributors.

For more information, visit http://www.apache.org/

Trademarks
----------

Apache Jackrabbit, Jackrabbit, Apache, the Apache feather logo, and the Apache
Jackrabbit project logo are trademarks of The Apache Software Foundation.
