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® Newsletter: May, 2024

Development Highlights and Project News

Development Progress

With the release of VuFind® 10.0 now less than a month away, the community is focusing on finish up outstanding work. May saw the completion of the beta Bootstrap 5 theme that will be one of the major new features of the release; it also saw significant progress on the underlying database refactoring that will make the software more framework agnostic and help simplify the job of migrating from the deprecated Laminas\Db library to the more widely-used Doctrine library – a project currently scheduled for completion next year in release 11.0.

Progress is also underway on updating translations to include new text added in the new release. A few languages currently lack translators, so if you have language skills and might be willing to help out, please check the language support list to see where the gaps lie, and reach out through any of our community support channels if you wish to volunteer.

Other work completed in May includes the addition of rate limiting support; improved search engine optimization through inclusion of canonical URLs on pages and integration of change tracking information with XML sitemaps; updates to several third-party integrations (EDS, EPF, Obalkyknih and OverDrive); optional support for displaying counts in the home-page facet lists; and a variety of minor accessibility improvements, new config settings, bug fixes, Javascript modernizations, tooling adjustments and test enhancements.

Project Management Committee Report

At the May PMC meeting, the group discussed the launch of the new Security Page, which documents known vulnerabilities and the project's vulnerability handling process.

Work also continued on review and updates to documentation, with a particular focus on accessibility improvements to the main vufind.org website.

Conference News

Planning continues for both WOLFcon 2024 (in London, September 24-26, with pre-conference workshops on September 23) and the 2024 VuFind® Summit (in Leipzig and online, September 30-October 1).

Early bird registration has opened for WOLFcon pre-conference workshops, which include a half-day, hands-on, introductory VuFind® session.

Please consider participating in either or both of these events!

Recently Completed / Resolved Issues

The following items were completed in the past month and will be included in release 9.1.2:

  • Aleph driver: improve ID and date processing: #3576
  • Fix and improve popovers in channels: #3649, #3656, #3661, #3662
  • Fix sandal .btn-info colors: VUFIND-1688 / #3654
  • Improve ChannelsTest: refactor for clarity/consistency: #3656
  • Initialize head theme resources in combined AJAX responses: #3635

