Talking Drupal

Talking Drupal Hosts
undefined
Apr 22, 2024 • 1h 17min

Talking Drupal #447 - Drupal Single Sign On

Today we are talking about Drupal Single Sign On, The Benefits it brings to the Drupal Community, and A new book called Fog & Fireflies with guest Tim Lehnen. We’ll also cover Drupal.org Username Field as our module of the week. For show notes visit: www.talkingDrupal.com/447 Topics What is Single Sign On (SSO) Does Drupal already support SSO Why is SSO on drupal.org important Camps using SSO Other possibilities Gitlab login Cloud IAM Why did the Drupal Association choose Cloud IAM How do you see the collaboration growing Where are we now What are the next steps How far are we from this becoming a reality What does onboarding look like Will third party sites be able to use D.O SSO Can the community help Fog & Fireflies First book Can you buy it now Resources Single Sign On is coming to Drupal.org thanks to Cloud IAM A new book called Fog & Fireflies Open ID Connect module Keycloak Neil Drumm Lucas Heddn Marco Villegas Tim Lehnen Guests Tim Lehnen - aspenthornpress.com hestenet Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to have a field on user profiles specifically designed for drupal.org usernames? There’s a module for that Module name/project name: Drupal.org Username Field Brief history How old: created in August 2019 by hussainweb AKA Hussain Abbas of Axelerant Versions available: 2.0.0-beta4 Maintainership Actively maintained, that release was made less than 6 months ago Test coverage Number of open issues: 8 open issues, none of which are bugs Usage stats: 1 site Module features and usage The module provides a new field type, along with its own widget and formatter With a simple checkbox, you can get the module to validate that the provided username is registered on drupal.org What’s really powerful about this module is that it can also pull other information from the drupal.org profile, such as first and last name, country, bio, and more It does this by leveraging a Guzzle-based API client for drupal.org that Hussain created as part of a DrupalCon Asia developer contest I believe the intended use of the modules is to use a provided drush command to copy the values from the drupal.org username field into other fields, where they would be displayed to site visitors Although this module isn’t something that a lot of sites will need, I could see it being really useful for Drupal camp websites, to automatically collect a lot of the information that many such sites ask users to populate manually I think it’s also an interesting use of the Drupal.org API, and could be a useful reference for anyone needing to implement a custom integration
undefined
4 snips
Apr 17, 2024 • 32min

Skills Upgrade #7

Welcome back to “Skills Upgrade” a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 7. Topics Review Chad's goals for the previous week Test Example Set up phpunit.xml Start with FrontPageLinkTest.php Review Chad's questions In the testing_example module, the file "src/Controller/TestingExampleController.php" has a function for simpletestDescription(). Is this an outdated artifact that should have been removed at some point? The module itself doesn't appear to use Simpletest elsewhere and appears to only rely on PHPUnit. What do you recommend for the minimal code structure to include for any given test type? Is the Testing Example module an ideal model or are there other resources I should review? The testing reference from Selwyn was helpful. In the "FrontPageLinkDependenciesTest.php" setUp() function, the createContentType() function is called without specifying the type. Is that set somewhere else? I may have overlooked it. Nevermind—it's set using randomMachineName() in the createContentType() function. Is there anything extra or standard to write in tests for drupal.org? Tasks for the upcoming week Smart Date - Martin (maintainer) to review promptly, I've already chatted with him about it. Create a new functional test: "submit a range with an end time before the start and validate that an error is returned" Create an issue in the Smart Date queue and assign to yourself. Create an issue fork. Check out the issue fork locally. Write (and test) the test locally. Commit and push to the issue fork. Mark issue as "Needs review". Ask someone to review - if all looks good, the reviewer will mark as RBTC. Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike
undefined
Apr 15, 2024 • 1h 9min

Talking Drupal #446 - Test Driven Development

Alexey Korepov, an expert in Test Driven Development, discusses the importance of TDD in software development and its application in Drupal. The podcast covers topics such as resources for learning TDD, adapting to TDD in dev teams, environment setup, and special tools. The podcast also highlights the Test Helpers module for simplifying unit testing in Drupal projects.
undefined
6 snips
Apr 10, 2024 • 37min

Skills Upgrade #6

