All notable changes to this project will be documented in this file, in reverse chronological order by release.
- Compatibility with Symfony/Console versions 6 and 7.
- The minimum PHP version requirement has been raised to 8.1.
- Nothing.
- Compatibility with Symfony/Console versions less than 5.3.
- Nothing.
- Nothing
- The protected VuFindHarvest\OaiPmh\RecordXmlFormatter::extractMetadataAttributes() method has been replaced with a more general-purpose extractHigherLevelAttributes() method.
- Nothing.
- Nothing.
- Records with namespace declarations in the
<record>
tag instead of the<metadata>
tag will now have appropriate namespaces applied to the extracted XML.
- The stopAfter setting can now be used to harvest a limited number of records (useful for testing).
- Nothing
- Nothing.
- Nothing.
- XML sanitization can now handle incorrectly UTF-8-encoded records.
- Nothing.
- The minimum PHP version requirement has been raised to 7.4.1.
- The determination of the date stored in last_harvest.txt is now more reliable and consistent (see #7 for related discussion).
- The last_state.txt file (created to resume interrupted harvests) now stores an additional value and old states cannot be loaded by this version; make sure all harvests are fully complete before upgrading.
- Internal handling of Identify responses has been refactored to prevent unnecessary calls and increase reliability.
- Nothing.
- Nothing.
- Nothing.
- The VuFindHarvest\Exception\OaiException class, for finer-grained error handling.
- The minimum PHP version requirement has been raised to 7.3.
- The noRecordsMatch error is no longer treated as a fatal problem.
- Nothing.
- Nothing.
- The failure to harvest from one OAI source no longer causes the entire batch to fail.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Improved help message for --ini option.
- VuFindHarvest\OaiPmh\HarvesterCommand class (for Symfony\Console integration).
- Raised minimum PHP requirement to version 7.2.
- Replaced Laminas\Console with Symfony\Console as console interaction framework.
- VuFindHarvest\ConsoleOutput\ConsoleWriter class is now a wrapper around Symfony\Component\Console\Output\OutputInterface (which also impacts some of the internals of VuFindHarvest\OaiPmh\HarvesterFactory).
- Nothing.
- VuFindHarvest\OaiPmh\HarvesterConsoleRunner class (for Laminas\Console integration).
- Nothing.
- Nothing.
- Updated Zend dependencies to use Laminas equivalents.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Bug: each batch of IDs in log file was missing trailing line break.
- Nothing.
- Nothing.
- Nothing.
- PHP 5 support.
- Nothing.
- New globalSearch / globalReplace parameters.
- Nothing.
- Nothing.
- PHP 5.4/5.5 support.
- Bug: xmlns namespace attributes injected incorrectly.
- New sanitizeRegex setting to optionally allow override of default XML sanitization regular expression.
- Nothing.
- Nothing.
- Nothing.
- Bug: authentication credentials cleared between requests.
- Better support for SSL certificate configuration
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Expanded command-line functionality.
- Documentation.
- More complete test suite.
- Complete rewrite of code for better separation of concerns.
- Nothing.
- Nothing.
- Nothing.
- Simple stand-alone console interface
- Nothing.
- Nothing.
- Nothing.
- Nothing.
Initial extraction of library code from the VuFind project