Account created on 18 January 2009, about 16 years ago
#

Merge Requests

More

Recent comments

🇬🇧United Kingdom malcomio

This will be covered in 📌 Drupal 11 Compatibility Fixes Active .

@aesuk - this module serves a different purpose to search_api_algolia, as far as I can see.

It may make sense to create a feature request on that module to include the interface, but I think it probably makes sense to keep them separate.

🇬🇧United Kingdom malcomio

This will be handled in the 1.1.x branch - see 📌 Automated Drupal 10 compatibility fixes Needs review

🇬🇧United Kingdom malcomio

Hello, has there been any update? I'm still interested in maintaining this module.

Thanks

🇬🇧United Kingdom malcomio

I had observed the same error when trying to add a second dependency:

1. Field 2 is required if field 1 has value X
2. Field 3 is visible if field 2 has value Y

This is not quite the same scenario as the original description, but very similar.

After applying the patch, I got the following error:

TypeError: Drupal\conditional_fields\ConditionalFieldsFormHelper::addStateToGroup(): Argument #1 ($new_states) must be of type array, null given, called in /var/www/html/docroot/modules/contrib/conditional_fields/src/ConditionalFieldsFormHelper.php on line 276 in Drupal\conditional_fields\ConditionalFieldsFormHelper->addStateToGroup() (line 478 of modules/contrib/conditional_fields/src/ConditionalFieldsFormHelper.php).
Drupal\conditional_fields\ConditionalFieldsFormHelper->processDependeeFields(Array, Array, Array, Array, '') (Line: 154)
Drupal\conditional_fields\ConditionalFieldsFormHelper->processDependentFields() (Line: 108)
Drupal\conditional_fields\ConditionalFieldsFormHelper->afterBuild(Array, Object) (Line: 184)
conditional_fields_form_after_build(Array, Object)
call_user_func_array('conditional_fields_form_after_build', Array) (Line: 1082)
Drupal\Core\Form\FormBuilder->doBuildForm('node_document_edit_form', Array, Object) (Line: 579)
Drupal\Core\Form\FormBuilder->processForm('node_document_edit_form', Array, Object) (Line: 326)
Drupal\Core\Form\FormBuilder->buildForm(Object, Object) (Line: 591)
Drupal\conditional_fields\Form\ConditionalFieldEditForm->getDummyField('node', 'document', Array, Object, Array) (Line: 153)
Drupal\conditional_fields\Form\ConditionalFieldEditForm->buildForm(Array, Object, 'node', 'document', 'field_lawful_basis', 'ade41c73-6578-4e92-ad0a-514a0cbc7d6d')
call_user_func_array(Array, Array) (Line: 536)
Drupal\Core\Form\FormBuilder->retrieveForm('conditional_field_edit_form', Object) (Line: 284)
Drupal\Core\Form\FormBuilder->buildForm(Object, Object) (Line: 73)
Drupal\Core\Controller\FormController->getContentResult(Object, Object)
call_user_func_array(Array, Array) (Line: 123)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 638)
Drupal\Core\Render\Renderer->executeInRenderContext(Object, Object) (Line: 121)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) (Line: 97)
Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() (Line: 181)
Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object, 1) (Line: 76)
Symfony\Component\HttpKernel\HttpKernel->handle(Object, 1, 1) (Line: 53)
Drupal\Core\StackMiddleware\Session->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (Line: 28)
Drupal\Core\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 32)
Drupal\big_pipe\StackMiddleware\ContentLength->handle(Object, 1, 1) (Line: 116)
Drupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1) (Line: 90)
Drupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (Line: 36)
Drupal\Core\StackMiddleware\AjaxPageState->handle(Object, 1, 1) (Line: 51)
Drupal\Core\StackMiddleware\StackedHttpKernel->handle(Object, 1, 1) (Line: 741)
Drupal\Core\DrupalKernel->handle(Object) (Line: 19)
🇬🇧United Kingdom malcomio

