19:03:43 #startmeeting Development IRC meeting 9 November 2016 19:03:43 Meeting started Wed Nov 9 19:03:43 2016 UTC. The chair is kidclamp. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:03:43 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 19:03:43 The meeting name has been set to 'development_irc_meeting_9_november_2016' 19:04:02 #info Nick Clemens, ByWater Solutions 19:04:12 #info Chris Cormack, Catalyst IT 19:04:14 #info Tomas Cohen Arazi, Theke Solutions 19:04:26 /#topic introductions 19:04:33 #info Michael Kuhn, Admin Kuhn GmbH 19:04:46 #info Josef Moravec, Municipal Library Usti nad Orlici, Czech Republic 19:05:18 #info Nick Clemens, ByWater Solutions 19:06:00 okay 19:06:41 Anyone have anything? 19:07:14 just the manual stuff that people have already seen 19:07:43 #info rangi is working on updating the manual 19:07:45 #link http://translate.koha-community.org/manual/sphinx-branch/en/html/index.html 19:07:51 beat me to it 19:08:01 i am thinking of maybe shifting it to gitlab, so people can do merge requests easier .. i want the barrier as low as possible, it doesnt need to have near as much stringent QA as the code 19:08:22 +1 19:08:50 That's nice! Read the docs is the right choice 19:08:53 and with the .rst we dont need specific editors, it is human readable .. so that is much easier 19:09:18 ... hi btw :) 19:09:35 we can get francesca (one of the koha junior devs here) to do us a koha css theme 19:09:41 thats all i have 19:09:55 cool, next topic if no one else has announcements? 19:10:03 ah yes 19:10:07 I put it at the bottom 19:10:13 but it is really an announcement 19:10:22 go for it 19:10:24 and I won't be aroudn at the end of the meeting 19:10:42 The community jenkins server started to malfunction a couple weeks ago 19:10:56 i spent a lot of time trying to recover it 19:11:05 only to notice a clean install would just work 19:11:25 as the Biblibre guy in charge of the server is AFK for a couple weeks 19:11:38 I set a temporary (?) server on my own 19:11:47 http://jenkins.theke.io 19:12:06 in which I set the 'master' branch tasks so we have information for the next release 19:12:06 #info tcohen set a temporary jenkins server until community jenkins is back up 19:12:15 #link http://jenkins.theke.io 19:12:36 we could just keep it, provided Laurent/Biblibre agrees and we just change the DNS 19:12:51 but I'm evaluating another posibilities 19:12:54 for CI 19:13:12 * Travis-CI * Buildbot * GoCD 19:13:20 they are all valid options 19:13:30 i'm trying to have time to make my mind about them 19:13:41 do you want to talk with laurent and/or send an emial to devel tcohen? 19:13:43 the plan is to somehow containerize the tasks 19:14:00 i think evaluating others is a good idea 19:14:06 so we don't depend on the underlying OS (from the nodes) 19:14:09 jenkins works .. but it has always been fragile 19:14:29 and I also plan to re-use the kohadevbox ansible playbook 19:14:39 for generating such environments/containers 19:14:54 yeah, jenkins is fragile, too much 19:15:07 I just had to downgrade the clover plugin 19:15:12 they don't fix it... 19:15:14 anyway 19:15:48 #info If anyone has strong opinions on CI tools, please write to tcohen about it 19:16:13 #info substituting jenkins for something else is a really possible option 19:17:04 #action tcohen will investigate options for jenkins and coordinate with laurent @ BibLibre 19:17:18 okay, next topic 19:17:18 i heard next topic was a tricky one... 19:17:38 #topic Review of coding guidelines 19:17:53 #info Proposal - REST: Ban id fields in POST/PUT/PATCH bodies 19:18:05 I am not sure who put this proposal, anyone? 19:18:14 not me 19:18:27 Martin / Kyle / Jonathan /Me? 19:18:32 we had that discussion 19:18:48 the RESTful services design is not a closed discussion 19:19:01 want to add your thoughts? we can postpone vote until more people are around too 19:19:07 #info Thomas Dukleth, Agogme, New York City 19:19:24 ok, my thought is that we shouldn't include the ID on the object we SEND 19:19:55 when you update/replace an object you usually hit an endpoint that looks like 19:20:05 /endpoint/{ id } 19:20:26 and send the new object (PUT) or attributes (PATCH) on the request body 19:20:42 #info bag Brendan Gallagher 19:20:43 it is straightforward to just forbid the id to be part of the body 19:20:49 on the other hand 19:20:53 if we allow it 19:20:59 we need to add checks to it 19:21:11 so people don't change the object id! 19:21:28 this is a usual scenario and use case 19:21:42 I thought the object id is immutable 19:21:46 we all agreed it was a good idea, adhering to that design style 19:21:55 #info Jiri Kozlovsky, Brno, Czech Republic 19:22:10 jirislav: it is, but when you code it, you need to take care of that immutability 19:22:23 tcohen: it sounds like a good rule to me 19:22:29 the tradeoff 19:22:37 (otherwise there wouldn't be a dsicussion at all) 19:22:39 and you sent it out on koha-devel - doesn't look like much discussion has come up 19:22:46 is that when you GET an object 19:22:55 it could include the id 19:23:04 yeah 19:23:29 we just wanted to have it formally approved on a meeting 19:23:36 it is the usual way 19:23:37 right, you do need to get the id from somewhere 19:23:56 when you hit /endpoint 19:24:01 you get the objects list 19:24:04 they have the id 19:24:15 I say we can vote and add it, and revisit if needed, but seems reasonable 19:24:30 yeah, we can always change rules :) 19:25:01 lemme see if I do this right ;-) 19:25:35 #startvote Should we add a coding guideline to ban id fields in post/put/patch bodies for the rest api? 19:25:35 Begin voting on: Should we add a coding guideline to ban id fields in post/put/patch bodies for the rest api? Valid vote options are Yes, No. 19:25:35 Vote using '#vote OPTION'. Only your last vote counts. 19:25:46 #vote yes 19:25:50 #vote yes 19:25:52 #vote yes 19:26:04 #vote yes 19:26:15 #vote yes 19:26:18 #vote yes 19:26:25 #vote yes 19:26:39 last call 19:26:46 #endvote 19:26:46 Voted on "Should we add a coding guideline to ban id fields in post/put/patch bodies for the rest api?" Results are 19:27:05 [off] wish our elections went like that 19:27:13 heh 19:27:18 [off] :P 19:27:27 [off] :-P 19:27:31 it didn't list results, but passed 19:27:55 #info vote passed unanimously with 7 yes 19:27:56 :-) 19:28:09 #topic Progress on next release (16.11) 19:28:12 bag? 19:28:12 bag is, like, in Seattle currently 19:28:33 kyle has shared the release notes 19:28:47 http://jenkins.theke.io/job/Koha_Master_D8/ 19:28:53 looking for comments on it - but no rush - we still have a little bit of time 19:29:10 besides that we’re moving along 19:29:13 tomorrow is second draft of release notes (according to deadlines) 19:29:27 Jonathan has been working hard to fix failing tests / bugs 19:29:39 yeah - that may not be nessicary since we haven’t had any feedback 19:29:50 but when I say that - I am not sure there is need for feedback yet 19:29:52 Joubu++ 19:29:59 yes Joubu++ 19:30:08 those patches we’ll push 19:30:40 that’s about it from me kidclamp 19:30:43 #info Joubu working on failing tests 19:30:49 we have a weird dependency situation 19:30:57 for smart people to take a look 19:31:04 Undefined subroutine &C4::Circulation::GetItem 19:31:07 #info bag says things are going well - kyle shared draft 1 of release notes 19:31:14 we get those on several tests 19:31:40 bug 17591 was the wrong attempt to hide the issue (but solve the side effects) 19:31:41 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17591 major, P5 - low, ---, tomascohen, Failed QA , Use fully qualified C4::Items function names in C4::Circulation 19:31:51 yeah, I have seen that happen once or twice on a customer server randomly 19:31:56 hmmm 19:32:12 i can try to get time to take a look, but can't promise it 19:32:24 Joubu posted two poc I think too 19:32:28 bug 17599 19:32:30 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17599 enhancement, P5 - low, ---, jonathan.druart, ASSIGNED , Move C4::Circulation::GetIssuingRule to Koha::IssuingRules->get_effective_issuing_rule 19:32:35 bug 17600 19:32:36 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17600 enhancement, P5 - low, ---, jonathan.druart, ASSIGNED , Standardize the EXPORT 19:32:55 we didn't find the root cause 19:33:34 #info odd dependency situation causing error: Undefined subroutine &C4::Circulation::GetItem 19:33:43 #info tcohen, joubu and other investigating 19:34:22 I think we can move into general dev discussion 19:34:35 item-level_itypes set but no itemtype set for item 19:34:45 lots of tests are raising that waring 19:34:51 because of a patch I wrote :-D 19:35:07 so you will fix that :-D 19:35:14 shame on me, I wrote several patches for bugs that fix that 19:35:59 #info Developer documentation (POD) needs to be a QA issue. 19:36:32 #vote yes 19:36:37 anyone have anything to add on that? 19:36:39 hah 19:36:42 I agree 19:37:23 shoudl it be coding guidelines? 19:37:36 yeah, using devel::cover 19:37:44 we can test POD coverage 19:38:00 or 19:38:02 we could patch the qa script 19:38:04 http://search.cpan.org/~neilb/Test-Pod-Coverage-1.10/lib/Test/Pod/Coverage.pm 19:38:04 Yes, if you want people to do it put it in the guidelines. 19:38:38 yeah , I think add it to qa script and guidelines 19:38:38 if coverage decreases, tests fail .. something like that 19:38:42 yep 19:39:55 #action POD coverage should be in qa script and a coding guideline added 19:40:04 someone want to volunteer? 19:40:51 i think absent people gain the right to be volunteered 19:40:57 heh 19:40:59 heh 19:41:05 I'd volunteer Joubu, who mainly maintains the qa scripts 19:41:23 #action Joubu (has been) volunteered to update qa script for pod 19:41:43 next up is 19:41:49 #info Highlight easy to test bugs for beginners (follow-up) 19:42:30 I had brought this up initially, we discussed adding a way to mark bugs as sndbox testable 19:42:34 etxc 19:42:37 etc 19:42:51 but I think we ended at using Academy to tag low hanging fruit 19:43:01 bugs that depend on bug 14598 19:43:02 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=14598 major, P5 - low, ---, tomascohen, Pushed to Master , itemtype is not set on statistics by C4::Circulation::AddReturn 19:43:54 kidclamp: tagging Academy now is really helpful for me too, any that dont get done before then, we can do at the academy in january 19:44:13 there is the wiki page i made a while ago too 19:44:17 that needs to be updated 19:44:26 lemme find it 19:44:36 https://wiki.koha-community.org/wiki/I_want_to_help 19:44:40 #action please tag simple bugs with 'Academy' tag now and year round to help move them along and get people involved 19:44:49 #link https://wiki.koha-community.org/wiki/I_want_to_help 19:45:08 we've done the OMGWTFBBQ! one already 19:45:08 :) 19:45:13 ranig++ 19:45:16 rangi++ 19:45:52 keeping that page up to date would be good i think, then we can point people at it 19:46:43 #action kidclamp will update the wiki page with academy tag info and link 19:47:12 * kidclamp feels less bad about volunteering Joubu now 19:47:28 next point 19:47:32 hi all 19:47:40 #info Bootstrap 3 upgrade (Bug 16239) and relating UI changes 19:47:41 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16239 enhancement, P5 - low, ---, josef.moravec, Failed QA , Upgrade Bootstrap in the staff client 19:47:45 I am new so kind of just lurking at this point 19:47:50 with ByWater 19:48:00 caboose_: we are in a meeting at the moment so a good time to lurk 19:48:07 cool! 19:48:16 have to leave 19:48:19 cya! 19:48:21 bye tcohen 19:48:26 picking Manuel! 19:48:35 I started to work on upgrading bootstrap 19:48:36 ahh yes, we do need to upgrade bootstrap .. i tried that with the academy 2 years ago, it was too hard/big for the 3 days we had 19:48:43 #info caboose ByWaterSolutions 19:48:45 welcome caboose_ - it’s the koha-dev meeting currently 19:48:55 rangi: as you say ;) 19:49:18 ah...sorry I got an email invite to attend...but I think I was invited accidentally! 19:49:19 i have patches and oleonard tested today 19:49:34 all are welcome caboose, the more the merrier 19:50:03 anything you need josef_moravec? more testing? 19:50:07 caboose_: everyone is welcome :) 19:50:12 nice 19:50:20 yes more testing of course... 19:50:44 i would like to make it ready when next release cycle starts 19:51:05 because i think it's almost imposible to push it without mistakes... 19:51:24 #info please test bug 16239 to get it ready for early next release cycle to encourage more testing/debugging 19:51:44 so would like to have enough time to polish it for 17.05 19:51:51 agreed - big bugs often go that way 19:52:02 josef_moravec: i agree, i think push early and tidy it .. too big to get it right first time 19:52:13 any highlights of big things it gains us? 19:52:39 after this is pushed i would like to investigate to use bootstrap more... 19:52:59 and get rid of yui library hopefully... 19:53:06 I think kyle played with it in his react patches too - bootstrap tables over datatables 19:53:22 i thought we had got rid of all yui stuff already? 19:53:38 we use grids from yui 19:53:45 ahhh 19:54:13 and in rancor modals we use gridos from bootstrap 19:54:38 sounds good, going to keep us moving 19:54:48 #info REST API - how to solve "conflicts" in endpoints? For example bugs 17007 and 17371 19:54:49 sorry, I am late 19:54:57 heh - throwing me to the wolves 19:55:19 #info Katrin Fischer, BSZ, Germany 19:55:23 not intentionally :) 19:55:28 grids, fixed sizes :( 19:55:35 these two bugs solves the similer problems, but in a bit different ways... 19:55:42 i've been leaving the REST stuff to others so no opinion on that 19:55:50 thd: exactly 19:56:18 yeah, I think we don't have the devs most involved in that here today 19:56:27 we just need to decide which one should pick... 19:56:36 kidclamp: it looks like... 19:56:38 bug 17007 19:56:39 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17007 enhancement, P3, ---, mail, Needs Signoff , REST API: add route to get biblio 19:56:42 bug 17371 19:56:43 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17371 enhancement, P5 - low, ---, koha-bugs, Needs Signoff , REST API: add CRUD for biblios 19:56:48 thanks cait 19:56:59 or to resolve future conflicts too josef_moravec 19:57:11 kidclamp: it would be useful 19:57:40 I'm willing to test it.... we really need good REST API 19:58:27 we maybe need more detailed guidelines for API... 19:58:49 tcohen and Joubu proposed a standard at hackfest 19:58:53 for CRUD there is nice example of /cities endpoint 19:58:57 kidclamp: 19:59:08 exactly 19:59:19 yeah cities is the example 19:59:33 but it's an example when all is simple... 19:59:40 which is not always true... 20:00:22 as you can see with these too bugs... 20:00:28 I don't think there can be a blanket rule though, more when conflicts arise they go into discussion/ out on mailing list/ vote at meeting 20:00:50 kidclamp: i agree 20:01:16 maybe just more oftem brings these thing to dev meetings... 20:01:32 and vote for one or another, as you say 20:01:59 anyone have differing opinion? 20:01:59 it's all from me now ;) 20:02:10 i think having some guidelines and updating the wiki pages for the api dev would be good 20:02:48 keep new endpoints up to date in wiki too to avoid conflict? 20:03:11 hm not sure, might get out of sync too fast 20:03:16 but if someone wants to try, sure 20:03:20 #link https://wiki.koha-community.org/wiki/Rest_Api_HowTo 20:03:56 I think we need input from those who have been working on it too 20:03:59 kidclamp: as proposals? because there are many endpoint in patches in bugzilla, but just few in master code... 20:04:10 well, i think bug 17007 and bug 17371 should be merged - they aren't that different 20:04:12 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17007 enhancement, P3, ---, mail, Needs Signoff , REST API: add route to get biblio 20:04:12 kidclamp: sure 20:04:13 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17371 enhancement, P5 - low, ---, koha-bugs, Needs Signoff , REST API: add CRUD for biblios 20:04:18 yeah, just a thought for proposals 20:04:40 jirislav: do you try it? 20:05:57 #info REST api conflicts should be brough up in bugzilla/posted to koha-devel/discussed at dev meeting 20:06:43 #action Someone involved in REST api should update 'how to' wiki and note guidelines on conflicts and cities endpoint as base example 20:06:43 i could, but it seems like 17007 is in the subset of 17371, so it could eventually be marked as duplicate (17007) 20:07:23 yeah, 17371 is all crud, 17001 is just get? 20:07:37 kidclamp: right 20:07:57 #info 17007 seems to be a subset of 17371 and should be merged 20:08:09 want to comment on bugs jirislav? 20:08:22 sure thing 20:08:29 cool, next topic 20:08:37 #topic Updates from the QA team 20:08:44 take it away cait :-) 20:09:39 oh 20:09:54 there are some problems with failing tests 20:10:27 so please sign off on those and generally focus on bug fixes for a bit :) 20:10:54 #info please focus on bug fixes for the next release 20:10:59 i hope i don't repeat something already said 20:11:08 testing master, testing updates etc. 20:11:47 I have the list of critical and blocker bugs linked from the agenda 20:12:00 #link https://bugs.koha-community.org/bugzilla3/buglist.cgi?cmdtype=dorem&list_id=181688&namedcmd=FIXME%20NOW&remaction=run&sharer_id=1 List of critical and blocker bugs 20:12:00 #link https://bugs.koha-community.org/bugzilla3/buglist.cgi?cmdtype=dorem&remaction=run&namedcmd=FIXME%20NOW&sharer_id=1 20:12:04 :) 20:12:14 ah, link name :-) 20:12:40 2 blockers especially - one breaks the OPAC if you allow renewals 20:13:27 bug 17522 20:13:28 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=17522 blocker, P5 - low, ---, kyle, In Discussion , opac-user.pl gives error of OpacRenewalAllowed is enabled 20:13:34 bug 16430 20:13:35 04Bug http://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=16430 blocker, P5 - low, ---, gmcharlt, ASSIGNED , Mainpage.pl dies if library is not set 20:13:36 ah yeah that one is nasty 20:14:02 so yeah, lots to do to make this release shine - please help :) 20:14:37 hi all 20:14:39 #info review critical bugs 17522 and 16340 especially :-) 20:14:40 that's all from me 20:14:53 tcohen already mentioned CI updates 20:15:01 jransom: hi ;) 20:15:10 #topic Koha and Qvarn - http://qvarn.org/ 20:15:14 thanks cait! 20:15:53 right, so have people had a chance to have a quick look at Qvarn? 20:16:32 very briefly looked at site 20:17:09 so basically 20:17:22 Koha stores a lot of sensitive information 20:17:32 about people, and their reading habits 20:18:02 the EU has a new act General Data Protection Regulation (which is in transition until the end of the next year) 20:18:24 says that anyone deploying systems has to take care that none of this could leak 20:18:31 (also its just good to do that in general) 20:18:53 Qvan can act as a data store and IDP 20:19:11 it has restful https json api 20:19:43 so it would allow us to store patron data in qvarn, instead of in raw tables 20:20:11 this is all just stuff to think about at this point 20:20:22 but I do think it is worth considering 20:20:52 so, things like borrowers/issues/statistics would move out of native db? what would it mean for reporting? 20:21:35 okay, so if we decide to use qvarn, what would be left in koha database? i mean .. all of the information related to user would have to be accessed via rest api instead of just mysql socket? 20:21:59 Is there a Qvarn process for particular users to have data removed as should be required by law in EU or even alter and augment it? 20:22:01 jirislav: yup 20:22:02 wouldn't that be a preformance issue? 20:22:09 potentially 20:22:13 or it might be faster 20:22:47 that's right, if it's scaled properly, it could be even faster than SQL 20:22:48 i think you can keep what can't be linked to a person - if it's anonymous? 20:22:49 hi 20:22:49 hola, wizzyrea 20:22:58 yep 20:23:01 #info Liz Rea, Catalyst NZ 20:23:33 cait: this is just statistics & configuration .. or anything more? 20:23:35 like i said, nothing to decide now, but something to research and think about, even if we dont go with qvarn we need to work on making koha more secure around private data 20:23:54 liw works at qvarnlabs and would be happy to discuss more i am sure 20:24:06 I think it is interesting 20:24:17 it all sounds interesting.... 20:24:19 i like the IDP part of it too 20:25:15 jirislav: not sure exactly, storing a borrowrnumber alone might be ok 20:25:17 ? 20:25:17 rangi? 20:25:18 I LIKE ALMONDS! HAVE SOME NUTS! 20:25:19 maybe liw wants to send out some basic info to listserv, or you rangi? 20:25:45 it would be better to use solution like this than write something own... 20:25:48 wahanui: botsnack 20:25:48 :) 20:25:58 kidclamp: yep one of us will 20:26:15 There should always be some means to change or remove data held in accordance with legal requirements and library policy even if pseudo-anonymised. 20:26:18 #action rangi or liw will post some qvarn info to listservs 20:26:42 cait: oh, interesting point of view .. borrowernumber actually isn't an identifier which can be treated as an anonymous person 20:26:50 *is an identifier .. 20:27:33 approaching 90 minutes I think we can keep that discussion going outside of meeting 20:27:42 which means qvarn would only store personal data like name, surname etc ... with connection to bornumber 20:28:16 Behaviour generally unmasks anonymisation. 20:28:35 lets move on :) 20:28:38 #topic Set time of next meeting 20:28:58 theres hours of discussion about privacy :) we can have that another time :) 20:28:59 do we have a two times set now from survey? 20:29:14 heh, it's good discussion to have 20:30:31 it looks like 13 UTC was most popular? 20:31:03 Very much better than the present time. 20:31:20 10 and 19 where the last 2 meetings 20:31:23 hm were 20:31:39 13 works for me 20:31:57 hm today is 14 20:32:05 ah sorry, no, that's next general 20:32:18 * cait will be quiet 20:32:42 14 is problematic for me where 13 is less so. 20:32:49 no worries, two weeks out is day after release? 20:32:54 just fyi 20:33:02 ill never be at a 13 UTC one 20:33:04 if we want to meet then 20:33:08 heh 20:33:13 not that that should stop you 20:33:27 (its 2am nz time) 20:33:38 so when we stage the revolt, it should be at 13UTC? 20:34:12 I much prefer morning UTC time. 20:34:55 alright I am suggesting Dec 14 - 13 UTC? 20:35:55 ok for me 20:36:03 #info Next meeting December 14th, 13 UTC 20:36:30 * kidclamp takes that opportunity 20:36:47 #endmeeting