About Features Downloads Getting Started Documentation Events Support GitHub

Love VuFind®? Consider becoming a financial supporter. Your support helps build a better VuFind®!

Site Tools

Warning: This page has not been updated in over over a year and may be outdated or deprecated.

VuFind® Community Call Minutes: February 6, 2024

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


1. Development Planning

Newsletter Highlights

The January, 2024 Newsletter was discussed.

Release 9.1.1

The 9.1.1 release will be ready soon. Demian proposes a release date of February 12 or 19, depending on whether or not additional work proves to be necessary this week.

Pull Request Review (release 10.0)

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

Architectural Enhancements
  • #1680 - Display flash message on login
    • Status: Complex issue; on hold until #3361 is resolved to provide required underlying functionality.
  • #2233 / VUFIND-1480 - Convert from Laminas\Db to Doctrine
    • Status: Work in progress continues; still much to do.
  • #2612 / VUFIND-1588 - Add support for WorldCat Search v2 API
    • Status: Early work in progress; still needs somebody to take the lead on moving it forward.
  • #2624 / VUFIND-1514 - Replace grunt with NPM scripts
    • Status: Work in progress; has some conflicts and failed checks.
  • #2723 - Component: confirmation menu
    • Status: Needs conflict resolution; many outstanding TODO items.
  • #2814 - Replace jumpMenu controls with menu-button components
    • Status: In review
      • :!: ACTION ITEM: Chris should look at style/accessibility improvements
  • #2934 - Switch to Splide Carousel Library
    • Status: In review
      • :!: ACTION ITEM: Chris should resolve conflicts and work on latest review comments.
  • #3039 - Accessibility: Moravian Library Report
    • Status: Work in progress; some checks were unsuccessful. This PR is an umbrella covering a number of topics, some of which have been split out as separate PRs.
  • #3222 - Add bootstrap5 theme
    • Status: In progress.
      • :!: ACTION ITEM: Ere should continue work; others should test as time permits.
  • #3361 - Convert DOM events to stored functions
    • Status: In progress.
      • :!: ACTION ITEM: Chris and Demian will continue collaborating on this.
New Features
  • #2991 - Add filtering capability to facet list pop-up
    • Status: Nearly done, but still needs some aesthetic fixes.
      • :!: ACTION ITEM: Mario should work on latest review comments.
  • #3103 - Add Notifications CMS functionality
    • Status: Currently in review.
      • :!: ACTION ITEM: Johannes should work on conflict resolution and latest review comments.
  • #3142 - Multi page selection in favorite list
    • Status: In progress.
      • :!: ACTION ITEM: Demian should review and test the latest changes.
  • #3226 - Adding the option to make html elements sticky
    • Status: On hold due to autocomplete problems.
      • :!: ACTION ITEM: Chris and Demian should finish resolving issues caused by most recent autocomplete.js upgrade.
Smaller Features/Enhancements/Fixes
  • #2642 - Create view helper for translating EDS labels
    • Status: Early proof of concept; requires design discussion to move forward.
  • #3279 - Small enhancements to the DefaultRecord class
    • Status: In review.
      • :!: ACTION ITEM: Waiting for progress from @dmj.
  • #3294 - Updated loadHTML from jQuery to native Javascript
    • Status: In review.
      • :!: ACTION ITEM: Waiting for progress from @padmasreegade.
  • #3382 - AbstractAPI: use status instead of code to capture HTTP status
    • Status: Needs review
Specialized PRs Requiring Input from Creators

:!: ACTION ITEM: as the section heading indicates, all of the PRs listed below currently await review resolution or comment responses from the users who created them.

  • #2060 - makes the DAIA services which should be accepted configurable (etc.)
    • Status: In review/under discussion.
  • #2688 - Announce number of search results in title
    • Status: Under discussion.
  • #2763 - SetupThemeResources: Ensure 'Content-Type' is never escaped
    • Status: Discussion underway on GitHub; awaiting response from @mtrojan-ub.
  • #2850 - Change route type for Help/Home from Static to Segment
    • Status: Work in progress; all checks have passed. PR needs review by @mtrojan-ub.
  • #2999 - Get unique html element id from record view helper
    • Status: Only a bit more work is needed, now that PR 2982 has been merged. Ready for @elsenhans and @RLangeUni to revisit.
  • #3025 - Add new Overdrive features
    • Status: Work in progress; @bpalme is in the process of making updates.

Scheduled JIRA Tickets (release 10.0)

Architectural Enhancements
  • VUFIND-1210 - Use Solr JSON APIs
  • VUFIND-1510 - Consider deprecating CspNonce view helper in favor of Csp helper
  • VUFIND-1547 - Normalize search event namespace
  • VUFIND-1584 - Remove deprecations from 9.x.
  • VUFIND-1601 - Improve CSS configuration in themes
  • VUFIND-1614 - Modernize PubDateVisAjax recommendation module
  • VUFIND-1618 - Investigate the need for setlocale in Bootstrapper
  • VUFIND-1628 - Clean up record collection factories
  • VUFIND-1633 - Replace email library
  • VUFIND-1640 - Eliminate submit inputs named “submit”
  • VUFIND-1652 - Add database support for storing session-specific data
  • VUFIND-1653 - schema.org markup causes trouble when there are no holdings or reviews
  • VUFIND-1657 - Disabling cache fails with EDS backend
