Install
Works with Drupal: 8.xUsing Composer to manage Drupal site dependencies
Alternative installation files
Release notes
Long overdue release for Purge carrying various API changes and Drush 9 support as main feature. This release is the last beta before the codebase is deemed fully stable (and as a result, API changes will stop to happen).
Please don't upgrade blindly and test your preexisting setup well.
Please run drush cr to accommodate for the various API changes!
Mac OS users - Beware!
This release capitalizes filenames such as src/Plugin/Purge/Queue/numberOfItemsStatistic.php into NumberOfItemsStatistic.php, which seems to give issues on operating systems without case sensitive file systems such as Apple's Mac OS. The best way to remediate this is to run git config --global core.ignorecase false so that GIT will never ignore case changes like this one.
So make sure that the files under modules/contrib/purge/src/Plugin/Purge/Queue all start with capitals:
ls -l modules/contrib/purge/src/Plugin/Purge/Queue
...
NumberOfItemsStatistic.php
...
TotalFailedStatistic.php
TotalNotSupportedStatistic.php
TotalProcessingStatistic.php
TotalSucceededStatistic.php
...
If you don't, you will see errors like these (even after drush cr):
Error: Class 'Drupal\purge\Plugin\Purge\Queue\NumberOfItemsStatistic' not found in Drupal\purge\Plugin\Purge\Queue\StatsTracker->initializeStatistics() (line 101 of...
Edit: Acquia has added an entry about the issue on their knowledge base:
https://support.acquia.com/hc/en-us/articles/360036926373-Git-case-probl...
[8.x-3.0-beta9] - 2019-10-03
Added
- Added
.gitattributesto keep documentation out of built packages. - Added
composer.jsonfor integration with Composer-based workflows. - API:
Annotation\PurgeTagsHeader::$dependent_purger_pluginsto allow
binding headers to purgers. - API:
TagsHeaderInterface::isEnabled()which returnsTRUEby default. - API:
DiagnosticsServiceInterface::filterInfo,::filterOk,
::filterWarnings,::filterWarningsAndErrors,::filterErrors - API:
DiagnosticsServiceInterface::toMessageList() - API:
DiagnosticsServiceInterface::toRequirementsArray()parameter
$prefix_title.
Changed
- Improvement: thousands of fixes to pass all these these standards checks:
phpcs --standard=Drupal --extensions=php,module,inc,install,test,profile,theme,css,info,txt,mdphpcs --standard=AcquiaDrupalStrict
- Improvement:
PROJECTPAGE.md,README.mdand newCHANGELOG.md. - Improvement: Drupal's status report now only shows warning and error
diagnostics. - Improvement:
Counter\Counter::set()only writes if the value changes. - Improvement:
Queue\DatabaseQueue::numberOfItems()now builds the
COUNT()OOP-style. - Improvement:
Queue\StatsTracker::updateTotals()no longer maintains
the::numberOfItems()statistic. - Improvement:
Queue\NumberOfItemsStatisticis now synced from
QueueService::commitand nowhere else. - API:
DiagnosticsServiceInterface::getRequirementsArray()
-->::toRequirementsArray() - API:
DiagnosticsServiceInterface::getHookRequirementsArray()removed - API: `DiagnosticCheckInterface::getHookRequirementsArray()`` removed
- API:
Queue\numberOfItemsStatistic-->NumberOfItemsStatistic - API:
Queue\totalProcessingStatistic-->TotalProcessingStatistic - API:
Queue\totalSucceededStatistic-->TotalSucceededStatistic - API:
Queue\totalFailedStatistic-->TotalFailedStatistic - API:
Queue\totalNotSupportedStatistic-->TotalNotSupportedStatistic
Fixed
- #2795131:
purge_tokensshould not set Max-Age to 0. - #2795131: codestyle in the tests got overhauled.
- #2795131: Drush commands ported to Drush 9, tested extensively and
UX improved. Invalidation\WildcardPathInvalidationdeclaration issue