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 22, 2018

 

Today's Meeting Times

Our IRC logging bot has been blocked from Freenode (as of July 27).

Discussion logs are no longer available at http://irclogs.duraspace.org/. As our current IRC log bot (based on PircBot) is unmaintained and doesn't align with Freenode policies (around requiring SASL authentication), Tim has reached out to https://botbot.me/ to see if they could log our #duraspace IRC channel. In the meantime, full logs of meeting discussions will be copied into the Wiki notes below.

Agenda

Quick Reminders

Friendly reminders of upcoming meetings, discussions etc

Discussion Topics

If you have a topic you'd like to have added to the agenda, please just add it.

  1. (Ongoing Topic) DSpace 7 Status Updates for this week. 

    1. DSpace 7 Working Group (2016-2023) is where the work is taking place
    2. DSpace 7 Dev Status spreadsheet: https://docs.google.com/spreadsheets/d/18brPF7cZy_UKyj97Ta44UJg5Z8OwJGi7PLoPJVz-g3g/edit#gid=0
  2. (Ongoing Topic) DSpace 6.x Status Updates for this week

    1. 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.
  3. [Follow-up] How to encourage / credit folks who do Code Reviews? (Tim Donohue)
    1. 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?
    2. Tim has begun tagging/categorizing PRs via labels: https://github.com/DSpace/DSpace/labels
      1. Hope is to at least make it easier to find related PRs and/or PRs of interest. Each label provides stats for how many PRs exist on that topic.
      2. Labels are in flux. Feedback is welcome on how they'd be most useful.  Names/descriptions of labels are easy to change (in bulk).
  4. Brainstorms / ideas (Any quick updates to report?)
    1. Bulk Operations Support Enhancements (from Mark H. Wood)
    2. Curation System Needs (from Terrence W Brady )
  5. 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!

  1. Management of database connections for DSpace going forward (7.0 and beyond). What behavior is ideal? Also see notes at DSpace Database Access
    1. 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.
    2. 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.
      1. 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 use SessionFactory.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


Ticket Summaries

  1. Help us test / code review! These are tickets needing code review/testing and flagged for a future release (ordered by release & priority)

    key summary type created updated assignee reporter priority status fixversions

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.

  2. Newly created tickets this week:

    key summary type created assignee reporter priority status

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.

  3. Old, unresolved tickets with activity this week:

    key summary type created updated assignee reporter priority status

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.

  4. Tickets resolved this week:

    key summary type created assignee reporter priority status resolution

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.

  5. Tickets requiring review. This is the JIRA Backlog of "Received" tickets: 

    key summary type created updated assignee reporter priority

    Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Meeting Notes

Meeting Transcript (IRC Bot is not working)

Log from #dev-mtg Slack (All times are CDT)
Tim Donohue [9:34 AM]
@here: Reminder that we have our DevMtg today at the top of the hour (~25mins from now)  Rough agenda is at https://wiki.duraspace.org/display/DSPACE/DevMtg+2018-08-22

Tim Donohue [10:00 AM]
@here: It's DevMtg time!  Agenda is above. Let's do a quick roll-call to see who is here today

Pablo Prieto [10:02 AM]
Hi all!

Mark Wood [10:02 AM]
Hi.

Tim Donohue [10:02 AM]
Hi Pablo.  Hi Mark.
Well, at least a few of us are here today :slightly_smiling_face:  Small crowd though

Pascal Becker [10:03 AM]
Hi!

Tim Donohue [10:03 AM]
Hi Pascal
Ok, looks like we have a small quorum, so we'll go ahead and get started

Terry Brady [10:03 AM]
Hello

Tim Donohue [10:04 AM]
On the updates side of things... DSpace 7 doesn't have significant updates (August has been slow, lots of folks in/out on holiday).
But, I will note that the call for participation for the DSpace 7 Entities Working Group is about to go out the door.  Should be on all email lists tomorrow, I believe
And if you want to get a head start, the Doodle Poll for the first meeting is already (silently) posted here: https://wiki.duraspace.org/display/DSPACE/DSpace+7+Entities+Working+Group#DSpace7EntitiesWorkingGroup-NextMeeting
So, you know, you all are the first to know :wink:
That's it from DSpace 7 updates for today.  Work is occurring, but follow along in Slack or GitHub for individual tickets, etc

