Account created on 6 July 2021, about 4 years ago
  • Support Developer Web at Zoocha 
#

Merge Requests

More

Recent comments

🇧🇷Brazil brandonlira

I’ve applied the adjustments so that all core profiles (Standard, Minimal, Umami, and testing profiles) now namespace their dependencies and themes with `drupal:`.

Could someone please review the MR !1262?

Thank you!

🇧🇷Brazil brandonlira

brandonlira changed the visibility of the branch 3003877-namespace-all-core-profile to active.

🇧🇷Brazil brandonlira

brandonlira changed the visibility of the branch 3003877-namespace-all-core-profile to hidden.

🇧🇷Brazil brandonlira

Any suggestions on what we still need to do here, the changes are not correct yet?

🇧🇷Brazil brandonlira

This looks correct to me, is anything else needed here?

🇧🇷Brazil brandonlira

Participants:
Brandon Lira, Bruna Emerich, Dani Volpe, Andreia Baesso, Rod Volpe, João Paulo, Isa Beraldi

Discussion Points:

  • Website launched: The official website is now live, including ticket sales and the Call for Speakers form.
  • Mailchimp integration: We’ve connected the registration forms to Mailchimp to build our mailing list.
  • Talks structure: Defined talk durations and suggested topics.
  • Sponsorship: Shared ideas for potential sponsors and discussed approach strategies.
  • Promotion: Discussed ongoing social media promotion strategies to boost visibility and engagement.

Next steps:
Continue promoting CFP and ticket sales, and begin contacting sponsors.

🇧🇷Brazil brandonlira

In our third planning call, held on Wednesday, August 27th, we discussed the following topics:

  1. Venue confirmed: The event will be hosted at Balbúrdia, in downtown Florianópolis.
  2. Ticketing: The event will be paid. We'll use Eventbrite as the ticketing platform.
  3. Sponsors: We discussed potential sponsor tiers and created a preliminary list of companies to contact.
  4. Website: Planned launch by the end of August with basic information and ticket sales enabled.
  5. Payment process: Decided to charge for attendance to help cover costs and attract quality speakers.
  6. Promotion strategy: Ticket sales and the call for speakers will be promoted via social media, Telegram, and WhatsApp groups.

Next step: Finalize sponsor materials, publish call for speakers, and begin outreach.

🇧🇷Brazil brandonlira

A catch-up meeting was held on August 14, 2025, with the participation of:

  • Rodrigo Volpe
  • Bruna Emerich
  • Brandon Lira
  • João Paulo Schoemberger

During the meeting, the core team for the event was confirmed, along with their respective roles:

Project Manager: Rodrigo Volpe and Bruna Emerich

Logistics & Operations Lead: Isabel Araldi

Finance & Sponsorship Lead: Rodrigo Volpe

Content & Program Lead: Brandon Lira

Communications & Marketing Lead: João Paulo Schoemberger

Support Roles (Volunteers): Daniela Volpe

Key discussion points:

  • The venue for the event is still being finalised, pending responses from two possible locations.
  • The event will take place in Florianópolis.
  • The official event website is ready.
  • Social media accounts have been created and the promotion has started.

The sponsorship materials are currently under review.

🇧🇷Brazil brandonlira

I corrected the .info.yml file MR!12621 that was triggering a coding standards warning from phpcs, replacing the incorrect core: prefix with drupal: in the dependencies section, as required by the DrupalPractice.InfoFiles.NamespacedDependency.NonNamespaced rule.

Other files were not modified, as they did not produce any coding standards errors.

Ready for review!

🇧🇷Brazil brandonlira

Hi @xjm, I’ve updated the MR !9611 with capitalised strings and periods as suggested.
It’s ready for review!
Let me know if anything else is needed.
Thanks!

🇧🇷Brazil brandonlira

Great, I'll take a look at that. Thanks @xjm for the guidance.

🇧🇷Brazil brandonlira

Hi @aaron, I tested this and it's working as expected.

The export file correctly shows the spelling correction in the expected format:
marmalade,mermelad,marmellade => marmelade

