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.
Developers Meeting on Weds, August 1, 2018
Today's Meeting Times
- DSpace Developers Meeting / Backlog Hour: 20:00 UTC in #duraspace IRC or #dev-mtg Slack channel (these two channels sync all conversations)
- Please note that all meetings are publicly logged
Agenda
Quick Reminders
Friendly reminders of upcoming meetings, discussions etc
- DSpace 7 Working Group: Next meeting is tomorrow, Thurs, August 2 at 14:00 UTC
DSpace Entities Working Group: This Working Group will be replaced by DSpace 7 Entities Working Group
- DSpace Developer Show and Tell Meetings: Next Show & Tell will be August 28 at 15:00 UTC. The topic will be DSpace + Docker
Discussion Topics
If you have a topic you'd like to have added to the agenda, please just add it.
(Ongoing Topic) DSpace 7 Status Updates for this week.
- DSpace 7 Working Group is where the work is taking place
- DSpace 7 Dev Status spreadsheet: https://docs.google.com/spreadsheets/d/18brPF7cZy_UKyj97Ta44UJg5Z8OwJGi7PLoPJVz-g3g/edit#gid=0
(Ongoing Topic) DSpace 6.x Status Updates for this week
- Master ports from 6.3. A number of PRs merged into 6.3 release have not yet been ported to `master` branch. These PRs are closed but still have the "port to master" label.
- https://docs.google.com/spreadsheets/d/1X-Zk56gz-wg6p7JaiuBzzUquqOvwwx_-o_ZDDvGPSQU/edit?usp=sharing
- As we're working through this list, we should remove the 'port to master' label from the dspace-6.x PR and if possible, edit the JIRA comment to remove the "63_PORT_TO_MASTER" text.
- 6.4 will surely happen at some point, but no definitive plan or schedule at this time. Please continue to help move forward / merge PRs into the dspace-6.x branch, and we can continue to monitor when a 6.4 release makes sense.
- Master ports from 6.3. A number of PRs merged into 6.3 release have not yet been ported to `master` branch. These PRs are closed but still have the "port to master" label.
- DSpace and Docker
- Discussion topics / half-baked ideas (Anything more to touch on with these?)
- Bulk Operations Support Enhancements (from Mark H. Wood)
- Better support for bulk operations (in database layer), so that business logic doesn't need to know so much about the database layer. Specifically, perhaps a way to pass a callback into the database layer, to be applied iteratively to the results of a query.
- Then, the database layer can handle batching, transaction boundaries, and other things that it should know about, and the business logic won't have to deal with them.
- This is the result of thinking about a recent -tech posting from a site with half a million objects that needed checksum processing.
- (This is almost an extension of the tabled topic below regarding DSpace Database Access, but a bit more specific in trying to simplify/improve upon how bulk operations are handled)
- Curation System Needs (from Terrence W Brady )
- Bulk Operations Support Enhancements (from Mark H. Wood)
- How to encourage / credit folks who do Code Reviews? (Tim Donohue)
- We have a lot of open PRs. As we know, the process for reviewing is very ad-hoc, sometimes encounters delays. If we can find ways to encourage/empower folks (even non-Committers if they know Java / Angular well) to do code reviews & be credited publicly...maybe we can speed up this process?
- Other brainstorms welcome!
- Tickets, Pull Requests or Email threads/discussions requiring more attention? (Please feel free to add any you wish to discuss under this topic)
Tabled Topics
These topics are ones we've touched on in the past and likely need to revisit (with other interested parties). If a topic below is of interest to you, say something and we'll promote it to an agenda topic!
- Management of database connections for DSpace going forward (7.0 and beyond). What behavior is ideal? Also see notes at DSpace Database Access
- In DSpace 5, each "Context" established a new DB connection. Context then committed or aborted the connection after it was done (based on results of that request). Context could also be shared between methods if a single transaction needed to perform actions across multiple methods.
- In DSpace 6, Hibernate manages the DB connection pool. Each thread grabs a Connection from the pool. This means two Context objects could use the same Connection (if they are in the same thread). In other words, code can no longer assume each
new Context()
is treated as a new database transaction.- Should we be making use of
SessionFactory.openSession()
for READ-ONLY Contexts (or any change of Context state) to ensure we are creating a new Connection (and not simply modifying the state of an existing one)? Currently we always useSessionFactory.getCurrentSession()
in HibernateDBConnection, which doesn't guarantee a new connection: https://github.com/DSpace/DSpace/blob/dspace-6_x/dspace-api/src/main/java/org/dspace/core/HibernateDBConnection.java
- Should we be making use of
Ticket Summaries
Help us test / code review! These are tickets needing code review/testing and flagged for a future release (ordered by release & priority)
Newly created tickets this week:
Old, unresolved tickets with activity this week:
Tickets resolved this week:
Tickets requiring review. This is the JIRA Backlog of "Received" tickets:
Meeting Notes
Meeting Transcript
IRC Transcript is available at - http://irclogs.duraspace.org/index.php?date=2018-08-01