Pascal Becker [10:06 AM]
My I jump in here right now?

Tim Donohue [10:07 AM]
@pbecker: sure, if you have something to add on this topic

Pascal Becker [10:07 AM]
Are there any informations available about Atmire's prototype?

Pablo Prieto [10:07 AM]
Me too

Pascal Becker [10:07 AM]
(talking about DSpace 7 Entities)

Tim Donohue [10:08 AM]
@pbecker: that's what I'm waiting on... I'm hoping to have something by tomorrow.  If it's not ready by then, we'll be sending out the announcement without it (initially) and update all participants once it's ready
So, you are not alone in the question...there's nothing public yet, is the answer

Pascal Becker [10:09 AM]
Regarding the Doodle: Can you still change something? On September 13th and 14th there is the DSpace Anwendertreffen 2018. I won't be able to participate on both dates,  probably no one from Germany would be and people from 4Science neither.

Tim Donohue [10:10 AM]
@pbecker: sure, we can update the Doodle Poll still. I didn't notice that conflict, sorry

Pascal Becker [10:10 AM]
And while we are on it, I'd like to invite you to join us on September 13th in Berlin. You probably saw my mail to dspace-communty yesterday. In case you haven't there are only a few seats left for the 13th of September. So please send me a mail asap if you want to join!
It will be a great meeting again, I think it is the largest DSpace User Group meeting so far. :slightly_smiling_face:
@tdonohue thank you!

Tim Donohue [10:11 AM]
Any other questions on DSpace 7 or this new Entities WG (from anyone)?
Ok, thanks for the feedback there. I'll update the Doodle Poll before sending out this announcement tomorrow.  More info coming very soon
On the DSpace 6.x maintenance front, I don't have any updates.  Anyone else have anything to share?

Terry Brady [10:13 AM]
Not related to DSpace 6

