From Steve Bayliss, Fedora 3.4 Release Manager
Ithaca, NY Today the Fedora Repository team is pleased to announce the release of Fedora 3.4 led by Steve Bayliss. The latest version of the Fedora Repository platform is now available for download from the main Fedora Repository page at:
Although a minor release, this version includes a number of exciting new features and bug fixes that make Fedora an even more compelling repository platform. You are encouraged to download this latest version and give it a spin. Please send your comments and feedback via the mailing lists, and of course please let us know of any problems you discover.
Important new features in this release are:
- DC, RELS-EXT, RELS-INT as Managed Content: The Dublin Core and Relationships datastreams can now be stored as Managed Content, improving performance particularly when these datastreams are large. A migration tool is included to migrate existing inline XML datastreams to managed content datastreams
- REST API relationships methods: New methods in the REST API for adding and manipulating relationships in RELS-EXT and RELS-INT
- Enhanced Content Models: Including the ability to validate objects against their content models, and support for optional datastreams
- Optimistic Locking: The REST API now provides support for optimistic locking to ensure no one else has made a change to an object since you started editing it
- FeSL Authentication: FeSL Authentication can now be used independently of FeSL’s experimental authorization mechanism, and is now the default authentication mechanism (although the old mechanism can be specified during installation). FeSL Authorization is still disabled by default.
- FeSL policies as Fedora Objects: XACML policies are now managed in FeSL directly through the Fedora API by manipulating Fedora objects containing a FESLPOLICY datastream
- Logging reconfiguration without restart: Using the new SLF4J and Logback logging framework, logging configuration changes now become effective without having to restart the server
- Akubra low-level storage: Akubra is now considered production-ready and is the default low-level storage module
- REST API improvements and bug fixes: further stabilizing the REST API
- Deprecation of “LITE” APIs: As of this release, the API-A-LITE and API-M-LITE APIs are deprecated, and will be removed in a future release. You are encouraged to migrate any code using these APIs to use the new REST API.
Full release notes for this release are available from https://wiki.duraspace.org/x/1AZQAQ
Java package naming and Java version
- As of version 3.4, Java 5 (JDK 1.5) is no longer supported. Java 6 (JDK 1.6) or later is required both to build and run Fedora.
- Java package names have undergone a thorough revision for this release. If you have your own code built against Fedora libraries and you update these to use the libraries from this version you will need to update your code to use the new package names.
- If you have built your own storage plugins you will need to modify these to work with the new package names and some minor changes to the ILowLevelStorage interface
Akubra Low-level Storage
- As of version 3.4, Akubra is the default low-level storage module, replacing the legacy file storage module
- Akubra is not backwards-compatible with object and datastream file storage from pre 3.4 repositories (these will have been using the legacy file storage module)
- If you are upgrading an existing pre-3.4 repository please ensure you select the legacy-fs option for Low Level Storage when installing (or use llstore.type=legacy-fs in your install.properties file)
Enhanced Content Models
- Version 3.4 includes Enhanced Content Models (ECM)
- This is the first version of Fedora with ECM, and we welcome feedback from the community on these new features
- Please note that some features in ECM are liable to change based on this feedback
- In version 3.4 many bug-fixes and improvements have been made to the REST API
- Previously the output of some REST API methods was incorrect and invalid against the schemas
- If your client applications use the REST API, you may need to update your handling of some REST API responses, particularly if you use namespace-aware parsing (default namespaces have been added to some method responses which were previously missing these)
Many thanks to everyone who made this release possible, not only those who have contributed directly to the code for this release, but also to those of you who have assisted in testing, provided feedback on the mailing lists, and raised issues in JIRA. We rely on the continued involvement of all Fedora Repository users to continue to make the project a success. Special thanks to Scott Prater, University of Wisconsin, Madison (http://library.wisc.edu/) who provided a patch for https://jira.duraspace.org/browse/FCREPO-552 - Configurable parameters for the Fedora internal http client, for testing JIRA issues and updating documentation; Matteo Boschini and Riccardo Valzorio, CILEA, Italy (http://www.cilea.it/) who performed system tests, and; Graeme West, Glasgow Caledonian University, UK (http://gcu.ac.uk) who provided a patch, and testing, for https://jira.duraspace.org/browse/FCREPO-704 - Ingesting a managed content datastream via REST fails with files larger than 2GB.