USA
Account created on 25 June 2007, almost 18 years ago
#

Merge Requests

More

Recent comments

🇺🇸United States mradcliffe USA

Adding a couple more custom named layouts would make it easier. I came up with the following and exported from Google slides (Format is pptx), and the next step is to import into the slide deck, apply a layout to a slide, consolidate the text because the existing slide decks do not use standard layout placeholders.

I had to tarball the pptx file in order to be able to upload it. So it needs a tar zxf Drupal-Mentoring.pptx.tar.gz in order to extract the Drupal-Mentoring.pptx. trying to File > Download the theme as ODP format failed for me on the slide deck.

🇺🇸United States mradcliffe USA

I think I can condense most of the Title (left-aligned) slide styles into "Title and two-columns" and "Title and body" (or "One column text") by having optional Sub-title and making the flair images consistent. That might also solve the "Picture with Caption" slides.

Then maybe we have a custom layout for "Title and three-columns".

Unused: Big number, Section header

🇺🇸United States mradcliffe USA

Some feedback on the branded slide deck that Chris is working on.

I looked at the standard layouts provided by themes in Google slides. And then went through each of the slides in the deck to document them, their use, and whether they could be mapped to a standard layout.

It seems to me there are too many variations at the moment and that's not including the random flair.

Also adding the Event logo on nearly every slide will make it harder to update for a speaker giving the session at an event.

Theme standard layouts

  • Title Slide
  • Section header
  • Title and body
  • Title and two-columns
  • Title only
  • One column text
  • Main point
  • Section title and description
  • Caption
  • Big number
  • Blank

New Branding slide styles

🇺🇸United States mradcliffe USA

An urgent opportunity came up the other day for the Drupal Contribution Day Japan, which is a precursor event for DrupalCon Nara 2025. To try to meet this deadline, Chris and I are going to collaborate on getting a new canonical slide deck started with standard slide layout names so that we can create a Mentoring theme using the Barcelona 2024 design.

🇺🇸United States mradcliffe USA

I created the follow-up documentation store issue and postponed it on this one.

🇺🇸United States mradcliffe USA

I added some manual testing scenarios for xdebug 3.3+ in develop mode.

🇺🇸United States mradcliffe USA

Current test failures are deprecations for

1) /builds/issue/drupal-3406985/core/lib/Drupal/Core/Test/HttpClientMiddleware/TestHttpClientMiddleware.php:52
Database commit by letting a Transaction object go out of scope is deprecated in drupal:11.3.0 and is removed from drupal:13.0.0. Commit explicitly via Transaction::commitOrRelease() instead. See https://www.drupal.org/node/3524461

1) /builds/issue/drupal-3406985/core/lib/Drupal/Core/Database/Transaction/TransactionManagerBase.php:364
Database commit by letting a Transaction object go out of scope is deprecated in drupal:11.3.0 and is removed from drupal:13.0.0. Commit explicitly via Transaction::commitOrRelease() instead. See https://www.drupal.org/node/3524461

Uploaded as a text file after parsing through Functional and FunctionalJavaScript test results. Summarized as

- locale
- config_translation
- AssetOptimizationUmamiTest
- help
- demo_umami
- core Installer tests

🇺🇸United States mradcliffe USA

The issue summary could also use an issue summary update with the template to improve readability of the issue.

🇺🇸United States mradcliffe USA

I resolved the coding standards issues introduced in the merge request. And then fixed the typo I made in the comment.

It seems like the merge request fails on MetatagIntegrationTest. The test goes to the login page and has the default title of "Log in | Drupal" rather than the one provided by metatag_test_integration module.

The tests did pass in 2.1.1's release so this is probably an issue with the implementation here. So the patch breaks hook_metatags_attachments_alter().

🇺🇸United States mradcliffe USA

The merge request had merge conflicts. I did a rebase locally to resolve conflicts.

🇺🇸United States mradcliffe USA

Oops, I sometimes forget I have dreditor still installed.

Is there also not a clone issue link in the sidebar? Or did dreditor also add that?

