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 14:00-15:00 UTC

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

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. Revisiting Community Homepage mockups from Laura Henze.  See: Community page mockups
    2. Ben Bosman Support for bundles in REST for:
      1. reorder bitstreams (bundle2bitstream.bitstream_order, not to be confused with bitstream sequence)
      2. retrieving item's bitstreams limited to one or a few bundles, or even to one thumbnail
    3. Improved Estimation Strategy for Beta release. (Estimates should include time for discussion / code reviews, also should be done by multiple developers)
      1. Development Planning Spreadsheet needs to be updated, so that we can determine what (outstanding) tasks need estimation.
      2. Will be using Wideband Delphi estimation technique
  • (15 mins) Planning for next week

Attendees

Current Work

Legend for status icons

(blue star) = Highest Priority tasks (please prioritize these reviews/tasks over others). Currently this lists tasks/features that need to be completed for Preview Release.

(star) = Priority for OR2019 (Preview #2 Release).

(error) = review done (this week), changes were requested.

(tick) = review done, approved.

(warning) = review done, merge conflict or other minor changes requests

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. (warning) (REST Contract) Group and eperson management: https://github.com/DSpace/Rest7Contract/pull/41 (Waiting on updates fromBen Bosman )
  6. (warning) (REST) Pagination issues on Items findAll - https://github.com/DSpace/DSpace/pull/2406 (Waiting for confirmation of proposed approach by Andrea Bollini (4Science) from  Kevin Van de Velde (Atmire)  and any other interested/available )
  7. (Backend) DS-4257: Renaming "dspace-spring-rest" to "dspace-server" (Tim Donohue).  (Timeline: Not likely to be completed until after OR2019)
  8. (Angular) Transfer to .po message format - Initial PR: https://github.com/DSpace/dspace-angular/pull/366 (Paulo Graça(seleção),  (tick) Tim Donohue , Art Lowel (Atmire) )

PRs Needing Review

  1. (REST Contract) Collecting statistics - https://github.com/DSpace/Rest7Contract/pull/63 (Dimitris PierrakosAndrea Bollini (4Science) - (error) changes requested, Ben Bosman )
  2. (REST Contract) OAI Harvesting configuration - https://github.com/DSpace/Rest7Contract/pull/66 (Paulo GraçaTim Donohue - (warning) feedback provided, PR updated Ready for RE-REVIEW)
  3. (NEW) (REST Contract) Update bitstream properties and format https://github.com/DSpace/Rest7Contract/pull/68 (Tim Donohue, NEEDS SECOND REVIEWER)
  4. (REST) Item Mapper functionality: https://github.com/DSpace/DSpace/pull/2282  ( Tim Donohue - (warning) feedback providedtinymce.emotions_dlg.checkBen Bosman )
  5. (REST) Pagination bug with withdrawn items: https://github.com/DSpace/DSpace/pull/2406 (Dimitris Pierrakos , Ben Bosman - Feedback provided)
  6. (New) (REST) implement upload bitstream to archived item https://github.com/DSpace/DSpace/pull/2473 (Tim Donohue, NEEDS SECOND REVIEWER)
  7. (Angular) (Entities) Deleting relationships: https://github.com/DSpace/dspace-angular/pull/402 (Paulo Graça - will test againTim Donohue )
  8. (Angular) Move Item Component: https://github.com/DSpace/dspace-angular/pull/335 (Giuseppe Digilio (4Science) reviewed and provided feedback, Tim Donohue )
  9. (Angular) Item-Collection Mapper:  https://github.com/DSpace/dspace-angular/pull/348 (NEEDS REVIEWERS)
    1. Dependent on PR#2282 (above)
  10. (Angular) Shibboleth integration support (WORK IN PROGRESS): https://github.com/DSpace/dspace-angular/pull/429  (Julius has updated the PR. Ready for RE-REVIEW) (Giuseppe Digilio (4Science) feedback provided, Fernando FCT/FCCN, Paulo Graça )
    1. 4Science will enable Shibboleth on public demo. DONE.
  11. (Angular) Submission Miscellaneous fixes: https://github.com/DSpace/dspace-angular/pull/432 (Art Lowel (Atmire) will re-review, Julius Gruber )
  12. (Angular) Replace model factories https://github.com/DSpace/dspace-angular/pull/434 ((tick)Tim Donohue(tick)Giuseppe Digilio (4Science))
  13. (NEW) (Angular) Improve i18n files https://github.com/DSpace/dspace-angular/pull/439 (Tim Donohue)
  14. (NEW) (Angular) Edit current item query https://github.com/DSpace/dspace-angular/pull/440 (Ben BosmanTim Donohue)
  15. (New) (Angular) UI Language Cookie https://github.com/DSpace/dspace-angular/pull/443 (Pascal-Nicolas BeckerTim Donohue)
  16. (New) Indirect entity refs during CSV import https://github.com/DSpace/DSpace/pull/2471 (Ben Bosman, Tim Donohue )
  17. (NEW) (Angular) Fix for failing travis tests https://github.com/DSpace/dspace-angular/pull/444 (Tim Donohue - VERY HIGH PRIORITY)

PRs Merged this week!

  1. (tick) (Backend) One Webapp Phase 2: Rename "dspace-spring-rest" to "dspace-server-webapp": https://github.com/DSpace/DSpace/pull/2459
  2. (tick) (Backend) Upgrading to Handle Server v9: https://github.com/DSpace/DSpace/pull/2394

Blocked

  1. (Blocked PRs go here)

Delayed / Needs Discussion

  1. (REST) Scripts & Processes endpointhttps://github.com/DSpace/Rest7Contract/pull/17
    1. How do we move this forward? In our Jan 24 meeting, Tim noted a risk of "scope creep" with this feature suggestion. This idea has been tabled since then.
    2. In July 25 meeting, Atmire said they'd come back with notes on the proposed backend implementation.
  2. 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
  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.
  6. Not discussed much, but could there be opportunities to use Travis CI + Docker Compose for testing of Angular??

Notes

  • Discussion of Community page mockups led by Laura Henze& Kate from NYU
    • Feedback still welcome on "Proposed design objectives".  These are useful in determining whether a design is successful and meets the goals
    • Mockups
      • v1 is the initial mockup.  Good feedback provided in comments
      • v2 is the initial mockup with separation of SubCommunities and Collections (as that was feedback on v1)
      • v3 is an enhanced proposal from Jose Carvalho, including more stats & download info
        • Some feedback is that the info is nice, but makes the page even larger.  Do we want to have this on a separate page or after  the subcommunity/collection listing (as much of this may be more interesting to community admins)
    • Discussion point: Do we like the sidebar here?
      • Yes, seems reasonable, but need a plan for how it collapses on smaller screens (e.g. phones)
      • Maybe we could collapse similar to Search Filters/Setting sidebar? e.g. Menu Mockups
        • Yes, possibly, though this sidebar is on the right instead of the left.  So, may need new component?
    • Discussion point: Search box for Community.  Should it be in the sidebar?
      • Art notes the initial plan was for the search icon (in site header) should eventually be clickable...and it'll expand into a search box.  We could just make that searchbox filterable to the community or collection. 
      • May want to think on whether the searchbox should be in the sidebar, or if we enhance the header search to support this option
    • Discussion point: Breadcrumbs. Currently don't exist
      • Art notes that the plan is these will exist.  Implementation ran into some initial performance issues that need resolution, but needs to exist in 7.0
    • Discussion point: New features like "Featured" sidebar listing, "Most downloads" sidebar listing, and the type-specific labels.
      • All these need more discussion and scoping.  Tim notes that we need to be careful not to expand our scope for any of these – may need to determine which are reasonable for 7.0 and which may need rescheduling
      • Type-specific labels (blue labels on Community/Collection):  Need to determine if these are based on Entity types or maybe on "dc.type".  May also be a topic of interest to DSpace 7 Entities Working Group (2018-19) eventually
      • "Featured" sidebar listing:  Nice idea, but currently doesn't exist on backend.  Not sure how to implement yet.  Noted by Laura & Kate that this might be the lowest priority of all new features
      • "Most downloads" sidebar listing: Nice idea as well, currently not in DSpace v6.  But, might be an opportunity to look at this as we implement more of statistics UI... might not be that hard to implement (needs analysis though)
    • Next steps
      • First three points are lower hanging fruit.  Can look more at how to collapse sidebar (Laura & Art had interest).  Also can reintroduce breadcrumbs discussion and searchbox ideas in upcoming meetings perhaps?
      • Other new features may need more analysis in terms of implementation strategy.  Not sure which can fit into v7 and which become v8 features
  • Did not discuss Bundles in REST API.  That will move to Slack discussion, and also top of list next week
  • No major updates on estimation process.  Tim looking into, but has not had much time in recent weeks.