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.
Date
from 15:00-16:00 UTC
Location: https://lyrasis.zoom.us/my/dspace (Meeting ID: 502 527 3040).
- More connection options available at DSpace Meeting Room
Beta 1 & 2 Sprint : Feb 3-14
- Work towards finalizing the Beta1 tasks in DSpace 7 Release Plan spreadsheet. Goal is to have Beta1 released in mid-to-late Feb.
- Beginning work on Beta2 tasks (especially those with many dependencies)
Agenda
(15 mins) Developer Stand Up - Developers give brief updates on their effort (or their team's effort).
- Update/see "Current Work" section below based on your status. Please feel free to update prior to meeting.
- Please highlight any new work (needing reviews/testing), any blockers (for you), and any discussion topics you may have.
- (30 mins) General Discussion Topics
- DSpace 7 (Funded) Development Sprints. Establishing 2 Week Sprint Processes based on DSpace 7 Community Sprints.
- Scripts & Processes endpoint PR#2648: Tim has concerns about usage of Bitstreams for temporary files (like uploaded CSVs, SAF Zips, AIPs, etc)
- (Please add a topic)
- (15 mins) Planning for next week
- Assigning PRs for Review
Attendees
7.0 Release Goals
These resources define the prioritization and general schedule we are working towards
- DSpace 7 Release Goals : overview of goals/timelines & beta release process
- DSpace 7 Release Plan spreadsheet: our planning spreadsheet which details which features are scheduled for each Beta release.
Current Work
= Highest Priority tasks (please prioritize these reviews/tasks over others).
= review done, changes were requested or bugs found.
= review done, approved.
= review done, merge conflict or other minor changes requests
1 APPROVAL = pull request only requires a single approval to merge. This is generally reserved for PRs which are either smaller, obvious, and/or bug fixes with tests to prove they work.
Claim a Ticket!
If you do not have access in JIRA or GitHub to officially claim the ticket you wish to work on, contact Tim Donohue
- Available Angular UI Tickets
- Open issues in 7.0beta1 milestone (highest priority)
- Open issues in 7.0beta2 milestone (second highest priority)
- Open issues flagged as "Difficulty: low". These may be a good starting point for newer developers.
- Available REST API Tickets
- Unassigned tickets scheduled for 7.0beta1 (highest priority)
- Unassigned tickets scheduled for 7.0beta2 (second highest priority)
- General REST API tickets flagged as "low hanging fruit". These may be a good starting point for newer developers.
- General REST API unassigned bug tickets. Again, might be a good starting point for newer developers.
PRs Needing Review
- (REST Contract) Group and eperson management: https://github.com/DSpace/Rest7Contract/pull/41 ( Tim Donohue , Andrea Bollini (4Science) - REREVIEW BY FEB 13)
- (REST Contract) Versioning https://github.com/DSpace/Rest7Contract/pull/97 (Andrea Bollini (4Science) - REVIEW BY FEB 7, Tim Donohue )
- (REST) DS-4389 improving patch system framework Part 1 https://github.com/DSpace/DSpace/pull/2591 (Andrea Bollini (4Science) - REVIEW (if possible) BY FEB 13, Tim Donohue, Michael Spalti - REREVIEW)
- Michael's version https://github.com/DSpace/DSpace/pull/2645
- (REST) Initial Implementation of Resource Policies endpoint: https://github.com/DSpace/DSpace/pull/2604 (Ben Bosman - REREVIEW, Tim Donohue, Andrea Bollini (4Science))
- (REST) Projections continued: https://github.com/DSpace/DSpace/pull/2625 (Ben Bosman - REVIEW, Tim Donohue - REVIEW)
- (REST) Workflow step definitions https://github.com/DSpace/DSpace/pull/2646 (Ben Bosman - REREVIEW, Tim Donohue - minor updates/fixes requested, Andrea Bollini (4Science) - REREVIEW)
- (REST) Scripts & processes: importing and exporting csv's https://github.com/DSpace/DSpace/pull/2648 (Andrea Bollini (4Science), Tim Donohue - concerns about using Bitstreams for temporary files )
- (REST) Shibboleth authentication https://github.com/DSpace/DSpace/pull/2651 (Paulo Graça, Ben Bosman )
- (NEW) (REST) Collection item template updates https://github.com/DSpace/DSpace/pull/2656 1 APPROVAL (Tim Donohue)
- (Angular) Projections continued (merge with REST PR #2625): https://github.com/DSpace/dspace-angular/pull/548 1 APPROVAL (Art Lowel (Atmire), Tim Donohue)
- (Angular) Shibboleth authentication (merge with REST PR #2651) https://github.com/DSpace/dspace-angular/pull/568 (Paulo Graça, Ben Bosman)
- (Angular) Generic uri metadata https://github.com/DSpace/dspace-angular/pull/565 1 APPROVAL (Tim Donohue - REREVIEW)
- (Backend) Java 11 upgrade and Replace JMockit with Mockito (MERGE on/around Feb 13): https://github.com/DSpace/DSpace/pull/2654 (Chris Wilper, NEEDS SECOND REVIEWER)
- (Backend) URL configuration refactor (new "dspace.server.url" and "dspace.ui.url") (MERGE on/around Feb 13) https://github.com/DSpace/DSpace/pull/2657 (Paulo Graça - , Mark H. Wood - )
PRs Merged this week!
- (REST Contract) Support for a trail by retrieving parent objects https://github.com/DSpace/Rest7Contract/pull/100 1 APPROVAL
- (REST) Default webui.submit.upload.required https://github.com/DSpace/DSpace/pull/2650 1 APPROVAL
- (Angular) Verify whether file uploads are mandatory https://github.com/DSpace/dspace-angular/pull/552 1 APPROVAL
- (Backend) [DS-4425] Indexing Performance is very slow since refactor. ITs take twice as long: https://github.com/DSpace/DSpace/pull/2658
- (Backend) dspace.bat file: https://github.com/DSpace/DSpace/pull/2544 1 APPROVAL
Blocked
- (Blocked PRs go here)
Delayed / Needs Discussion
- Managing Authorization info in Angular UI: How to pass Authorization rights (i.e. logged in user's access rights) from REST API to Angular? See for example: https://github.com/DSpace/dspace-angular/issues/393
- In July 25 meeting, we noted this probably cannot be resolved with just one simple solution. May need to look at different options for different scenarios
- Work is ongoing, but has been started in these areas:
- Summary of ideas: REST Authorization
- Contract for Authorization Endpoints: https://github.com/DSpace/Rest7Contract/pull/92
- Contract for ResourcePolicies: https://github.com/DSpace/Rest7Contract/pull/87
- REST API Projections:
- Work begun in https://github.com/DSpace/DSpace/pull/2547 (by Chris Wilper)
- Based on detail discussions in our Oct 17 meeting.
- (Outdated) Early work begun at https://github.com/DSpace/DSpace/pull/1847. Discussed in more detail in our Aug 22 meeting. Overall, this approach seems like a good direction, need volunteers to move it forward.
- https://github.com/DSpace/Rest7Contract/issues/2 (discussion resumed by Andrea Bollini (4Science) could be relevant for the projection)
- Work begun in https://github.com/DSpace/DSpace/pull/2547 (by Chris Wilper)
- Initial Performance Testing from Chris.
- (REST Contract) Edit Homepage News: https://github.com/DSpace/Rest7Contract/pull/45
- Delayed. General agreement (in meeting on March 21, 2019) that storing HTML in metadata fields is not really ideal behavior. Metadata (from a librarian standpoint) tends to be free of format-related markup (as that allows for easier sharing, understanding of metadata. Currently Community & Collection homepage information is HTML-based and is stored in metadata that is appropriate for a minor subset of information (like the title) but it is better to move large/rich text to bitstreams.
- Proposal here is to consider storing HTML-based markup (for Site, Community & Collection homepages) in Bitstream(s) associated with the object in question. May allow for more CMS-lite behavior in the future
- Timeline for this is uncertain. Possibly in 7 or 8. May depend on how/whether it can be scoped.
- (Angular Bug) https://github.com/DSpace/dspace-angular/issues/368 ( Art Lowel (Atmire) )
- Concurrency in DSpace 7 (or 8). What do we want to do when multiple editors are editing the same object? Needs further analysis regarding implementation details
- We've decided (in meeting on March 7, 2019) to use ETags to implement concurrency. REST Contract notes on ETags: https://github.com/DSpace/Rest7Contract#etags--conditional-headers
- ETags only update of the two fields match. If someone edits first, your edit would fail and you would get a fail response (422?)
- ETags seems to have broader support in other REST APIs. Recommended also by both Art and Andrea.
Notes
- Sprint schedule discussion. Decided on the following
- Two required check-ins per week (for all paid developers). One on Monday (via #dev-sprint on Slack) and one on Thursday (in weekly meeting or via #dev-sprint on Slack)
- Daily, informal updates to #dev-sprint are also recommended whenever a developer hits a blocker, realizes work may take longer than expected, or requires a review/feedback to proceed.
- In weekly meeting on Thursday, we will assign tasks for the following week. Atmire & 4Science Teams should come with a list of tasks they propose.
- Discussion of Scripts & Processes endpoint PR#2648
- Tim has concerns about usage of Bitstreams for temporary files (like uploaded CSVs, SAF Zips, AIPs, etc)
- Kevin will be responding to Tim's feedback in PR
- Andrea notes that they rarely do cleanup of bitstreams in their production systems. We'd need a way to cleanup temporary files separate from normal Bitstreams
- Tim notes we'd also need temporary Bitstreams to be exempt from things like Event listeners. Do we need to subclass Bitstreams to something like "TemporaryBitstream" so these can be treated differently?
- Will revisit this next week as needed and based on Kevin's feedback.