Table of Contents
VuFind Developers Call Minutes: February 17, 2015
Attending: Filipe Bento, Chris Delis, Judy Drescher, Guenter Hipler, John Jung, Demian Katz, Jochen Lienhard, Tod Olson
1. Development Updates
- #296 - merged - This PR adds a mechanism to disable AJAX loading for certain record tabs (to work around an incompatibility between the Google Maps tab and the AJAX tab mechanism).
- #297 - merged - an adjustment to the hierarchical facet helper to retain raw Solr values in a separate field parallel to their modified versions.
- #298 - merged - a slight tweak to the capability detection on the MultiBackend driver (assume capabilities exist when user is not yet logged in to avoid losing options in the myresearch menu)
PHP 5.4 Requirement
The master branch has been updated to require PHP 5.4. Some code has been refactored to use traits to reduce redundancy.
PHP CodeSniffer Upgrade
The continuous integration server has been upgraded to the latest release (2.2) of PHP_CodeSniffer, which adds a few new rules related to doc comments and fixes a bug related to pass-by-reference variables.
php-cs-fixer in Jenkins
The php-cs-fixer tool has been used to normalize some inconsistent style in master; Jenkins is now monitoring changes and will fail the build if any new styles are violated. If a problem is introduced, a Phing task (“php-cs-fixer”) can be run to automatically fix styles.
2. Development Planning
Call Number Normalization
Tod has made some more fixes to SolrMarc. Tod and Demian will talk outside of the call to come up with a plan for what belongs in the VuFindIndexer; once that is sorted out, another SolrMarc release can be minted. Tod is thinking about the possible use case for call number prefix trimming, but no real life use has appeared yet.
Demian has made some progress on VUFIND-1035 by building a command line code generator to automate the process of overriding a core VuFind service or plugin. The generator automatically creates an appropriate subclass in a custom module and updates the module's configuration.
This gave Demian the idea of moving the current dynamic route generation found in module.config.php into a code generator and then regenerating VuFind's default configuration as a static file. This will make the route generation logic more reusable and will also simplify the configuration loading process. Demian will build a pull request to demonstrate this idea.
New Array Formatting
PHP 5.4 allows a shorter array syntax, so you can use brackets in place of the array() keyword. The php-cs-fixer tool can automatically update all of our code to use the new syntax. Do we want to make the change?
Unanimous “yes” on converting to new format.
VuFind is currently using Solr 4.2.1 by default, which is rather old. Demian has reviewed release notes for all versions up to 4.10.3 and sees no major causes for concern, though several adjustments to solr.xml validation may catch errors unnoticed in previous releases (upgrading is the only way to find out). We also need to review SolrMarc compatibility. Also of note: Solr 5 is under development and seems to deploy differently than previous versions (it is now its own service, rather than a .war file).
Demian will work on a 4.10.3 branch in the near future, then work with Tod and Bob Haschart to investigate any SolrMarc compatibility issues that may arise. Guenter reports running 4.10.3 with VuFind successfully, so hopefully no large problems will come up.
2.4 Release Goals
Now that the PHP 5.4 requirement has been introduced, we should take inventory of what work remains before we can issue a 2.4 release.
- Updated SolrMarc
- Completion of Karen Coombs' projects
Possible release goal: late March.
3. Other Topics?
Demian has once again been contacted by somebody looking for a VuFind developer; if anyone knows somebody looking for work in this area, please let him know.
The next call will be Tuesday, March 3, 2015 at 10am Eastern Standard Time (15:00 GMT).