Contribute to the DSpace Development Fund

The newly established DSpace Development Fund supports the development of new features prioritized by DSpace Governance. For a list of planned features see the fund wiki page.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

Version 5.0

DSpace 5.0 is still in the planning stages and will be released sometime in late (likely Nov/Dec) 2014

 

Table of Contents:

 

Wish List for DSpace 5.0 (tentative)

The list of features below is entirely speculative.  Features are not deemed finalized until the code is in-hand and accepted.

If you are a developer and you'd like to contribute to DSpace 5.0, you can do so by doing the following:

  1. Submit a JIRA ticket describing your contribution, and mark it as being for "5.0"  (this will cause it to auto-appear in the listing below)
  2. As early as possible, share your code via a GitHub Pull Request (or link to it if it's available publicly elsewhere).  Add a link to it in your JIRA ticket.  See Development with Git for more info.
  3. If it's a larger contribution, please provide some documentation (you are welcome to create a new page in this DSpace Wiki), so that we can understand how to use it and configure it.

The earlier you make your contribution known, the more likely it is that it will be accepted into 5.0.  The later you share your code / ideas, the more likely it is that we'll need to reschedule it for a later release.  Usually we need to have the contribution in-hand (or at least be well aware of what it involves) before Summer to ensure it won't conflict with other contributions and can get a thorough review.

Please feel free to list features / contributions you plan to develop for 5.0.  You can also add a JIRA ticket and mark it for "5.0" which will put it on the automated list below (see "Possible JIRA tickets to resolve")

Conceptual Ideas / Proposals

  • Unable to locate Jira server for this macro. It may be due to Application Link configuration. In the Developers Meeting on Jan 30, 2013, those in attendance discussed a need to release an updated version of this "Metadata for All" pull request (#12).  However, we may need the following:
    • An updated version of the pull request based on current "master"
    • We like the suggestion to rename "schemas" to "namespaces"
    • We'd like it to use "metadatavalue" (and similar) tables rather than creating a new set of Metadata tables specific to other objects.   We understand this may be more disruptive, but it seems odd to have different metadata namespaces
    • If possible we'd want this change to be "backwards compatible" with existing UIs. The goal would be to perform this change in stages – first update the APIs to allow for metadata on all objects, then update each UI one-by-one.  Hopefully we can get all of the UIs done before 5.0
    • We also obviously could use some basic documentation / overview of the thinking behind it, so that we can vote this through sooner rather than later.
  • REST API updates
  • Audio/Video Streaming (RTMP, HLS, DASH) Support
  • Replace Authentication and Authorization code in DSpace with a 3rd-party framework 
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration. (University of Missouri - @mire)
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.  (The World Bank - @mire)
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.  (The World Bank - @mire)
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.  (@mire)
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.  (pbecker)
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.  (Longsight)
    • The admin can batch import items through a ZIP file through the UI (XMLUI), that contains SimpleArchiveFormat package, the same as is valid for dspace import command launcher.

Solr upgrade (WIP)

Findings

Solr is distributed on Maven Central as a .war file, which includes the Lucene .jars. No Lucene version relevant to DSpace is available from Maven Central.

Solr is a wrapper for Lucene providing concurrency. Lucene can work with index files directly if we don't need concurrent access (i.e. before we start up Solr).

DSpace 1.6 was the first version to use Solr for statistics. In order to upgrade to DSpace 5, we need to upgrade the Solr index format in two steps. The second step is easy, upgrading from DSpace 3 (Solr 3.5) to DSpace 5 means just running the Solr 4.4 optimize command, which can be run even concurrently when the UIs are running. However, Solr 4.4 doesn't understand the legacy index formats used in Solr before 3.5. Therefore, in the first step, we need to use Solr 3.5 or Lucene 3.5 to upgrade from the older index versions to 3.5.

Suggested upgrade

We need to avoid the conflict of having both Solr 3.5 and 4.4 in the DSpace classpath. Therefore I suggest to run the first step before the Solr 4.4 webapp is started as part of DSpace 5.

To do that, we need to:

  1. detect the index version using getCurrentVersion(index_dir)
  2. for any version older than LUCENE_35 go to 3, otherwise go to 7
  3. get the Solr 3.5 war from Maven Central
  4. extract the lucene-core-3.5.0.jar from the Solr 3.5 war
  5. run the IndexUpgrader class of Lucene 3.5 (or optimize())
  6. start up DSpace in order to start up Solr 4
  7. run the IndexUpgrader class of Lucene 4.4


DSpace/Solr/Lucene versions and compatibility

DSpaceSolrLuceneUsed Lucene index versionSupported Lucene index versions
5.04.4.04.44.4 
4.04.4.04.44.4 
3.03.5.03.5

LUCENE_35

 
1.83.3.03.3??? 
1.71.4.12.9.3 (2.9.3 951790 - 2010-06-06 01:30:55)??? 
1.61.3.02.4-dev (2.4-dev 691741 - 2008-09-03 15:25:16)???  

Luke

https://code.google.com/p/luke/wiki/Compatibility

Java version

Minimum version of JVM required to run Luke 1.0.1 and earlier is 1.5.

Minimum version of JVM required to run Luke 3.x and 4.x is 1.6.

Lucene Java indexes

Luke 1.0.1 should be able to open indexes built using the following versions of Lucene-Java:

  • 3.0.x
  • 2.x (any version)

Starting with version 4.x Luke cannot open indexes created with Lucene 3.0.0 or earlier.

Starting with version 3.1.0 Luke releases will use the same numbering as Lucene releases, to avoid confusion.

Possible JIRA tickets to resolve (automated list)

This is the list of JIRA tickets ("New Features" and Improvements) currently scheduled for 5.0.  There is no guarantee they will all be completed in time for 5.0 release, and tickets may be dropped/added to the list at any time. But, if you'd like to volunteer to help with one, please let us know by attaching a comment to the ticket in question.

key summary type created updated due assignee reporter priority status resolution

Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Changes

The following changes have already been made to the codebase and will be released in 5.0. Please note that the below listing is dynamically generated, so it will be changing as we continue to add new features, improvements and bug fixes to the 5.0 release.

New Features in 5.0

key summary type created updated due assignee reporter priority status resolution

Unable to locate Jira server for this macro. It may be due to Application Link configuration.

General Improvements in 5.0

key summary type created updated due assignee reporter priority status resolution

Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Bug Fixes in 5.0

key summary type created updated due assignee reporter priority status resolution

Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Organizational Details

Release Coordination

Instead of a single "Release Coordinator", the DSpace 5.0 release will be managed by a "Release Team".

Release Team Leader

  • Peter Dietz (Longsight)

Release Team Members

  • Peter Dietz (Longsight)
  • Hardy Pottinger (U of Missouri)
  • Ivan Masár
  • Mark H. Wood (Indiana University)
  • Robin Taylor (University of Edinburgh)

All Release Team membership information is as of Sept 3, 2014. Please volunteer (by emailing Tim Donohue), if you are interested in joining the team!

Timeline and Processing

Your contributions are welcome now! Code and documentation need not be finished, so long as it is working and we can all see what it is for. Time is set aside for fixing, polishing, and integration. We have some general Code Contribution Guidelines available, but you are also welcome to ask questions on the dspace-devel mailing list.

DateMilestoneWhat it means
October 06Deadline for feature pull requestsIf you wish to contribute features to DSpace 5.0, you must submit a pull request by this date.
October 08Weekly developers' meeting devoted to review of feature pull requests for 5.0The entire hour's meeting will be used to discuss proposed features submitted by the deadline.
October 15Weekly developers' meeting devoted to review of feature pull requests for 5.0The entire hour's meeting will be used to discuss proposed features submitted by the deadline.
October 31Feature freezeDSpace 5.0 is considered feature-complete on this date.  Only bugfixes will be pulled between this date and final release.
November 6Release Candidate 1 taggedA DSpace 5.0 Release Candidate will be available for wider testing.
November 10-21TestathonIntensive public testing of the 5.0 Release Candidate is invited.  The Release Team will focus on getting problems resolved.
December 1Release Candidate 2 taggedAn updated DSpace 5.0 Release Candidate will be available for wider testing.
Mid DecemberDSpace 5.0 is publicly releasedDSpace 5.0 is released for download and general use.

 

Release Process needs to proceed according to the following Maven release process: Release Procedure

 

 

 

 

  • No labels