The following items were completed in the past month and will be included in release 10.0:

  • Accessibility: use heading on spelling suggestions: VUFIND-1670 / #3640
  • Add bootstrap5 theme: #3222
  • Add CatalogResultsDeferred recommendation module: #3674
  • Add Change Tracker information to Sitemap: #3641
  • Add “!default” flag to SASS variables for easier configuration: #3623
  • Add/implement CommentsServiceInterface::createEntity(): #3666
  • Add JsConfigs view helper for sharing configs with Javascript code: #3598
  • Add new Overdrive features: VUFIND-1375 / VUFIND-1499 / #3025
  • Add optional formatString argument to SortFacetList helper: #3621
  • Add phpunitfast-with-shutdown-on-fail Phing task: #3689
  • Add result-scripts event to apply Javascript to search results: #3584
  • Add sort option to AbstractSearchObject recommendations: #3673
  • Add support for rate limiting: #3637
  • Add TOC from Obalkyknih.cz: #3680
  • Adding default values for Javascript config: #3686
  • Adjust pager buttons for mobile: #3630
  • Allow schema.org metadata to be disabled via config: VUFIND-1653 / #3634
  • Change record media-body table layout on mobile: #3626
  • Default required-string User getters to blank strings if unset: #3657
  • EPF: Add embargo description to record page: #3643
  • Establish entity interface and database service for login tokens: #3667
  • Establish UserResourceService; modernize SocialstatsController: #3624
  • Expand ChangeTracker entity interface; add ChangeTracker service: #3646
  • Expand Feedback entity interface; add Feedback service: #3650
  • Expand use of UserEntityInterface in console commands: #3638
  • Expand use/scope of SessionService: #3653
  • Expand UserList entity interface: #3660
  • Fix bug: tag links not displaying in favorites: #3633
  • Fix .gitignore for TAGS files: #3677
  • Fix handling of numeric facet values in Primo REST connector: #3665
  • Fix inconsistent capitalization of DateTime class: #3651
  • Fix missing alt attributes: #3659
  • Fix OAuth2 catalog login to not show the account menu: #3711
  • Fix order of parameters in assertEquals: #3687
  • Fix overlapping media-left box on EDS records: #3628
  • Fix phing build issues: #3696
  • Fix PHP warning if availability element is missing from item status: #3678
  • Fix results scripts init on record versions tab (and add test coverage): #3697, #3710
  • Fix tabbing within a modal dialog: VUFIND-1667 / #3642
  • Fix: toolbar buttons out of alignment: #3670
  • Implement and use UserCardServiceInterface::getAllRowsWithUsernames(): #3695
  • Introduce UserCardService: #3679
  • KohaRest driver: Enable the use of custom renewal block messages in .ini: #3568
  • Login Tokens: removed unused user ID parameter from deleteToken methods: #3668
  • Make MARC subject heading sort behavior configurable: #3644
  • Make tag display test more flexible: #3648
  • Minor fixes/improvements to user list-related templates: #3694
  • Modernize database access in Bootstrapper::initUserLanguage(): #3639
  • OverDrive: Update content security policy for images: #3690
  • Reduce EDS full text link inconsistencies: VUFIND-1689 / #3652
  • Refactor AuthManager to use UserService and UserEntityInterface: #3636
  • Refactor availability and status to be better customizable: #3585
  • Refactor build.xml to introduce ci-tasks-with-shutdown task: #3688
  • Refactor libraryCardsEnabled method to AccountCapabilities class: #3629
  • Remove mobile top margin from media-body: #3627
  • Remove outdated/unused keyboardShortcuts Javascript code: #3664
  • Remove redundant language codes; use aliases: #3494
  • Remove undefined variable reference caused by merge error: #3672
  • Rename OaiResumptionService::saveToken to createAndPersistToken: #3676
  • SEO: Add canonical URLs: #3655
  • Surround searchbox inputs with a div for styling: #3616
  • Translation improvements: #3699
  • Tweak and reorganize styles for improved compatibility with Bootstrap 5: #3669
  • Updated bulkFormHandler from jQuery to vanilla Javascript: #3571
  • Updated setupOffcanvas from jQuery to vanilla Javascript: #3663
  • UpdateDateTracker.java: Remove deprecated finalize method: VUFIND-1651 / #3647
  • Use DbTableAwareTrait in UserService: #3632
  • Use list items for spelling suggestions: #3645
  • Use UserEntityInterface/UserService in LoginTokenManager: #3631
  • VuFindTheme: Do not search for URLs/absolute paths inside themes: #3617

These changes impacted the vufind.org website:

  • fix: doctype: #3683
  • gh-pages: Update Jekyll: #3671
  • gh-pages: update static page accessibility: #3684

This item was closed as no longer needed:

  • SetupThemeResources: Ensure 'Content-Type' is never escaped: #2763

New Issues

The following items were reported / begun in the past month, but are not yet completed:

Code in Progress

  • Add ContentBlock wrapper for Recommendation modules: #3675
  • Allow nullish coalescing operator (??) in Javascript: #3682
  • Fix facets JS issues: #3685
  • Improve AuthEmailNotVerified exception: #3700
  • Increase use of entity interfaces in unit tests: #3704
  • Increase use of UserEntityInterface in MyResearchController: #3702
  • Introduce UserList service: #3701
  • Migrate more methods to ResourceService: #3708
  • New DevTool: dump out current user: #3658
  • OverDrive: Load availability via overdrive ID: #3691
  • OverDrive: Support disabled patron API: #3693
  • Refactor admin FeedbackController to use FeedbackService: #3709
  • Refactor tag administration to use database services: #3703
  • Remove unnecessary timezone from Comments class: #3705
  • Removing jQuery from check_item_statuses.js: #3698
  • Update setupJumpMenus from jQuery to Javascript: #3681
  • Update website footer: #3692
  • Use ChangeTrackerService in OAI server: #3706
  • Use different debug formatting string on console vs. web: #3707

Issue Report / Discussion Only

  • Channels popovers overlap item labels in Bootstrap3 and Bootprint3: VUFIND-1691
  • SEO: Provide CLI tool for Indexing APIs: VUFIND-1690

Active Issues

The following items saw significant progress / activity during the past month:

  • Convert from Laminas\Db to Doctrine: #2233
  • Display the date and destination of transitting items: #3312
  • KohaRest: Show recalled message if a recall is blocking renewal: #3422
community/newsletter/2024-05.txt · Last modified: 2024/05/28 13:44 by demiankatz