cyberschorsch.dev: Using the s3fs module for media file hosting
ImageX: New in Drupal: Assemble Any Website Functionality Easily With Recipes!
If someone said “There’s no easy recipe for a perfect website,” we’d have to argue with that statement. Even more so now that Drupal is bringing a new, exciting concept of Recipes on stage. Recipes are currently in the making, but they have already become the talk of the town as one of the most powerful additions to the CMS on the way from Drupal 10 to Drupal 11.
The Drop Times: On Drupal's Commitment to Diversity and Inclusion
The Drop Times: Frederik Wouters: Predicting and Pioneering Drupal-AI Interplay
LN Webworks: Drupal Staff Augmentation: How Does it Help in Addressing the Talent Gap
Behind every successful project is a talented workforce. This calls for making conscientious decisions when it comes to recruiting your team. However, the bitter truth is that hiring proficient candidates is not an easy task, especially when it comes to Drupal development. As the content management system has a steep learning curve, there is a lack of Drupal talent worldwide. Does that mean you should abandon your project or compromise the quality of the workforce? Gladly, the answer is no! You can leverage Drupal staffing to mitigate the lack of talented Drupal developers.
If you have never heard about Drupal staffing before, this blog will help you get acquainted with everything you need to know about it. In case you already know about it, this blog can help you delve deeper into it. So, are you ready for the enchanting journey?
DrupalEasy: Debugging all the things with Xdebug, DDEV, PhpStorm, PhpUnit
Over the past few years, we've published a couple of blog posts about setting up Xdebug for Drupal module development. But, like all things in tech, there's always more to learn as tools and technology evolve.
The setup
I was recently working with one of our Professional (Drupal) Module Development students trying to determine why she wasn't able to use Xdebug to debug a PhpUnit-based functional test. To be clear, the breakpoint wasn't set in the actual test class, the breakpoint was set in some custom module code that was called by the test class.
In functional tests, Guzzle is used by PhpUnit to make calls like:
$this->drupalGet('')
So, in a way, there isn't a direct PHP connection between test class and the code under test. It is in this circumstance that the breakpoint wasn't working.
Xdebug was working fine for this student to debug other aspects of the same project - it just wasn't hitting breakpoints during functional tests.
The solution
This was one of those instances that I had seen (and solved) previously, but to be honest, PhpStorm/Xdebug solutions have often involved numerous trips into the (extensive) PhpStorm settings area. By the time the problem is fixed, I was never 100% sure exactly which change I made had actually solved the problem. But, this time, I was more careful…
Obviously, Xdebug must be enabled in DDEV, and PhpStorm's almost-magical auto-configuration for Xdebug needs to have configured a new "Server" with proper path mappings (especially for the project root).
The PhpStorm configuration settings related to Xdebug that I now recommend are:
- Set the "Max connections" value to 20 in the "PHP | Debug" configuration area (see image above).
- Uncheck the “Force break at the first line when no path mapping is specified,” "Force break at first line when a script is outside the project" and "Ignore external connections through unregistered server configurations" checkboxes in the "PHP | Debug" configuration area (see image above.)
- Set "Host" and "Name" in the "PHP | Servers" configuration are the same (and of the form name.ddev.site, where name is your site's DDEV machine name) (see image below.)
- When running functional tests, PhpStorm may request to see up a new server connection in "PHP | Servers" with the name "localhost." Allow it and ensure the path mapping is correct.
With these settings, functional PhpUnit tests can be effectively debugged.
DrupalEasy: DrupalCon Pittsburgh 2023 Superlatives
Unless you've been living underneath a Druplicon-shaped rock, you're probably aware that DrupalPalooza Pittsburgh took place June 5-8. If so, I'm guessing that your Drupal newsfeed is full of wrap-up articles and summaries that may feel a bit redundant (I know that mine is and that they do).
It is in the spirit of hopefully spicing up your Drupal news consumption that this will not be one of those blog posts. Rather, in my somewhat still high-school-aged mind, I'm rolling back the clock to present the DrupalCon Pittsburgh 2023 Superlatives 🎉
Best session (that I attended): Drupal Distributions & Recipes Initiative Update - but don't get too excited, Mr. Jim Birch (the presenter) 😜, as I really don't go to a whole lot of sessions normally. That being said, it is difficult not to get excited about Recipes and this session was exactly what I was hoping for.
Most "It's about time" thing: Randy Fay winning the Aaron Winborn Award.
Most fulfilling personal moment: The DrupalEasy Learning Community alumni and mentor lunch. Having so many of our graduates and mentors in one place was quite gratifying, even if they did turn teasing me into a competitive sport.
Most of the alumni present were from our long-running 12-week, best practice and beginner focused Drupal Career Online http://drupaleasy.com/dco (next semester begins August 28.)
Best official/unofficial party: The Lullabot Party. There are a few things I really need at a party these days: a volume level where I don't have to scream to have a conversation, an outdoor area, activities, and good food and drink. This one was 4-for-4. The Pins x Pints Barcade Bash from Acquia came in a close second.
Favorite session that I didn't see in person but have since watched: Advanced Render Cache Debugging presented by Jody Hamilton and Janez Urevc. I'll watch pretty much anything having to do with Drupal caching, and this was one of the better presentations I've ever seen on the topic. Well worth your time.
Most useful thing that I really liked but probably not too many other people did: The distance between the expo hall and the session rooms.
Biggest question I left with: Which hosting companies are going to step up and fully support (and promote) hosting plans for Automatic Updates (and therefore Project Browser) for less technical Drupal site-builders?
Best new "thing": I am not a fan of draws (even though I do love soccer,) but in this case I really can't pick one. Both Pitch-burg and the Drupal Association Member Breakfast were fantastic additions this year. I love incentivizing folks to join the Drupal Association (especially with free food.) Also, I was a bit skeptical of Pitch-burg at first, but I really enjoyed how Dries weaved it into his keynote, and I am really looking forward to seeing how the funded projects turn out.
Best contributed module release that took place during DrupalCon: Smart Trim 2.1.0
Biggest complaint: Why was the Single Directory Components session in such a small room? Silly.
Worst accommodations: Mine (shared with Gwendolyn, Sara, John, and Ryan.) We were in an Airbnb that was located by itself in the middle of a mostly-abandoned, overgrown industrial park. We had difficulty getting ride-share drivers there after dark. Seriously. Perhaps we need to read the reviews more carefully next time.
Biggest personal takeaways: Single Directory Components and Recipes are the future of Drupal. Also, the average age of community members needs to get younger (no offense, REDACTED.)
Best completely unofficial social event: The Pirates/A's baseball game on Wednesday afternoon (that led into Wednesday evening.)
Most inconvenient alarm: Thursday, 5am, in the bedroom of our sketchy Airbnb so I could finish prep for the Intro to Module Development workshop I was teaching at 9am.
Favorite image from another DrupalCon Pittsburgh wrap-up blog post: Ted Bowman (T-Bone to his friends) shot-gunning a beer(?) on the keynote stage on Mike Herchel's blog.
Tag1 Consulting: My First Drupal Migration
Tag1 Consulting: Gander: The Future of Drupal Performance and Scalability
In a digital era where website performance dictates user experience - directly influencing site success metrics like page views and time on site - the Drupal community has worked tirelessly to make Drupal’s performance best-in-class. Now, as a result of an ongoing collaboration between the Google Chrome team and Tag1 Consulting, Drupal’s performance and scalability are getting a major boost. We are excited to announce a new open source automated performance testing framework, designed and led by Drupal core release and framework manager Nathaniel Catchpole - catch. The system will greatly benefit the development of the Drupal platform itself and, as an open-source tool, enable end-users of Drupal to integrate performance testing into their DevOps toolchain, delivering a substantial competitive advantage to sites powered by Drupal. Want to learn more? Join us at DrupalCon Lille! Performance is a core part of our ethos at Tag1. Our senior team members led the creation of, and maintain most of Drupal's performance and scalability capabilities. We are often hired by our clients (such as Renesas, Sumitomo, US Department of Energy, …) to audit the performance of their websites and help...
Read more janez Mon, 10/09/2023 - 15:39