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.
Version 7.0
DSpace 7.0 is under active development, and is tentatively scheduled to be released in late 2018 or early 2019.
Table of Contents:
Overview
What will be included in DSpace 7?
The DSpace 7.0 release will concentrate on two primary major features:
- A new User Interface based on Angular 2 (to replace XMLUI and JSPUI). This work is going on at https://github.com/DSpace/dspace-angular
- The goal of the new UI is to implement all major features of both XMLUI and JSPUI in a single, modern UI.
- While additional UI-related features/improvements may come in this release (especially any that are made easier by Angular), we do not anticipate any significant changes to the DSpace backend (except for the REST API, as noted below).
- A refactored/enhanced REST API (using modern REST best practices). This work is going on in the "master" branch of https://github.com/DSpace/DSpace
- Additionally, a new REST Contract (describing all API interactions) is being written at https://github.com/DSpace/Rest7Contract
For much more information on the history behind these decisions, see DSpace 7 UI Project Plain Language Summary
Where is this work happening? How can I track it?
This work is actively taking place in the DSpace 7 Working Group (this is the development team). This group meets on a weekly basis (see working group wiki page for scheduling information). All meetings are open (anyone can attend) and meeting notes are publicly available off the group's wiki page.
We also use Slack to communicate between meetings. Anyone can request a Slack invite (see link) to listen in or join discussions. The DSpace 7 development team primarily uses the #angular-ui and #rest-api channels within Slack, to discuss the UI and REST API work respectively.
Where can I see the latest work? Is there a demo site?
We host two demonstration sites of the latest DSpace 7 work. You can try them yourself to see how the work is progressing!
- DSpace 7 User Interface demo: https://dspace7-demo.atmire.com/
- This site is automatically updated each time a UI code change is merged into https://github.com/DSpace/dspace-angular
- It also points at the REST API demo (see below) and uses data from it.
- Currently, the site is anonymous access only, as authentication / authorization features are still in progress.
- DSpace 7 REST API demo: https://dspace7.4science.it/dspace-spring-rest/
- This site is updated after major changes to REST API.
- REST API design/interaction is described in the REST Contract at https://github.com/DSpace/Rest7Contract
Current Status of new UI
Completed Work
Note: All completed work is visible from the DSpace 7 demo site: https://dspace7-demo.atmire.com/. For development work to be considered "completed" it must be implemented in both the DSpace 7 REST API and UI.
- Enhanced Angular framework behind the new UI (object store via ngrx platform, caching, speed enhancements)
- Browse functionality
- Object splash pages (Community, Collection, Item)
- Browse by Community/Collection functionality
- Recent Submissions
- Pagination and sorting of browse/search results
- Search functionality
- Design of Search UI. See mockups at Search Mockup
- Search results page using static/dummy content
- Deposit / Submission functionality
- Design of submission and workflow approval UI. See mockups at Submission/Workflow functionalities
In-Progress Work
This work is under current development. It either has an active or pending Pull Request.
- Search functionality
- Search results using live content (i.e. searching REST via backend)
- Deposit / Submission functionality
- Configurable item submission
- Embargo functionality
- Authentication
- REST API implementation
- Authentication via UI
Upcoming Work
(This list is not yet comprehensive)
- Browse functionality
- Configurable "Browse by" functionality (e.g. date / author / title / subject)
- Sidebar / menu on all pages
- Facet display (in sidebar)
- Homepage news
- Deposit / Submission functionality
- Configurable (XML) workflow support
- Statistics
- Usage statistics (per object and global) - pageview, downloads
- Search statistics
- Workflow statistics
- My Account
- New user registration
- User profile page (edit account / change password / edit subscriptions)
- My Submissions page
- Administrative-level functionality
- Control Panel? (similar to XMLUI)
- Creating / editing / deleting Communities
- Creating / editing / deleting Collections
- Editing / deleting Items (includes managing metadata, managing bitstreams)
- Versioning Items
- Other item management activities (moving items, mapping items)
- Access control management (editing people, groups, authorizations) both globally and per object
- Batch metadata editing (import/export)
- Batch export / import via SAF (Simple Archive Format)
- Curation Tasks
- View/find restricted Items (withdrawn, private)
- Registry management (metadata registry and bitstream format registry)
- Other functionality
- Google Analytics support (configuration, recording of downloads, reporting in UI??)
- SEO (Google Scholar metadata mppings)
- Request a Copy
Other possible changes in DSpace 7.0 (not comprehensive)
The following is an (unordered) list of changes / new features that we'd like to see added to DSpace 7.0. If you have additional features to add, please feel free. We also NEED volunteers to make these features happen, so please do volunteer if you are willing to work on a particular change! Please note that we reserve the right to reschedule/reject any feature that may not align well with the longer term RoadMap.
Feature | Notes / Tickets | Priority | Volunteer(s) |
---|---|---|---|
Single Embargo system |
| Medium | |
Single built-in Statistical Engine (SOLR Statistics) |
| Low | |
Enhanced Solr Statistical Reports |
| Medium | |
Oauth authentication plugin | Dryad (a fork of DSpace) has already implemented this, and reportedly is interested in contributing it to DSpace | Medium | |
Inline video player | Required: Closed caption capability for accessibility | Low |
Pull Requests to review for possible inclusion
Code Changes in DSpace 7.0
New Features in 7.0
General Improvements in 7.0
Bug Fixes in 7.0
Organizational Details
Release Coordination
Instead of a single "Release Coordinator", the DSpace 7.0 release will be managed by a "Release Team".
Release Team
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.
Release Timeline
Please note that the dates below are estimates of when particular activities may occur. As there are many factors involved in a major release, these are subject to change.
Date | Milestone | What it means |
---|---|---|
(ongoing) | New UI and REST API development | Development of the new UI and REST API is still ongoing. See Status above. |
OR2018 conference | Developer Workshops on DSpace 7 (REST API and Angular UI training) | |
TBA | Deadline for feature pull requests | If you wish to contribute features to DSpace 7.0, you must submit a pull request by this date. |
TBA | Weekly developers' meeting devoted to review of feature pull requests for 7.0 | The entire hour's meeting will be used to discuss proposed features submitted by the deadline. |
TBA | Weekly developers' meeting devoted to review of feature pull requests for 7.0 | The entire hour's meeting will be used to discuss proposed features submitted by the deadline. |
TBA | Feature freeze | DSpace 7.0 is considered feature-complete on this date. Only bugfixes will be pulled between this date and final release. |
TBA | Release Candidate 1 tagged | A DSpace 7.0 Release Candidate will be available for wider testing. |
TBA | Release Candidate 2 tagged | |
TBA | Testathon | Intensive public testing of the 7.0 Release Candidate is invited. The Release Team will focus on getting problems resolved. |
TBA | Release Candidate 3 tagged | An updated DSpace 7.0 Release Candidate will be available for wider testing. |
TBA | DSpace 7.0 is publicly released | DSpace 7.0 is released for download and general use. |
Release Process needs to proceed according to the following Maven release process: Release Procedure