15:02:43 <JBoyer> #startmeeting 2023-01-10 - Developer Meeting
15:02:43 <pinesol> Meeting started Tue Jan 10 15:02:43 2023 US/Eastern.  The chair is JBoyer. Information about MeetBot at http://wiki.debian.org/MeetBot.
15:02:43 <pinesol> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
15:02:43 <pinesol> The meeting name has been set to '2023_01_10___developer_meeting'
15:02:48 <JBoyer> #info Agenda at https://wiki.evergreen-ils.org/doku.php?id=dev:meetings:2023-01-10
15:02:55 <JBoyer> #topic Introductions
15:03:03 <JBoyer> #info JBoyer = Jason Boyer, EOLI
15:03:05 <Dyrcona> #info Dyrcona = Jason Stephenson, CWMARS
15:03:09 <terranm> #info terranm = Terran McCanna, PINES
15:03:16 <jeffdavis> #info jeffdavis = Jeff Davis, BC Libraries Cooperative (Sitka)
15:03:18 <jeff> #info jeff = Jeff Godin, Traverse Area District Library (TADL)
15:03:19 <mmorgan> #info mmorgan = Michele Morgan, NOBLE
15:03:19 <collum> #info collum = Garry Collum, KCPL
15:03:26 <jvwoolf> #info jvwoolf= Jessica Woolford, Bibliomation
15:03:28 <miker> #info miker = Mike Rylander, EOLI
15:03:28 <csharp_> #info csharp = Chris Sharp, GPLS
15:03:28 <shulabear> #info shulabear = Shula Link, GCHRL in PINES
15:03:30 <berick> #info berick Bill Erickson, KCLS
15:03:31 <rfrasur> #info rfrasur = Ruth Frasur, Evergreen Indiana
15:03:32 <abneiman> #info abneiman = Andrea Buntz Neiman, Equinox
15:03:42 <sandbergja> #info sandbergja = Jane Sandberg
15:04:12 <dmoore> #info dmoore = Dan Moore, KCLS
15:04:31 <GavinKCLS> #info GavinKCLS = Gavin Smith, KCLS
15:04:43 <sleary> #info sleary = Stephanie Leary, EOLI
15:05:15 <gmcharlt> #info gmcharlt = Galen Charlton, EOLI
15:05:22 <jeffdavis> big turnout! hi everyone
15:05:30 <JBoyer> Ok, anyone joining later feel free to #info up then.
15:05:36 <JBoyer> #topic Action Items from Last Meeting
15:05:42 <JBoyer> #info jeffdavis will gather more specific examples of recurring QA problems to present for discussion at the next dev meeting
15:05:47 <JBoyer> #link https://wiki.evergreen-ils.org/doku.php?id=dev:meetings:common_qa_problems
15:06:16 <JBoyer> And now the customary X minutes while we all go read that list, definitely not for the first time...
15:06:39 <JBoyer> (more seriously, please go ahead jeffdavis if you'd like to add any color)
15:06:44 <sandbergja> jihpringle++
15:06:48 <jeffdavis> the important parts are in bold :)
15:06:48 <sandbergja> jeffdavis++
15:06:52 <berick> jeffdavis++
15:07:02 <JBoyer> jeffdavis++ jhpringle++
15:07:12 <jeffdavis> jihpringle and others here pulled together that very extensive list of common types of QA problems
15:07:13 <mmorgan> jeffdavis++ jhpringle++
15:07:20 <JBoyer> jihpringle++
15:07:24 <berick> jihpringle++
15:07:31 <shulabear> jdavis++ jhpringle++
15:07:41 <sandbergja> jihpringle++ # oops typo
15:07:44 <rfrasur> jeffdavis++ jihpringle++
15:07:48 <shulabear> jeffdavis++ jihpringle++
15:07:55 <jeffdavis> The hope is to use this as the basis for a developers/committers checklist to do a better job of catching these types of issues before code gets committed.
15:08:04 <Dyrcona> jihpringle++ jeffdavis++
15:08:18 <terranm> jihpringle++ jeffdavis++
15:08:25 <Dyrcona> Some of those will slow things down.
15:08:53 <jeffdavis> Testers could also use it during bug squashing weeks, people doing acceptance testing on paid development project, etc.
15:09:45 <sandbergja> 3 and 7 also seem difficult.  We don't really have comprehensive information about how all our functionality/settings are supposed to work.
15:09:59 <sandbergja> be it 100% test coverage or a super-detailed manual
15:10:17 <JBoyer> I do like the idea of basing an interface comparison checklist on it. You don't necessarily need to know how to use all of an interface if you can tell that you can get to X on dojo but not Angular. (so long as it's not an intentional workflow change)
15:10:20 <sandbergja> so I'd be interested in some conversation about how developers can get all that info before embarking on an angularization
15:13:31 <Dyrcona> I wonder if the Angular version needs to have feature parity with the previous interfaces(s). What if we came up with better ways of doing things?
15:13:57 <jeff> probably fall under JBoyer's "so long as it's not an intentional workflow change"
15:14:04 <rfrasur> Who is "we?"
15:14:32 <mmorgan> re: library settings - it seems like calls to get library settings in existing code shouldn't be too hard to identify.
15:14:53 <JBoyer> That's what I was getting at yeah. If you can get the same outcome with a different UI that's fine, but being able to do something in the old and busted but not the new hotness isn't great.
15:15:08 <tlittle> #info tlittle = Tiffany Little, PINES
15:17:02 <jeffdavis> IMO the state of our tests/docs means that we'll never catch all of these problems. I think the idea with a checklist was to make sure we're consciously thinking about these types of things at some point during the contribution process.
15:17:26 <berick> yeah, what jeffdavis said
15:17:58 <Dyrcona> This is going to be unpopular, but maybe we need stricter standards than "works for me" and X number of signoffs.
15:18:19 <sandbergja> Dyrcona: what did you have in mind?
15:18:22 <jeffdavis> I also think that if multiple different roles are checking for this - code writers, committers, testers, etc - we're more likely to catch things than if we just put it all on the commit author.
15:18:24 <JBoyer> And it seems like there isn't going to be a large amount of discussion at the moment, but I think either way something like this should be shared on the dev and newdev lists to either get more discussion going or expose it to more people.
15:18:49 <berick> imo this is what we're already trying to do, it's nothing new
15:18:51 <JBoyer> (and of course now things pick up. :) Please don't let me stop you!)
15:18:55 <berick> it's just difficult sometimes
15:19:00 <berick> so more emphasis is good
15:19:41 <berick> and having a record of usual gotchas helps focus
15:20:20 <abneiman> this is also where non-technical end users can be helpful - in terms of interface & workflow evalution
15:20:26 <Dyrcona> sandbergja: I'm not really looking for more process, but I do think we need better automated tests, etc. I don't have much specific in mind at the moment.
15:20:34 <mmorgan> abneiman++
15:21:17 <Dyrcona> Also, what abneiman said. We need more end users involved.
15:21:18 <tlittle> abneiman++
15:22:52 <mmorgan> It's difficult for end users to get more involved, difficult for them to get their hands on the new development to test on.
15:22:53 <JBoyer> Yeah, testers rarely need to be conversant in the technical bits, and sometimes the tech types don't know so much about how the end users do their thing.
15:23:18 <mmorgan> Bugsquashing week is huge, but test systems are not real world.
15:23:25 <gmcharlt> yeah - I think an additional factor is committer time, and more automation can help around the edges
15:23:52 <tlittle> Numbers 6-7 are concrete things that fall squarely on the dev's shoulders, though, imo
15:24:41 <mmorgan> tlittle++
15:25:16 <JBoyer> But to mmorgan's point, it's difficult to test on realistic data if you don't have the local staff to build and rebuild test systems. :-/
15:25:57 <Dyrcona> Well, hire someone. What we need is more resources. It's that simple.
15:26:08 <terranm> Yeah, we find a lot of issues when we do our intensive pre-upgrade testing with a copy of real data. And then more issues when we go live.
15:27:52 <mmorgan> Dyrcona: Agreed more resources, but imo it doesn't seem that simple to hire someone and bring them up the Evergreen learning curve.
15:29:16 <berick> it may be helpful to consider that this phase of EG dev won't last forever.
15:29:24 <berick> there's only so many non-Angular UI's
15:29:36 <dmoore> berick++
15:29:38 <Dyrcona> And, when Google ends Angular?
15:29:47 <tlittle> berick++
15:30:13 <abneiman> is there a role for TEP Board to fund more aggressive QA? also, berick's point is well-taken.
15:30:15 * jeffdavis cracks knuckles, starts re-implementing all the Perl stuff in Haskell
15:30:25 <rfrasur> abneiman++
15:30:27 <Dyrcona> I'm not trying to start a fight or be contrary for the sake of being contrary. Google have demonstrated that they can't be trusted.
15:30:40 * Dyrcona would prefer Haskell at this point.
15:30:50 <dmoore> what's the TEP Board?
15:31:02 <csharp_> dmoore: The Evergreen Project
15:31:03 <rfrasur> The Evergreen Project oversight board
15:31:09 <dmoore> oh duh, thanks
15:31:35 <sleary> Even just focusing on the Angular UIs is a steep learning curve. I have had trouble with the lack of inline documentation on what various components do. (This topic is on the next new dev agenda, btw.)
15:31:35 <csharp_> dmoore: feel free to ask if there are other acronyms/jargon you don't understand
15:32:09 <sandbergja> Dyrcona: for me, I think that goes back to better automated tests and docs -- hopefully when/if we migrate away from Angular, we'd have better safeguards against regressions
15:32:09 <mmorgan> All part of the learning curve :)
15:32:18 <csharp_> part of the answer is new devs - both in general and the new devs group
15:32:40 <sandbergja> also, here's hoping Angular stays healthy for quite some time yet. :-)
15:32:55 <csharp_> but we've had this conversation so many times over the years it's hard for me to get excited (or upset) about it :-/
15:33:21 <mmorgan> At least until all the interfaces get migrated? :)
15:33:27 <sandbergja> :-D  it was starting to sound kind of familiar hahaha
15:33:46 <abneiman> what's kmlussier's old joke? "Have you finished Evergreen yet?"
15:33:54 <rfrasur> hah
15:34:02 <mmorgan> kmlussier++
15:34:02 <gmcharlt> oh, yeah, I did yesterday - should have told you all
15:34:06 * gmcharlt runs
15:34:13 <csharp_> all of the above considered, the QA gotchas will be useful
15:34:22 <terranm> kmlussier++
15:34:30 <csharp_> jihpringle++ jeffdavis++
15:34:38 <abneiman> yes, jihpringle++ jeffdavis++ I have already bookmarked this
15:34:45 <terranm> Same here
15:34:47 <sleary> Very useful! And I would like to do more with automated testing as well.
15:34:58 <mmorgan> Agreed QA gotchas will be useful, there will always be change, we just need to manage it well
15:35:07 <mmorgan> *just*
15:35:18 <jvwoolf> jihpringle++ jeffdavis++
15:35:29 <JBoyer> So, I do think it should go to the dev lists (perhaps quarterly or so, even) so that we can move on to the second action item from the last meeting. :)
15:35:29 <Dyrcona> This list is a good outline of where we need to pay attention, and tests/standard can be built around it.
15:35:52 <JBoyer> Which is
15:35:54 <JBoyer> #info Bmagic to email the development list about a way to share common Evergreen tools with the community.
15:36:34 <JBoyer> Though I don't think Bmagic is available at the moment and I don't recall seeing this on the lists. We'll kick that can down the road.
15:36:41 <JBoyer> #action Bmagic to email the development list about a way to share common Evergreen tools with the community.
15:36:53 <JBoyer> #info Dyrcona to review Lp 1901932
15:36:53 <pinesol> Launchpad bug 1901932 in Evergreen "Wish List - Enhanced Concerto dataset" [Wishlist,New] https://launchpad.net/bugs/1901932
15:37:07 <JBoyer> How is that looking Dyrcona ?
15:37:19 <Dyrcona> Yeah, I didn't really look at it.
15:37:29 <berick> oh nice, I missed that there was a pullreq for that
15:37:43 <JBoyer> Not the ideal time of year, do you want to check it out for next time?
15:38:00 <Dyrcona> I don't know. Things keep coming up.
15:38:19 <Dyrcona> I guess go ahead and give it to me for next time and we'll see what happens.
15:38:31 <JBoyer> Can do.
15:38:40 <JBoyer> #action Dyrcona to review Lp 1901932
15:38:40 <pinesol> Launchpad bug 1901932 in Evergreen "Wish List - Enhanced Concerto dataset" [Wishlist,New] https://launchpad.net/bugs/1901932
15:39:36 <JBoyer> Note though, if anyone else has an interest in the expanded sample data set and opinions on integration and etc. feel free to poke around,
15:40:23 <JBoyer> Ugh, look at me, forgetting to add something to the agenda myself, heh.
15:40:24 <JBoyer> #topic Evergreen Release Updates
15:40:32 <JBoyer> #info I've built a 3.8.2 release to end the 3.8 line now that 3.10 is out, if you can help test it's at https://evergreen-ils.org/downloads/Evergreen-ILS-3.8.2.tar.gz (Note, I'm going to have to make a docs change before it's final-final, but no code changes.)
15:41:00 <gmcharlt> JBoyer++
15:41:06 <shulabear> Jboyer++
15:41:18 <sandbergja> JBoyer++
15:41:29 <mmorgan> JBoyer++
15:41:31 <Dyrcona> JBoyer++
15:41:33 <JBoyer> It is 1. wicked late, and 2. not too difficult to test. IF you have access to a 3.8.1 db especially and can help test it (I know the version upgrade is fine for concerto, but you know how that goes)
15:41:35 <terranm> JBoyer++
15:41:49 <tlittle> JBoyer++
15:42:01 <rfrasur> JBoyer++
15:42:07 <jvwoolf> JBoyer++
15:42:45 <JBoyer> And while the md5 file is available beside it, take note: I'm going to modify the release notes before the final tarball is available. That's the final code though (unless it blows up on somebody)
15:44:01 <JBoyer> Let me know directly or via the lists if everything looks good and I'll get a final release up and also finally retire 3.7.
15:44:20 <JBoyer> And now for a big plate of copypasta
15:44:21 <berick> JBoyer++
15:44:22 <JBoyer> #topic Launchpad Status
15:44:26 <JBoyer> #info Snapshot
15:44:30 <JBoyer> #info Open Bugs - 2881
15:44:34 <JBoyer> #info Pullrequests - 106
15:44:37 <JBoyer> #info Signedoff - 41
15:44:41 <JBoyer> #info Updates Since Last Meeting
15:44:44 <JBoyer> v
15:44:47 <JBoyer> #info Bugs Added - 41
15:44:51 <JBoyer> #info Pullrequest tag Added - 29
15:44:55 <JBoyer> #info Signedoff tag Added - 7
15:44:59 <JBoyer> #info Fix Committed - 11
15:45:08 <JBoyer> ok,
15:45:09 <JBoyer> #topic New Business
15:45:17 <JBoyer> #info Bugs tagged with cat-holdingseditor (mmorgan)
15:45:22 <JBoyer> Let's see how this works
15:45:29 <JBoyer> #link https://bugs.launchpad.net/evergreen/+bugs?field.searchtext=&orderby=-importance&search=Search&field.status%3Alist=NEW&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&assignee_option=any&field.assignee=&field.bug_reporter=&field.bug_commenter=&field.subscribe
15:45:29 <JBoyer> r=&field.structural_subscriber=&field.tag=cat-holdingseditor&field.tags_combinator=ANY&field.has_cve.used=&field.omit_dupes.used=&field.omit_dupes=on&field.affects_me.used=&field.has_patch.used=&field.has_branches.used=&field.has_branches=on&field.has_no_branches.used=&field.has_no_branches=on&field.has_blueprints.used=&field.has_blueprints=on&field.has_no_blueprints.used=&field.has_no_blueprints=on
15:45:53 <JBoyer> Ah, probably busted. Well, the proper link is in the agenda if you'd like to follow along. :)
15:46:41 <JBoyer> mmorgan, anything to add?
15:46:51 <mmorgan> I just wanted to call attention to bugs related to the Angular holdings editor.
15:47:02 <mmorgan> We opted to delay upgrading because of these bugs. Hoping to get more eyes to get many of them resolved.
15:47:20 <mmorgan> Also, This kind of dovetails with the QA discussion. A lot of these bugs fall into that category.
15:47:54 <mmorgan> jvwoolf has been concentrating on them as well
15:47:59 <mmorgan> jvwoolf++
15:48:10 <JBoyer> mmorgan++ jvwoolf++
15:48:10 <jeffdavis> Are these bugs mostly without branches/possible fixes so far?
15:48:42 <mmorgan> jeffdavis: Yes, mostly without branches. A few have pullrequests
15:49:11 <jvwoolf> mmorgan: I've push patches to all of the ones that were showstoppers for us so far
15:49:20 <terranm> We're going ahead with upgrading because they're not show stoppers for us, but we know there will be some grumblings
15:49:53 <jvwoolf> I'm likely done with my concentrated effort unless something comes up when we widen our testing to end users, or after we upgrade
15:50:45 <mmorgan> Template issues, silent failure issues are big ones for us.
15:51:08 <mmorgan> We're still sorting through and prioritizing
15:53:20 <jvwoolf> mmorgan: Since I've been poking around in that code a lot, let me know if you come across anything high priority you can use eyes on
15:53:26 <jvwoolf> Or we can talk about it at a new dev meeting
15:53:30 <JBoyer> I also think sending a note to the dev lists could be a good way to make sure the most people see that list.
15:53:54 <JBoyer> And finally, I think I might know a couple people interested in helping with:
15:53:59 <JBoyer> #info Thoughts on sharing work on 2000482 (berick)
15:54:05 <JBoyer> #link https://bugs.launchpad.net/evergreen/+bug/2000482
15:54:05 <pinesol> Launchpad bug 2000482 in Evergreen "Angular 15 + Bootstrap 5 Upgrade" [Medium,In progress] - Assigned to Bill Erickson (berick)
15:54:20 <berick> good news is angular 12 -> 15 is pretty smooth
15:54:32 <berick> and number of npm package warnings dropped dramatically
15:54:52 <JBoyer> Is 15 an LTS? I thought they were an even / odd release project?
15:54:56 <sandbergja> berick++
15:55:07 <shulabear> berick++
15:55:09 <berick> bootstrap 5 is also not *too* bad, but will require some effort and a lot of poking around to find stuff that might need fixing
15:55:25 <sleary> I can help with the Bootstrap 5 classes
15:55:27 <JBoyer> Pfft, that's node. Never mind!
15:55:54 <berick> i'm going to put together a short list of stuff that I know needs address and will send to dev list
15:56:11 <berick> some classes just went away since they were essentially redundant
15:56:20 <berick> e.g. form-group can be grouped with rows and cols, etc.
15:56:43 <sleary> Bootstrap 5.2 handles text and background colors very differently; are we just going to 5.0 for now?
15:57:00 <collum> Moving opac to bootstrap 5, as well?
15:57:23 <berick> sleary: i think it's 5.0 that we can use at the moment. i can double check that, though
15:57:58 <berick> collum: i'm focusing on the staff client
15:58:19 <berick> boopac maintains its own deps, right?
15:58:28 <berick> upgrading one does not require we update the other?
15:59:20 <JBoyer> Yeah, they're separate. (the BPAC pulls in 3-5 node modules and that
15:59:22 <JBoyer> s about it)
15:59:36 * berick nods
16:00:07 <berick> more on this soon, though, and then i'll probably request some additional hands
16:00:21 <berick> thanks sleary, just saw your comment about helping
16:00:40 <berick> that's it unless there are questions for me
16:00:53 <sleary> berick++
16:00:54 <JBoyer> berick++ sleary++
16:01:14 <csharp_> berick++ sleary++
16:01:39 <shulabear> berick++ sleary++
16:01:44 <JBoyer> #topic Announcements
16:01:48 <JBoyer> #info Next Meeting is February 14th, 2023
16:01:54 <JBoyer> #endmeeting