15:02:43 #startmeeting 2023-01-10 - Developer Meeting 15:02:43 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 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 15:02:43 The meeting name has been set to '2023_01_10___developer_meeting' 15:02:48 #info Agenda at https://wiki.evergreen-ils.org/doku.php?id=dev:meetings:2023-01-10 15:02:55 #topic Introductions 15:03:03 #info JBoyer = Jason Boyer, EOLI 15:03:05 #info Dyrcona = Jason Stephenson, CWMARS 15:03:09 #info terranm = Terran McCanna, PINES 15:03:16 #info jeffdavis = Jeff Davis, BC Libraries Cooperative (Sitka) 15:03:18 #info jeff = Jeff Godin, Traverse Area District Library (TADL) 15:03:19 #info mmorgan = Michele Morgan, NOBLE 15:03:19 #info collum = Garry Collum, KCPL 15:03:26 #info jvwoolf= Jessica Woolford, Bibliomation 15:03:28 #info miker = Mike Rylander, EOLI 15:03:28 #info csharp = Chris Sharp, GPLS 15:03:28 #info shulabear = Shula Link, GCHRL in PINES 15:03:30 #info berick Bill Erickson, KCLS 15:03:31 #info rfrasur = Ruth Frasur, Evergreen Indiana 15:03:32 #info abneiman = Andrea Buntz Neiman, Equinox 15:03:42 #info sandbergja = Jane Sandberg 15:04:12 #info dmoore = Dan Moore, KCLS 15:04:31 #info GavinKCLS = Gavin Smith, KCLS 15:04:43 #info sleary = Stephanie Leary, EOLI 15:05:15 #info gmcharlt = Galen Charlton, EOLI 15:05:22 big turnout! hi everyone 15:05:30 Ok, anyone joining later feel free to #info up then. 15:05:36 #topic Action Items from Last Meeting 15:05:42 #info jeffdavis will gather more specific examples of recurring QA problems to present for discussion at the next dev meeting 15:05:47 #link https://wiki.evergreen-ils.org/doku.php?id=dev:meetings:common_qa_problems 15:06:16 And now the customary X minutes while we all go read that list, definitely not for the first time... 15:06:39 (more seriously, please go ahead jeffdavis if you'd like to add any color) 15:06:44 jihpringle++ 15:06:48 the important parts are in bold :) 15:06:48 jeffdavis++ 15:06:52 jeffdavis++ 15:07:02 jeffdavis++ jhpringle++ 15:07:12 jihpringle and others here pulled together that very extensive list of common types of QA problems 15:07:13 jeffdavis++ jhpringle++ 15:07:20 jihpringle++ 15:07:24 jihpringle++ 15:07:31 jdavis++ jhpringle++ 15:07:41 jihpringle++ # oops typo 15:07:44 jeffdavis++ jihpringle++ 15:07:48 jeffdavis++ jihpringle++ 15:07:55 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 jihpringle++ jeffdavis++ 15:08:18 jihpringle++ jeffdavis++ 15:08:25 Some of those will slow things down. 15:08:53 Testers could also use it during bug squashing weeks, people doing acceptance testing on paid development project, etc. 15:09:45 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 be it 100% test coverage or a super-detailed manual 15:10:17 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 so I'd be interested in some conversation about how developers can get all that info before embarking on an angularization 15:13:31 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 probably fall under JBoyer's "so long as it's not an intentional workflow change" 15:14:04 Who is "we?" 15:14:32 re: library settings - it seems like calls to get library settings in existing code shouldn't be too hard to identify. 15:14:53 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 #info tlittle = Tiffany Little, PINES 15:17:02 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 yeah, what jeffdavis said 15:17:58 This is going to be unpopular, but maybe we need stricter standards than "works for me" and X number of signoffs. 15:18:19 Dyrcona: what did you have in mind? 15:18:22 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 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 imo this is what we're already trying to do, it's nothing new 15:18:51 (and of course now things pick up. :) Please don't let me stop you!) 15:18:55 it's just difficult sometimes 15:19:00 so more emphasis is good 15:19:41 and having a record of usual gotchas helps focus 15:20:20 this is also where non-technical end users can be helpful - in terms of interface & workflow evalution 15:20:26 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 abneiman++ 15:21:17 Also, what abneiman said. We need more end users involved. 15:21:18 abneiman++ 15:22:52 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 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 Bugsquashing week is huge, but test systems are not real world. 15:23:25 yeah - I think an additional factor is committer time, and more automation can help around the edges 15:23:52 Numbers 6-7 are concrete things that fall squarely on the dev's shoulders, though, imo 15:24:41 tlittle++ 15:25:16 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 Well, hire someone. What we need is more resources. It's that simple. 15:26:08 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 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 it may be helpful to consider that this phase of EG dev won't last forever. 15:29:24 there's only so many non-Angular UI's 15:29:36 berick++ 15:29:38 And, when Google ends Angular? 15:29:47 berick++ 15:30:13 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 abneiman++ 15:30:27 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 what's the TEP Board? 15:31:02 dmoore: The Evergreen Project 15:31:03 The Evergreen Project oversight board 15:31:09 oh duh, thanks 15:31:35 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 dmoore: feel free to ask if there are other acronyms/jargon you don't understand 15:32:09 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 All part of the learning curve :) 15:32:18 part of the answer is new devs - both in general and the new devs group 15:32:40 also, here's hoping Angular stays healthy for quite some time yet. :-) 15:32:55 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 At least until all the interfaces get migrated? :) 15:33:27 :-D  it was starting to sound kind of familiar hahaha 15:33:46 what's kmlussier's old joke? "Have you finished Evergreen yet?" 15:33:54 hah 15:34:02 kmlussier++ 15:34:02 oh, yeah, I did yesterday - should have told you all 15:34:06 * gmcharlt runs 15:34:13 all of the above considered, the QA gotchas will be useful 15:34:22 kmlussier++ 15:34:30 jihpringle++ jeffdavis++ 15:34:38 yes, jihpringle++ jeffdavis++ I have already bookmarked this 15:34:45 Same here 15:34:47 Very useful! And I would like to do more with automated testing as well. 15:34:58 Agreed QA gotchas will be useful, there will always be change, we just need to manage it well 15:35:07 *just* 15:35:18 jihpringle++ jeffdavis++ 15:35:29 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 This list is a good outline of where we need to pay attention, and tests/standard can be built around it. 15:35:52 Which is 15:35:54 #info Bmagic to email the development list about a way to share common Evergreen tools with the community. 15:36:34 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 #action Bmagic to email the development list about a way to share common Evergreen tools with the community. 15:36:53 #info Dyrcona to review Lp 1901932 15:36:53 Launchpad bug 1901932 in Evergreen "Wish List - Enhanced Concerto dataset" [Wishlist,New] https://launchpad.net/bugs/1901932 15:37:07 How is that looking Dyrcona ? 15:37:19 Yeah, I didn't really look at it. 15:37:29 oh nice, I missed that there was a pullreq for that 15:37:43 Not the ideal time of year, do you want to check it out for next time? 15:38:00 I don't know. Things keep coming up. 15:38:19 I guess go ahead and give it to me for next time and we'll see what happens. 15:38:31 Can do. 15:38:40 #action Dyrcona to review Lp 1901932 15:38:40 Launchpad bug 1901932 in Evergreen "Wish List - Enhanced Concerto dataset" [Wishlist,New] https://launchpad.net/bugs/1901932 15:39:36 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 Ugh, look at me, forgetting to add something to the agenda myself, heh. 15:40:24 #topic Evergreen Release Updates 15:40:32 #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 JBoyer++ 15:41:06 Jboyer++ 15:41:18 JBoyer++ 15:41:29 JBoyer++ 15:41:31 JBoyer++ 15:41:33 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 JBoyer++ 15:41:49 JBoyer++ 15:42:01 JBoyer++ 15:42:07 JBoyer++ 15:42:45 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 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 And now for a big plate of copypasta 15:44:21 JBoyer++ 15:44:22 #topic Launchpad Status 15:44:26 #info Snapshot 15:44:30 #info Open Bugs - 2881 15:44:34 #info Pullrequests - 106 15:44:37 #info Signedoff - 41 15:44:41 #info Updates Since Last Meeting 15:44:44 v 15:44:47 #info Bugs Added - 41 15:44:51 #info Pullrequest tag Added - 29 15:44:55 #info Signedoff tag Added - 7 15:44:59 #info Fix Committed - 11 15:45:08 ok, 15:45:09 #topic New Business 15:45:17 #info Bugs tagged with cat-holdingseditor (mmorgan) 15:45:22 Let's see how this works 15:45:29 #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 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 Ah, probably busted. Well, the proper link is in the agenda if you'd like to follow along. :) 15:46:41 mmorgan, anything to add? 15:46:51 I just wanted to call attention to bugs related to the Angular holdings editor. 15:47:02 We opted to delay upgrading because of these bugs. Hoping to get more eyes to get many of them resolved. 15:47:20 Also, This kind of dovetails with the QA discussion. A lot of these bugs fall into that category. 15:47:54 jvwoolf has been concentrating on them as well 15:47:59 jvwoolf++ 15:48:10 mmorgan++ jvwoolf++ 15:48:10 Are these bugs mostly without branches/possible fixes so far? 15:48:42 jeffdavis: Yes, mostly without branches. A few have pullrequests 15:49:11 mmorgan: I've push patches to all of the ones that were showstoppers for us so far 15:49:20 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 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 Template issues, silent failure issues are big ones for us. 15:51:08 We're still sorting through and prioritizing 15:53:20 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 Or we can talk about it at a new dev meeting 15:53:30 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 And finally, I think I might know a couple people interested in helping with: 15:53:59 #info Thoughts on sharing work on 2000482 (berick) 15:54:05 #link https://bugs.launchpad.net/evergreen/+bug/2000482 15:54:05 Launchpad bug 2000482 in Evergreen "Angular 15 + Bootstrap 5 Upgrade" [Medium,In progress] - Assigned to Bill Erickson (berick) 15:54:20 good news is angular 12 -> 15 is pretty smooth 15:54:32 and number of npm package warnings dropped dramatically 15:54:52 Is 15 an LTS? I thought they were an even / odd release project? 15:54:56 berick++ 15:55:07 berick++ 15:55:09 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 I can help with the Bootstrap 5 classes 15:55:27 Pfft, that's node. Never mind! 15:55:54 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 some classes just went away since they were essentially redundant 15:56:20 e.g. form-group can be grouped with rows and cols, etc. 15:56:43 Bootstrap 5.2 handles text and background colors very differently; are we just going to 5.0 for now? 15:57:00 Moving opac to bootstrap 5, as well? 15:57:23 sleary: i think it's 5.0 that we can use at the moment. i can double check that, though 15:57:58 collum: i'm focusing on the staff client 15:58:19 boopac maintains its own deps, right? 15:58:28 upgrading one does not require we update the other? 15:59:20 Yeah, they're separate. (the BPAC pulls in 3-5 node modules and that 15:59:22 s about it) 15:59:36 * berick nods 16:00:07 more on this soon, though, and then i'll probably request some additional hands 16:00:21 thanks sleary, just saw your comment about helping 16:00:40 that's it unless there are questions for me 16:00:53 berick++ 16:00:54 berick++ sleary++ 16:01:14 berick++ sleary++ 16:01:39 berick++ sleary++ 16:01:44 #topic Announcements 16:01:48 #info Next Meeting is February 14th, 2023 16:01:54 #endmeeting