Welcome back to “Skills Upgrade” a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 6. Topics Review Chad's goals for the previous week Review Chad's questions Array structures accordion.html.twig D7 to D10 migrations Tasks for the upcoming week [testing_example](https://git.drupalcode.org/project/examples/-/tree/4.0.x/modules/testing_example? Be sure to install drupal/core-dev dependencies using composer require –dev drupal/core-devref_type=heads) from Examples module. Set up phpunit.xml file in project root - using this file to start Run existing tests using command line from the project root. Something like: phpunit web/modules/contrib/examples/modules/testing_example/tests Review test code in module. Start with FrontPageLinkTest.php, then FrontPageLinkDependenciesTest.php, then TestingExampleMenuTest.php Resources Understand Drupal - Migrations Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike
undefined
Apr 8, 2024 • 1h 2min

Talking Drupal #445 - Drupal Bounty Program

Today we are talking about The Drupal Bounty Program, How it supports innovation, and how you can get involved with guest Alex Moreno. We’ll also cover WebProfiler as our module of the week. For show notes visit: www.talkingDrupal.com/445 Topics What is the Drupal Bounty program How and when did it start What issues and tasks are included Has the bounty program been successful Why was this program extended Do you see any drawbacks Can anyone participate How are issues for the second round being selected What do you see the future of the bounty program looking like Could this become like other bounty programs with cash Do you think the bounty program will help maintainers get sponsorship Resources Introducing The Bounty Program Bounty Program Extension Bjorn Talking Drupal #425 - Modernizing Drupal 10 Theme Development Guests Alejandro Moreno - alexmoreno.net alexmoreno Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to get detailed performance data for the pages on your Drupal sites? There’s a module for that. Module name/project name: WebProfiler Brief history How old: created in Jan 2014 by Luca Lusso of Italy who was a guest on the show in episode #425 Versions available: 10.1.5 which works with Drupal >=10.1.2 Maintainership Actively maintained, latest release on Feb 1 Security coverage Test coverage Not much in the way of documentation, but the module is largely a wrapper for the Symfony WebProfiler bundle, which has its own section in the Symfony documentation Number of open issues: 36 open issues, 13 of which are bugs Usage stats: 477 sites Module features and usage Once installed the module adds a toolbar to the bottom of your site, within which it will show a variety of data for every page: Route and Controller Memory usage Time to load (with some additional setup) Number of AJAX requests Number of queries run and the total query time Number of blocks visible How many forms are on the profile Lots of other detailed information available through links Reports are saved into the database, so you can dig through additional details such as: Request information like access metadata, cookies, session info, and server parameters, in addition to the request and response headers All of the queries that ran, how long each took, and even a quick way to create an EXPLAIN statement to get deeper insight from your database engine You can also view all the services available, and with a single click open the class file in the IDE of your choice A handy alternative to other performance monitoring tools like XHProf (either as Drupal module, or installed directly into your development environment), or commercial tools like Blackfire or New Relic Discussion Luca’s book Modernizing Drupal 10 Theme Development actually provides a great deep dive into this module
undefined
7 snips
Apr 3, 2024 • 35min

Skills Upgrade #5

Welcome back to “Skills Upgrade” a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 5. Topics Review Chad's goals for the previous week .gitignore Field Example module Plugin API Drupaal 10 Masterclass book Review Chad's questions Field Example follow up Tasks for the upcoming week Examples module: js_example module js_example.libraries.yml hook_theme() implementation in js_example.module JsExampleController template files Resources .gitignore Drupal 10 Masterclass Modernizing Drupal 10 Theme Development Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike
undefined
Apr 1, 2024 • 1h 19min

Talking Drupal #444 - Design to Development Workflow Optimization

Design and development handoff optimization discussed with expert Crispin Bailey. Topics include challenges, collaboration tools like Figma, and framework recommendations. Also, exploration of Office Hours module in Drupal for managing business operation hours efficiently.
undefined
10 snips
Mar 27, 2024 • 50min

Skills Upgrade #4

Welcome back to “Skills Upgrade” a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 4. Topics Review Chad's goals for the previous week Install Drush Setup git repo Examples module Review Chad's questions .gitignore Core file naming Tasks for the upcoming week Reminder of the capstone goal: create MR for new automated test in contrib module. Examples module: field_example. New RGB field type with formatter and widgets. Focus on stuff in field_example/src/Plugin/Field Background info on Plugins: https://www.drupal.org/docs/drupal-apis/plugin-api Focus on the following sections: https://www.drupal.org/docs/drupal-apis/plugin-api/plugin-api-overview https://www.drupal.org/docs/drupal-apis/plugin-api/why-plugins https://www.drupal.org/docs/drupal-apis/plugin-api/annotations-based-plugins Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike
undefined
Mar 25, 2024 • 1h 5min

Talking Drupal #443 - Violinist.io

Eirik Morland discusses Violinist.io, a tool for automating composer dependencies. Topics covered include security risks, costs, differences with dependabot, ideal users, self-hosting, and support from the community. They also explore managing patches with composer, open-source benefits, and future plans for Violinist.io.
undefined
Mar 20, 2024 • 38min

Skills Upgrade #3

Welcome back to “Skills Upgrade” a Talking Drupal mini-series following the journey of a D7 developer learning D10. This is episode 3. Topics Review Chad's goals for the previous week DDEV performance improvements Install Drupal 10 Install drupal/core-dev Configure and test phpcs Test phpstan settings.local.php Install Devel module Review Chad's questions Rancher Desktop appears to be holding on to port 443 after I installed it. Although I changed the port to something else, do you have any suggestions to update the setup to use ports 443 and 80 instead? How are tools like phpcs and PHPStan used by the Drupal community for contrib? Are they a part of drupal.org's testing automation? Starting a new D10 website from scratch in DDEV is one thing … How would I typically work with an existing D10 website? Do I start with the community config, then overwrite the code, database, and files? Is there a better approach? Tasks for the upcoming week Install Drush using Composer Examples module https://drupal.org/project/examples routes/controllers/forms Review: https://www.drupal.org/docs/drupal-apis/routing-system/introductory-drupal-routes-and-controllers-example Go through the "Page example" module from the Examples module. Check back for "docker context use rancher-desktop" stuff. Create a new Git repository for your D10 site with Composer dependencies not committed to the repository. .gitignore stuff cp web/example.gitignore web/.gitignore Create ./.gitignore with: /vendor /web/core /web/modules/contrib/ /web/themes/contrib/ /web/profiles/contrib/ /web/libraries/ *.sql.gz Resources Chad's Drupal 10 Learning Curriclum & Journal Chad's Drupal 10 Learning Notes The Linux Foundation is offering a discount of 30% off e-learning courses, certifications and bundles with the code, all uppercase DRUPAL24 and that is good until June 5th https://training.linuxfoundation.org/certification-catalog/ Hosts AmyJune Hineline - @volkswagenchick Guests Chad Hester - chadkhester.com @chadkhest Mike Anello - DrupalEasy.com @ultimike

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app