Page tree
Skip to end of metadata
Go to start of metadata

Release date: 24 July, 2015

We are proud to announce the release of Fedora 4.3.0.

Resources

Team

Release Manager

Nick Ruest

Developers

Issue Reporters

Summary

The Fedora 4.3.0 release furthers several major objectives:

  • Move Fedora towards a clear set of standards-based services
  • Move Fedora towards runtime configurability
  • Improve support tooling for upgration from Fedora 3.x to 4.x
  • Improve support for participation in the semantic web
  • Fix bugs

This release is 4.3.0 instead of 4.2.1 because there are two non-backwards compatible changes:

  • Several properties (mimetype, filename, digest, and cnd update) no longer use the fedora namespace.
  • The fcrepo-kernel and fcrepo-kernel-impl packages have been renamed to fcrepo-kernel-api and fcrepo-kernel-modeshape, respectively.

An update utility [3] has been included with the release - see the README [4] for how to run the utility to migrate the properties to their new namespaces and update the package names.

 Related JIRA ticket...

FCREPO-1542 - Getting issue details... STATUS

Updates

Strategic Direction

Fedora is moving towards a tightly defined, standards-based, set of RESTful services that are supplemented with a pattern of integrating message-driven, asynchronous services for non-core capabilities. The 4.3.0 release includes several updates that move the software in that direction.

  • Aligning with LDP [5] by 
    • Returning a 400 response when illegal triples are not persisted
    • Advertising constraints in responses when an update request fails due to a repository constraint
    • Showing inbound references for indirectly contained resources
  • Tightening the core repository services by
    • Forbidding the update of resources that are not the target of the request
    • Removing the leakage of the underlying UUID to repository clients
    • Allowing "mimeType" and "filename" properties to be mutable
  • Moving towards full OSGi [6] deployability for runtime configuration and feature activation
    • Ensuring modules are property packaged as OSGi bundles
    • Ensuring modules are importing and exporting correct dependencies and services
    • Creating a Fedora features.xml for dependable deployment into Apache Karaf [7]
  • Enhancing external services with the Apache Camel [8] integration framework by
    • Adding a "reindex" endpoint
    • Adding a "fixity" invocation service
  • Adding support to the REST API for the JSON-LD "Accept" header "profile" parameter
 Related JIRA tickets...

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

Upgrading and Migrating

A primary focus of the ongoing Fedora effort is to facilitate the upgrade/migration of Fedora3 repositories to Fedora4. To those ends, a number of improvements have been incorporated into the "migration-utils [9]" upgration utility.

  • Packaging the utility as a standalone executable application
  • Using opaque identifiers for migrated resources
  • Adding support for user-provided RDF namespace mappings
  • Providing specific mappings of Fedora3 to Fedora4 properties
  • Improving support for migrating resources with non-existent datastreams
 Related JIRA Tickets...

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

Audit

After the completion of the Audit Service [10] sprints this spring, there remained two items to be completed:

  1. Aligning the identifier of internal Audit events with the identifier of that same event found in the external triplestore
  2. Publishing Audit events for runs of the Fixity service

The 4.3.0 release includes the resolution of the first item above.

 Related JIRA Ticket...

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

Semantic Web

One of the primary goals of Fedora is to participate as a first-class member in the world of linked data. Two updates are included in the 4.3.0 release related to that goal:

 Related JIRA Tickets...

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

Fedora Java Client

The Fedora Java Client library [13] was updated for this release by

  • Adding support for the creation of repository resources without a user-provided identifier, i.e. using the repository identifier minter
  • Adding support for resource "copy", "delete", and "move" operations
 Related JIRA Tickets...

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

Housekeeping and Bugfixes

Numerous refactorings, bugfixes, and clean-up tasks were addressed in this release. Some of the highlights include:

  • Using more Java8 idioms
  • Returning a 403 response code when trying to create a resource under a PairTree element
  • Returning a 400 response code when trying to create a resource with an empty element, i.e. "//"
  • Updating library dependencies
  • Improving wiki and source documentation
 Related JIRA Tickets...

Key Summary T Created Updated Due Assignee Reporter P Status Resolution
Loading...
Refresh

 

References

[1]  https://wiki.duraspace.org/display/FF/Downloads
[2]  http://docs.fcrepo.org
[3]  https://github.com/fcrepo4-labs/fcrepo4-upgrade-utils/releases/tag/fcrepo4-upgrade-utils-4.3.0
[4]  https://github.com/fcrepo4-labs/fcrepo4-upgrade-utils/blob/cc77a50b3fac62f791ce2d4fa17cc6b5cfc3ea33/README.md
[5]  http://www.w3.org/TR/ldp/
[6]  http://www.osgi.org/Technology/WhatIsOSGi
[7]  http://karaf.apache.org
[8]  http://camel.apache.org
[9]  https://github.com/fcrepo4-labs/migration-utils
[10] https://wiki.duraspace.org/display/FEDORA43/Setup+Audit+Service
[11] https://github.com/fcrepo4/ontology
[12] https://github.com/duraspace/pcdm
[13] https://github.com/fcrepo4-labs/fcrepo4-client
  • No labels