See 🐛 Nested field groups improperly display as "Disable" in the admin UI Active for details of an issue affecting the field_group module - the core patch seems to fix that for me.

@jsimonis - how are you applying the patch, and what are the failures that you see when trying to apply the patch?

https://vazcell.com/blog/how-apply-patch-drupal-9-and-drupal-10-composer is a good explanation of how to do this.

🇬🇧United Kingdom malcomio

@asghar rather than uploading patches, it's better to create merge requests.

See https://www.drupal.org/docs/develop/git/using-gitlab-to-contribute-to-dr... for more info.

🇬🇧United Kingdom malcomio

Seems that this line was added in #2731283: Display configuration overrides in the settings form , but it's never had any conditional logic around it.

🇬🇧United Kingdom malcomio

It seems like the Search UI App documentation at https://www.searchstax.com/docs/searchstudio/searchstax-studio-searchjs-... may be incomplete or out of date - I wasn't able to get that code working.

However, from within the SearchStax interface, at https://searchstudio.searchstax.com/search-ui/app there's a Search Experience Template URL section, which links to a sample page.

Based on that JavaScript I've got something basic working.

🇬🇧United Kingdom malcomio

I've observed this in the following scenario:

On a site running Drupal core 10.4.1, our local build process imports a sanitised database backup, which does not contain any field_deleted_data tables.

After the import it runs the update hooks.
One of our update hooks calls \Drupal::service('module_installer')->uninstall() to uninstall a custom module.

That module's hook_uninstall implementation has an array of taxonomy vocabulary names, and deletes them in a loop:

foreach ($taxonomy as $vid) {
  $vocabulary = Vocabulary::load($vid);
  $vocabulary?->delete();
}

The exception is thrown as part of this.

The strange thing is that this doesn't seem to be happening on our test environments, which use MySQL 5.7.40-log, or on local development machines using Windows, where we also use MySQL 5.7.

The problem only seems to be reproducible on my M1 Mac, where I'm using mysql 8.0.38.

The difference is because there didn't seem to be an ARM compatible Docker image of 5.7 when I was setting up.

But this may be a clue to what is triggering the problem - is it only reproducible on MySQL 8?

The patch from #44 didn't seem to make any difference to my problem.

🇬🇧United Kingdom malcomio

Have tried contacting asgorobets to offer to maintain https://www.drupal.org/project/watchdog_file , but no reply so far.

🇬🇧United Kingdom malcomio

@suryabhi I don't think that those exceptions relate to this module, and I don't see why we would need the change you're suggesting in merge request 21.

I think the appropriate status for this issue is probably "Fixed"

🇬🇧United Kingdom malcomio

This change seems to cause problems with existing filters that have markdown enabled.

🇬🇧United Kingdom malcomio

If an update hook in another module tries to make changes to permissions as part of the same deployment where search_api_exclude_entity is being upgraded, there's no way to ensure that the other hook runs after search_api_exclude_entity has updated the permissions.

That means that the permission change in the other module fails, because the outdated search_api_exclude_entity permissions are still assigned to some roles.

By using an update hook in search_api_exclude_entity, the custom module can declare a dependency on it.

🇬🇧United Kingdom malcomio

Odd - the test failures relate to PHP code sniffer issues in files that aren't being changed - this change is only a CSS change.

Have merged 2.x into this branch and pushed.

🇬🇧United Kingdom malcomio

Setting to "needs review", given that there are patches attached.

Have created a merge request based on the combination of the patches, although I'm not entirely convinced by the return statements inside the catch blocks.

I haven't been able to reproduce this, but wanted to see if this would address 🐛 Error when saving text format - configuration property id doesn't exist Active .

🇬🇧United Kingdom malcomio

malcomio made their first commit to this issue’s fork.

🇬🇧United Kingdom malcomio

With the latest changes in the merge request, this seems to be working as expected.

I think that this may be a side effect of the patch that we're using for Add support for Commonmark v2 Active - the plugins that seem to be causing this problem are all related to CommonMark.

Ideally we'd address the problem that causes these plugins to be missing an id, rather than just deleting them altogether.

