🇦🇺Australia @marc.groth

Account created on 19 January 2009, almost 16 years ago
#

Recent comments

🇦🇺Australia marc.groth

Re-roll of the patch on the latest 3.x version of the module.

Some work is still required but I've run out of time. When saving the config page; an error is returned about the 'allow_none' key not being valid. Perhaps the default config needs to be updated?

🇦🇺Australia marc.groth

Attached is an updated patch to work on the latest version of the 3.x branch.

🇦🇺Australia marc.groth

Thanks @b_sharpe! I think this still needs a bit more work as existing images still show 'Please select an image style' next to them initially (until clicked). The same is true for images being pasted into the editor.

🇦🇺Australia marc.groth

One thing is that the 'Please select an image style' text is still displayed for any existing images. It disappears when the image is clicked. Not sure if it is possible to have it not display at all?

🇦🇺Australia marc.groth

Attached is a patch which seems to fix the issue. I'm not a front end developer though... So unsure if further changes are required, but this seems to fix the issue!

🇦🇺Australia marc.groth

Just wanted to add a 'me too' on stage_file_proxy 3.0.0-alpha2. Adding proxy_headers: '' to the config in the relevant config split folder fixed the issue for me

🇦🇺Australia marc.groth

This is still occurring in the latest version on the 3.x branch. The empty fieldsets also show on the 'Scheduled Transitions' tab (when using the https://drupal.org/project/scheduled_transitions module).

Attached is a patch that fixes this behavior. Not sure if it's the best way to achieve this; but it does the job for nested fieldsets (up to 3 x nested from my testing).

🇦🇺Australia marc.groth

For anyone looking for it, the Core issue mentioned by acbramley is here: https://www.drupal.org/project/drupal/issues/3075527 🐛 Adding links around embedded media through CKEditor might lead to invalid/complex markup when rendered Active

🇦🇺Australia marc.groth

Thanks @catch. That is a really good point! We have a number of outdated contrib modules. In the past we have been able to update Drupal core first; but it makes sense to get the contrib modules updated first.

And to answer your question, yes we are using the DER module.

Thanks for your suggestions and sorry for the temporary noise in this ticket :)

Everyone please disregard #46

🇦🇺Australia marc.groth

Similar to #42, I am also unable to add a default image. In fact I can't save any image field (new or re-used). The following error is logged:

InvalidArgumentException: Placeholders must have a trailing [] if they are to be expanded with an array of values. in Drupal\Core\Database\Connection->expandArguments() (line 896 of /var/www/html/web/core/lib/Drupal/Core/Database/Connection.php).

