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.
changelog

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
changelog [2024/04/23 17:36] – [Release 10.0 - coming June 24, 2024] demiankatzchangelog [2024/05/07 15:59] (current) – [Release 10.0 - coming June 24, 2024] demiankatz
Line 41: Line 41:
   * :!: The new load_results_with_js setting is on by default for all search backends to improve the user search experience. This causes some changes to the user interface, most significantly changing the summary at the top of the search results to include navigation buttons and more concise text. If necessary, this behavior can be changed via settings added to searches.ini and other backend-specific configuration files in [[https://github.com/vufind-org/vufind/pull/2929|pull request #2929]].   * :!: The new load_results_with_js setting is on by default for all search backends to improve the user search experience. This causes some changes to the user interface, most significantly changing the summary at the top of the search results to include navigation buttons and more concise text. If necessary, this behavior can be changed via settings added to searches.ini and other backend-specific configuration files in [[https://github.com/vufind-org/vufind/pull/2929|pull request #2929]].
   * :!: The isLoggedIn() method of \VuFind\Auth\Manager and \VuFind\View\Helper\Root\Auth has been deprecated, since returning an object from a method with a Boolean name was potentially confusing. You should use getIdentity() or getUserObject() instead. Use getIdentity() if you only need a basic login status from the RBAC system; use getUserObject if you need to interact with VuFind®-specific user properties.   * :!: The isLoggedIn() method of \VuFind\Auth\Manager and \VuFind\View\Helper\Root\Auth has been deprecated, since returning an object from a method with a Boolean name was potentially confusing. You should use getIdentity() or getUserObject() instead. Use getIdentity() if you only need a basic login status from the RBAC system; use getUserObject if you need to interact with VuFind®-specific user properties.
-  * :!: The \VuFind\Db\Entity\UserEntityInterface has been introduced as an abstraction to reduce dependence on any specific database framework. Several constructors and methods with \VuFind\Db\Row\User typehints have been updated to use the new interface instead. See [[https://github.com/vufind-org/vufind/pull/3478|pull request #3478]], [[https://github.com/vufind-org/vufind/pull/3500|pull request #3500]] and [[https://github.com/vufind-org/vufind/pull/3605|pull request #3605]] for details. 
   * :!: Code related to encryption of passwords has been refactored to the \VuFind\Auth\ILSAuthenticator. The getCatPassword() and encryptOrDecrypt() methods of \VuFind\Db\Row\User have been deprecated. Several constructor signatures have changed (\VuFind\Auth\CAS, \VuFind\Auth\ILSAuthenticator, \VuFind\Auth\LDAP, \VuFind\Auth\Shibboleth, \VuFind\Auth\SimulatedSSO, \VuFind\OAuth2\Entity\UserEntity and \VuFind\OAuth2\Repository\IdentityRepository). See [[https://github.com/vufind-org/vufind/pull/3537|pull request #3537]] for details.   * :!: Code related to encryption of passwords has been refactored to the \VuFind\Auth\ILSAuthenticator. The getCatPassword() and encryptOrDecrypt() methods of \VuFind\Db\Row\User have been deprecated. Several constructor signatures have changed (\VuFind\Auth\CAS, \VuFind\Auth\ILSAuthenticator, \VuFind\Auth\LDAP, \VuFind\Auth\Shibboleth, \VuFind\Auth\SimulatedSSO, \VuFind\OAuth2\Entity\UserEntity and \VuFind\OAuth2\Repository\IdentityRepository). See [[https://github.com/vufind-org/vufind/pull/3537|pull request #3537]] for details.
-  * :!: \VuFind\Search\Solr\InjectHighlightingListener::onSearchPost() has been removed and logic for injecting highlighting data into record drivers has been moved to \VuFindSearch\Backend\Solr\Response\Json\RecordCollectionFactory::factory() and \VuFind\RecordDriver\PluginManager::getSolrRecord() to fix problems with highlighting in the Blender backend. See [[https://github.com/vufind-org/vufind/pull/3610|pull request #3610]] for details. 
   * :!: Adjustments have been made to both code and configuration to support changing standards around Content Security Policy violation reporting. If you use the report-to[] setting in contentsecuritypolicy.ini, adjustments will be needed. Additionally, the \VuFind\Security\CspHeaderGenerator::getHeader() method has been deprecated. See [[https://github.com/vufind-org/vufind/pull/3591|pull request #3591]] for details.   * :!: Adjustments have been made to both code and configuration to support changing standards around Content Security Policy violation reporting. If you use the report-to[] setting in contentsecuritypolicy.ini, adjustments will be needed. Additionally, the \VuFind\Security\CspHeaderGenerator::getHeader() method has been deprecated. See [[https://github.com/vufind-org/vufind/pull/3591|pull request #3591]] for details.
   * :!: The \VuFind\Search\QueryAdapter and related query minification/deminification logic has been significantly refactored to eliminate static methods and improve customizeability. This impacts \VuFind\Search\Base\Params, VuFind\Search\Base\Results and their subclasses and \VuFind\Search\Minified as well as the aforementioned QueryAdapter. Since this code was previously difficult to customize, this probably has limited impact on custom code, but if you have customized logic in these areas, see [[https://github.com/vufind-org/vufind/pull/3358|pull request #3358]] for details.   * :!: The \VuFind\Search\QueryAdapter and related query minification/deminification logic has been significantly refactored to eliminate static methods and improve customizeability. This impacts \VuFind\Search\Base\Params, VuFind\Search\Base\Results and their subclasses and \VuFind\Search\Minified as well as the aforementioned QueryAdapter. Since this code was previously difficult to customize, this probably has limited impact on custom code, but if you have customized logic in these areas, see [[https://github.com/vufind-org/vufind/pull/3358|pull request #3358]] for details.
Line 62: Line 60:
     * \VuFind\RecordDriver\AbstractBase::addTags() has been deprecated in favor of \VuFind\Db\Service\TagService::addTagsToRecord()     * \VuFind\RecordDriver\AbstractBase::addTags() has been deprecated in favor of \VuFind\Db\Service\TagService::addTagsToRecord()
     * \VuFind\RecordDriver\AbstractBase::deleteTags() has been deprecated in favor of \VuFind\Db\Service\TagService::deleteTagsFromRecord()     * \VuFind\RecordDriver\AbstractBase::deleteTags() has been deprecated in favor of \VuFind\Db\Service\TagService::deleteTagsFromRecord()
 +    * The \VuFind\Db\Entity\UserEntityInterface has been introduced as an abstraction to reduce dependence on any specific database framework. Several constructors and methods with \VuFind\Db\Row\User typehints have been updated to use the new interface instead. See [[https://github.com/vufind-org/vufind/pull/3478|pull request #3478]], [[https://github.com/vufind-org/vufind/pull/3500|pull request #3500]] and [[https://github.com/vufind-org/vufind/pull/3605|pull request #3605]] for details.
 +    * The constructor signature of \VuFind\Auth\Manager has been revised to use generic interfaces instead of Laminas-specific dependencies; see [[https://github.com/vufind-org/vufind/pull/3636|pull request #3636]] for details.
   * :!: The [[configuration:record_versions|record versions]] functionality has been simplified for consistency and maintainability. If you have customized any functionality related to versions, adjustments may be needed. See [[https://github.com/vufind-org/vufind/pull/3295|pull request #3295]] and [[https://github.com/vufind-org/vufind/pull/3300|#3300]] for full details; significant highlights:   * :!: The [[configuration:record_versions|record versions]] functionality has been simplified for consistency and maintainability. If you have customized any functionality related to versions, adjustments may be needed. See [[https://github.com/vufind-org/vufind/pull/3295|pull request #3295]] and [[https://github.com/vufind-org/vufind/pull/3300|#3300]] for full details; significant highlights:
     * The \VuFind\Record\VersionsHelper and \VuFindSearch\Command\WorkExpressionsCommand classes are no longer needed and have been removed.     * The \VuFind\Record\VersionsHelper and \VuFindSearch\Command\WorkExpressionsCommand classes are no longer needed and have been removed.
Line 93: Line 93:
   * :!: The signatures of the \VuFind\Controller\ContentController::getViewFor*() methods have been changed to improve flexibility; in the unlikely event that you have changed/extended these, see [[https://github.com/vufind-org/vufind/pull/3452|pull request #3452]] for necessary adjustments.   * :!: The signatures of the \VuFind\Controller\ContentController::getViewFor*() methods have been changed to improve flexibility; in the unlikely event that you have changed/extended these, see [[https://github.com/vufind-org/vufind/pull/3452|pull request #3452]] for necessary adjustments.
   * :!: Javascript code no longer uses DOM CustomEvents, and event names have been revised. See [[https://github.com/vufind-org/vufind/pull/3361|pull request #3361]] if you have custom code that interacts with internal events; it will need to be revised based on these changes.   * :!: Javascript code no longer uses DOM CustomEvents, and event names have been revised. See [[https://github.com/vufind-org/vufind/pull/3361|pull request #3361]] if you have custom code that interacts with internal events; it will need to be revised based on these changes.
 +  * :!: The initResultScripts() function in common.js has been replaced by a new results-init event; see [[https://github.com/vufind-org/vufind/pull/3584|pull request #3584]] for details.
   * :!: The .offcanvas CSS class in the bootstrap3 theme has been renamed to .vufind-offcanvas to prevent conflicts with an .offcanvas class introduced in newer versions of Bootstrap. If you rely on or customize this class in custom code, please adjust accordingly. See [[https://github.com/vufind-org/vufind/pull/3484|pull request #3484]] for details.   * :!: The .offcanvas CSS class in the bootstrap3 theme has been renamed to .vufind-offcanvas to prevent conflicts with an .offcanvas class introduced in newer versions of Bootstrap. If you rely on or customize this class in custom code, please adjust accordingly. See [[https://github.com/vufind-org/vufind/pull/3484|pull request #3484]] for details.
   * :!: The constructor signature of \VuFind\Controller\OAuth2Controller has been adjusted to remove the \LmcRbacMvc\Service\AuthorizationService object, which was not used or needed.   * :!: The constructor signature of \VuFind\Controller\OAuth2Controller has been adjusted to remove the \LmcRbacMvc\Service\AuthorizationService object, which was not used or needed.
Line 98: Line 99:
     * \VuFind\Auth\AbstractBase::getCannedPasswordPolicyHint() - use getCannedPolicyHint() instead.     * \VuFind\Auth\AbstractBase::getCannedPasswordPolicyHint() - use getCannedPolicyHint() instead.
     * \VuFind\Recommend\SearchObject - use AbstractSearchObject instead.     * \VuFind\Recommend\SearchObject - use AbstractSearchObject instead.
 +    * \VuFind\Search\Solr\InjectHighlightingListener::onSearchPost() - see [[https://github.com/vufind-org/vufind/pull/3610|pull request #3610]].
     * \VuFindSearch\Backend\EDS\Backend::debugPrint() and \VuFindSearch\Backend\EDS\Base::debugPrint() - use debug() instead.     * \VuFindSearch\Backend\EDS\Backend::debugPrint() and \VuFindSearch\Backend\EDS\Base::debugPrint() - use debug() instead.
   * Submit inputs named "submit" have been renamed to "submitButton" to avoid side effects caused by using a reserved word as a name; the CAPTCHA processing code now looks for this new name by default (but maintains backward compatibility with the old name). It is strongly recommended that you update any forms you have built or customized to use submitButton instead of submit.   * Submit inputs named "submit" have been renamed to "submitButton" to avoid side effects caused by using a reserved word as a name; the CAPTCHA processing code now looks for this new name by default (but maintains backward compatibility with the old name). It is strongly recommended that you update any forms you have built or customized to use submitButton instead of submit.
Line 112: Line 114:
   * Minor bug fix release.   * Minor bug fix release.
   * :!: A bug fix to the conditional filter listener required a change to the constructor signature of \VuFind\Search\Solr\InjectConditionalFilterListener (and associated factory code). See [[https://github.com/vufind-org/vufind/pull/3513|pull request #3513]] for details.   * :!: A bug fix to the conditional filter listener required a change to the constructor signature of \VuFind\Search\Solr\InjectConditionalFilterListener (and associated factory code). See [[https://github.com/vufind-org/vufind/pull/3513|pull request #3513]] for details.
 +  * :!: The \VuFind\Search\Solr\InjectHighlightingListener::onSearchPost() method has been deprecated, and its functionality has been refactored to \VuFind\RecordDriver\PluginManager and \VuFindSearch\Backend\Solr\Response\Json\RecordCollectionFactory in order to address a bug in highlighting blended searches. See [[https://github.com/vufind-org/vufind/pull/3614|#3614]] for details.
   * :!: Fixes to date range handling required signature changes to several methods in \VuFind\Search\Base\Params: formatDateForFullDateRange(), formatValueForNumericRange() and formatYearForDateRange(). In the unlikely event that you have extended these methods, adjustments may be needed. See [[https://github.com/vufind-org/vufind/pull/3465|pull request #3465]] for details.   * :!: Fixes to date range handling required signature changes to several methods in \VuFind\Search\Base\Params: formatDateForFullDateRange(), formatValueForNumericRange() and formatYearForDateRange(). In the unlikely event that you have extended these methods, adjustments may be needed. See [[https://github.com/vufind-org/vufind/pull/3465|pull request #3465]] for details.
   * :!: Fixes to the switch_db_hash command line utility required a change to the constructor signature of \VuFindConsole\Command\Util\SwitchDbHashCommand. In the extremely unlikely situation that you have overridden this constructor, adjustments will be needed. See [[https://github.com/vufind-org/vufind/pull/3476|pull request #3476]] for details.   * :!: Fixes to the switch_db_hash command line utility required a change to the constructor signature of \VuFindConsole\Command\Util\SwitchDbHashCommand. In the extremely unlikely situation that you have overridden this constructor, adjustments will be needed. See [[https://github.com/vufind-org/vufind/pull/3476|pull request #3476]] for details.
changelog.1713893801.txt.gz · Last modified: 2024/04/23 17:36 by demiankatz