🇬🇧United Kingdom malcomio

malcomio made their first commit to this issue’s fork.

🇬🇧United Kingdom malcomio

I think that this may be related to Add support for Commonmark v2 Active - see comment #14 there

🇬🇧United Kingdom malcomio

malcomio made their first commit to this issue’s fork.

🇬🇧United Kingdom malcomio

Here's how it looks:

🇬🇧United Kingdom malcomio

malcomio made their first commit to this issue’s fork.

🇬🇧United Kingdom malcomio

Having applied this patch and the patch from 🐛 Deprecated FormElement Active , upgrade status reports the following:

drush us-a phone_number

================================================================================
Phone Number,  2.0.0-alpha7
Scanned on Mon, 9 Dec 2024 - 17:09

FILE:
modules/contrib/phone_number/modules/sms_phone_number/src/Element/SmsPhoneNumber
.php

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Check manually 103  The 'sms_phone_number/element' library is not defined       
                    because the defining extension is not installed. Cannot     
                    decide if it is deprecated or not.                          
--------------------------------------------------------------------------------
🇬🇧United Kingdom malcomio

The patch applies cleanly, and addresses the issue.

🇬🇧United Kingdom malcomio

Yes we're also seeing the same error - I don't think the issue should have been set to Needs Review.

Have marked the merge request as draft.

🇬🇧United Kingdom malcomio

We've tested the change in merge request 81, and it seems to work as expected.

🇬🇧United Kingdom malcomio

See also https://github.com/advisories/GHSA-jw86-5cjf-mv79

HTML Purifier 4.2.0 allows remote attackers to obtain sensitive information via a direct request to a .php file

🇬🇧United Kingdom malcomio

According to upgrade_status, there are the following issues to be addressed:

drush upgrade_status:analyze cache_browser
 [notice] Processing /var/www/app/docroot/modules/contrib/cache_browser.

================================================================================
Cache browser,  1.0.0
Scanned on Thu, 21 Nov 2024 - 17:23

FILE: modules/contrib/cache_browser/src/Controller/OverviewController.php

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Check manually 168  Call to deprecated function format_size(). Deprecated in    
                    drupal:10.2.0 and is removed from drupal:11.0.0. Use        
                    Drupal\Core\StringTranslation\ByteSizeMarkup::create($size, 
                    $langcode) instead.                                         
--------------------------------------------------------------------------------

FILE: modules/contrib/cache_browser/src/Services/CacheBinCollectionFactory.php

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Check manually 13   Class                                                       
                    Drupal\cache_browser\Services\CacheBinCollectionFactory     
                    implements deprecated interface                             
                    Symfony\Component\DependencyInjection\ContainerAwareInterfac
                    e: since Symfony 6.4, use dependency injection instead      
--------------------------------------------------------------------------------
Check manually 15   Usage of deprecated trait                                   
                    Symfony\Component\DependencyInjection\ContainerAwareTrait in
                    class                                                       
                    Drupal\cache_browser\Services\CacheBinCollectionFactory:    
                    since Symfony 6.4, use dependency injection instead         
--------------------------------------------------------------------------------

FILE: modules/contrib/cache_browser/cache_browser.info.yml

STATUS         LINE                           MESSAGE                           
--------------------------------------------------------------------------------
Check manually 4    Value of core_version_requirement: ^10 is not compatible    
                    with the next major version of Drupal core. See             
                    https://drupal.org/node/3070687.                            
--------------------------------------------------------------------------------
🇬🇧United Kingdom malcomio

This change seems to fix the problem as far as I can see.

I've seen different approaches in some other modules though:

https://git.drupalcode.org/project/digital_signage_framework/-/commit/c4...
https://git.drupalcode.org/project/do_username/-/merge_requests/13/diffs

I guess that the good thing about this approach is that it is backwards compatible

🇬🇧United Kingdom malcomio

There isn't a merge request or a patch, so the status shouldn't be Needs review.

The fork does have some change in it.