#0 /var/www/html/web/core/lib/Drupal/Core/Database/Connection.php(822): Drupal\Core\Database\Connection->expandArguments()
#1 /var/www/html/web/core/lib/Drupal/Core/Database/Query/Select.php(525): Drupal\Core\Database\Connection->query()
#2 /var/www/html/web/core/lib/Drupal/Core/Entity/Query/Sql/Query.php(271): Drupal\Core\Database\Query\Select->execute()
#3 /var/www/html/web/core/lib/Drupal/Core/Entity/Query/Sql/Query.php(84): Drupal\Core\Entity\Query\Sql\Query->result()
#4 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(607): Drupal\Core\Entity\Query\Sql\Query->execute()
#5 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityRepository.php(63): Drupal\Core\Entity\EntityStorageBase->loadByProperties()
#6 /var/www/html/web/core/modules/image/image.module(355): Drupal\Core\Entity\EntityRepository->loadEntityByUuid()
#7 [internal function]: image_entity_presave()
#8 /var/www/html/web/core/lib/Drupal/Core/Extension/ModuleHandler.php(409): call_user_func_array()
#9 /var/www/html/web/core/lib/Drupal/Core/Extension/ModuleHandler.php(388): Drupal\Core\Extension\ModuleHandler->Drupal\Core\Extension\{closure}()
#10 /var/www/html/web/core/lib/Drupal/Core/Extension/ModuleHandler.php(408): Drupal\Core\Extension\ModuleHandler->invokeAllWith()
#11 /var/www/html/web/core/lib/Drupal/Core/Config/Entity/ConfigEntityStorage.php(343): Drupal\Core\Extension\ModuleHandler->invokeAll()
#12 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(529): Drupal\Core\Config\Entity\ConfigEntityStorage->invokeHook()
#13 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityStorageBase.php(483): Drupal\Core\Entity\EntityStorageBase->doPreSave()
#14 /var/www/html/web/core/lib/Drupal/Core/Config/Entity/ConfigEntityStorage.php(257): Drupal\Core\Entity\EntityStorageBase->save()
#15 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityBase.php(352): Drupal\Core\Config\Entity\ConfigEntityStorage->save()
#16 /var/www/html/web/core/lib/Drupal/Core/Config/Entity/ConfigEntityBase.php(609): Drupal\Core\Entity\EntityBase->save()
#17 /var/www/html/web/modules/contrib/field_permissions/field_permissions.module(137): Drupal\Core\Config\Entity\ConfigEntityBase->save()
#18 [internal function]: field_permissions_field_config_edit_form_builder()
#19 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityForm.php(307): call_user_func_array()
#20 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityForm.php(171): Drupal\Core\Entity\EntityForm->buildEntity()
#21 /var/www/html/web/core/modules/field_ui/src/Form/FieldConfigEditForm.php(278): Drupal\Core\Entity\EntityForm->afterBuild()
#22 [internal function]: Drupal\field_ui\Form\FieldConfigEditForm->afterBuild()
#23 /var/www/html/web/core/lib/Drupal/Core/Form/FormBuilder.php(1084): call_user_func_array()
#24 /var/www/html/web/core/lib/Drupal/Core/Form/FormBuilder.php(579): Drupal\Core\Form\FormBuilder->doBuildForm()
#25 /var/www/html/web/core/lib/Drupal/Core/Form/FormBuilder.php(325): Drupal\Core\Form\FormBuilder->processForm()
#26 /var/www/html/web/core/lib/Drupal/Core/Entity/EntityFormBuilder.php(48): Drupal\Core\Form\FormBuilder->buildForm()
#27 /var/www/html/web/core/modules/field_ui/src/Controller/FieldConfigAddController.php(62): Drupal\Core\Entity\EntityFormBuilder->getForm()
#28 [internal function]: Drupal\field_ui\Controller\FieldConfigAddController->fieldConfigAddConfigureForm()
#29 /var/www/html/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array()
#30 /var/www/html/web/core/lib/Drupal/Core/Render/Renderer.php(627): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#31 /var/www/html/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(121): Drupal\Core\Render\Renderer->executeInRenderContext()
#32 /var/www/html/web/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext()
#33 /var/www/html/vendor/symfony/http-kernel/HttpKernel.php(181): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}()
#34 /var/www/html/vendor/symfony/http-kernel/HttpKernel.php(76): Symfony\Component\HttpKernel\HttpKernel->handleRaw()
#35 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/Session.php(58): Symfony\Component\HttpKernel\HttpKernel->handle()
#36 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(48): Drupal\Core\StackMiddleware\Session->handle()
#37 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/ContentLength.php(28): Drupal\Core\StackMiddleware\KernelPreHandle->handle()
#38 /var/www/html/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\ContentLength->handle()
#39 /var/www/html/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass()
#40 /var/www/html/web/modules/contrib/shield/src/ShieldMiddleware.php(270): Drupal\page_cache\StackMiddleware\PageCache->handle()
#41 /var/www/html/web/modules/contrib/shield/src/ShieldMiddleware.php(155): Drupal\shield\ShieldMiddleware->bypass()
#42 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(48): Drupal\shield\ShieldMiddleware->handle()
#43 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(51): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle()
#44 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/AjaxPageState.php(36): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle()
#45 /var/www/html/web/modules/contrib/remove_http_headers/src/StackMiddleware/RemoveHttpHeadersMiddleware.php(49): Drupal\Core\StackMiddleware\AjaxPageState->handle()
#46 /var/www/html/web/core/lib/Drupal/Core/StackMiddleware/StackedHttpKernel.php(51): Drupal\remove_http_headers\StackMiddleware\RemoveHttpHeadersMiddleware->handle()
#47 /var/www/html/web/core/lib/Drupal/Core/DrupalKernel.php(704): Drupal\Core\StackMiddleware\StackedHttpKernel->handle()
#48 /var/www/html/web/index.php(19): Drupal\Core\DrupalKernel->handle()
#49 {main}

