Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents
maxLevel2
excludeDownload

 

Warning

THIS DOCUMENT IS CURRENTLY BEING DRAFTED - 2016--04-29

 

 

Resources

...

Release Managers

Developers

Issue Reporters

Summary

The Fedora 4.5.0 1 release furthers several major objectives:

  • Tighten the definition of the RESTful application programming interface (API)
  • Further align this API to community standards, including the Linked Data Platform [3] (LDP) and Web Access Control [4] (WebAC)
  • Enhance preservation capabilities and related documentation
  • Improve tooling for external services in the ecosystem around the repository
  • Fix bugs
Note

This release is a major release (i.e. 4.5.0 instead of 4.4.1) because there are a several REST API updates that are not backwards compatible with 4.4.0. The theme of these updates is the removal of JCR-related properties that have heretofore been leaked from the Fedora API in the RDF returned to users. Fedora 4 is in no way dependent on JCR, and any mention of JCR found in RESTful responses will be removed. No client code should require updating for this release unless it contains dependencies on JCR-namespaced properties.

See tickets in "Application Programming Interface" below for more details.

  • Improving the Versioning capability
  • Re-establish performance test fixtures
  • Improve durability with MySQL and PostgreSQL backends
  • Fix bugs

Application Programming InterfaceApplication Programming Interface

One of the technical priorities [53] of Fedora is to define a well-specified application programming interface (API) against which client applications can be written and future server-side implementations can be created. This Fedora API should be clear and detailed enough such that a corresponding technology compatibility kit [64] (TCK) would be able to indicate if any Fedora implementation fulfills or diverges from the specification. With this in mind, several issues were addressed in this release that clean up Fedora's RESTful interaction [5]

Deprecations: The following endpoints have been marked for future deprecation:

  • /fcr:import
  • /fcr:export
  • /fcr:nodetypes

 

Expand
titleRelated JIRA tickets...

Jira
serverDuraSpace JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryfilter=13608
serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5

Performance

...

Versioning

This release includes several bug fixes related to versioning [6]:

  • Resolves error encountered when GETting a version of a container that itself has versioned child resources
  • Resolves error encountered when GETting a version of a container that has a deleted child resource
  • Resolves inability to see description of binary resource versions
Expand
titleRelated JIRA tickets...

Jira
serverDuraSpace JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryfilter=13610 13612
serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5

...

This release furthers the Web Access Control [97] authorization module with several fixes [8], including:

  • Version creation Resolve error when creating versions in the context of WebAC now works

  • Provide WebAC "accessControl" Link header from effective ancestor is provided

Additional documentation of Fedora's implementation of Web Access Controls is available on the the wiki [139].

Expand
titleRelated JIRA tickets...

Jira
serverDuraSpace JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryfilter=13609
serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5

Versioning

This release includes several bug fixes related to versioning:

...

Performance

One of Fedora's perennial goals is "improved performance". With this as a focus, a Performance and Scalability working group [10] has progressed in the creation of repeatable, scripted tests that exercise and meter basic read/write operations. The objective of these tests is to reveal application bottlenecks and to track changes in performance as the reference Fedora implementation evolves.

Expand
titleRelated JIRA tickets...

Jira
serverDuraSpace JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryfilter=13610
serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5

Preservation

From a preservation perspective, this release includes support for alternative backend object stores to the default LevelDB. New configurations now exist for MySQL and PostgreSQL [11].

...

Expand
titleRelated JIRA tickets...

Jira
serverDuraSpace JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQueryfilter=13612 13614
serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5

Housekeeping and Bugfixes

Numerous refactorings, bugfixes, and clean-up tasks were addressed in this release [12]:

Expand
titleRelated JIRA tickets...

Jira
serverDuraSpace JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues50
jqlQueryfilter=13613
serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5

...

No Format
[1]  https://wiki.duraspace.org/display/FF/Downloads
[2]  http://docs.fcrepo.org/
[3]  http://www.w3.org/TR/ldp/
[4]  http://www.w3.org/wiki/WebAccessControl
[5]  https://wiki.duraspace.org/display/FF/2015+-+2016+Technical+Priorities
[64]  https://en.wikipedia.org/wiki/Technology_Compatibility_Kit
[75]  https://githubjira.duraspace.comorg/fcrepo4-extsbrowse/migration-utilsFCREPO-1977?jql=filter%3D13608%20
[86]  https://githubjira.duraspace.comorg/dain/leveldbbrowse/FCREPO-1981?jql=filter%3D13612%20
[97]  http://www.w3.org/wiki/WebAccessControl
[108]  https://wikijira.duraspace.org/display/FEDORA45/Principal+Providers#PrincipalProviders-DelegateHeaderPrincipalProvider
[11] browse/FCREPO-1885?jql=filter%3D13609%20
[9]  https://wiki.duraspace.org/display/FEDORA45FEDORA451/DefaultWebAC+Filesystem-basedAuthorization+PolicyDelegate
[1210] https://wiki.duraspace.org/display/FEDORA45FF/HowPerformance+to+Use+WebAC+agentClass+Groupsand+Scalability
[1311] https://wiki.duraspace.org/display/FEDORA45FEDORA451/WebACConfiguring+JDBC+Authorization+Delegate Object+Store
[12] https://jira.duraspace.org/browse/FCREPO-2007?jql=filter%3D13613%20