Versions Compared

Key

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

...

One of the technical priorities [5] 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 [6] (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.

Expand
titleRelated JIRA tickets...

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

Linked Data Platform alignment

 

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

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

 Fedora is a Linked Data Platform (LDP) server implementation. This release resolves a bug that relates to the interactions that an LDP client should expect.

Expand
titleRelated JIRA tickets...

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

Upgrading and Migrating

A primary focus of the ongoing Fedora effort is to facilitate the upgrade/migration of Fedora3 repositories to Fedora4. To this end, a couple of improvements have been incorporated into the "migration-utils [7]" upgration utility, the most notable of which is enabling the utility to optionally be configured with authorization credentials.

Expand
titleRelated JIRA Tickets...

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

Preservation

Performance

One of Fedora's perennial goals is "improved performance". With this as a focus, a Performance and Scalability working group [] 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 evolvesIn support of Fedora's role in the preservation stack, this release includes investigation and documentation around backup and restore strategies for Fedora's datastore. By default, the database that Fedora currently is configured to use is LevelDB [8]. This release includes documentation and recommendations for performing backup and restore of the internal data Fedora uses in maintaining state.

Expand
titleRelated JIRA tickets...

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

Web Access Control

Following the initial implementation of This release furthers the Web Access Control [9] authorization module, this release furthers that effort with several fixes and improvements.  Enhancements include:module with several fixes, including:

  • Version creation in the context of WebAC now works

  • WebAC "accessControl" Link header from effective ancestor is provided
  • WebACLs can now apply to binary resources

  • An HTTP header, 'On-Behalf-Of', can optionally be configured to offer delegated authorization (documentation [10])

  • A WebACL can be placed on the server acting as the final backstop for authorization decisions for resources that have no other effective WebACL (documentation [11])
  • WebACLs can now include references to 'agentClass' Fedora resources as defined in the Web Access Control specification (documentation [12])
  • An HTTP 'Link' header is included in responses to protected resources pointing to the effective WebACL

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

Expand
titleRelated JIRA tickets...

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

Modularity

From the perspectives of code maintainability, intelligibility, replaceability, and clearly defined separation of responsibility, significant focus continues towards increasing the modularity of Fedora. In this release, this effort can be seen in the extraction of the 'transform' and 'id minting' modules into their own projects, and the decoupling of project dependencies.

Expand
titleRelated JIRA tickets...

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

HTML User Interface

Versioning

This release includes several useful updates to the HTML user interface:bug fixes related to versioning:

  • 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 had a deleted child resource
  • Resolves inability to see description of binary resource versions
  • Ability to create versions in the HTML UI
  • Auto-populate binary resource's 'educore:filename' property with name of file uploaded in the HTML UI
  • Limit the number of children of any given resource shown in the HTML UI to 100
Expand
titleRelated JIRA tickets...

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

...

Expand
titleRelated JIRA tickets...

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

...