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).

Dec 19 is our final meeting of 2019.  We will not  meet on Thursday Dec 26 or Thursday, Jan 2.  Our next DSpace 7 Working Group (2016-2023) meeting will be on Thursday, Jan 9.

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
    1. Updated DSpace 7 Release Plan Spreadsheet
      1. "Release" column lists approximately what remaining features will be in 7.0beta1-5, along with those likely delayed for 7.1 or 7.2
      2. As of 2020, we will be working towards the beta1 / beta2 releases via "sprints".  Goal for beta1 is in Feb, with beta2 in March.
    2. (Other Topics?)
  • (15 mins) Planning for next week
    • Assigning PRs for Review

Attendees

Current Work

Legend for status icons

(blue star) = Highest Priority tasks (please prioritize these reviews/tasks over others). These are tasks with lots of dependencies

(error) = review done, changes were requested or bugs found.

(tick) = review done, approved.

(warning) = 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.  

Tickets / PRs In Progress

  1. (Angular) Adding Accessibility via Travis CI  https://github.com/DSpace/dspace-angular/pull/356 (work in progress) (Lower priority)
  2. (warning) (Angular Bug) https://github.com/DSpace/dspace-angular/issues/368 ( Art Lowel (Atmire) )
  3. (REST Contract) Edit Homepage news: https://github.com/DSpace/Rest7Contract/pull/45 (Ben Bosman  - has outstanding questions/comments) (Lower priority)
  4. (REST) DS-4043: Revisit the security layer of the submission  (work in progress) Andrea Bollini (4Science)
  5. (REST) Pagination bug with withdrawn items: https://github.com/DSpace/DSpace/pull/2406 (Dimitris Pierrakos , Ben Bosman - Feedback provided)
  6. (REST) Update to JDK 11: https://github.com/DSpace/DSpace/pull/2611

PRs Needing Review

  1. (REST Contract) Group and eperson management: https://github.com/DSpace/Rest7Contract/pull/41 (Tim Donohue - feedback provided,  Andrea Bollini (4Science) - (warning) feedback provided)
  2. (REST Contract) Workflow actions (update) https://github.com/DSpace/Rest7Contract/pull/96  1 APPROVAL (Tim Donohue, NEEDS SECOND REVIEWER)
  3. (REST) REST endpoint for discovering withdrawn and private items. https://github.com/DSpace/DSpace/pull/2580 (Tim Donohue (tick)Ben Bosman (tick))
  4. (REST) DS-4389 improving patch system framework Part 1 https://github.com/DSpace/DSpace/pull/2591 (Andrea Bollini (4Science)Tim Donohue - REREVIEW, Michael Spalti )
  5. (REST) Initial Implementation of Resource Policies endpoint: https://github.com/DSpace/DSpace/pull/2604 (Ben Bosman - feedback provided, Tim Donohue - REREVIEWAndrea Bollini (4Science))
  6. (REST) Small Bitstore fix to work correctly with multiple stores: https://github.com/DSpace/DSpace/pull/2597 1 APPROVAL(Mark H. Wood (tick), Tim Donohue ) MERGE
  7. (REST) [DS 4287] Refactoring the IndexableObject & SolrServiceImpl https://github.com/DSpace/DSpace/pull/2612 (Ben Bosman - feedback provided, Tim Donohue - FINISH REVIEW)
  8. (REST) DS-4351 upgrade dependencies https://github.com/DSpace/DSpace/pull/2619 (Tim DonohueChris Wilper)
  9. (NEW) (REST) Projections continued: https://github.com/DSpace/DSpace/pull/2625 (Ben BosmanTim Donohue)
  10. (NEW) (Angular) Projections continued (merge with REST PR 2625): https://github.com/DSpace/dspace-angular/pull/548 1 APPROVAL (Art Lowel (Atmire)Tim Donohue)
  11. (Angular) Shibboleth integration support: https://github.com/DSpace/dspace-angular/pull/429  (Giuseppe Digilio (4Science) reviewed again fixed error with yarn start, Fernando FCT/FCCN, Paulo Graça - feedback provided)
  12. (Angular) Edit collection - content source tab https://github.com/DSpace/dspace-angular/pull/5061 APPROVAL  (Paulo Graça - issues found, Tim Donohue )
  13. (Angular) Add/Edit Community and Collection Logos https://github.com/DSpace/dspace-angular/pull/512 (Art Lowel (Atmire) (tick)Tim Donohue  - (warning) tested again, works but has usability issues - will log as bugs)
  14. (NEW) (Angular) Upgrade to angular 7 https://github.com/DSpace/dspace-angular/pull/547 (Art Lowel (Atmire) , Tim Donohue)
  15. (NEW) (Angular) Disregard the response body for statistic event calls https://github.com/DSpace/dspace-angular/pull/544 (Tim Donohue (tick)Paulo Graça )
  16. (Backend) dspace.bat file: https://github.com/DSpace/DSpace/pull/2544 1 APPROVAL (Tim Donohue - (tick) Verified on Windows. One minor change needed,  Mark H. Wood  , Alexander Sulfrian, Chris Wilper , Andrea Bollini (4Science) - (tick) verified on linux) 
  17. (Backend) [DS-4393] Discovery clean index fix https://github.com/DSpace/DSpace/pull/2607 1 APPROVAL(Paulo GraçaBen Bosman (tick)MERGE
  18. (NEW) (Backend) [DS-4239] Migrate the workflow.xml to spring https://github.com/DSpace/DSpace/pull/2420 (Ben BosmanTim Donohue)

PRs Merged this week!

  1. (tick) first PR goes here

Blocked

  1. (Blocked PRs go here)

Delayed / Needs Discussion

  1. Managing Authorization info in Angular UIHow 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
    1. 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
    2. Work is ongoing, but has been started in these areas:
      1. Summary of ideas: REST Authorization 
      2. Contract for Authorization Endpoints: https://github.com/DSpace/Rest7Contract/pull/92
      3. Contract for ResourcePolicies: https://github.com/DSpace/Rest7Contract/pull/87
  2. REST API Projections:  Unable to locate Jira server for this macro. It may be due to Application Link configuration.
    1. Work begun in https://github.com/DSpace/DSpace/pull/2547 (by Chris Wilper)
      1. Based on detail discussions in our Oct 17 meeting
    2. (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.
    3. https://github.com/DSpace/Rest7Contract/issues/2 (discussion resumed by Andrea Bollini (4Science) could be relevant for the projection)
  3. Initial Performance Testing from Chris.
    1. https://cwilper.github.io/dspace-perftest/
  4. (REST Contract) Edit Homepage News: https://github.com/DSpace/Rest7Contract/pull/45
    1. 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.  
    2. 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
    3. Timeline for this is uncertain.  Possibly in 7 or 8. May depend on how/whether it can be scoped.
  5. 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
    1. 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
    2. ETags only update of the two fields match. If someone edits first, your edit would fail and you would get a fail response (422?)
    3. ETags seems to have broader support in other REST APIs.  Recommended also by both Art and Andrea.

Notes