====== VuFind Newsletter: October, 2020 ====== ===== Highlights / Executive Summary ===== October was spent working through the outcomes of the VuFind Summit. A large number of JIRA tickets have been opened to capture ideas and conversations from the event (see the "Issue Report / Discussion Only" section below). Please help us prioritize and complete this work by voting/commenting on issues that are important to you, and by taking ownership of tickets that you are willing and able to help complete. Additionally, a group of volunteers have come together to begin talking about VuFind community structure and sustainability. This conversation will be a major focus of the next [[:Community Call]], so please join us there if you wish to participate in the discussion. Outside of Summit-related activity, a large number of fixes and enhancements have been merged during the month, as summarized below, and development has begun on a few new features (including a CSV import tool and a log writer for Office365 webhooks). Work has also begun on integrating the [[https://psalm.dev/|Psalm]] static analysis tool into VuFind's continuous integration workflow, which should help improve the application's use of types, among other things. ===== Recently Completed / Resolved Issues ===== The following items were completed in the past month: * Account for locale when caching home channels: [[https://vufind.org/jira/browse/VUFIND-1438|VUFIND-1438]] / [[https://github.com/vufind-org/vufind/pull/1745|#1745]] * Add pagination support to getUserTransactions: [[https://github.com/vufind-org/vufind/pull/1739|#1739]] * Alma: Use rawurlencode for path parts: [[https://github.com/vufind-org/vufind/pull/1744|#1744]] * Begin fixing return types using Psalm: [[https://github.com/vufind-org/vufind/pull/1765|#1765]] * Better implementation of getPlayingTimes in MarcAdvancedTrait: [[https://github.com/vufind-org/vufind/pull/1751|#1751]] * CallNumberTools.java: return null if lc call number is empty: [[https://github.com/vufind-org/vufind/pull/1752|#1752]] * Catch HTTP client's exceptions in SierraRest driver: [[https://github.com/vufind-org/vufind/pull/1737|#1737]] * Catch ILS exception from patronLogin properly when modifying a library card: [[https://github.com/vufind-org/vufind/pull/1738|#1738]] * Configurable record retrieval batch size for Solr: [[https://github.com/vufind-org/vufind/pull/1749|#1749]] * Feedbackforms: handle undefined reply-to address: [[https://github.com/vufind-org/vufind/pull/1758|#1758]] * Fix mismatched slot names: [[https://github.com/vufind-org/vufind/pull/1722|#1722]] * Hierarchical facet bug fixes: [[https://github.com/vufind-org/vufind/pull/1740|#1740]], [[https://github.com/vufind-org/vufind/pull/1743|#1743]] * Improve record tab hash handling: [[https://github.com/vufind-org/vufind/pull/1754|#1754]] * KohaRest: Allow mapping of different NotForLoan statuses separately: [[https://github.com/vufind-org/vufind/pull/1730|#1730]] * KohaRest: Split GetItemStatusCodes into smaller sub-methods: [[https://github.com/vufind-org/vufind/pull/1756|#1756]] * KohaRest: Take public notes for items from the correct field: [[https://github.com/vufind-org/vufind/pull/1759|#1759]] * Make it possible to use smaller expiration than 2 days for sessions: [[https://github.com/vufind-org/vufind/pull/1736|#1736]] * Make the max limit of search API results more flexible: [[https://github.com/vufind-org/vufind/pull/1762|#1762]] * ObalkyKnih: Catch exception on HTTP request: [[https://github.com/vufind-org/vufind/pull/1746|#1746]] * Refactor creating HTTP client in ObalkyKnih service: [[https://github.com/vufind-org/vufind/pull/1741|#1741]] * Remove checkRoute=1 parameter from the url when it's no longer needed: [[https://github.com/vufind-org/vufind/pull/1742|#1742]] * Reset authentication state on logout: [[https://github.com/vufind-org/vufind/pull/1735|#1735]] * Simplify PHPUnit fixture handling: [[https://github.com/vufind-org/vufind/pull/1766|#1766]] * Translation fix: [[https://github.com/vufind-org/vufind/pull/1768|#1768]] * Travis: Use Composer 1 until compatibility with 2 is fully resolved: [[https://github.com/vufind-org/vufind/pull/1769|#1769]] * Treat invalid date errors from Solr as parser errors: [[https://github.com/vufind-org/vufind/pull/1763|#1763]] * Use more appropriate currency icon: [[https://github.com/vufind-org/vufind/pull/1750|#1750]] ===== New Issues ===== The following items were reported / begun in the past month, but are not yet completed: ==== Code in Progress ==== * Cache results of class based template resolution: [[https://github.com/vufind-org/vufind/pull/1747|#1747]] * CSV import tool: [[https://github.com/vufind-org/vufind/pull/1761|#1761]] * DEB package: allow compatibility with more Java packages: [[https://github.com/vufind-org/vufind/pull/1760|#1760]] * Log writer for Office365 webhooks: [[https://github.com/vufind-org/vufind/pull/1757|#1757]] * Page enhancements: Comparing Languages Against English: [[https://vufind.org/jira/browse/VUFIND-1453|VUFIND-1453]] / [[https://github.com/vufind-org/vufind/pull/1755|#1755]] * Re-set keyboard focus in lightbox after the content has loaded: [[https://github.com/vufind-org/vufind/pull/1767|#1767]] * Return to previous page after printing: [[https://github.com/vufind-org/vufind/pull/1753|#1753]] * Use Psalm for static code analysis: [[https://github.com/vufind-org/vufind/pull/1764|#1764]] ==== Issue Report / Discussion Only ==== There are a large number of "discussion only" tickets this month since many conversations from the 2020 Summit were captured as new JIRA tickets. * Account for previous exceptions in ILS drivers: [[https://vufind.org/jira/browse/VUFIND-1436|VUFIND-1436]] * Allow export of lists to CSV: [[https://vufind.org/jira/browse/VUFIND-1449|VUFIND-1449]] * Composer 2 compatibility: [[https://vufind.org/jira/browse/VUFIND-1454|VUFIND-1454]] * Document best practices for obtaining commercial metadata: [[https://vufind.org/jira/browse/VUFIND-1451|VUFIND-1451]] * EDM / LIDO driver: [[https://vufind.org/jira/browse/VUFIND-1445|VUFIND-1445]] * Explore Solr's graph capabilities: [[https://vufind.org/jira/browse/VUFIND-1444|VUFIND-1444]] * Exported list link shortening: [[https://vufind.org/jira/browse/VUFIND-1447|VUFIND-1447]] * IIIF content awareness: [[https://vufind.org/jira/browse/VUFIND-1452|VUFIND-1452]] * lobid API integration: [[https://vufind.org/jira/browse/VUFIND-1450|VUFIND-1450]] * Mechanism for loading language files/configs from modules: [[https://vufind.org/jira/browse/VUFIND-1443|VUFIND-1443]] * Raise PHP version requirement to 7.3: [[https://vufind.org/jira/browse/VUFIND-1440|VUFIND-1440]] * Refactor complex factories for extensibility: [[https://vufind.org/jira/browse/VUFIND-1446|VUFIND-1446]] * Review Javascript configuration options in theme.config.php: [[https://vufind.org/jira/browse/VUFIND-1437|VUFIND-1437]] * Scenario-based drill-down recommendation module: [[https://vufind.org/jira/browse/VUFIND-1442|VUFIND-1442]] * Single-Page Application (SPA): [[https://vufind.org/jira/browse/VUFIND-1439|VUFIND-1439]] * Update/expand support for MARC linking fields: [[https://vufind.org/jira/browse/VUFIND-1448|VUFIND-1448]] * Use of undefined constant 'STDIN': [[https://github.com/vufind-org/vufind/pull/1748|#1748]] * VideLibri API compatibility: [[https://vufind.org/jira/browse/VUFIND-1441|VUFIND-1441]] ===== Active Issues ===== The following items saw significant progress / activity during the past month: * Add support for record "versions" display: [[https://vufind.org/jira/browse/VUFIND-120|VUFIND-120]] / [[https://github.com/vufind-org/vufind/pull/1581|#1581]]