Hi all,

This is my first Jackrabbit release. I would like to take the opportunity to
congratulate the Jackrabbit team for their work. Jackrabbit is a very nice
project. a BIG Thank also to all OCM committers & contributors. It was a
great help.


Best regards,
Christophe


On Jan 15, 2008 10:48 PM, Jukka Zitting <[EMAIL PROTECTED]> wrote:

> The Apache Jackrabbit community is pleased to announce the release of
> Apache Jackrabbit version 1.4. The release is available for download
> at:
>
>    http://jackrabbit.apache.org/downloads.cgi
>
>
> Release Notes -- Apache Jackrabbit -- Version 1.4
>
> Introduction
> ------------
>
> 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. Typical applications that use content repositories include content
> management, document management, and records management systems.
>
> Apache Jackrabbit 1.4 is an incremental feature release. While
> remaining compatible with previous releases, Jackrabbit 1.4 introduces
> a number of new features, improvements and fixes to known issues. The
> most notable new features in this releases are the new object mapping
> and service provider components for JCR. The Jackrabbit content
> repository implementation has been enhanced with a new storage model
> for binary content, a much improved query and indexing system, and
> many fixes and improvements especially for concurrent access. Many
> smaller improvements and bug fixes are also included all over the
> codebase.
>
> See the Apache Jackrabbit website at http://jackrabbit.apache.org/ for
> more information.
>
> Release Contents
> ----------------
>
> The release consists of a single source archive and a number of
> pre-compiled binary component archives.
>
>    * Jackrabbit source code (jackrabbit-1.4-src.jar)
>
>        The main source archive contains a "jackrabbit-1.4-src" directory
>        with the full released source code and build environment. Use the
>        following commands (or the equivalent in your system) to build all
>        the released components with Maven 2 and Java 1.4:
>
>          $ jar xf jackrabbit-1.4-src.jar
>          $ cd jackrabbit-1.4-src
>          $ mvn install
>
>        The OCM components require Java 5 or higher, and you need to
>        build them separately:
>
>          $ (cd jackrabbit-ocm; mvn install)
>          $ (cd jackrabbit-ocm-nodemanagement; mvn install)
>
> The components contained in the released source archive are listed below
> (with the pre-compiled binary archives in parenthesis):
>
>    * Jackrabbit API (jackrabbit-api-1.4.jar)
>
>        Interface extensions that Apache Jackrabbit supports in
>        addition to the standard JCR API.
>
>    * Jackrabbit JCR Commons (jackrabbit-jcr-commons-1.4.jar)
>
>        General-purpose classes for use with the JCR API.
>
>    * Jackrabbit JCR Tests (jackrabbit-jcr-tests-1.4.jar)
>
>        Set of JCR API test cases designed for testing the compliance
>        of an implementation. Note that this is not the official JCR TCK!
>
>    * Jackrabbit Core (jackrabbit-core-1.4.jar)
>
>        Core of the Apache Jackrabbit content repository implementation.
>
>    * Jackrabbit Text Extractors (jackrabbit-text-extractors-1.4.jar)
>
>        Text extractor classes that allow Jackrabbit to extract text
> content
>        from binary properties for full text indexing.
>
>    * Jackrabbit JCR-RMI (jackrabbit-jcr-rmi-1.4.jar)
>
>        RMI network layer for the JCR API.
>
>    * Jackrabbit WebDAV Library (jackrabbit-webdav-1.4.jar)
>
>        Interfaces and common utility classes used for building a
>        WebDAV server or client.
>
>    * Jackrabbit JCR Server (jackrabbit-jcr-server-1.4.jar)
>
>        WebDAV servlet implementations based on JCR.
>
>    * Jackrabbit JCR Servlets (jackrabbit-jcr-servlet-1.4.jar)
>
>        Set of servlets and other classes designed to make it easier to use
>        Jackrabbit and other JCR content repositories in web applications.
>
>    * Jackrabbit Repository Classloader (jackrabbit-classloader-1.4.jar)
>
>        Java classloader for loading classes from JCR content repositories.
>
>    * Jackrabbit Web Application (jackrabbit-webapp-1.4.war)
>
>        Deployable Jackrabbit installation with WebDAV support for JCR.
>
>    * Jackrabbit JCA Resource Adapter (jackrabbit-jca-1.4.rar)
>
>        J2EE Connector Architecture (JCA) resource adapter for Jackrabbit.
>
>    * Jackrabbit SPI (jackrabbit-spi-1.4.jar)
>
>        The SPI defines a layer within a JSR-170 implementation that
> separates
>        the transient space from the persistent layer.
>
>    * Jackrabbit SPI Commons (jackrabbit-spi-commons-1.4.jar)
>
>        This component contains generic utility classes that might be used
>        to build an SPI implementation.
>
>    * Jackrabbit SPI2JCR (jackrabbit-spi2jcr-1.4.jar)
>
>        This component contains a SPI implementation wrapping around an
>        implementation of JSR-170.
>
>    * Jackrabbit JCR2SPI (jackrabbit-jcr2spi-1.4.jar)
>
>        This component contains an implementation of the JSR-170 API and
>        covers the functionality that is not delegated to the SPI
>        implementation.
>
>    * Jackrabbit OCM (jackrabbit-ocm-1.4.jar)
>
>        Object-Content mapping tool for persisting and accessing Java
> objects
>        in a JCR content repository.
>
>    * Jackrabbit OCM Node Management (jackrabbit-ocm-nodemanagement-1.4.jar
> )
>
>        This component simplifies registration of node types and namespaces
>        referenced in OCM mapping descriptors.
>
> All files contain a README.txt file with more information. Note that
> external runtime dependencies are only included for the war and rar
> archives. Other dependencies can be downloaded either manually or
> automatically using the Maven build system.
>
> Each release file is accompanied by SHA1 and MD5 checksums and a PGP
> signature. The public key used for the signatures can be found
> in the KEYS file located in the parent directory.
>
> Upgrading to Jackrabbit 1.4
> ---------------------------
>
> Apache Jackrabbit 1.4 is fully compatible with the previous 1.x releases.
> A previous Apache Jackrabbit 1.x installation can be upgraded by replacing
> the relevant jar files with the new versions and adding some new
> dependencies.
> No changes to repository contents are needed.
>
> Jackrabbit 1.4 introduces the SPI layer described above, and in addition
> to
> it's earlier dependencies the jackrabbit-core component now also needs the
> jackrabbit-spi and jackrabbit-spi-commons components in the classpath.
>
> A number of classes in jackrabbit-jcr-commons have been deprecated, and
> you
> should check for the suggested replacements if you use those classes in
> your
> applications.
>
> The Lucene dependency was upgraded to 2.2.0, and so you need to upgrade
> also the lucene-core jar file in your classpath when upgrading
> jackrabbit-core. No index file changes are needed.
>
> Repository configuration has been extended with a number of options for
> storage, locking and indexing strategies. However, no changes to existing
> configuration files are needed unless you want to enable these new
> features.
>
> A minor behavioural change to queries containing XPath "not(@property)"
> constraints was made to make Jackrabbit better conform with the JCR
> specification. In Jackrabbit 1.3 and before such constraint would match
> empty multi-valued properties, but in Jackrabbit 1.4 the contraint is true
> only if the property does not exist.
>
> Upgrading to Jackrabbit 1.3
> ---------------------------
>
> Apache Jackrabbit 1.3 is fully compatible with the previous 1.x releases.
> A previous Apache Jackrabbit 1.x installation can be upgraded by replacing
> the relevant jar files with the new versions. No changes to repository
> contents are needed.
>
> See below for a more detailed description of the structural changes in
> the Apache Jackrabbit 1.2 release.
>
> Upgrading to Jackrabbit 1.2
> ---------------------------
>
> The most notable effect of the component restructuring in the 1.2 release
> was that the previous jackrabbit-core component has been split in three
> pieces: jackrabbit-api, jackrabbit-jcr-commons, and jackrabbit-core. Thus
> you need to replace the previous jackrabbit-core-1.x.jar file with the
> three new jar archives.
>
> The structure of the WebDAV components have also changed. WebDAV support
> now consists of the webapp component jackrabbit-webapp and the libraries
> jackrabbit-webdav and jackrabbit-jcr-server.
>
> The Apache Lucene dependency used for full text indexing has been upgraded
> to version 2.0 in this release. Lucene 2.0 is able to continue using
> existing index files, but you can also manually recreate the index with
> Lucene 2.0 extensions by removing the "index" directories of a closed
> repository. Jackrabbit will automatically re-index content when the
> repository is next started.
>
> Also the Apache Derby dependency has been upgraded to version 10.2.
> Like Lucene, the new Derby version can keep using existing database files.
> New repositories and workspaces will however be created using extensions
> and improvements introduced in the 10.2 version.
>
> Changes and known issues in this release
> ----------------------------------------
>
> All the changes (new features, improvements, bug fixes) and known issues
> in Apache Jackrabbit 1.4 are listed below. The listing is organized by
> Jackrabbit component and by issue type. The issue identifier and title
> is listed for each change and known issue.
>
> You can look up individual issues for more details in the Jackrabbit
> issue tracker at
>
>    http://issues.apache.org/jira/browse/JCR
>
> Note that some issues may appear more than once in the list below, as
> they may affect more than one component. Generic issues that affect all
> or most components are listed first under the label "jackrabbit".
>
> jackrabbit
>
>  New features
>  [JCR-995]  Release the OCM component
>  [JCR-1070] Promotion of SPI from Contrib
>
>  Improvements
>  [JCR-902]  Put JavaDoc resources in src/main/javadoc
>  [JCR-903]  Put resource files in java/{main,test}/resources
>  [JCR-957]  Set jcr and servlet-api dependency scope to provided
>  [JCR-979]  Extend apache parent pom for Apache wide configuration
>  [JCR-988]  Configure the maven build for IDE project generation for ...
>  [JCR-1283] Add missing license headers
>
> jackrabbit-api
>
>  Improvements
>  [JCR-1097] Move the XASession interface to jackrabbit-api
>
> jackrabbit-classloader
>
>  No changes
>
> jackrabbit-core
>
>  New features
>  [JCR-202]  Add configuration options for search manager
>  [JCR-857]  Basic support for fn:name()
>  [JCR-889]  Add bundle support for PostgreSQL
>  [JCR-901]  Support synonym searches
>  [JCR-906]  Introduce similarity function
>  [JCR-907]  Create HTML excerpt provider
>  [JCR-926]  Global data store for binaries
>  [JCR-989]  Modify LazyQueryResultImpl to allow resultFetchSize to be ...
>  [JCR-1073] Add getTotalSize() to QueryResults
>  [JCR-1079] Extend the IndexingConfiguration to allow configuration ...
>  [JCR-1112] CacheManager interval between recalculation of cache sizes ...
>  [JCR-1154] Database Data Store
>  [JCR-1184] Introduce spellchecker functionality based on content in ...
>  [JCR-1276] A Property and a Node Can Have the Same Name
>  [JCR-1295] Tablespace (Filegroup) support for MS SQL Server
>  [JCR-1304] Support system properties in ${...} vars in XML config files
>
>  Improvements
>  [JCR-314]  Fine grained locking in SharedItemStateManager
>  [JCR-564]  Remove geronimo JTA as a runtime dependency
>  [JCR-688]  Improve name resolution
>  [JCR-691]  Let NameException extend RepositoryException
>  [JCR-788]  Upgrade to Lucene 2.2
>  [JCR-860]  Add relative path parameter to rep:excerpt()
>  [JCR-863]  Use FileLock for locking instead of empty file
>  [JCR-887]  DateField class should be public
>  [JCR-896]  Unnecessary parsing of Name value
>  [JCR-898]  Improve excerpt fragments
>  [JCR-920]  rep:excerpt() should also work on properties
>  [JCR-927]  DatabaseJournal needs connection reestablishment logic
>  [JCR-928]  NodeTypeManagerImpl.hasNodeType should allow unknown prefixes
>  [JCR-940]  add db connection autoConnect for BundleDbPersistenceManager.
>  [JCR-943]  SQL Server support in clustering module
>  [JCR-948]  Support for JNDI configuration of BundleDbPersistenceManager
>  [JCR-949]  PostgreSQL support in clustering module
>  [JCR-967]  Only search the index for the "jcr:system" tree if needed
>  [JCR-968]  Add support for tablespaces to Oracle related classes
>  [JCR-974]  Manage Lucene FieldCaches per index segment
>  [JCR-975]  NodeImpl.checkin() calls save() three times
>  [JCR-976]  Misleading exception message when re-index fails
>  [JCR-982]  Each TransactionContext creates new thread
>  [JCR-992]  Improve Performance of DescendantSelfAxisQuery
>  [JCR-1041] Avoid using BitSets in ChildAxisQuery to minimize memory usage
>  [JCR-1042] Disable norms for untokenized fields to reduce memory ...
>  [JCR-1057] Log at debug level rather that info in CacheManager
>  [JCR-1061] Allow extendability of RepositoryImpl.WorkspaceInfo
>  [JCR-1063] Disable consistency check per default
>  [JCR-1064] Optimize queries that check for the existence of a property
>  [JCR-1066] Exclude system index for queries that restrict the result ...
>  [JCR-1084] Maintan a stable ordering of properties in xml export
>  [JCR-1085] Remove unused LuceneQueryBuilder.createQuery() method
>  [JCR-1093] Separate initial index creation from MultiIndex construction
>  [JCR-1097] Move the XASession interface to jackrabbit-api
>  [JCR-1111] Accesss to version history results in reading all versions ...
>  [JCR-1114] Remove QueryResultImpl and rename LazyQueryResultImpl to ...
>  [JCR-1116] Database persistence managers: log database and driver ...
>  [JCR-1138] Data store garbage collection
>  [JCR-1156] DatabaseJournal refactoring for subclassing capability
>  [JCR-1162] Improve logging in NodeTypeRegistry.persistCustomNodeTypeDefs
>  [JCR-1169] Distribution of commons classes
>  [JCR-1175] Test cases for all FileSystem implementations
>  [JCR-1178] Rethrow exception with cause in BundleDbPersistenceManager
>  [JCR-1181] Use common base classes in jackrabbit-core and jcr2spi
>  [JCR-1182] Put everything in jackrabbit-spi-commons under ...
>  [JCR-1203] Reorganize test suites
>  [JCR-1209] NodeImpl.checkout() calls save() two times
>  [JCR-1213] UUIDDocId cache does not work properly because of ...
>  [JCR-1214] DocId.UUIDDocId should not have a string attr uuid
>  [JCR-1221] IndexMerger blocks client threads when obsolete index ...
>  [JCR-1222] Index nodes in parallel
>  [JCR-1225] ReadOnlyIndexReaders are re-created on every access
>  [JCR-1229] Remove build.xml from jackrabbit-core
>  [JCR-1234] CachingMultiReader has inconsistent name
>  [JCR-1238] Change default value for maxMergeDocs
>  [JCR-1241] NodeIndexer creates unnecessary string representation of Name
> ...
>  [JCR-1251] DescendantSelfAxisQuery creates too many object instances
>  [JCR-1252] BundleFsPersistenceManager: remove deprecated settings
>  [JCR-1266] Use creation tick instead of weak references in DocNumberCache
>  [JCR-1273] Unnecessary parsing of Name value
>  [JCR-1278] Add configuration path to SynonymProvider
>  [JCR-1283] Use bundle persistence in default configuration
>  [JCR-1291] Missing class JNDIDatabaseJournal
>  [JCR-1297] Set svn:eol-style on ddl files
>  [JCR-1299] Default configuration not suitable for demo web application
>
>  Bug fixes
>  [JCR-674]  String properties with invalid XML characters export as ...
>  [JCR-832]  BundleDBPersistenceManager does not free blobStore resources
>  [JCR-1013] Connection.setAutoCommit(...) fails if connection is managed
> ...
>  [JCR-1148] NullPointerException in ItemState
>  [JCR-1167] Paths not correct after reordering children
>  [JCR-1170] Repository lock keeps file open
>  [JCR-1176] MemoryFileSystem is different from other FileSystems
>  [JCR-1179] Event filtering by path not working as specified
>  [JCR-1185] building trunk fails with javacc plugin version 2.2
>  [JCR-1197] Node.restore() may throw InvalidItemStateException
>  [JCR-1217] Aggregate include ignored if no primaryType set
>  [JCR-1235] o.a.j.core.integration.PrepareTestRepository fails on 2nd and
> ...
>  [JCR-1240] Index segments are only committed on close
>  [JCR-1246] In DatabasePersistenceManager.store(), if the exception is ...
>  [JCR-1250] When adding a large (100MB) binary to the DbDataStore, it ...
>  [JCR-1254] DatabaseJournal commits twice inside a transaction, causing an
> ...
>  [JCR-1265] Lower-Case Search-Function works with Upper-Case Searchstring
>  [JCR-1270] CompactNodeTypeDefReader does not recognise MIXIN ORDERABLE
> ...
>  [JCR-1271] NullPointerException when iterating over properties
>  [JCR-1272] Property.getValue() throws RepositoryException with internal
> error
>  [JCR-1274] ItemStateCache in SharedItemStateManager not properly ...
>  [JCR-1277] ConnectionRecoveryManager is created twice in DBDataStore init
> ...
>  [JCR-1298] Wrong schemaObjectPrefix parameter in default repository.xml
>  [JCR-1302] ArrayHits does not end properly when skipTo doesn't find
> document
>
>  Known issues
>  [JCR-43]   Restore on nodes creates same-name-sibling of ...
>  [JCR-320]  BinaryValue equals fails for two objects with ...
>  [JCR-392]  Querying element by number does not work
>  [JCR-435]  Node.update() does not work correct for SNS
>  [JCR-449]  inconsistency in internal version items during commits
>  [JCR-517]  Reserved status of namespace jcr not enforced
>  [JCR-522]  XPath parser too tolerant
>  [JCR-537]  Failure to remove a versionable node
>  [JCR-538]  failing Node.checkin() or Node.checkout() might leave ...
>  [JCR-566]  Versioning bug with restore and transactions
>  [JCR-575]  unicode escapes in files generated by JJTree
>  [JCR-591]  XPath position function does not work
>  [JCR-639]  Allow modification of OPV=IGNORE items even if parent ...
>  [JCR-643]  Own AccessManager + VersionManager : AccessDenied problem
>  [JCR-690]  Nodes' and properties' names with invalid XML ...
>  [JCR-709]  ArrayStoreException is thrown when jcr:deref() is used ...
>  [JCR-777]  Order by clause using child axis does not throw ...
>  [JCR-843]  XPath does not work with sub-axes
>  [JCR-908]  Unable to properly restore a previous version of a node that
> ...
>  [JCR-932]  Lossy SQL parsing
>  [JCR-935]  ConcurrentModificationException during logout (cont'd)
>  [JCR-936]  Using Oracle bundle PM throws SQL exception (cannot insert
> NULL)
>  [JCR-983]  fn:upper accepted in too many places
>  [JCR-1002] QueryManager does not throw exception if property name ...
>  [JCR-1046] Non-versionable children of a versionable node should not ...
>  [JCR-1075] Error with predicate in query with multiple jcr:deref()
>  [JCR-1117] Bundle cache is not rolled back when the storage of a ...
>  [JCR-1135] boolean value constraints exposed in custom format
>  [JCR-1173] Session scoped lock has no effect on other cluster nodes
>  [JCR-1187] Asking a property twice for it's stream returns the same ...
>  [JCR-1211] QueryManager does not throw exception if jcr:deref is used in
> ...
>  [JCR-1223] Occasional NPE on node checkin
>  [JCR-1227] Restore of empty multivalue property always changes property
> ...
>  [JCR-1248] ParseException if search string ends with '!'
>  [JCR-1275] NullPointerException in AbstractVersionManager....
>  [JCR-1288] query parser doesn't handle relative XPath expressions
>
> jackrabbit-jca
>
>  Improvements
>  [JCR-987]  Deploy JCA JAR file to maven repository
>  [JCR-1203] Reorganize test suites
>
>  Known issues
>  [JCR-607]  Importing XML at root level using a session from JCA ...
>  [JCR-609]  Empty custom_nodetypes.xml after restart
>  [JCR-769]  Unable to login with two different Credentials to the same ...
>  [JCR-861]  Connector should support LocalTransaction as well as
> XATransaction
>  [JCR-1035] Jackrabbit JCA - The client can bypass the managed connection
> ...
>  [JCR-1077] Changelog not persisted during two phase commit in prepare
> phase
>
> jackrabbit-jcr-commons
>
>  New features
>  [JCR-1259] Utility code for filtering and packaging trees
>
>  Improvements
>  [JCR-742]  Abstract JCR base classes
>  [JCR-896]  Unnecessary parsing of Name value
>  [JCR-969]  better error for unknown date formats
>  [JCR-997]  ValueFactory is not extensible
>  [JCR-1152] SPI implementations currently need to provide ...
>  [JCR-1169] Distribution of commons classes
>  [JCR-1206] UUID generation: SecureRandom should be used by default
>  [JCR-1258] Add path encoding to ISO9075
>  [JCR-1273] Unnecessary parsing of Name value
>
>  Bug fixes
>  [JCR-674]  String properties with invalid XML characters export as ...
>  [JCR-1167] Paths not correct after reordering children
>  [JCR-1292] Deprecated classes point to wrong replacements ...
>
> jackrabbit-jcr-rmi
>
>  Improvements
>  [JCR-958]  Use jackrabbit-jcr-commons in jackrabbit-jcr-rmi
>  [JCR-953]  Support for transactions when using JCR over RMI.
>  [JCR-959]  Remove @author tags in jackrabbit-jcr-rmi
>
>  Bug fixes
>  [JCR-1226] ServerQuery does not use RemoteAdapterFactory for creating ...
>
> jackrabbit-jcr-server
>
>  New features
>  [JCR-388]  add support for RFC 3253 to the simple server
>  [JCR-1188] WebDAV: Allow for Extensions of MimeResolver in the ...
>
>  Improvements
>  [JCR-723]  OpenDocument files missing in mimetypes.properties
>  [JCR-852]  Change Log-Level in DefaultIOListener
>  [JCR-1172] Better MimeType Handling
>  [JCR-1210] WebDAV: pack AbstractWebdavServlet with the ...
>  [JCR-1230] Jcr-Server: useful output upon GET to root- and ...
>  [JCR-1262] Deprecated AbstractWebdavServlet should be empty and extend
> ...
>  [JCR-1263] Move SimpleWebdavServlet to jcr-server and make it abstract
>  [JCR-1268] Move JCRWebdavServerServlet to jcr-server and make it abstrat
>
> jackrabbit-jcr-servlet
>
>  New features
>  [JCR-956] Reusable Repository access and bind servlets
>
>  Improvements
>  [JCR-419]  Request for other RMI binding options in ...
>
> jackrabbit-jcr-tests
>
>  Improvements
>  [JCR-817]  TCK vs available property types
>  [JCR-822]  TCK: Transfer of lock token should be tested using ...
>  [JCR-947]  XMLReader logs fatal error to system out
>  [JCR-1143] NullPointerException in ClassDescriptor
>  [JCR-1224] Release references to JCR items in tearDown
>
>  Bug fixes
>  [JCR-1134] bad assumptions in VersionHistoryTest.testInitallyGetAll...
>  [JCR-1168] broken test in AddEventListener
>
>  Known issues
>  [JCR-509]  TCK:NodeTest#testNodeIdentity fails if versioning ...
>  [JCR-714]  TCK: Test root path not escaped when used in XPath queries
>  [JCR-752]  Test cases leak sessions
>  [JCR-759]  handling of namespace registrations in AbstractJCRTest
>  [JCR-1094] TCK assumes that repository does not automatically add mixins
> ...
>  [JCR-1102] bad test assumptions in SQLJoinTest
>  [JCR-1129] bad test assumptions in versioning tests
>  [JCR-1130] bad test assumptions in TextNodeTest with respect to ...
>  [JCR-1161] Export test cases fail with Java 5 on Mac OS X
>  [JCR-1164] Bad test assumptions in observation tests
>  [JCR-1307] TCK: Attribute values may be normalized in document view
> exports
>
> jackrabbit-jcr2spi
>
>  New features
>  [JCR-999]  SPI: provide batch read functionality
>  [JCR-1009] JCR2SPI: add JNDI support
>
>  Improvements
>  [JCR-996]  Name and Path interfaces in SPI
>  [JCR-1000] JCR2SPI: remove duplicate item states
>  [JCR-1001] SPI: prefer 'Iterator' instead of specialized subclasses
>  [JCR-1004] SPI: Add RepositoryService.getQNodeTypeDefinition
>  [JCR-1017] Favour QValue.getPath() over getString() where appropriate
>  [JCR-1018] introduce QValue.getCalendar()
>  [JCR-1020] Use repository service wide namespace cache
>  [JCR-1022] Reduce calls to RepositoryService.getRepositoryDescriptors()
>  [JCR-1023] Only load item definition when required
>  [JCR-1024] Only load root node definition when required
>  [JCR-1027] SPI: change param order with RepositoryService.createBatch
>  [JCR-1030] Introduce QNodeTypeDefinition cache per userId
>  [JCR-1031] RowIteratorImpl should make use of QueryResultRow.getValues()
>  [JCR-1032] Clean caches in node type registry on session logout
>  [JCR-1108] JCR2SPI: error level logging when cleaning up session locks
>  [JCR-1150] JCR2SPI: several performance improvements pointed out by ...
>  [JCR-1151] avoid converting property values to strings
>  [JCR-1152] SPI implementations currently need to provide ...
>  [JCR-1153] remove support for event bundle IDs
>  [JCR-1159] SPI: improve description of locking methods on
> RepositoryService
>  [JCR-1166] JCR2SPI does not provide actual size on RangeIterator.getSize
> ()
>  [JCR-1169] Distribution of commons classes
>  [JCR-1181] Use common base classes in jackrabbit-core and jcr2spi
>  [JCR-1182] Put everything in jackrabbit-spi-commons under ...
>  [JCR-1200] allow SPI implementation to compute default values for ...
>  [JCR-1204] Redesign SPI observation
>  [JCR-1231] Jcr2Spi: Unneeded call to getPropertyInfo upon creating a new
> ...
>  [JCR-1244] No need for NodeReferences in jcr2spi
>  [JCR-1267] Unreachable catch block for NameException in
> ValueConstraint.java
>
>  Bug fixes
>  [JCR-674]  String properties with invalid XML characters export as ...
>  [JCR-1029] CLONE -Handling of multiple residual prop defs in ...
>  [JCR-1036] JCR2SPI; setProperty(name, date-string) fails when property
> ...
>  [JCR-1040] JCR2SPI: remove node operation missing in submitted SPI batch
>  [JCR-1056] JCR2SPI: improve ItemDefinitionProviderImpl.getMatching...
>  [JCR-1086] JCR2SPI: Workspace.getImportHandler creates a handler ...
>  [JCR-1103] JCR2SPI: VersionManagerImpl.getVersionableNodeEntry uses ...
>  [JCR-1131] JCR2SPI NodeEntryImpl throws NPE during reorderNodes
>  [JCR-1133] JCR2SPI: VersionHistoryImpl.getQLabels() needs to skip ...
>  [JCR-1149] JCR2SPI: several broken equals() comparisons
>  [JCR-1160] JCR2SPI: test regression for WorkspaceMoveReferenceableTest...
>  [JCR-1183] JCR2SPI: potential race condition in event listener
> registration
>  [JCR-1245] JCR2SPI: Use namespace decl. present in imported xml to ...
>  [JCR-1296] Exception may get lost in WorkspaceManager....
>
>  Known issues
>  [JCR-1293] ReorderReferencableSNSTest failure
>
> jackrabbit-spi
>
>  New features
>  [JCR-999]  SPI: provide batch read functionality
>
>  Improvements
>  [JCR-851]  Handling of binary properties (streams) in QValue interface
>  [JCR-996]  Name and Path interfaces in SPI
>  [JCR-1000] JCR2SPI: remove duplicate item states
>  [JCR-1001] SPI: prefer 'Iterator' instead of specialized subclasses
>  [JCR-1004] SPI: Add RepositoryService.getQNodeTypeDefinition
>  [JCR-1018] introduce QValue.getCalendar()
>  [JCR-1027] SPI: change param order with RepositoryService.createBatch
>  [JCR-1151] avoid converting property values to strings
>  [JCR-1153] remove support for event bundle IDs
>  [JCR-1155] Wrong link in javadoc of QNodeTypeDefinition
>  [JCR-1159] SPI: improve description of locking methods on
> RepositoryService
>  [JCR-1190] QValueFactory improvements
>  [JCR-1200] allow SPI implementation to compute default values for ...
>  [JCR-1204] Redesign SPI observation
>
> jackrabbit-spi-commons
>
>  Improvements
>  [JCR-851]  Handling of binary properties (streams) in QValue interface
>  [JCR-996]  Name and Path interfaces in SPI
>  [JCR-1003] Use inheritance rather than delegation for SPI
> ValueFactoryImpl
>  [JCR-1007] Move common implementations of SPI interfaces to ...
>  [JCR-1017] Favour QValue.getPath() over getString() where appropriate
>  [JCR-1018] introduce QValue.getCalendar()
>  [JCR-1027] SPI: change param order with RepositoryService.createBatch
>  [JCR-1151] avoid converting property values to strings
>  [JCR-1152] SPI implementations currently need to provide ...
>  [JCR-1153] remove support for event bundle IDs
>  [JCR-1169] Distribution of commons classes
>  [JCR-1182] Put everything in jackrabbit-spi-commons under ...
>  [JCR-1190] QValueFactory improvements
>  [JCR-1200] allow SPI implementation to compute default values for ...
>
>  Bug fixes
>  [JCR-1179] Event filtering by path not working as specified
>  [JCR-1280] Path.equals does not work for other Path implementations
>
> jackrabbit-spi2jcr
>
>  New features
>  [JCR-999]  SPI: provide batch read functionality
>  [JCR-1009] JCR2SPI: add JNDI support
>
>  Improvements
>  [JCR-996]  Name and Path interfaces in SPI
>  [JCR-1000] JCR2SPI: remove duplicate item states
>  [JCR-1001] SPI: prefer 'Iterator' instead of specialized subclasses
>  [JCR-1004] SPI: Add RepositoryService.getQNodeTypeDefinition
>  [JCR-1007] Move common implementations of SPI interfaces to ...
>  [JCR-1027] SPI: change param order with RepositoryService.createBatch
>  [JCR-1153] remove support for event bundle IDs
>  [JCR-1157] Expose namespace registry via workspace instead via session
> ...
>  [JCR-1159] SPI: improve description of locking methods on
> RepositoryService
>  [JCR-1169] Distribution of commons classes
>  [JCR-1182] Put everything in jackrabbit-spi-commons under ...
>  [JCR-1204] Redesign SPI observation
>
>  Bug fixes
>  [JCR-1010] Test failures with spi2jcr in AddEventListenerTest
>  [JCR-1147] spi2jcr: RepositoryServiceImpl.getRootId returns bad NodeId
>
> jackrabbit-text-extractors
>
>  Improvements
>  [JCR-1247] Add Warnlog on Extraction Failure
>
> jackrabbit-webapp
>
>  New features
>  [JCR-388]  add support for RFC 3253 to the simple server
>  [JCR-946]  Create a sample search page
>  [JCR-961]  Add workspace population tool
>  [JCR-1184] Introduce spellchecker functionality based on content in ...
>  [JCR-1188] WebDAV: Allow for Extensions of MimeResolver in the ...
>  [JCR-1289] Error reporting page for jackrabbit-webapp
>
>  Improvements
>  [JCR-924]  Use the Jackrabbit RMI extensions by default in
> jackrabbit-webapp
>  [JCR-1016] [PATCH] Allow RepositoryAccessServlet to get the Repository
> ...
>  [JCR-1193] war missing jcr jar
>  [JCR-1210] WebDAV: pack AbstractWebdavServlet with the ...
>  [JCR-1220] WebApp: Ease first access for new users looking for a WebDAV
> ...
>  [JCR-1268] Move JCRWebdavServerServlet to jcr-server and make it abstract
>  [JCR-1283] Use bundle persistence in default configuration
>  [JCR-1287] jackrabbit-webapp facelift
>
>  Known issues
>  [JCR-1301] Trouble undeploying jackrabbit-webapp from Tomcat
>
> jackrabbit-webdav
>
>  Improvements
>  [JCR-1210] WebDAV: pack AbstractWebdavServlet with the ...
>
>  Bug fixes
>  [JCR-1264] IfHeader: Incorrect test for parsing keyword "not" in
> parseIfList
>
>  Known issues
>  [JCR-406]  If header evaluation compliance problems
>
> jackrabbit-ocm
>
>  New features
>  [JCR-1106] Add simple query method to ObjectContentManager
>
>  Improvements
>  [JCR-922]  jcr mapping layer (OCM) should expose lock owner
>  [JCR-930]  [OCM] rename o.a.j.ocm.persistence.PersistenceManager to ...
>  [JCR-1107] ObjectIterator may return null, which is not readily ...
>  [JCR-1113] Refactor the Mapper & DescriptotReader classes
>  [JCR-1115] Remove dependency on Jackrabbit-core
>  [JCR-1119] SimpleFieldsHelper emits a lot warnings
>  [JCR-1144] Investigate ways to compile the refactored jcr-mapping for ...
>  [JCR-1145] ObjectConverterImpl.getObject(Session, Class, String) may ...
>  [JCR-1199] Remove dependency to log4j
>  [JCR-1281] Move ocm documentation to jackrabbit-site
>  [JCR-1282] Publish the jackrabbit-ocm DTD
>
>  Bug fixes
>  [JCR-864]  Bug in UtilDateTypeConverterImpl
>  [JCR-1044] NTCollectionConverterImpl throws a null pointer exception ...
>  [JCR-1054] Duplicate attribute in BeanDescriptor and CollectionDescriptor
>  [JCR-1143] NullPointerException in ClassDescriptor
>  [JCR-1198] Issue while loading list of classes at that path itself
>  [JCR-1285] ObjectContentManagerImpl.getObject(Query) throws ...
>
>  Known issues
>  [JCR-1286] FilterImpl.getStringValue() does not use custom converter ...
>
> jackrabbit-ocm-nodemanagement
>
>  Improvements
>  [JCR-1025] Node Type Management subproject : Default namespace should ...
>

Reply via email to