Smaller Fixes/Improvements
  • VUFIND-1521 - Add id validation to ILL requests and storage retrieval requests
  • VUFIND-1583 - Any action using ILS credentials fails to display the account menu if credentials missing
  • VUFIND-1592 - Clarify labeling of list menu
  • VUFIND-1594 - Provide a direct link to an ILS login form when using ChoiceAuth plus Shibboleth
  • VUFIND-1607 - Embedded records (in results list) have invalid aria and/or role attributes
  • VUFIND-1632 - Improve install.php existing file handling
  • VUFIND-1639 - Improve ILS error handling during installation process
  • VUFIND-1651 - Address Java deprecation of finalize() method in UpdateDateTracker.java
  • VUFIND-1658 - Sandal theme: applied filter contrast is too low on home page
Test Suite Improvements
  • VUFIND-1351 - Create Mink tests for email verification functionality
  • VUFIND-1560 - DeduplicationListener: Add tests and clean up
Documentation Tasks
  • VUFIND-1625 - Document access to advanced search capabilities through API
  • VUFIND-1629 - Investigate changes in OpenAPI 3.1; implement for API if appropriate.
Finishing Touches (Tasks for Near Release Time)
  • VUFIND-1612 - Double check for “PHP version 7” in file comments
  • VUFIND-1645 - Update dependencies for release 10.0
  • VUFIND-1659 - Update GitHub branch protection rules when creating release-10.0 branch
  • VUFIND-1649 - Update language translation files for release 10.0

2. Technical Discussion: Theme Development Next Steps / Collaboration

Discussion point: font size in Sandal theme. The sandal theme default font size is 16px, compared to the original bootstrap3 default font size of 14px.

Claas approves of the larger font size for the sake of accessibility; he shared this example and this example of instances with large fonts.

However, Ere pointed out that in the sandal theme, the contrast between large font and small font looks strange in some situations, so maybe some small fonts need to be enlarged.

Maccabee pointed out that the fixed width of the page is based on decade-old decisions; we should probably consider widening it, which could permit more space for the larger font.

Chris pointed out that some elements are relative to the base font size, so changing font size may also impact sizing of other controls and elements.

There was discussion about the relationship between font size and line height and trade-offs between information density and aesthetics.

General consensus: we'll leave things as they are for now, but we're open to making changes as needed. We should revisit page width, etc., as part of the bootstrap5 theme design (modernize design and technology at the same time).

Ere pointed out that there are some hard-coded values related to screen width in multiple places; we might want to standardize/unify that.

Maccabee suggested that we might consider allowing width to stretch more within a range of values instead of hard-coding it to a fixed width.

Claas mentioned that in their theme, breakpoints have been reduced to just two sizes: large, desktop mode and narrower, tablet/phone mode. This simplification has some advantages.

Ere pointed out that we can now use flex to achieve good reactivity that was not possible with earlier CSS technology.

Maccabee mentioned that Lehigh is experimenting with width related to combined search (which has different requirements than other things due to more content in multiple columns).

3. Technical Discussion: Javascript Unit Testing?

Chris raised the need for testing our Javascript code in isolation, not just through the integration tests. It might be helpful to use something like jest for this. Chris volunteered to take the lead on this; Demian offered to help with CI integration once the baseline test logic is in place.

Jest seems to be a favored testing framework: Maccabee pointed out that OLF uses Jest in other projects (FOLIO, etc.). Demian also has Jest experience from other projects (Universal Viewer, VuDL). It's also highly rated in the “State of JS” report.

4. Future of Slack

No news this month; Peter hopes to have more time to look into this now that the FOLIO JIRA instance has been moved to the cloud.

5. Open Q&A / Other Topics?

Demian mentioned that the PHPUnit 10 upgrade was completed and merged today; due to internal changes to the framework, it was necessary to remove the AutoRetryTrait formerly used by Mink tests. Thanks to Ere's test stability improvements, this should not be a major loss.

Maccabee is having trouble with the spell check component; he is not happy with the results coming from Solr and is interested in whether people have advice on improving the quality of suggestions. Demian mentioned that VuFind's default spell checking is based on the old spelling-index-based method; there was work done at a past Summit to switch to the live lookup method, but it was never contributed back to the project. Ere mentioned that Finna is using custom code to utilize live lookups, but the results are fairly low-quality. One obvious alternative would be to use an external spell-checker, but you still need a mechanism for integrating suggestions with the index to ensure that they will actually yield useful results. Mario speculated that some spelling problems might be the result of interaction between the spelling component and certain filters (stemming, etc.). Ere suggested that looking at the source code may be necessary due to the lack of documentation.

Next Call

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

community_call/minutes20240206.txt · Last modified: 2024/02/06 15:01 by demiankatz