Thanks for the fix, everything looks good!

🇧🇷Brazil brandonlira

Hi @joachim,

I’ve made the changes you suggested, removed the docblock from __construct() and added the inline comment at the top of the method.

About the wording: I’m not sure if any of it was AI-generated, as the work had already been started by someone else. I just continued from what was already there.

Let me know if anything else needs changing.

🇧🇷Brazil brandonlira

Hi @joachim,

Fixed all issues flagged by @needs-review-queue-bot:

  • Removed unused imports
  • Fixed spacing before `array_merge(...)`

Let me know if a rebase to 11.x is needed, happy to do it if required.

Thanks!

🇧🇷Brazil brandonlira

Hi @joachim,

I've removed MR !11745 the method-level docblocks for getWeight() and setWeight() as suggested. The class-level and constructor documentation were kept to clarify usage requirements. Let me know if anything else should be adjusted.

Thank you!

🇧🇷Brazil brandonlira

Hi @smustgrave,

I've updated the issue summary to reflect the purpose and outcome of this task, including steps to reproduce the issue from a documentation perspective, and clarifying that this was a documentation-only change.

Please let me know if any further adjustments are needed.

Thanks!

🇧🇷Brazil brandonlira

Hi @aaron.ferris

Manually tested MR !25.

  • Confirmed the issue initially: anonymous users received `The 'administer search api synonyms' permission is required` when accessing `/jsonapi/search_api_synonym/search_api_synonym`.
  • Checked out the MR !25 branch locally.
  • Created two synonym entries (one regular synonym and one spelling error) to test.
  • Granted the new permission `View search api synonyms` to the Anonymous role.
  • Retested the endpoint as an anonymous user.
  • Synonym entities were successfully returned in the JSON:API response.
  • Removing the permission again blocks access as expected.
🇧🇷Brazil brandonlira

Hi @aaron.ferris,

I manually tested MR !22.

  • Selected "Every Cron run" in the configuration form.
  • Triggered cron multiple times manually.
  • Confirmed that the synonym export was executed on each cron run.

Verified that the following messages appeared in the logs:

  • Executing export
  • Export for English complete

Confirmed expected behaviour without requiring a time-based interval.
Looks good to me.
Thank you!

🇧🇷Brazil brandonlira

Hi @mradcliffe
I've made the requested adjustments:

  1. Replaced the _custom_access on the migrate_drupal_ui.log route with _permission: 'access site reports'.
  2. Updated MigrateControllerTest to create and log in a user with the proper permissions (access site reports and administer views), instead of relying on $this->rootUser.
  3. Removed the outdated @todo and the usesSuperUserAccessPolicy flag.

All tests are now passing successfully.
I'll ask someone to test these changes tomorrow during our Contrib Day.

Thank you all for the helpful guidance throughout this issue!

🇧🇷Brazil brandonlira

Thanks so much @mradcliffe and @kristiaanvandeneynde — that clears things up perfectly!

I’ll make the adjustments now based on the updated direction: using access site reports, removing the UID 1 check, and updating the test.

Really appreciate your help — I’ll update the MR soon!

🇧🇷Brazil brandonlira

Hi @mradcliffe, thanks for highlighting that.

To clarify why this test still requires super user access:

Although the test doesn't perform migration actions itself, it accesses the /admin/reports/upgrade route. That route — as defined in migrate_drupal_ui.routing.yml — uses a _custom_access requirement pointing to \Drupal\migrate_drupal_ui\MigrateAccessCheck::checkAccess().

This access check explicitly allows only UID 1:

return AccessResultAllowed::allowedIf((int) $account->id() === 1);

o even just viewing the upgrade report (MigrateController::showLog) fails unless the test runs as the root user. Removing usesSuperUserAccessPolicy = TRUE causes an access denied error.

That’s why in the MR, we restored the flag and removed only the outdated @todo. A broader solution (e.g., updating that route to rely on a permission like access site reports) would be ideal, but it's out of scope for this issue.