I'm not able to add a dynamic 'Content' reference field:

Drupal\Core\Entity\EntityStorageException: 'field_storage_config' entity with ID 'node.field_content_reference' already exists. in Drupal\Core\Entity\EntityStorageBase->doPreSave() (line 519 of core/lib/Drupal/Core/Entity/EntityStorageBase.php).

And also not able to add a regular 'Content' reference field:

InvalidArgumentException: Field field_new_content_reference is unknown. in Drupal\Core\Entity\ContentEntityBase->getTranslatedField() (line 616 of core/lib/Drupal/Core/Entity/ContentEntityBase.php). Drupal\Core\Entity\ContentEntityBase->get() (Line: 116)

All of these issues are only in 10.2.x (including the 10.2.4). 10.1.8 and earlier work fine.

I did notice that the UI for this functionality has changed in the 10.2 branch; so assume this is related.

🇦🇺Australia marc.groth

For those wanting to implement this sooner... This module seems to be very promising: https://www.drupal.org/project/ckeditor5_inline_styles

🇦🇺Australia marc.groth

It looks like this is a lot more essential now with the latest version of Drupal core. The module has the following message on the 'Available updates' page:

Project not supported: This project is no longer supported, and is no longer available for download. Disabling everything included by this project is strongly recommended!

I assume that this is because there is no official Drupal 10 version (which this issue will fix)

🇦🇺Australia marc.groth

+1 for the patch. Without it (and without any other modules) the /user/[uid] page results in a 403 access denied. This means that whenever a user logs in, this is the first page that they see.

It would be a lot better if this just redirected the user (which is what the patch achieves).

🇦🇺Australia marc.groth

Yep, patch #12 also working this side.

Drupal core: 10.1.5
Adminimal Theme: 8.x-1.7

🇦🇺Australia marc.groth

It looks like #2868252 may be useful.

🇦🇺Australia marc.groth

Patch #13 no longer applies with the latest version of this module. Attached is a re-patch

🇦🇺Australia marc.groth

I just noticed that a line break is added to the .info.yml file as part of this patch which actually breaks when Drupal metadata is added to the file (because the line break should not be there according to the original file). I have attached an updated patch that takes this into account.

The original .info.yml file will need to updated to include the line break if needed (which is suggested to keep it consistent with Drupal coding standards).

🇦🇺Australia marc.groth

Thanks @earthday47. I was able to use your PR to create a patch which I applied to the module... Which makes it D10 compatible.

I have attached the patch in case it is useful for somebody.

🇦🇺Australia marc.groth

Thanks agentrickard. It looks like the latest version of this module (2.0.1) takes care of this by way of user permissions (/admin/people/permissions/module/workbench_access).

There is a way to get this working now so this is no longer an issue.

🇦🇺Australia marc.groth

A workaround for this is to set the target explicitly in hook_migration_plugins_alter().

This requires a custom module; but in my case I already have one for other migration tasks so that isn't a big deal. This is my code in case it is useful for anyone else (you may need to adjust accordingly):