I moved the draft into the issue summary for better editing and fixed #6.

🇺🇸United States mradcliffe USA

Adding some Nara information about committee members

🇺🇸United States mradcliffe USA

Closing issue.

🇺🇸United States mradcliffe USA

I added some comments in the merge request. Mainly the last commit truncated the module file so it no longer is syntactically valid i.e. it errors out.

Edit: keeping the status at Needs work. Remember also to flip the status to Needs review if you think the merge request is ready for review again.

🇺🇸United States mradcliffe USA

I added review and manual testing instructions.

🇺🇸United States mradcliffe USA

Kuoni now maintains the DrupalCon EU mentor box along with mentoring banner.

There is also a community mentor supply box for other events.

Closing this old issue as fixed/resolved.

🇺🇸United States mradcliffe USA

We also need to add some instruction about pasting the issue link into the mentoring team channel to ask/invite people to add to the agenda including any success stories for mentors.

🇺🇸United States mradcliffe USA

We determined that we should ask Working Groups whether they want to be part of a Drupal Working Group calendar rather than the Drupal Core Calendar.

At MidCamp 2025, I asked @froboy of Event Organizers Working Group, @ultimike and @markie from Community Working Group with positive responses. I explained that the meeting events would not have any private information such as Zoom links or agenda contents. So the next step is to continue to reach out to other working groups so they bring it up for discussion at their next meeting.

Maybe the next step after that is to move this or create an issue in drupal infrastructure issue queue for calendar creation with recurring meeting times/dates for all interested working groups?

🇺🇸United States mradcliffe USA

Other than the dates, I copied the spreadsheet to plug in dates for Nara, and it worked well.

I guess the status should be Needs work.

🇺🇸United States mradcliffe USA

Adding meeting minutes from 2 weeks ago.

🇺🇸United States mradcliffe USA

Success!

I added a custom pages job to run mkdocs and generate docs based on the mkdocs.yml file. It needed to be a custom pages job so that I could copy the calendar job artifacts into place.

The trick here is that it needs to copy the files into the docs directory somewhere, which will then get published into the public directory on build.

I had to generate an initial Gitlab pages for testing, which will be wiped out on the first build / merge, but it is available here: https://project.pages.drupalcode.org/mentoring/

I added issue links to the documentation issues as we're not ready to do anything more with GitLab pages.

🇺🇸United States mradcliffe USA

I added some details about the information we collected on the spreadsheets of Awesomeness and about what we need to communicate.

🇺🇸United States mradcliffe USA

I reviewed the merge request, which has the logo. The file size looks like it is about as optimized as it can get and is not too big.

🇺🇸United States mradcliffe USA

It seems like the proposed resolution is in the steps to reproduce? Maybe providing a clearer steps to reproduce and have someone replicate this on a fresh install would help.

🇺🇸United States mradcliffe USA

From @mglaman, potential things that may need to be done as part of this:

  • Core should expose a way to do batch API over CLI. Basically what Drush has for it as a proper API
  • Extract command to a service that uses batch, command basically runs that batch
  • Allows recipe runner to use that batch for the theme generation
🇺🇸United States mradcliffe USA

I added an example of a module porting exercise using ChatGPT. The use of which is disclosed as part of the merge request (with prompts included in the merge request).

🇺🇸United States mradcliffe USA

That's disappointing. I don't think this module should be using an unsupported library, @acbramley.

🇺🇸United States mradcliffe USA

Thank you for making the changes and fixes, @brandonlira. I reviewed the merge request and confirmed the changes.

🇺🇸United States mradcliffe USA

That makes sense, @phernand42. I updated the version, and I realized I kept the strict version in the original merge request, but I think it should be relaxed to ^0.1.17 or even ^0.1.

🇺🇸United States mradcliffe USA

I think the YAML configuration would be something like this where a theme might want to make use of values provided by the InputConfigurator.

input:
  theme_name:
    data_type: string
    constraints:
      NotBlank: []
    prompt:
      method: ask
   default:
     source: value
     value: 'my_theme'

config:

theme:
  -
    name: my_theme
    #name: '${theme_name}'
    description: 'A description of your theme.'
    enable: true
    starterkit: 'starterkit_theme'
    path: 'themes/custom'

Much of theme generation is in GenerateTheme command, which may be better someplace else in core.

🇺🇸United States mradcliffe USA

For next month's agenda:

- Mentor Contribution Event Planning lead: rachel_norfolk volunteered so far
- Mentoring room lead:
- Mentor communications leads: igorgoncalves volunteered so far
- First-time contributor workshop lead:
- Mentoring booth leads:
- Community tools leads:
- Novice issue triage lead: rodrigoaguilera volunteered (if able to attend)
- Mentor Dinner Lead (ideally someone who knows the area?) - Scheduling, Guest list, Reservations

🇺🇸United States mradcliffe USA

Updated the agenda with some more items for Nara and midcamp.

🇺🇸United States mradcliffe USA

I updated the issue summary to include how to resolve and removed the tag. I left the Novice tag because I think we have some consensus on the issue.

🇺🇸United States mradcliffe USA

I don't think we need a new permission, "access site reports" permission fits because the report is already accessible by users who have access to dblog (or syslog, jsonlog) as MigrateController is a redirect.

If we added a new permission, then a non-admin user would need both that permission and "access site reports" to access a filtered list of migrate_drupal_ui.

🇺🇸United States mradcliffe USA

I came up with a rough outline for the change record after reviewing the changes.

  • Adds a new nullable argument to the base Connection __construct method that takes an IdentifierHandler.
  • Database drivers should implement IdentifierHandler (details) and pass this into Connection::parent::__construct().
    • Implement at least getMaxLength if extending IdentifierHandlerBase.
  • Method calls and properties that need to be changed:
    • getPrefix() should use identifiers->tablePrefix
    • $identifierQuotes should use identifiers->identifierQuotes
    • $prefix should use identiferies->tablePrefix
    • $escapedTables is no longer used
    • $tablePlaceholderReplacements should use ????
    • escapeDatabase() should use identifiers->database()
    • Any time need to use a table or prefix in code this should be identifiers->table
    • escapeTable() should be identifiers->table. escapeTable() is no longer needed when using connection->query()? A database drive may need to use schema()->quotedMachineName . $tableIdentifier->quotedMachineName?

It looks like this also applies to any usages of query that use escapeTable manually in addition to database driver modules.

Finally a question. If a site provided a prefix and used a non-core database driver would that site stop working because $prefix isn't set anywhere by that database driver (if it relied on the protected property)?

🇺🇸United States mradcliffe USA

Yes, but why do we even need it to have the special migrate access check?

If the point is to reduce the tests that depend on this special case, then maybe fixing migrate_drupal_ui.log route to use that permission instead would make sense because an administrative user with "access site reports" already has access to it?

🇺🇸United States mradcliffe USA

I think we should answer the question as to why this test needs super user access when the test is not asserting anything about migrations and why the reports needs the special migrate access check prior to reverting the commit.

🇺🇸United States mradcliffe USA

Switching to Needs work for phpunit and code quality failures.

🇺🇸United States mradcliffe USA

In my implementation, I am using status = 1, uid > 0, and access comparisons so I can get a quick query.

For activitypub module, I think that joining to the actor table by uid makes sense. I don't think it should include the non-person actors in "users".

Aside, the Drupal activitypub module listing is probably going to disappear again. aleixq's changes got removed in https://github.com/fedidb/communityDB/commit/ce23a1bd1956f0c2788d4755869...

🇺🇸United States mradcliffe USA

Thank you for running through what I had, rachel. Changing status to Needs work based on feedback.

🇺🇸United States mradcliffe USA

It seems to be working for me. I can search for you via acct:CWSmith@hybridized-concepts.com now on various fediverse applications including my own.

🇺🇸United States mradcliffe USA