Happy to help push that discussion further if needed.

Thank you!

🇧🇷Brazil brandonlira

Hi,
I've rebased the branch onto the latest 11.x and fixed the coding standard issues.

All tests are now passing.

Please review when you have a moment, and feel free to let me know if anything else need.

Thank you!

🇧🇷Brazil brandonlira

Hi, could you please review this MR !11645?

I've restored the usesSuperUserAccessPolicy = TRUE property and removed only the outdated @todo, as discussed.
This change reflects the current behaviour where Migrate UI still requires user 1.

Please feel free to review, and if anything needs to be adjusted or clarified, please let me know!
Thank you!

🇧🇷Brazil brandonlira

Hi, I've created a new clean branch to address this issue.

The previous branch had too many unrelated commits and was outdated, causing multiple conflicts and making it hard to review.
This new branch includes only the intended change: replacing all usages of the deprecated assertWaitOnAjaxRequest() with assertExpectedAjaxRequest() across the core/ directory.

A new merge request has been opened from this clean branch.

Could someone please review and test this updated MR !12108?
Thank you!

🇧🇷Brazil brandonlira

Hi @quietone
I've addressed all the feedback:

  • Clarified the wording regarding the anonymous user to explain why it's used during cron execution.
  • Wrapped all PHPDoc lines at 80 characters to comply with Drupal coding standards.
  • Removed the out-of-scope change in Cron.php as suggested.

Please let me know if anything else is needed — happy to make further adjustments if required.

Thanks again for the guidance!

🇧🇷Brazil brandonlira

brandonlira changed the visibility of the branch 3515604-use-drupal-behaviours to hidden.

🇧🇷Brazil brandonlira

Hi everyone,
I Fixed the PHPCS issues and updated service usage with dependency injection. The code is ready for review.

Thank you!

🇧🇷Brazil brandonlira

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

🇧🇷Brazil brandonlira

Hi @aaron,
I adjusted the MR as suggested, could you please review it again.
Thanks.

🇧🇷Brazil brandonlira

Fixed broken link Reroll a patch

🇧🇷Brazil brandonlira

Hi @aaron, I am assigning this ticket to myself to work on our contrib day!

🇧🇷Brazil brandonlira

Updated the outdated/broken link to the current rerolling patches documentation page.

🇧🇷Brazil brandonlira

Sorry in my previous comment I uploaded the wrong image.

Thanks!

🇧🇷Brazil brandonlira

Hi everyone,
The "Timer Completed" message can now be translated through the User Interface Translation screen.

This MR! 17 resolves the feature request.
Screenshot attached showing the string translated to Portuguese (Brazil).

Thanks!

🇧🇷Brazil brandonlira

This patch replaces the preg_replace() used to locate .webp derivative files with the getWebpDestination() method to ensure consistent file naming and allow proper deletion when the image is updated (e.g., after focal point change).

Cheers!

🇧🇷Brazil brandonlira

Hi @jwilson3,

The original merge request seemed to be abandoned and the title was still incorrect.
Since there was no update, I created a new branch using cherry-pick and opened a new MR with the correct title as suggested.

Some minor adjustments were also made to fix issues that were causing test failures.

Let me know if there's anything that needs to be changed or improved.

🇧🇷Brazil brandonlira

brandonlira changed the visibility of the branch 3436435-blockcreationtraitplaceblock-should-explain to hidden.

🇧🇷Brazil brandonlira

I’ve rebased this issue branch with the latest changes from 11.x (via merge), resolved all merge conflicts, and ensured the code is up to date. All automated tests are passing successfully.

The issue is now ready for review.

Thanks!

🇧🇷Brazil brandonlira

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

🇧🇷Brazil brandonlira

Hi @joachim,

I’ve updated the comment to reflect that setRebuild(TRUE) is what triggers the behavior, as you suggested, while preserving the original intention of explaining how to get this behavior from a DX perspective.

I also rebased the branch onto the latest 11.x since it was many commits behind, to ensure the pipeline runs accurately.

