[Koha-devel] Vue improvements/refactorings

Jonathan Druart jonathan.druart at bugs.koha-community.org
Wed Feb 22 07:43:04 CET 2023


It's a lot of changes, that's why they are split into several bug reports
and patches.
Is it always either too big or too small?

> I’m not sure what to be looking for from a QA perspective
Does it look better after the patches than before? Is it still working? If
so they should get in.

> I’d probably do things a bit differently
There are always different ways. Here it's mine, feel free to propose
alternatives.

> creating a design that maximizes reusability and eases maintenance
That's *exactly* the goal of these patches. And more work is in the pipe so
it cannot wait too long.

Le mer. 22 févr. 2023 à 06:14, David Cook <dcook at prosentient.com.au> a
écrit :

> I think that the number of bug reports and commits is a bit intimidating.
> Unless there is a compelling reason to the contrary, I think squashing a
> lot of these commits would be a good idea.
>
>
>
> Also, I’m doing a diff on
> https://gitlab.com/joubu/Koha/-/commits/bug_32991 and the stats are: 76
> files changed, 929 insertions(+), 1823 deletions(-). That’s a lot of
> changes to review.
>
>
>
> Looking through the changed files… I’d say targeting changes that affect
> non-ERM functionality should take highest priority – like Bug 32981 and Bug
> 32923 – since more people have the skills to work on them. Then maybe all
> the ERM changes can be tested at 1 time all together, although that’s a bit
> messy in terms of attaching signed off patches…
>
>
>
> Looking at the Vue components… I’m not sure what to be looking for from a
> QA perspective, since we don’t have any rules around Vue.js specifically.
> For Javascript related things, things look OK in the couple of *.vue files
> I’ve reviewed, but I’d need to double-check them to know for sure.
>
>
>
> Looking through Breadcrumb.vue and Main.vue, I’d probably do things a bit
> differently for readability and generalizability/reusability. I don’t know
> if that should be a blocker or not at this stage though…
>
>
>
> Personally, I don’t have any investment in the ERM work, but I’m very
> interested in the Vue.js work. I’d love to make sure we’re creating a
> design that maximizes reusability and eases maintenance.
>
>
>
> My koha-testing-docker is broken at the moment, so I’ll look at fixing
> that up, and then I’ll try to look at this more.
>
>
>
> I am willing to help, although my schedule is fairly full too. I’m trying
> to do more Vue.js on other projects, so hopefully I can bring that
> experience back to Koha and help more…
>
>
>
> David Cook
>
> Senior Software Engineer
>
> Prosentient Systems
>
> Suite 7.03
>
> 6a Glen St
>
> Milsons Point NSW 2061
>
> Australia
>
>
>
> Office: 02 9212 0899
>
> Online: 02 8005 0595
>
>
>
> *From:* Koha-devel <koha-devel-bounces at lists.koha-community.org> *On
> Behalf Of *Jonathan Druart
> *Sent:* Wednesday, 22 February 2023 1:57 AM
> *To:* koha-devel <koha-devel at lists.koha-community.org>
> *Subject:* Re: [Koha-devel] Vue improvements/refactorings
>
>
>
> A quick update.
>
>
>
> There are several bug reports, and the tree is at
> https://gitlab.com/joubu/Koha/-/commits/bug_32991
>
> It's ~40 commits on top of master, a lot of architecture changes in the
> erm/vue files.
>
> It would be great to have them pushed ASAP, they are blocking other works.
>
> Most important is that people will read, learn and copy the code that is
> in master, which will be obsolete (and generate conflicts) one this tree
> will be pushed.
>
>
>
> How can we coordinate to make it move forward? Who is willing to help here?
>
> Cheers,
>
> Jonathan
>
>
>
> Le mer. 15 févr. 2023 à 14:09, Jonathan Druart <
> jonathan.druart at bugs.koha-community.org> a écrit :
>
> Hi,
>
>
>
> Pedro and I have been working on improving the way we request the Koha
> REST API from Vue components.
>
> We ended up with the implementation that is available on the following
> remote branch:
>
> https://gitlab.com/joubu/Koha/-/commits/bug_32925
>
>
>
> It contains the patches from the following bug reports:
>
> *Bug 32898*
> <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32898> -
> Cypress tests are failing
>
> *Bug 32923*
> <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32923> -
> x-koha-embed must a header of collectionFormat csv
>
> *Bug 32806*
> <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32806> - Some
> Vue files need to be moved for better reusability
>
> *Bug 32939*
> <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32939> - Have
> generic fetch functions in vue modules
>
> *Bug 32925*
> <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32925> -
> Display loading info when a form is submitted
>
>
>
> First, make the tests pass (32898)! We forgot to include the cypress test
> in the jenkins pipeline and we missed regressions! There have been
> regressions on the REST API specs, that are fixed on 32923.
>
> We noticed that the code we provided for the ERM module was not flexible
> enough and too ERM oriented. Some directories have been moved and code
> split a bit to make it more reusable for other modules (32806).
>
> Finally there are 32939 that introduce generic fetch functions, to have
> all the error handling (catch exceptions and display the error on the UI)
> in a single place. On top of that we added a "loading" message when a form
> (POST/PUT/DELETE) is submitted and, thanks to the previous moves, it's only
> a couple of lines of code!
>
>
>
> All this must be considered a base for future Vue enhancements, and I
> would like people interested in the Vue work to have a look at it.
>
>
>
> Cheers,
>
> Jonathan
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.koha-community.org/pipermail/koha-devel/attachments/20230222/94da1bb3/attachment-0001.htm>


More information about the Koha-devel mailing list