VuFind® Newsletter: March, 2024
Development Highlights and Project News
Development Progress
At the March 5, 2024 Community Call, the release date for VuFind® 10.0 was discussed. While an exact date has not been scheduled yet, a late spring/early summer target is likely. The next call will include discussion of whether to set a May or June date for the release.
There are two major lines of development that need to be completed before the release can be made, both aimed at “future-proofing” the project and eliminating outdated components: the first is completing the Bootstrap 5 theme, which will allow the project to move past some old versions of front end dependencies; the second is beginning to refactor database code and introduce interfaces so that significant incremental progress can be made toward the eventual replacement of Laminas\Db with Doctrine, a necessary step due to the lack of ongoing support for the Laminas\Db library. Significant progress was made on both of these threads during March, and more work will be completed in April.
In addition to maintenance tasks and assorted bug fixes, March development also included the introduction of some new features: support for citation searching in the Primo backend; support for deeply-nested static content pages; and support for multi-page selection in user favorites.
Project Management Committee Report
At their March meeting, the Project Management Committee continued to make progress on documentation maintenance planning and conference planning. The group also appointed a new treasurer, Craig Murdoch, to fill the position vacated by Hajo Seng. (Thanks to both Hajo and Craig for their service to the project).
Conference News
The call for papers is open for WOLFcon 2024, taking place September 24-26 at the University of London. The conference will include VuFind®-related sessions, and you are encouraged to submit your own proposals if you plan to attend. PMC Community Manager Demian Katz will be present and would be happy to meet with and talk to other VuFind® users at the conference; please feel free to reach out to him.
To accommodate the largest possible audience, planning is also underway for a separate VuFind® Summit (including both in-person and free online components) to follow and complement WOLFcon; more information will be shared on this shortly.
Recently Completed / Resolved Issues
The following items were completed in the past month and will be included in release 9.1.2:
Add library card support to switch_db_hash command:
#3476
Encrypt existing library cards during security setup:
#3475
Fix conditional filter listener to check the backend id:
#3513
Fix date range handling and date sanitization for leap years:
#3465
Fix date validation in OAI server:
#3481
Improve example account config in EDS.ini:
#3524
Sierra: Display all fines:
#3477
The following items were completed in the past month and will be included in release 10.0:
-
Add an option to run psql without sudo in Phing:
#3508
Add option to override the theme used for Mink tests:
#3493
Add support for OpenID Connect Discovery:
#3536
Add support for Primo citations search:
#3393,
#3463
-
Assorted controller code simplifications:
#3504
Begin adding getters and setters to UserEntityInterface:
#3503
-
-
Convert DOM events to stored functions:
#3361
Create asset pipeline cache directory on demand:
#3525
Deprecate isLoggedIn() method:
#3459
Double check for “PHP version 7” in file comments:
VUFIND-1612
-
-
Fix check for OpenURL resolver
URL:
#3474
Fix displaying of explain after paging and improve looks:
#3495
Fix: don't override toggleAttrs in menu-button:
#3381
Fix favorites search with PostgreSQL:
#3507
Fix illegal token value in js-translations.phtml:
#3470
Fix layout when sidebar is empty:
#3460
-
Fix sandal search tabs hover color in search results etc.:
#3482
-
FOLIO: make holdingsRecordId and itemID optional in getMyHoldings:
#3451
HeadLink helper: Fix invalid types in doc comments:
#3455
Implement text domain fallback in translator:
#3471
-
-
Introduce UserService to centralize logic:
#3485
Make custom status handling in NoILS driver more robust:
#3532
Move password encryption handling to ILSAuthenticator:
#3537
Move tag CRUD operations out of record drivers:
#3509
Multi page selection in favorite list:
#3142
Pop up holdings catalog login in lightbox:
#3469
Refactor the setting of collectionID:
#3445
-
Rename offcanvas to vufind-offcanvas to avoid clash with Bootstrap 5:
#3484
Replace deprecated Interop container interfaces in factories:
#3464
Sandal: Fix wonky focus highlight in the search field:
#3483
Sandal: Move tabs back up, tweak paddings and margins of searchbox:
#3453
Sandal theme: Fix style on facet more/less button:
#3487
-
String type related fixes:
#3531
-
-
Tweak add tag button and the look of tags:
#3530
Updated commonDocReady from jquery to vanilla javascript:
#3516
Updated dependencies:
#3488,
#3491,
#3498,
#3505,
#3510,
#3522,
#3523,
#3527,
vufindcode#15,
vufinddate#11,
vufindharvest#21,
vufindhttp#27,
vufind-marc#12
Upgrade deprecated GitHub Actions tasks:
#3511
Upgrade to Solr 9.5.0:
#3480
-
Use ::class instead of hard-coded class strings:
#3517
Use components and icon helper with offcanvas, fix issues:
#3521
-
Use new database entity and service interfaces in OAuth2 classes:
#3499
-
XCNCIP2: enforce itemUseRestrictionTypesForStatus to be array:
#3454
Warn about file ownership in browscap console tool:
#3506
Work around illegal characters in translation keys:
#3461,
#3466
These pull requests have been (or will be) superseded by other work and are no longer needed; they were closed without being merged:
Create view helper for translating EDS labels:
#2642
Split asset pipeline functionality to separate classes:
#2283
New Issues
The following items were reported / begun in the past month, but are not yet completed:
Code in Progress
Add and use VuFind\Db\Service\TagServiceInterface:
#3539
Add more database entity interfaces:
#3541
Add test to demonstrate broken combined AJAX DOI functionality:
#3534
-
CSV importer: Inject dependencies into static callback classes:
#3515
-
Improve table layout and text wrapping on narrow screens:
#3542
Make user field for oauth subject configurable:
#3486
Remove redundant language codes; use aliases:
#3494
Issue Report / Discussion Only
Add setting to include extra URLs in sitemap index:
VUFIND-1678
-
Modal close button doesn't want to let focus go:
VUFIND-1667
Moravian Library Accessibility Report (Progress Tracking):
VUFIND-1668 (supersedes
#3039 and includes several sub-tasks)
Page length settings should persist regardless of how the user initiates their next search:
VUFIND-1665
-
-
Top menus are formatted strangely in Sandal in narrow-window view:
VUFIND-1675
Active Issues
The following items saw significant progress / activity during the past month:
Add bootstrap5 theme:
#3222
Add Notifications
CMS functionality:
#3103
Adding the option to make html elements sticky:
#3226
Convert from Laminas\Db to Doctrine:
#2233
Display the date and destination of transitting items:
#3312
Open ID Connect implementation:
#1230
Replace jumpMenu controls with menu-button components:
#2814
Use Psalm for static code analysis:
#1764