<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body>A new request with request id 7907 has been created by koha-devel-request@lists.koha-community.org. Short info on the request is : <br><br>Title : Koha-devel Digest, Vol 201, Issue 16<br>Category : <br>Description : <div>Send Koha-devel mailing list submissions to<br>    koha-devel@lists.koha-community.org<br><br>To subscribe or unsubscribe via the World Wide Web, visit<br>    https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel<br>or, via email, send a message with subject or body 'help' to<br>    koha-devel-request@lists.koha-community.org<br><br>You can reach the person managing the list at<br>    koha-devel-owner@lists.koha-community.org<br><br>When replying, please edit your Subject line so it is more specific<br>than "Re: Contents of Koha-devel digest..."<br><br><br>Today's Topics:<br><br>   1. Re: Mojolicious controllers for Koha plugins<br>      (dcook@prosentient.com.au)<br><br><br>----------------------------------------------------------------------<br><br>Message: 1<br>Date: Wed, 17 Aug 2022 16:29:23 +1000<br>From: <dcook@prosentient.com.au><br>To: "'Kyle Hall'" <kyle@bywatersolutions.com><br>Cc: <koha-devel@lists.koha-community.org>, "'Tomas Cohen Arazi'"<br>    <tomascohen@theke.io>, "'Renvoize, Martin'"<br>    <martin.renvoize@ptfs-europe.com><br>Subject: Re: [Koha-devel] Mojolicious controllers for Koha plugins<br>Message-ID: <02db01d8b202$bcd42c90$367c85b0$@prosentient.com.au><br>Content-Type: text/plain; charset="utf-8"<br><br>Thanks, Kyle!<br><br> <br><br>I’ll look at updating the patches from Bug 28325 and post new work for this at https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=31380  <br><br> <br><br>David Cook<br><br>Senior Software Engineer<br><br>Prosentient Systems<br><br>Suite 7.03<br><br>6a Glen St<br><br>Milsons Point NSW 2061<br><br>Australia<br><br> <br><br>Office: 02 9212 0899<br><br>Online: 02 8005 0595<br><br> <br><br>From: Kyle Hall <kyle@bywatersolutions.com> <br>Sent: Tuesday, 16 August 2022 9:27 PM<br>To: dcook@prosentient.com.au<br>Cc: koha-devel@lists.koha-community.org; Tomas Cohen Arazi <tomascohen@theke.io>; Renvoize, Martin <martin.renvoize@ptfs-europe.com><br>Subject: Re: Mojolicious controllers for Koha plugins<br><br> <br><br>That sounds great to me David! I'll 100% assist you with testing and qa!<br><br> <br><br>On Tue, Aug 16, 2022 at 3:42 AM <dcook@prosentient.com.au <mailto:dcook@prosentient.com.au> > wrote:<br><br>Hi all,<br><br> <br><br>I was just writing a Koha plugin to do a big data export, but I realize that it’s probably going to timeout, because Koha plugins run under Plack::App::CGIBin which buffers the entire response before it returns it to Apache to return to the client browser. It’s the reason Koha uses CGI instead of Plack for export.pl <http://export.pl> <br><br> <br><br>While we can use Mojolicious controllers with Koha plugins when it adds REST API endpoints, we can’t do that for Koha plugins themselves. <br><br> <br><br>This is a topic that I’ve touched on before, and there are challenges when it comes to Authentication and Templates, but they’re solvable challenges:<br><br>https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=26791 “Build Mojolicious controller replacement for export.pl <http://export.pl> ”<br><br>https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=28325 “Build Mojolicious controller replacement for tools-home.pl <http://tools-home.pl> ”<br><br> <br><br>We could just start by supporting “tool” and “report” with the Mojolicious controllers, and that would just mean plugins-home.pl <http://plugins-home.pl>  detecting that there is Mojolicious support in that plugin, and then building a URL to “/staff/plugins/run” instead of “/cgi-bin/koha/plugins/run.pl <http://run.pl> ” for instance.<br><br> <br><br>That Mojolicious controller would really just need to check authentication/authorization, which is very doable with a fairly minor refactor. <br><br> <br><br>If I could get the support of just a couple other people, I’d be happy to do a lot of the authoring (or testing or whatever needs to be done just to get it done).<br><br> <br><br>By using Mojolicious controllers for select plugins, we’d also be able to shake out any issues without causing any regressions in core Koha, and then hopefully be able to start refactoring core Koha too…<br><br> <br><br>Anyways, please give it some consideration, and ask me if you have any questions. <br><br> <br><br>I’ll be looking more into export problems tomorrow, so I might end up going a different route for the sake of time in the short-term, but I think we should still be looking at shifting away from CGI and Plack::App::CGIBin due to their limitations…<br><br> <br><br>David Cook<br><br>Senior Software Engineer<br><br>Prosentient Systems<br><br>Suite 7.03<br><br>6a Glen St<br><br>Milsons Point NSW 2061<br><br>Australia<br><br> <br><br>Office: 02 9212 0899<br><br>Online: 02 8005 0595<br><br> <br><br><br><br>-- <br><br>Kyle M. Hall<br><br>Loose Cannon, ByWater Solutions<br><br> <mailto:kyle@bywatersolutions.com> kyle@bywatersolutions.com<br> <http://bywatersolutions.com/> https://bywatersolutions.com<br><br> <http://bywatersolutions.com/what-is-koha/> What is Koha?<br><br>-------------- next part --------------<br>An HTML attachment was scrubbed...<br>URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20220817/726b7bd7/attachment-0001.htm><br><br>------------------------------<br><br>Subject: Digest Footer<br><br>_______________________________________________<br>Koha-devel mailing list<br>Koha-devel@lists.koha-community.org<br>https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel<br>website : https://www.koha-community.org/<br>git : https://git.koha-community.org/<br>bugs : https://bugs.koha-community.org/<br><br><br>------------------------------<br><br>End of Koha-devel Digest, Vol 201, Issue 16<br>*******************************************<br></div><br><br>NOTE: You are receiving this mail because, the Requester/Technician wanted you to get notified on this request creation.<br></body></html>