Maybe try removing the location ~ /.well-known/webfinger { block entirely?

🇺🇸United States mradcliffe USA

It's what swentel mentioned. The server, nginx, is not allowing webfinger requests from .well-known/webfinger which is configured as a location served by nginx, not drupal.

🇺🇸United States mradcliffe USA

Also note that the site is detected already by FediDB, but probably not discoverable by actors without knowing the real actor id.

🇺🇸United States mradcliffe USA

There's some new phpcs issues introduced, but otherwise I think the changes make sense. I added needs tests based on #10.

🇺🇸United States mradcliffe USA

Success!

These files were created as artifacts that can be downloaded via from the GitLab pipeline artifacts download link. The latest artifacts shouldn't have an expiration as far as I know from reading the gitlab documentation, but I think the merge request ones will expire after the 1 week that I set in the job.

🇺🇸United States mradcliffe USA

mradcliffe changed the visibility of the branch 3521850-autumate-calendar to hidden.

🇺🇸United States mradcliffe USA

Ah, we got rid of the main branch already. good.

I need to create an initial commit again and rebase the work I just committed without the charter commits.

🇺🇸United States mradcliffe USA

Would it be helpful to split this issue to tackle each of email, address and telephone separately? That way we can reduce the size of the merge request for reviewers and testers. It could mean an eventual merge conflict for update hooks.

🇺🇸United States mradcliffe USA

We should avoid using a header at the top of the description to help with Project Browser initiative ( 📌 [Meta] Create a short description for a contrib module Active ). I would avoid using the Summary field because text_with_summary is proposed to be deprecated from core.

Architecture section may be better suited to a CONTRIBUTING.md or DEVELOPERS.md file or gitlab pages.

Create a short description (200 characters or less) that will be easily understood by the Project Browser target audience of site builders and those new to Drupal. The short description should answer the question - "what does this module do in a non-technical way".

MAINTAINERS: the short description should be added to the Summary field of the Description on the project page. The short description will be displayed on the cards in the Project Browser grid and list views.

🇺🇸United States mradcliffe USA

Failed functional tests were

- BlockHiddenRegionTest
- InstallerThemesBlocksProfileTest

🇺🇸United States mradcliffe USA

Yes, I haven't designed it to be multi-tenant since I am usually working with only one store. It makes sense as a feature.

Would need to add tenant to the resolver to resolve which strategy to use.

Yeah, Xero API module would need an update first without bypassing it.

🇺🇸United States mradcliffe USA

Expanded the scope of the issue to all the things.

🇺🇸United States mradcliffe USA

Small thing, but can we change the date format from mm-dd-yyyy to yyyy-mm-dd in the calculated date cells in Vienna 2025 tab?

Having a tab that's "empty" to act as a starting point "start here" might be helpful for contribution-focused Drupal camps. Then we could have people copy the spreadsheet (like how we copy the 1st time contributor workshop slides) for their event.

🇺🇸United States mradcliffe USA

I think this page should continue to focus on getting the environment ready.

There are several other tasks related to merge requests (and patches) that also link to the relevant reference information and documentation for git, merge requests, patches, composer, core and/or contrib

Maybe instead of documenting here as well, we can add a what next or next steps section to link to these tasks.

DrupalPod is still relevant at the moment as well as efforts to use DrupalForge within DrupalPod and long term efforts to adapt DrupalPod. This is an active task that mentors are discussing and working on.

🇺🇸United States mradcliffe USA

Also realized there's probably some thorough instructions here (core-related) that can be extrapolated to contrib. Either a subtree split or git-filter-repo is suggested: https://www.drupal.org/about/core/policies/core-change-policies/how-to-d...

🇺🇸United States mradcliffe USA

My current process:

I find it easiest for myself to create the new issue when I go to credit participation and close the previous month's meeting issue,

  1. Review Slack for participation in the roll call and other threads:
    1. Confirm the Credit & committing > By list and check the boxes
    2. For each person, confirm their drupal.org username if it was not provided by them, and type it in Credit & committing > Credit others, then type a comma
    3. Review the list to make sure I got everybody and did not use an old username from my memory rather than a current username.
  2. Change the Status to fixed and add a comment closing the issue with credits
  3. Follow the "clone issue" link (this might be dreditor)
  4. Update the title for the correct day, month and year of the next meeting.
  5. Update the dates in the issue summary
  6. Remove the URL to the previous month's meeting with a placeholder
  7. Remove any expired agenda items such as previous DrupalCon planning threads, previous event threads.
  8. Renumber thread emoji as needed
  9. Save
  10. Update placeholder from the step above with the new URL and save the issue again

I think this should be done anywhere from 1 week after the previous meeting to account for continual discussion and 1 week prior to the next meeting to provide time for editing the agenda by any mentor.

If I am running the meeting, then just before 20:00 UTC I do the following:

  1. Set the issue in my browser to Edit mode
  2. Ensure I am on Drupal Slack in the mentoring team coordination channel
  3. I copy the initial chunk of text until the first empty line and paste it into Slack
  4. I immediately paste the :zero: agenda item into Slack and start a thread introducing myself.
  5. I try to continually copy a group of agenda items, separately, so each can be its own thread in fairly rapid succession so that I can participate in the discussion too. I try to start each group of agenda items or the next agenda item after about 2-3 minutes so that there is time to bounce between threads for active discussion.
  6. Near the 45 minute mark or later, I paste the "That's it for now" message
🇺🇸United States mradcliffe USA

If you want to keep git histories, we can use a tool like git-filter-repo to do this. It will have an extra commit to move files.

I think that these instructions could be worked on at MidCamp as long as you create the new projects exist by then.

  1. Clone a fresh copy of event_platform.
  2. Create and clone clone {submodule} issue fork and checkout the issue fork branch.
  3. Change directory into event_platform.
  4. Run git-filter-repo --path {submodule} --to-subdirectory-filter {submodule}
  5. Change directory into {submodule}.
  6. Run git remote add -f event_platform ../event_platform
  7. Run git merge --allow-unrelated-histories event_platform/2.0.x
  8. Remove any tags git tag | xargs git tag -d
  9. Run git mv {submodule}/{submodule}/* .
  10. Remove the {submodule} directory.
  11. Commit
  12. Add default files if they do not exist yet (e.g. .gitignore, gitlab-ci.yml, composer.json, README.md)
  13. Commit
  14. Cleanup namespaces, dependencies and any other files.
  15. Commit
  16. Push
  17. Create a merge request from the issue fork branch

This will essentially give the history (for event_platform_scheduler):

* fdd4530 (HEAD) Moves files into place (6 seconds ago) <Matthew Radcliffe>
*   feca34c (2.0.x) Merge branch '3366560-create-events-as' into 2.0.x (6 weeks ago) <Martin Anderson-Clutz>
|\  
| * ff45c57  Code changes and first pass on content architecture changes (6 weeks ago) <Martin Anderson-Clutz>
* | 1582ea9  Issue #3366560 by mandclu: Create Events as entities to allow for multiple years (6 weeks ago) <Martin Anderson-Clutz>
|/  
* c16a289  (1.1.x, 1.0.x) Issue #3451068 by Project Update Bot, mandclu: Automated Drupal 11 compatibility fixes for event_platform (11 months ago) <Martin Anderson-Clutz>
* 03c23b2  Fix for stuck scheduler spots (1 year, 10 months ago) <Martin Anderson-Clutz>
* 21cf0e1  Issue #3372171 by mandclu: Add a session moderator role (1 year, 10 months ago) <Martin Anderson-Clutz>
* 88e9ca0  Issue #3372042 by mandclu: Make Scheduler table full width (1 year, 10 months ago) <Martin Anderson-Clutz>
* 38d9263  Issue #3372038 by mandclu: Remove console.log call in scheduler.js (1 year, 10 months ago) <Martin Anderson-Clutz>
* e5cfd77  Issue #3372036 by mandclu: Notice: Only variables should be passed by reference in Scheduler->buildRows() (1 year, 10 months ago) <Martin Anderson-Clutz>
* 80a270a  Issue #3357829 by apaderno, mandclu: Fix the issues reported by phpcs (1 year, 10 months ago) <Martin Anderson-Clutz>
* 7518861  Issue #3371933 by mandclu: In Scheduler highlight scheduled sessions matching filters (1 year, 10 months ago) <Martin Anderson-Clutz>
* 81d46b3  Issue #3371942 by mandclu: Update empty messaging in scheduler interface (1 year, 10 months ago) <Martin Anderson-Clutz>
* 7d123fe  Issue #3371940 by mandclu: Error: Call to a member function get() on null (1 year, 10 months ago) <Martin Anderson-Clutz>
* dda89ff  Issue #3371930 by mandclu: Drupal\Core\Entity\Query\QueryException: Entity queries must explicitly set whether the query should be access checked or not (1 year, 10 months ago) <Martin Anderson-Clutz>
* 5d19f54  Issue #3371896 by mandclu: Fix code standards issues (1 year, 10 months ago) <Martin Anderson-Clutz>
* 02f8787  Issue #3371708 by mandclu: Provide session filters in scheduler view (1 year, 10 months ago) <Martin Anderson-Clutz>
* c480527  Issue #3366558 by mandclu: Scheduler Validation: Don't allow more than one session by the same presenter in the same time slot (1 year, 10 months ago) <Martin Anderson-Clutz>
* a973ebf  Issue #3366556 by mandclu: Allow sessions to be filtered by workflow status in the Scheduler (1 year, 10 months ago) <Martin Anderson-Clutz>
* 82f3047  Issue #3360405 by mandclu: Use Smart Date's updated format service method (2 years ago) <Martin Anderson-Clutz>
* 51756b1  Issue #3360403 by mandclu: Round the corners in sessions in the Gin Admin Theme (2 years ago) <Martin Anderson-Clutz>
* e2dfa5d  Issue #3360401 by mandclu: Provide a tool to generate time slots (2 years ago) <Martin Anderson-Clutz>
* d6c19ac  Issue #3355872 by mandclu: Provide a scheduler interface to quickly assign time slots and rooms (2 years ago) <Martin Anderson-Clutz>
🇺🇸United States mradcliffe USA

I went ahead with a merge request that changes both to text areas.

🇺🇸United States mradcliffe USA

mradcliffe changed the visibility of the branch 3521988-longer-description to active.

🇺🇸United States mradcliffe USA

mradcliffe changed the visibility of the branch 3521988-longer-description to hidden.

🇺🇸United States mradcliffe USA

I updated the issue summary with links from #14 and added the links to recent issues in the examples item list.

🇺🇸United States mradcliffe USA

cmlara, thank you. That jarred my memory. I was trying to find where it came from.

🇺🇸United States mradcliffe USA

In the new first-time contributor workshop slides that volkswagenchick developed we have a single slide titled "Use of AI" with the following scripted notes. This could be a good start for an official policy.

There is no doubt that artificial intelligence tools such as ChatGPT can be powerful ways to jumpstart code or content. However, AI systems still have significant flaws. Often times the code they produce is non-functional, and the content they create includes assertions or citations that are untrue.

When using AI in the course of making a contribution to Drupal, we require you to:

Disclose that AI was used in crafting the code or content.
Carefully review and test the output, to ensure it is relevant, and that it works.
Provide human intervention to correct inaccuracies, mistakes, or broken code.
Bulk use of AI when it is not relevant to an issue, provides broken or unusable code, or provides false information will likely result in a ban.

I am not sure why we mention it as required, but it probably should be changed to recommended for now pending policies.

🇺🇸United States mradcliffe USA

Thank you for creating the merge request, lostcarpark.

🇺🇸United States mradcliffe USA

The job will probably fail for both phpcs and phpstan due to rules like "Drupal calls should be avoided in classes, use dependency injection instead" and I think you can work on those later to get green :-)

🇺🇸United States mradcliffe USA

I applied the patch manually to my non-activitypub module, non-multilingual site that uses webfinger, and I did not find any regressions. +1.

🇺🇸United States mradcliffe USA

Renamed issue to reduce scope for new process. I forgot to link the role page in the issue summary.

Production build 0.71.5 2024