Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • (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.
  • (25 mins) General Discussion Topics
    1. (REST) (beta 3) Subresources should obey access restrictions https://github.com/DSpace/DSpace/pull/2726 
    2. Restricted endpoints are sometimes the only HAL link path to public endpoints (
      Jira
      serverDuraSpace JIRA
      serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5
      keyDS-4495
      )
      1. Some endpoints don't allow you to GET them, but do have publicly accessible child endpoints (e.g. registrations, resourcepolicies, …). To get to those child endpoints the UI can't discover them because the parent endpoint returns a 4xx status code. We should consider a way to prevent a regular response but allow retrieving the HAL links
    3. Finalize / approve the initial list of all authorization features which we should implement for the /api/authz/features REST endpoint.  This list of features should be limited to only features which are required to enable/disable User Interface functionality. (In other words, we can always add more features in the future.  We just need to approve the list necessary for 7.0)
      1. Review current spreadsheet (from Andrea Bollini (4Science) ) : https://docs.google.com/spreadsheets/d/1182LcD_WqIZRbUGWpLtBw0aOMR9jhbOVB7GZqtTpR9A/edit?usp=sharing 
    4. Topics waiting on more information (will not be discussed until additional information is available)
      1. (WAITING ON PROPOSAL FROM 4SCIENCE BEFORE CAN BE DISCUSSED) Revisiting "Collection dropdown in submission" issues (how should we address these?  Beta 3 has several other submission tickets, should we include work on these?)
        1. Known performance issues: https://github.com/DSpace/dspace-angular/issues/487 (NOTE: These are still reproducible on the demo site.  If you load a new submission, there's a 4-5 second pause before the page becomes usable)
        2. Changing Collection doesn't work when new collection has a different form definition: https://github.com/DSpace/dspace-angular/issues/621
          1. If I recall correctly, Collection item templates also are not working right in this scenario.
          2. And I don't recall whether previously entered metadata gets saved or cleared out when collections have different metadata requirements.
          3. Since it's possible to start a new submission via a default Collection, this increases the likelihood of encountering these issues (if the deposit starts in the wrong collection).
        3. somehow related to this discussion Creation of DSpace Entities
      2. (WAITING ON
      FEEDBACK FROM ATMIRE BEFORE CAN BE DISCUSSED)Finalize / approve the initial list of all authorization features which we should implement for the /api/authz/features REST endpoint.  This list of features should be limited to only features which are required to enable/disable User Interface functionality. (In other words, we can always add more features in the future.  We just need to approve the list necessary for 7.0)
      1. Review current spreadsheet (from Andrea Bollini (4Science) ) : https://docs.google.com/spreadsheets/d/1182LcD_WqIZRbUGWpLtBw0aOMR9jhbOVB7GZqtTpR9A/edit?usp=sharing
      1. TIM TO FINALIZE DISCUSSION QUESTIONS) Replacing BTE with Live Import in 7.x:
      Tabled Topics (two were tabled for future discussion)
      1. (PR from Kevin coming?) We do not fully support Community or Collection Admins adding/managing Community/Collection GroupsRelated to 
        Jira
        serverDuraSpace JIRA
        serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5
        keyDS-
        4486 and this brainstorm REST Contract PR
      2. Currently, Community/Collection Admins do not have permissions to search/view all EPeople or Groups, nor can they view current members of the Group. These are all limited to full Administrators at this time. 
      3. As discussed on April 16, the ideal solution would be to not change the REST API contract, but instead allow all Community/Collection Admins to have search/view permissions on all EPeople or Groups.  However, this would require a way to easily determine if a user was a Community/Collection Admin in a manner that does not cause performance problems. For example, we would not want to have to load every Group or every Community/Collection to determine if the current user could manage/administer them.  Instead, we'd want to see if there's a database level query that can answer the question: "Does the current user have Admin-level rights on one or more Communities or Collections?"
      4. 4491
        (On hold for beta5 and then 7.1) Live Import Feature & "Metadata Suggetions" per
        1. BTE framework was deprecated in 6.0, with Live Import framework selected as the replacement.
        2. "Metadata Suggestions" PR (
        1. https://github.com/DSpace/DSpace/pull/2712
        2. ) seems to extend Live Import was definitely in DSpace 6.x: 2016 Framework for live import from external sourcesHowever, "Metadata Suggestions" seems like a new feature of Live Import?  If functionality (from how it existed in 6.x). If this is accurate, we should track it separately so that it can have estimates & scheduling specific to it.
        3. Is there a more simplistic implementation of Live Import that can be used to swap out BTE more directly?  That would be the easiest route towards a quick swap, and then we could follow that up with additional PRs to add/enhance functionality of Live Import to better align with existing features in BTE.
    5. (Feel free to add other topics)
  • (20 mins) Planning for next week

