Table of Contents

VuFind® Community Call Minutes: December 5, 2023

Attending: Chris Hallberg, Demian Katz, Claas Kazzer, Maccabee Levine, Ere Maijala, Susan Turkel, Thomas Wagener

Agenda

1. Development Planning

Newsletter Highlights

The November, 2023 Newsletter was discussed.

Release 9.1.1 Update

Bug fixes have continued to come in, so Demian is waiting for things to settle down a little more before scheduling the release date for 9.1.1. Some time early in 2024 seems likely. (As of this writing, there is one bug fix PR currently in review).

Pull Request / JIRA Ticket Review (release 10.0)

The following 31 pull requests are scheduled for inclusion in release 10:

Architectural Enhancements
New Features
Smaller Features/Enhancements/Fixes
Specialized PRs Requiring Input from Creators
Next Steps

We'll talk about the 42 open JIRA tickets pinned to the 10.0 release at a future meeting; first we should focus on triaging the pull requests.

2. Technical Discussion: Theme Development Next Steps / Collaboration

Ere explained his work so far on pull request #3222. He has built a bootstrap5 theme which uses the bootstrap3 templates and a compatibility layer to allow us to move forward without having to do a huge amount of work (and to continue maintaining the bootstrap3 theme, at least in the short term). This should also be compatible with the existing bootprint3/sandal themes.

He is currently working on testing integrating Finna's local theme with this work to identify other issues that need to be addressed. He encourages others to try this out with their local custom themes and report any problems they encounter. If you find problems and can share example code with him, this would be helpful. Thomas volunteered to help test this.

The compatibility layer consists of LESS/SCSS to reconcile styles, and Javascript code that makes on-the-fly changes to the HTML to address some changes. Ere plans to open PRs to begin introducing some of these changes directly into the bootstrap3 theme where updates will not break things.

Other issues:

Ere also noted that this work is not intended to replace any of our long-term plans – using more components, etc. – but it is simply intended to get us up-to-date on technology as an interim step. He welcomes all feedback, including negative comments! (The goal here is to make migration as easy as possible, but this comes with some trade-offs).

Another important task is to document the migration process to help others with upgrades.

Maccabee suggested running WAVE or other accessibility testing tools against the new branch to make sure nothing has regressed. Ere suggested focusing on Javascript code that sets accessibility-related attributes, since this is an area that has been problematic in the past. Fixes in Bootstrap5 may offer opportunities to simplify and eliminate workarounds. He has added a TODO checkbox to capture this in the PR. Claas will talk to his team to see if they can find time to do some testing of this PR with an eye to accessibility.

Chris asked about jQuery removal; Bootstrap 5 opens the possibility of eliminating jQuery (it includes its own compatibility layer, though it is imperfect), but more work is definitely needed (particularly in the lightbox) before this is going to be possible.

Chris volunteered to look into JS issues; Maccabee volunteered to look at making some progress on the TODOs in PR #3039.

3. Open Q&A / Other Topics?

Maccabee asked Thomas about the implications of using pull request #3069 in practice – will this lead to too many user requests for very specific changes that will create complexity? Thomas suggested at least two solutions: either do not turn the setting on, or communicate with users ahead of time to set reasonable expectations. Ere noted that this will help answer two kinds of questions – “why is this here?” and “why is this not where I want it?” The first answer can lead to straightforward solutions; the second answer can get much more complex. He pointed out the need to make it clear that fixing one result set can break other sets – making changes can have many side effects. He has compiled a list of types of relevance adjustments that are reasonably safe and predictable, and sharing this type of information with users can be helpful. Demian mentioned that asking users for data to build regression tests can provide a realistic perspective on the work associated with making changes. There's also the possibility of boosting specific records in specific query result sets through Solr configuration, which can be used to address very narrow edge cases without side effects elsewhere.

Next Call

The next call will be Tuesday, January 2, 2024 at 9am Eastern Standard Time (14:00 GMT).