$pathauto_update_actions = [
  'pathauto_file_update_action',
  'pathauto_node_update_action',
  'pathauto_taxonomy_term_update_action',
  'pathauto_user_update_action',
];
foreach ($pathauto_update_actions as $pathauto_update_action) {
  $migrations['d7_action']['process']['plugin'][0]['map'][$pathauto_update_action] = 'pathauto_update_alias';
}
🇦🇺Australia marc.groth

Also FWIW, this is not specific to Drupal 10 and instead relates to PHP 8.1. I have tested this on Drupal 9.4.8 and 9.4.11 with the same results.

🇦🇺Australia marc.groth

Upon further investigation, it seems that changing that line of code breaks other arguments.

It seems that this code:

$arg = $arg !== '' ? $arg : NULL;

Should be changed to something like:

$arg = $arg !== '' ? $arg : -1;

That fixes it on my side without breaking anything else (from what I can see).

This is on line 1094

🇦🇺Australia marc.groth

I am coming across the same issue; and as far as I can tell it is not an issue with custom code.

This is my scenario:

I have a view that includes 2 arguments. The first (and problematic) one is 'Has taxonomy term ID'. I have default values set for this; but if none are found (i.e. there is no valid taxonomy term), then the resulting value is NULL. It looks like that is because of this line of code:

$arg = (isset($this->args[$position]) && $this->args[$position] !== '') ? $this->args[$position] : NULL;

Which can be found in the _buildArguments() function in the ViewExecutable.php class.

Changing this value to:

$arg = (isset($this->args[$position]) && $this->args[$position] !== '') ? $this->args[$position] : '';

Fixes the issue for me... But I'm not sure what the knock on effects may be for a change like this. If there are no foreseeable issues, then I can provide a patch with this change.

The following line of code may also need updating (possibly removing?), in case the code is ever executed (in which case the NULL value will again break functionality):

$arg = $arg !== '' ? $arg : NULL;

This is also in the same function, a few lines below the aforementioned one.

🇦🇺Australia marc.groth

I am still encountering this issue even after enabling the 'pathauto' and 'action' modules first.

I cleared the cache and ran the following command: drush migrate-import d7_action --update

Which results in the following error:

 [error]  The "pathauto_node_update_action" plugin does not exist. Valid plugin IDs for Drupal\Core\Action\ActionManager are: comment_unpublish_by_keyword_action, file_delete_action, file_permanent_action, file_temporary_action, node_assign_owner_action, node_unpromote_action, node_promote_action, node_make_sticky_action, node_unpublish_by_keyword_action, node_make_unsticky_action, user_add_role_action, user_block_user_action, user_cancel_user_action, user_remove_role_action, user_unblock_user_action, pathauto_update_alias, entity:delete_action:comment, entity:delete_action:media, entity:delete_action:node, action_send_email_action, action_goto_action, action_message_action, entity:publish_action:block_content, entity:publish_action:comment, entity:publish_action:media, entity:publish_action:menu_link_content, entity:publish_action:node, entity:publish_action:path_alias, entity:publish_action:taxonomy_term, entity:publish_action:paragraph, entity:save_action:block_content, entity:save_action:comment, entity:save_action:file, entity:save_action:media, entity:save_action:menu_link_content, entity:save_action:node, entity:save_action:taxonomy_term, entity:save_action:user, entity:unpublish_action:block_content, entity:unpublish_action:comment, entity:unpublish_action:media, entity:unpublish_action:menu_link_content, entity:unpublish_action:node, entity:unpublish_action:path_alias, entity:unpublish_action:taxonomy_term, entity:unpublish_action:paragraph, pathauto_file_update_action (/var/www/html/web/core/lib/Drupal/Component/Plugin/Discovery/DiscoveryTrait.php:53)
 

I did note that the system.actions config file is named: system.action.pathauto_update_alias_node.yml with the ID of 'pathauto_update_alias_node'. This differs from what the migration is looking for ('pathauto_node_update_action')... Perhaps this is part of the issue?

Production build 0.71.5 2024