Date

 from 15:00-16:00 UTC

Location: https://lyrasis.zoom.us/my/dspace (Meeting ID: 502 527 3040).

Agenda

Attendees

Current Work

(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

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

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. (NEW) (REST Contract) Workflow step definitions https://github.com/DSpace/Rest7Contract/pull/91 (Andrea Bollini (4Science)Mark H. Wood)
  3. (REST Contract) Contract for resourcepolicies: https://github.com/DSpace/Rest7Contract/pull/87  (Ben Bosman , Tim Donohue - minor feedback provided)
  4. (blue star) (NEW) (REST Contract) Contract for authorizations endpoints https://github.com/DSpace/Rest7Contract/pull/92 (Ben BosmanPaulo GraçaTim Donohue)
  5. (REST) Scripts and processes endpoint https://github.com/DSpace/DSpace/pull/2529  (Tim Donohue - (warning) concerns about creating a lot of new Controllers, Dimitris Pierrakos) - Was reviewed by Ben Bosman internally.
  6. (REST) Ds 4317 bundles in rest https://github.com/DSpace/DSpace/pull/2548 ((tick) Ben BosmanTim Donohue - (warning) concerns about creating a lot of new Controllers, Chris Wilper )
    1. Also requires PR#509 (Angular), otherwise Angular demo will break
  7. (blue star) (REST) (HIGH PRIORITY) REST Projections initial PR: https://github.com/DSpace/DSpace/pull/2547 (Andrea Bollini (4Science) , (tick) Ben Bosman , Tim Donohue )
  8. (NEW) (REST) CRUD for collection item template https://github.com/DSpace/DSpace/pull/2579 (Michael SpaltiKevin Van de Velde (Atmire))
  9. (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)
  10. (MERGE) (Angular) forceBypassCache should be removed from the RequestService: https://github.com/DSpace/dspace-angular/pull/468 ((tick)Art Lowel (Atmire) - approved again,  Giuseppe Digilio (4Science)(tick) approved )
  11. (MERGE) (Angular) Routing by handle and uuid: https://github.com/DSpace/dspace-angular/pull/490 (Art Lowel (Atmire) (tick)Giuseppe Digilio (4Science), Tim Donohue , Andrea Bollini (4Science) - might be able to help with pid endpoint)
  12. (Angular) Tracking stats from the UI https://github.com/DSpace/dspace-angular/pull/495 (Tim Donohue , Paulo Graça , Chris Wilper )
  13. (MERGE) (Angular) (HIGH PRIORITY) Refactor object lists https://github.com/DSpace/dspace-angular/pull/497 (Giuseppe Digilio (4Science) (tick) approved, (tick) Tim Donohue)
  14. (Angular) Add community & collection tree https://github.com/DSpace/dspace-angular/pull/505 (Tim Donohue , Michael Spalti , Paulo Graça )
  15. (MERGE, after testing)(Angular) (HIGH PRIORITY) i18n sync script https://github.com/DSpace/dspace-angular/pull/504   (Giuseppe Digilio (4Science), (tick) Tim Donohue , (tick)Bram Luyten (Atmire), (tick)Paulo Graça  )
  16. (Angular) Edit collection - content source tab https://github.com/DSpace/dspace-angular/pull/506  (Paulo Graça - issues found, NEEDS SECOND REVIEWER)
  17. (Angular) Refactor Submission Parsers (HIGH PRIORITY) https://github.com/DSpace/dspace-angular/pull/508 (Giuseppe Digilio (4Science) , Tim Donohue )
  18. (Angular) Add support for bundles https://github.com/DSpace/dspace-angular/pull/509  (Tim Donohue, Chris Wilper )
    1. Depends on PR#2548 (REST API)
  19. (Backend) dspace.bat file: https://github.com/DSpace/DSpace/pull/2544  (Tim Donohue - will test on Windows,  Mark H. Wood , Alexander Sulfrian, Chris Wilper , Andrea Bollini (4Science) - will test on linux) 
  20. (NEW)(Angular) Add/Edit Community and Collection Logos https://github.com/DSpace/dspace-angular/pull/512 (Art Lowel (Atmire) , Tim Donohue )
  21. (NEW)(Angular) Search Sidebar refactor https://github.com/DSpace/dspace-angular/pull/513 (Tim DonohueNEEDS SECOND REVIEWER)
  22. (NEW)(REST) REST endpoint for discovering withdrawn and private items. https://github.com/DSpace/DSpace/pull/2580 (Tim DonohueNEEDS SECOND REVIEWER)

PRs Merged this week!

  1. (tick) DS-4358 tests in modules https://github.com/DSpace/DSpace/pull/2553
  2. (tick) (REST) CRUD on Collection & Community logo https://github.com/DSpace/DSpace/pull/2562
  3. (tick) (Angular) Prevent encoding of query after login redirect. (Minor bugfix)

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. Can this be achieved via passed HAL "_links" (e.g. the existence of an "edit" link in REST response means you must have Edit rights)?
    2. 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
      1. Also likely to need to store/cache a user's Groups in UI layer, as some areas (e.g. Administrative) require knowledge of user group membership
      2. Andrea Bollini (4Science) has investigated on that and created the following resources/proposals: 
      3. REST Authorization
      4. https://github.com/DSpace/Rest7Contract/pull/87 
      5. https://github.com/4Science/Rest7Contract/pull/1
  2. REST API Projections: 
    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 until after Preview release. 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