...

  1. (REST Contract) (low priority) related to the scripts & processes PR above (related to PR 2648 below) https://github.com/DSpace/Rest7Contract/pull/99 ((warning)NEEDS UPDATES FROM Kevin Van de Velde (Atmire) ) (Andrea Bollini (4Science) - (error) REVIEWEDTim Donohue )
  2. (REST Contract) Language support on the backend (possible new cookie for Angular?https://github.com/DSpace/Rest7Contract/pull/122 (WAITING ON Andrea Bollini (4Science) ) (Tim DonohueBen Bosman, Art Lowel (Atmire) )
  3. (REST) (low priority) (beta4) Scripts & processes: importing and exporting csv's https://github.com/DSpace/DSpace/pull/2648 ((warning)WAITING ON PR UPDATES FROM Kevin Van de Velde (Atmire) ) (Andrea Bollini (4Science) - (error) REVIEWEDTim Donohue - added summary of way forward Mark H. Wood  )
  4. (REST) (tentative 7.1) [DS-4281]: Metadata suggestions in the live import https://github.com/DSpace/DSpace/pull/2712 (NEEDS TICKET / DISCUSSION) (Tim Donohue - (warning) I believe this is a new feature? We should add this to the spreadsheet, Andrea Bollini (4Science), agree with Tim it is a new feature so postpone compared to existing features)
  5. (REST) (beta 3) Subresources should obey access restrictions https://github.com/DSpace/DSpace/pull/2726 (Tim Donohue  -(warning)New feedback added, Andrea Bollini (4Science) (error) implementation approach need discussion, Craig Rosenbeck )
  6. (REST) (beta 3) Administer Workflow (Abort WorkflowItem, Delete WorkflowItem) https://github.com/DSpace/DSpace/pull/2727 (Tim Donohue - REREVIEWAndrea Bollini (4Science) REREVIEW TODAY)
  7. (REST) Configurable whitelist for "Access-Control-Allow-Origin" header: https://github.com/DSpace/DSpace/pull/2735 (WAITING ON Tim Donohue ) (Ben Bosman , Giuseppe Digilio (4Science))
  8. (REST) (beta 3) Account profile management https://github.com/DSpace/DSpace/pull/2747 (Tim Donohue - REVIEW BY MAY 7Andrea Bollini (4Science) - REVIEW BY MAY 7)
  9. (REST) Assume login feature https://github.com/DSpace/DSpace/pull/2740 (Ben BosmanTim Donohue - REVIEW BY MAY 7Andrea Bollini (4Science) - REVIEW BY MAY 7)
  10. (REST) (beta 3) Controlled vocabulary (TALK NEXT WEEK ONCE WE HAVE A BUG TICKET FROM ATMIRE) Mykhaylo Boychuk https://github.com/DSpace/DSpace/pull/2743 (REST Contract #120) (Tim Donohue, Kevin Van de Velde (Atmire) )
  11. (Angular) (beta 3) Edit resource policies https://github.com/DSpace/dspace-angular/pull/645 (Tim DonohueArt Lowel (Atmire) -  (warning) Feedback added,  Julian Timal (eScire) )
  12. (Angular) (beta 3) Administer Workflow https://github.com/DSpace/dspace-angular/pull/650 (Tim DonohueJulian Timal (eScire))
    1. Depends on REST PR #2727 (see above). 
  13. (Angular) (low priority) (beta4) Scripts & Processes Admin UI https://github.com/DSpace/dspace-angular/pull/636 (Tim DonohueGiuseppe Digilio (4Science)Craig Rosenbeck)
    1. Depends on REST PR #2648 (see above) ON HOLD
  14. (blue star) (Angular) (EARLY beta3) Switch to Angular CLI https://github.com/DSpace/dspace-angular/pull/625 (Tim Donohue - REVIEW BY MAY 7Giuseppe Digilio (4Science)(warning)REREVIEW BY MAY 7)
  15. (Angular) Alternative links https://github.com/DSpace/dspace-angular/pull/652 (Giuseppe Digilio (4Science)Tim Donohue)
  16. (Angular) Login as EPerson  https://github.com/DSpace/dspace-angular/issues/653 (Tim Donohue - REREVIEW BY MAY 7Giuseppe Digilio (4Science) - REVIEW BY MAY 7 ,(warning)Julian Timal (eScire))
    1. Depends on REST PR #2740 (see above)
  17. (Backend) (low priority) DS-626 : Exchange usage data with IRUS https://github.com/DSpace/DSpace/pull/2664 ((tick)Craig RosenbeckNEEDS SECOND REVIEWER)
  18. (Backend) (low priority) (tentative 7.2) DS-4440 GDPR - Anonymize Statistics Feature: https://github.com/DSpace/DSpace/pull/2692 (Andrea Bollini (4Science)Ben BosmanTim Donohue)
  19. (blue star) (Backend / Security) (EARLY beta3) Upgrade Spring Boot, Spring & Spring HATEOAS: https://github.com/DSpace/DSpace/pull/2720 ((tick)Andrea Bollini (4Science) ,  (tick)Craig Rosenbeck, (tick) Kevin Van de Velde (Atmire) )

PRs Coming Soon / On Hold

  1. (beta 3) REST Language Support on the backend Mykhaylo Boychuk ETA 17 or 20 April
  2. (PR from Kevin coming?) We do not fully support Community or Collection Admins adding/managing Community/Collection Groups. Related to 
    Jira
    serverDuraSpace JIRA
    serverIdc815ca92-fd23-34c2-8fe3-956808caf8c5
    keyDS-4486
     and this brainstorm REST Contract PR

PRs Merged this week!

  1. (tick) (first PR merged goes here)

...

Delayed / Needs Discussion

  1. Initial Performance Testing from Chris.  Needs revisiting / retesting prior to 7.0.  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: 
      1. https://cwilper.github.
      com/DSpace
      1. io/dspace-
      angular
      1. perftest/
      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
    1. Initial Performance Testing from Chris.
      1. https://cwilper.github.io/dspace-perftest/
      1. These performance tests were run prior to the work on "projections" (to limit the data returned by the REST API).  Therefore, it is likely performance is much improved, but needs verification testing.
    2. (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.
    3. (warning) (Angular Bug) https://github.com/DSpace/dspace-angular/issues/368 ( Art Lowel (Atmire) )
    4. 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