🇬🇧United Kingdom malcomio

Should this have been closed as outdated?

There's still a spaceless tag in https://git.drupalcode.org/project/flag/-/blob/8.x-4.x/templates/flag.ht..., and a scan with Upgrade Status reports incompatibility with Drupal 11 in themes that have templates based on it.

See also 💬 Spaceless Tag Issue Fixed

🇬🇧United Kingdom malcomio

I noticed that the commonmark-external-links plugin is marked as deprecated.

This annotation was committed for #3142418: Support multiple libraries per plugin .

I tried deleting it, and clearing the cache, but got the same error for commonmark-heading-permalink (which isn't marked as deprecated.

🇬🇧United Kingdom malcomio

I appreciate that this is likely to be a major shift in the way that the module works, and it may be more appropriate to manage this use case in a different module.

🇬🇧United Kingdom malcomio

Even with our patch to facets in place, we encountered this error again, although in a slightly odd scenario that came up via a penetration test, with some special characters in the URL.

Our search results page is at /search-content - the security scanner managed to trigger this exception at /search-content%22%3bexpr%20268409241%20-%2028291%3b%22?search= (and some other similar URLs).

When we apply the patch in #12, it addresses the issue.

The error mentioned in #21 seems to have been happening because we were using an incorrect patch for 🐛 Links with "Show hierarchy in dropdown" disabled gives "Deprecated function: range(): Passing null to parameter #1" Active

🇬🇧United Kingdom malcomio

In our case, this seems to relate to facets, as mentioned in #20

The mention of better_exposed_filters in the stack trace isn't the root of the problem for us.

When a facets block appears on a 404 page, it causes problems with URL generation.

I think that the appropriate fix relates to one of these issues:

#3291943: When rendering facets on non search page, it throws error instead of 404 on 404 pages
🐛 ResourceNotFoundException with ajax facets when site running in subfolder Needs review

In \Drupal\facets\Plugin\Block\FacetBlock::build, if we add a condition to stop the block rendering on 404 pages, the problem goes away.

@idflood, @alex.bucach, @adrianopulaz, @johan den hollander - do the stack traces you see also mention facets?

🇬🇧United Kingdom malcomio

With this patch included, we observed a strange issue where BEF checkboxes showed 0 instead of the expected markup.

🇬🇧United Kingdom malcomio

We ran into this problem after switching from a patched version of 2.0.x-dev at commit 3e6c1ea7 to 2.0.9.

It's an odd issue, as it only seems to happen for anonymous users without any cookies from our site, and only on our (acquia) hosting, not on local dev environments.

MR 180 doesn't seem to have any changes any more.

One thing we will try is catching the ResourceNotFoundException and throwing a NotFoundHttpException

🇬🇧United Kingdom malcomio

Having tested further, it seems like the patch fixes the problem for logged-in users, but not anonymous.

🇬🇧United Kingdom malcomio

We started seeing this issue recently with better_exposed_filters 6.0.6 after upgrading core

As with #15, we have an exposed search form in the header block which shows on all pages.

From our tests so far, the patch in #12 seems to fix the issue, but we will test further.

I've updated the steps to reproduce.

🇬🇧United Kingdom malcomio

I wasn't able to reproduce the issue mentioned in #4, but I think the problem is that the JS adds the "form-required" class to the legend and the span inside it.

This change fixes it for me in a subtheme of adminimal_theme

Probably need to check what happens in different themes - are there some themes where the class should go on the legend?

The default behaviour for a required field seems to be that it's on the span: https://git.drupalcode.org/project/drupal/-/blob/11.x/core/themes/claro/...

Also the logic inside that JS file isn't very clear - would be good to review in more detail.

It was added in this commit for 🐛 If target field is multiple checkbox and condition is required then all checkboxes are being required. Fixed

🇬🇧United Kingdom malcomio

malcomio made their first commit to this issue’s fork.

🇬🇧United Kingdom malcomio

malcomio made their first commit to this issue’s fork.

Production build 0.71.5 2024