Releases: wunderio/drupal-ping
Releases · wunderio/drupal-ping
Rename custom ping script
Renamed _ping.custom.php
to _ping.custom.example.php
to avoid delays in misconfigured systems.
composer.json
must contain a proper dropin-paths
configuration or this package will pollute the webroot.
Better Memcached handling. +Improvements
- Produce 'warning' instead of 'error' if Memcached fails. Reason: Drupal still keeps going, although slower.
- Add Drupal logging if available. Reason: Not all systems use
syslog()
orerror_log()
. - Capture output during the checks execution phase and display it. Reason: Sometimes if anything produces unexpected output that spoils response headers. So need to handle them differently.
Credits go to @hkirsman for the improvements of this release!
Dev env refactor. Remove some mtime code.
- Remove test file existence checking. It was fixed by keeping
mtime
in the filename. - README: Refactor development and testing documentation
- Update tests
- Refactor testing environment
NFS mtime fix
Fix the NFS mtime
issue by storing the timestamp in the filename.
NFS weirdnesses handling
Try to handle NFS shortcomings that show up especially when the ping is executed very frequently on a multi-container environment, in parallel. The main problems are:
- Filesystem test tiles show up much later after the creation, so immediate file operations on that file would fail.
- Mtime on those test files is random, usually much less than a current timestamp. This prevents ping to understand if the file is a leftover from some earlier execution or from a running parallel ping.
D10 compatibility
- Added D10 constraint to the info file
Bugfix
Ping failed when it could not write to the public dir.
This is fixed now and covered by two new additional tests.
Improvement
- Env variable values containing newlines provide inconsistent debug tokens. Fixed.
Tuning
Tuning
- Do not use GIT or PHP prefixes for the debug token calculation. They tend to differ between web and shell. This would lead to a situation where the shell-generated token is unusable over the web.
Refactor
Refactor
- Refactor error messages into JSON for easier automation
- Refactor debug token generation