Avoid warning from imagecreatefrompng when loading png with obscure iCCP...
Problem/MotivationWhen a PNG (and some other rarely used formats) image contains iCCP chunk with sRGB IEC61966-2.1 color profile, libpng triggers warning:Warning: imagecreatefrompng(): gd-png: libpng...
View ArticleDefaultMailSystem implements MailSystemInterface::format() incorrectly
The current implementation is:public function format(array $message) { // Join the body array into one string. $message['body'] = implode("\n\n", $message['body']); // Convert any HTML to plain-text....
View ArticleExceptions during the setUp() or tearDown() method of a test are not handled
Right now if an exception is thrown during a test's setUp() or tearDown() method, the testbot shows a "CI error". See discussion at #2189345-192: run-tests.sh should exit with a failure code if any...
View ArticleExposed filter with multiple selections allowed generates error "Input...
Problem/MotivationSince I migrate my website to Drupal 10, I've had views that no longer work properly. My views have exposed fields with multiple selections allowed. If the ajax option is activated,...
View Articleremove field data sanitization from hook_field_load
I'm not too fond of the way we currently handle the 'sanitize' step (where field module should run check_markup() and stuff if needed) - currently on field_attach_view() , before building the render...
View ArticleAdd option to un-sticky table headers to benefit assistive tech users
Problem/MotivationSome accessibility concerns about the use of sticky table headers were brought up in #3070558: Implement bulk operation designs.@andrewmacpherson pointed out that the use of a sticky...
View ArticleRemove dependency on hardcoded classes in views template
In core drupal the view.views.html.twig contains the following: {% if rows -%} {{ rows }} {% elseif empty -%} {{ empty }} {% endif %} {{ pager }} And in Olivero and other theme implementations we...
View ArticleRemove a misleading comment from Updater::update()
Problem/MotivationFollow-up to #605272: Use a better directory when installing code via the update manager (documentation followup)This comment is obsolete and hence misleading and wrong in...
View ArticleExposed contextual taxonomy filter does not update title
Problem/MotivationI've found an issue with Override title not working inside contextual filtersTesting on a boilerplate version of drupal 8 I created 2 articles and attached a taxonomy term to them,...
View Article[D7] Don't trigger hook_file_download when no file is requested
This is a backport of: https://www.drupal.org/project/drupal/issues/3016814-------------------------Original text: ------------------------- I have a implementation of hook_file_download because I...
View ArticleNot able to add to List (text) field with "0" as the first machine...
Problem/MotivationI have a List (text) field that I ended up, for migration reasons, using the number 0 as the machine name of the first Allowed value. Migration went great. Now, months later, I need...
View Articledrupal_random_key() documentation for length of returned string is wrong
The documentation says "The base64 encoded result will have a length of up to 4 * $byte_count."This is wrong. I think it is always exactly ceil($byte_count * 4 / 3).Note that drupal_base64_encode()...
View ArticleEmpty Referrer String Should Produce Blank Output
I've been annoyed (for a while) that when you look at the Track tab on a node (say: node/10/track) if there are no referrers the page would display a long list of node/10/track as referrers.I've...
View ArticleAdd validation constraints to system.performance
Problem/Motivationsystem.performance has 4 property path that are not yet validatable:./vendor/bin/drush config:inspect --filter-keys=system.performance --detail --list-constraints ➜ 🤖 Analyzing…...
View ArticleTimestamp field items are affected by 2038 bug
Problem/MotivationThe timestamp field item storage type is [signed] int, which is currently 4 bytes in most DB systems (MySQL and PostgreSQL, SQLite is not affected). This results in having values...
View ArticleDisabled text formats can't be seen in the GUI
Problem/MotivationWhen you disable a text format it is not possible to re-enable it. This seems counter to the behavior in other situations, such as Views, which allows disabling than re-enabling a...
View ArticleImprove X-Drupal-Cache and X-Drupal-Dynamic-Cache headers, even for responses...
Problem/MotivationCurrently if a response is not cacheable Drupal sets X-Drupal-Dynamic-Cache = UNCACHEABLE, but in some cases it does not. See DynamicPageCacheSubscriber::onResponse for details.Steps...
View ArticleChange all README.txt files to README.md
Problem/MotivationIn #3192842: Make our README more welcoming by converting it into an "entrypoint" into the Drupal ecosystem we converted the base README file from README.txt to README.md. We should...
View ArticleImprove UX of system performance form max-age form input
Problem/MotivationThe max-age form input on the system performance form is constrained to an unusual set of values. The history as to why is shown below. The config value itself is constrained only to...
View ArticleProvide sane defaults for an Access Policy API method that was overlooked.
Problem/MotivationWe have sane defaults for the Drupal core scope and identifier all over, example: public function getItem(string $scope = AccessPolicyInterface::SCOPE_DRUPAL, string|int $identifier =...
View Article