Tim Donohue [10:13 AM]
Ok, moving along then
I wanted to quickly give an update on the "How to encourage / credit folks who do Code Reviews?" topic (which we started discussing last week)
As noted on #dev , I've started analyzing/tagging all our PRs.  So we have a ton of new "labels": https://github.com/DSpace/DSpace/labels
These labels are not yet complete (and I'm only about 1/2 way through the PRs).  But, I've already found it a bit informative to show where we have a lot of code effort
My *hope* is that this will make it a ton easier to find related PRs (to test together), and also allow folks to "specialize" a bit in what you want to review/test.  If you are an expert in "DOIs" you can now find everything with a "identifier: DOIs" tag
It's not the full solution to encouraging more PR reviews, but just a single step/improvement
And, I guess, I'm curious if folks feel this seems useful?  Or, even if there are other ideas that have come to mind in the last week?

Pascal Becker [10:17 AM]
I hope the great work @terrywbrady is doing with docker will help us here too.

Terry Brady [10:17 AM]
This seems like a useful way to prioritize participation.
Thanks @pbecker.  I hope so as well.

Tim Donohue [10:18 AM]
@terrywbrady: exactly.  I also hope it makes my job a bit easier. I'll gladly tag everything that comes in, but I cannot review everything (hoping others will find time/interest to review/specialize in certain PRs)

Terry Brady [10:18 AM]
My other thought is that it could be interesting to publish a count of reviews by user or institution on a monthly basis and route this to the community.

Mark Wood [10:19 AM]
This could be helpful.  I worry a bit about the number of different labels to choose from, but maybe that just needs getting used to.

Terry Brady [10:19 AM]
I am not shy about passing around the release notes where my contributions are recognized.  I would do the same thing with a report on reviews conducted.

Pablo Prieto [10:19 AM]
I agree

Tim Donohue [10:20 AM]
@mwood: The cool thing is that once things are labeled, labels are easy to rename/change.  This has been "morphing" over time.  For example, I started with "Oracle", "Postgres" labels, then morphed into "database: Oracle", "database: Postgres" as I started to create subcategories.  So, subcategorization may help.
@terrywbrady: I agree completely on more recognition / credit
I'll note that @terrywbrady has passed me (yesterday) some notes on GitHub's GraphQL API (which lets you create complex queries of GitHub info).  There may be some ways to leverage it to query for specific types of contributions --- PR creation, PR comments, PR reviews, etc etc

Terry Brady [10:22 AM]
https://files.slack.com/files-pri/T3LKE46GZ-FCDV5NPHU/image.png
Pasted image at 2018-08-21, 11:42 AM 


Tim Donohue [10:22 AM]
I haven't had a chance to dig in deeply or create such queries...but it looks to have promise.  So, if we can work together on queries and/or the types of things we'd *like to credit / recognize*, that'd be helpful (to me)

Pablo Prieto [10:22 AM]
Thats awesome!

Terry Brady [10:22 AM]
GitHub provides a GraphQL browser over their data.
Here is a sample data query/result that I shared with Tim yesterday.
Sample PR Query for Reviewers and Commenters 
{
 repository(owner: "DSpace", name: "DSpace") {
  pullRequests(last: 50) {
   nodes {
    state

DSpaceSlackBot (IRC) APP [10:24 AM]
*qwebirc85543* has quit the IRC channel

Pascal Becker [10:24 AM]
Maybe we should collect those queries somewhere in our wiki in the DSpace-Space?

Terry Brady [10:24 AM]
I have not yet figured out if it is possible to query by a date range.

Tim Donohue [10:24 AM]
So, I don't have anything else to add to this topic right now.  But, I plan to keep moving it along -- both in tagging PRs, and also starting to dig a bit into GraphQL more (to see what's possible to query)
@pbecker: good idea.  we should create a Wiki page to share any GraphQL queries

Terry Brady [10:25 AM]
I might post a StackOverflow question for tips on improving the query.

Tim Donohue [10:26 AM]
I can create a wiki page for these efforts...and then pass it along to everyone else.
Any other updates/thoughts on this topic?  That's all I really had to say right now.  Glad to hear some enthusiasm here, and hopefully we can move this forward rather quickly

Terry Brady [10:26 AM]
If you have access to lynda.com, there is a nice 50 min course on GraphQL

Tim Donohue [10:27 AM]
Sounds like that's it on this topic...moving along.
We have a couple of recent "Discussion topics" we've been brainstorming on in recent weeks.  "Bulk Operations Support Enhancements" (from @mwood) and "Curation System Needs" (from @terrywbrady).   Did we want to revisit either of these with new updates?

Mark Wood [10:29 AM]
Nothing new.  I've been busy with other stuff.

Terry Brady [10:29 AM]
I have no new updates.  @mwood, your summary on the bulk operations looked good to me.

Tim Donohue [10:29 AM]
Ok, thanks both. I'll leave these links here for now, and we can revisit whenever there are new thoughts/updates to share
Are there any other topics anyone has for today?

Terry Brady [10:30 AM]
https://wiki.duraspace.org/display/DSPACE/Dev+Show+and+Tell+-+Aug+28%2C+2018+-+1500UTC+-+DSpace+On+DockerHub
Dev Show and Tell Meeting on Docker next week.

Mark Wood [10:30 AM]
Over the weekend I've done a little hacking on the curation results stuff that I need to push up.

Tim Donohue [10:31 AM]
@terrywbrady: Yes, thanks for that Show & Tell reminder!  Looking forward to it

Terry Brady [10:31 AM]
I have no further Show and Tell meetings on the schedule yet.  I am waiting for some topic ideas.

Tim Donohue [10:32 AM]
@mwood: sounds interesting... guess what, there's a label for that :wink:  https://github.com/DSpace/DSpace/labels/curation-tasks  (Just thought I'd mention, in case your "hacking" is similar to any PRs already out there)

Terry Brady [10:33 AM]
I am very eager for show and tell meeting topic ideas.  @tdonohue, could that go on the DEV meeting agenda for a couple weeks?

Tim Donohue [10:33 AM]
@terrywbrady: the new GitHub labels?  Is that what you mean?

Terry Brady [10:33 AM]
I am still talking about Show and Tell Meeting Agenda items.
(for future meetings)

Tim Donohue [10:34 AM]
Oh, i'm sorry, cross conversation here
Yes, we can add to the DevMtg agenda to brainstorm future Show & Tell topics

Terry Brady [10:34 AM]
Thanks!

Tim Donohue [10:35 AM]
Since we are "light" on topics today, I will bring up something I've noticed as I've been reviewing & tagging our PR backlog....
We have a fair number of PRs which are labeled "quick win" AND also have at least one +1 vote
Here they are: https://github.com/DSpace/DSpace/pulls?q=is%3Aopen+review%3Aapproved+label%3A%22quick+win%22
If anyone here finds some time for PR reviews, that's 14 of them that look nearly "ready to merge"... and I suspect I'll find more as I keep reviewing
(As I'm reviewing, I'll note that I did stumble on a few that were extremely obvious and/or already at +2.  I merged those immediately)
But, if others simply give a second +1 to any of the above PRs (that you feel look good), I'll gladly loop back on this list & merge any that are ready
Any other topics / thoughts for today?  Otherwise, I think we are at the end of our agenda

Terry Brady [10:40 AM]
When is the next code sprint?  Is there anything we can do to get for developers engaged?

Tim Donohue [10:41 AM]
The next code sprint has not yet been scheduled.  I've been scheduling them for DSpace 7, based primarily on that team's schedule.  And as Andrea B & Art L have not had matching schedules for most of August, we don't have dates yet.
But, that's a good topic for tomorrow's DSpace 7 Agenda, as I think we may have the full team "mostly back" tomorrow

Terry Brady [10:42 AM]
I was catching up on slack conversation while I was out of the office, and I saw @jcreel256 mentioned the following meeting: https://www.tdl.org/2018/07/re-launch-of-texas-digital-library-dspace-user-group/

Is there an update on how that meeting went?

Tim Donohue [10:43 AM]
I don't have an update myself.  It looks like @jcreel256 is offline right now. So, maybe he'll see this later and give us an update
I think we've exhausted our topics.  So, let's wrap up today's meeting a bit early.  That'll give me time to do more PR labeling/tagging today -- and perhaps give others here a chance to review some of the PRs that are "quick win" and also at +1. :slightly_smiling_face:

Mark Wood [10:44 AM]
Another old ticket:  DS-1494 needs a tester who actually uses LDAP authN.

Terry Brady [10:44 AM]
@pbecker, good luck with your meeting next month!

Pablo Prieto [10:45 AM]
If someone could review https://github.com/DSpace/DSpace/pull/2173, it would be appreciated. I think it's ready for merging.

Pascal Becker [10:45 AM]
@terrywbrady thank you!

Tim Donohue [10:45 AM]
@mwood: that looks like one I hadn't got to labeling yet.  Thanks for the reminder there
@Pablo Prieto: also thanks for the reminder.  I can bring PR#2173 up in tomorrow's DSpace 7 meeting too, if we don't get a reviewer prior to that

Pablo Prieto [10:46 AM]
Thanks @tdonohue

Tim Donohue [10:48 AM]
That's it for today all! If any other PRs need help/reviewing, let's bring them over to #dev (or other related channels).  Thanks!

Pablo Prieto [10:48 AM]
Great, Thanks!

Mark Wood [10:48 AM]
Thanks, all.

Pascal Becker [10:48 AM]
have a good day everyone!

Terry Brady [10:49 AM]
Have a good week!  @Pablo Prieto, @pbecker, and @tdonohue thanks again for support with the Docker PR's