Let me know if anything else needs adjusting!

🇧🇷Brazil brandonlira

Hi @smustgrave

I've now added a clear Proposed resolution section to the issue summary, describing the adjustments made to the PHPDoc and how it addresses the original problem.
Let me know if anything else needs to be clarified.

🇧🇷Brazil brandonlira

Hi @quietone

The previous MR (!8124) was quite outdated and significantly behind the 11.x branch. I initially attempted a rebase, but due to a large number of conflicts, it became difficult to manage cleanly.

To ensure a clean and conflict-free update, I’ve created a new branch and opened this fresh MR (!11606) with the necessary changes, fully rebased with the latest from 11.x.

All tests are now passing. Let me know if anything else is needed!

Thanks!

🇧🇷Brazil brandonlira

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

🇧🇷Brazil brandonlira

Hi @smustgrave,

Apologies if I might be misunderstanding something here, but I just want to clarify the intent behind this change to ensure I'm following the best approach. I'm still getting started with contributing to Drupal, and I really appreciate your guidance.

The issue summary suggests that handleEntityDelete() should be updated to use isLayoutCompatibleEntity(), but after reviewing the implementation, I noticed that removeByLayoutEntity($entity) does not fail if the entity is not layout-compatible. Instead, it simply attempts to clean up inline_block_usage, setting layout_entity_id and layout_entity_type to NULL if applicable. If no matching records exist, nothing happens, which makes me wonder if the extra check is truly necessary.

I just want to make sure I'm not missing something here:

  • Was there a specific issue that required adding isLayoutCompatibleEntity()?
  • Is there any scenario where calling removeByLayoutEntity() directly could cause unintended side effects?

If the check is needed for a reason I’m not seeing, I’ll be happy to update it accordingly. Otherwise, removing it might help simplify the logic while still ensuring the cleanup happens.

Again, thanks for your patience and feedback—I really appreciate learning from this process!

🇧🇷Brazil brandonlira

Hi @smustgrave

I have successfully rebased the branch with the latest changes from 11.x. The MR !7106 is now up to date, and the previous changes remain intact.

Additionally, I noticed that one test failed, but it does not appear to be related to the changes made in this MR.

Please let me know if you need any additional adjustments.

Thanks!

🇧🇷Brazil brandonlira

Hi @smustgrave,

I have successfully rebased the branch with the latest changes from 11.x. The MR is now up to date, and the documentation improvements remain intact.

Additionally, I have fixed the PHPCS violations by adjusting the line lengths to conform with Drupal coding standards.

I also noticed that some tests have failed (`Drupal\Tests\package_manager\Build\PackageInstallTest` and `Drupal\Tests\ckeditor5\FunctionalJavascript\ImageUrlProviderTest`), but they do not seem to be related to the changes made in this MR.

Let me know if any further adjustments are needed.

Thanks!

🇧🇷Brazil brandonlira

Hi all,
I have resolved the conflicts and reverted the method's argument definition as suggested MR! 5052. Let me know if any further adjustments are needed.

Thanks!

🇧🇷Brazil brandonlira

Hi all,
I removed the isLayoutCompatibleEntity($entity) check before calling removeByLayoutEntity($entity), as suggested.

Tests performed:

PHPUnit: All tests passed successfully, with no errors found. Only pre-existing skipped tests remained unchanged.

The change has been committed and submitted in the Merge Request. Awaiting feedback for any necessary adjustments!

Thank you!

🇧🇷Brazil brandonlira

I have created a new MR !11528 with the necessary documentation update.

This is now ready for review. Let me know if any further adjustments are needed.

Thanks!

🇧🇷Brazil brandonlira

Hi @smustgrave ,

I can confirm that my changes are included in the latest pipeline (#449876), even though the commit history might not explicitly show my name due to the rebase process.

The updates focus solely on documentation improvements for EntityDisplayRepositoryInterface.php MR !9637 , and all unrelated changes have been removed.

Please review and let me know if any further adjustments are needed.

Thanks!

Production build 0.71.5 2024