LN Webworks: Mastering PHP Debugging: A Guide to Xdebug in Lando & DDEV for Drupal

Image removed.

Did you know that the first-ever computer bug wasn't a piece of software code, but an actual moth? Now, let's talk about something related but not quite as buggy – website development.

Debugging is like fixing problems in a website's code. It's important because it helps Drupal developers find and solve issues, making the website work better. To do this, you need the right tools. One handy tool for PHP (a programming language often used in web development) is XDebug.

In this article, we’ll share the steps and things you need to know to set up PHP debugging using XDebug. We'll focus on using Lando and DDEV setups for Drupal. And to make things even better, we'll be using the VS Code IDE (that stands for Integrated Development Environment). Let’s get started! 

A Close Look at XDebug

XDebug is a powerful debugger that makes it easier for PHP developers to create a smooth functioning website. Here are some core features of it: 

Drupal Association blog: Drupal Association Co-Founds the Open Website Alliance

The international community organizations behind Drupal, Joomla, TYPO3, and WordPress join forces in a leadership-level alliance. The members of the Alliance are united in their shared values and their message to decision-makers to always choose open source software over proprietary systems.

The Alliance represents the content management systems (CMS) behind roughly 50% of all websites online today. The Open Website Alliance was founded to promote the choice of open-source software and facilitate collaboration between free and open-source web content management projects, furthering openness, trust, and quality. Other free and open-source CMS organizations are encouraged to apply for membership.

Open source is not just the future of software, it is the present,” said Tim Doyle, CEO of the Drupal Association. “At a time when some market forces are pushing solutions that require users to sacrifice ownership of their data, we know that open source offers a better way. Through this alliance, we can help promote, educate, and inspire end-users to take back control of their software, their data, and their own words. Together we can build a better web.

Collaboration on Leadership Level

The Alliance comes about as the result of the collaboration between the Drupal Association, Open Source Matters (Joomla), the TYPO3 Association, and the WordPress Project around an open letter to the European Union.

The Alliance uniquely connects its members on a leadership level. This means the organizations can more easily coordinate strategy and actions, fostering new cross-community collaboration projects and strengthening those that already exist.

The organization’s leadership is also based on collaboration. The presidency rotates among the members, and all decisions are consensus-based. 

A Common Stance for Open-Source Software

According to the Alliance’s purpose statement, the “members commit to jointly encourage prospective website owners and developers to always choose open source software over proprietary systems, and to educate why this decision is the first and most important one in a website project. Through this advocacy, we are expanding opportunities for all open source CMS projects.”

The purpose statement describes the Alliance as a “community of communities, built on and furthering openness, trust, and quality.” The collaboration organization also seeks to “benefit the public perception of open source projects, the reliability of open source software, [and] the quality and safety of open source communities,” by being “a platform where members can share and discuss best practices.”

Accounting for the distributed and collaborative nature of open-source software — also beyond content management — the Alliance also includes support of upstream dependencies: “Whenever possible, the Alliance should support third party open source projects and communities upon which our projects depend.”

Shared Values on Open Web

In addition to a promise of joint collaboration, the Open Website Alliance members adhere to the Open Web Manifesto. Originally pioneered by the Drupal Association, the manifesto is a commitment to the web as an empowering tool, built on freedom and decentralization: “Everyone in the world, regardless of background, identity, ability, wealth, or status, has a home on the open web as a user, creator, architect, and innovator. It requires participation: The open web is a shared resource and a shared responsibility, sustained by deliberate choice and collaborative effort.”

Harnessing the concept of shared responsibility, the manifest describes the open web as a protector of privacy and freedom of speech. It should also “enable the next generation of innovators and entrepreneurs” and “must be resilient to a changing world and not controlled by a select few.”

Drupal Association a Proud Co-Founder

The manifesto ends with a grand perspective on the role of the open web and open-source software that could also be a credo for the Alliance’s member projects: “Together, we’re shaping the foundation for how the digital world operates, and how future generations will live, work, connect, and express themselves. As long as our software exists, that foundation will be an open web that is open source, open access, and always open to improvement.”

The Drupal Association is proud to be a founding member of the Open Website Alliance and extends a special thank you to Matthias at Typo3 for his leadership in its formation. This work firmly aligns with the Drupal Association’s vision for a web that is innovative, inclusive, and open.

The Drop Times: NEWSLETTER DRAFTING

Dear Readers,

There is a philosophy popularised as "Open Education" which is based on the way people produce, share, and build on knowledge. The Open Education Consortium states that, 

"sharing is probably the most basic characteristic of education: education is sharing knowledge, insights, and information with others, upon which new knowledge, skills, ideas and understanding can be built."

Open education and open-source software converge on the fundamental belief in the power of openness, collaboration, and accessibility. They share a philosophy centered on democratizing knowledge and technology by removing barriers to access, promoting transparency, and fostering community-driven development. In both domains, open or not, individuals should be encouraged to actively participate, contribute, and collaborate, whether in creating educational resources or improving software functionality.

It is no secret that the educational industry is one of the largest adopters of Drupal, while scrounging through Drupal.org, one can find a statistic stating that 71% of the top hundred universities use Drupal. Put forward by Kevin Reynen (University of Colorado), we at The DropTimes headed by Vimal Joseph embarked on a project to validate and substantiate this claim with proper evidence. The analysis resulted in a strong correlation between Drupal and university rankings. Notably, 80% of the top 100 universities utilize Drupal on at least one of their websites.

Find the list of selected universities for the analysis by The DropTimes here and also Vimal Joseph shares the journey behind this conclusion for the readers to understand and contribute relevant information.

In the previous week, I also had the opportunity to publish an interview featuring Boyan Borisov,  VP of Digital Solutions Europe at FFW. In an email correspondence, Boyan Borisov shared his journey of becoming a Drupal enthusiast and probed into transitioning through different roles at FFW. The interview also discusses Boyan's involvement with the Drupal Community, the benefits and challenges of transitioning from individual Drupal sites to a unified multi-brand ecosystem using Drupal Multisite, and most importantly his thoughts on the future of Drupal. For a detailed read refer to, "Drupal's Future Excites and Warrants Consideration: Boyan Borisov."

Michael Richardson emerged as the victor in The Event Organizers Working Group Elections. Richardson shared his gratitude for the opportunity with The DropTimes and remarks that "Two Michaels are better than one," reflecting the enthusiasm surrounding this recent development.  

Nonprofit Drupal posts: FREE DrupalCon Portland Ticket! Volunteer to lead a breakout session at the Nonprofit Summit.

UPDATE!

We have confirmed with the Drupal Association that Nonprofit Summit breakout leaders will receive FREE admission to the conference. So submit your ideas today!

You don’t have to be a developer to lead a discussion! We still need topic ideas that include the experiences of Drupal site builders and Drupal users, content editors, and decision-makers, in addition to technical topics.

(Side note to CiviCRM fans: we've heard you loud and clear. This topic is thoroughly represented.)

Original Message

Hey nonprofit Drupal users! The DA is interested in supporting community-driven content that is specifically relevant to nonprofit organization staff and related agencies at DrupalCon North America in Portland, Oregon, at the Nonprofit Summit on May 9, 2024.

We are looking for volunteers who would be interested in giving back to the community by contributing some subject matter expertise via a day of informal breakout sessions or other group activities. We are open to ideas!

Who are we looking for?

Do you have some Drupal expertise or a recent experience with a Drupal project that you would like to share with others? Is there something about Drupal that you think is really cool that you would love to share with the nonprofit Drupal community?

What’s required?

You will not be required to make slides! You don’t need to have lots of (or any) speaking experience! All you need is a willingness to facilitate a discussion group or engaging activity around a particular topic, and some expertise or enthusiasm for that topic that you wish to share. 

How to Submit an Idea or Topic

Please fill out this form by February 13th and we will get back to you as soon as we are able. Thank you! https://forms.gle/MJthh68rsFeZsuVc8

Discussion leaders will be selected by the Nonprofit Summit Planning Committee and will be notified by the end of February

Questions? 

Email nonprofitsummit@association.drupal.org.

Drupal.org blog: What’s new on Drupal.org - Q2 to Q4 2023

Read our roadmap to understand how this work falls into priorities set by the Drupal Association with direction and collaboration from the Board and community. You can also review the Drupal project roadmap.

Drupalcon Lille 2023

Did you miss DrupalCon Europe in Lille in October? It was a great event, with close to 1300 attendees. Image removed.

Check out our general event recap for more details: DrupalCon Lille 2023 Recap – Getting Together With the Drupal Community 

Driesnote Lille 2023

The #Driesnote provided a great summary of progress on Drupal's strategic initiatives since DrupalCon Pittsburgh in May.

On top of that, this keynote hides a surprise on the format. Dries the storyteller. If you haven´t watched it yet, just go ahead before you continue reading this.

https://www.youtube.com/watch?v=08FaXNSVDrA

MVP organisation of the month

As we are heading towards the end for most or all of the projects, and some of them are starting to hand over their final deliveries, I would like to highlight the huge meaningful contribution that the PitchBurgh donors mean for the innovation in Drupal. Let me highlight those organisations that contributed to the project of this, in particular:

MVP individual of the month

This month my MVP of the month is AmyJune. Everyone at PitchBurgh has been fantastic, but in particular AmyJune has been a joy to work with. She is extremely committed and passionate about what she does, very easy to work with and always ahead of what was needed. Even when she was busy with other issues, she would find the time to come back to you and give you a hand with whatever was needed. Thanks AmyJune, you are a star and a great person.

Would you like to nominate a fantastic individual or organisation for our next update? Email me with your candidates: alex.moreno@association.drupal.org

Project Browser

Project browser refers to all infrastructure work related to supporting the Project Browser Initiative.

When the Project Browser is available in production, it can be included in the next Drupal 10 release, and then Drupal end users will be able to browse and install Drupal extensions directly from the admin ui -- and all the composer steps are done for them in the background.

The current path to production is:
Finish Secure Signing infrastructure
Migrate/update Drupal.org database
Configure CDN to allow routing of
D7 vs D10 paths
Configure data sync from D7->D10 endpoints
Deploy Package Endpoints to production

Automatic Updates

Automatic updates is a strategic initiative. Once completed it should make Drupal maintenance easier for many small and medium sites.

Both automatic updates & project browser will be making it easier to change the code of your Drupal site. This makes it even more important to trust the supply chain providing that code. 

In order to make Drupal's automatic updates secure, we are implementing the TUF standard for package signing.

We are increasing supply-chain security with The Update Framework - TUF. We were not able to find an implementation of the TUF standard which supported automated signing. We solved it using Rugged, a Python project built by Consensus Enterprises which uses the TUF reference implementation and takes care of that automation.

We are integrating signing metadata from packages.drupal.org,
packagist.org for Drupal core, and the packaged zip files Composer installs

Currently we have a proof of concept deployed in a staging environment

What is done or mostly done:

  • Contrib signing
  • Core signing
  • Server side security review
  • Drupal side security review

Next steps:

  • Server side signing system being readied for production. 
  • Framework manager review
  • Release manager review

Supply chain security 

Image removed.

Goal: The Update Framework, TUF, is a standard for signing metadata that provides defence against a number of attacks against software update systems.

Update:

  • Using TUF (The Update Framework)
  • We are integrating signing metadata from packages.drupal.org, packagist.org for Drupal core, and the packaged zip files Composer install

The Update Framework, TUF, is a standard for signing metadata that provides defence against a number of attacks against software update systems. 

That’s only a standard, we needed an implementation. That’s been done by a contract with Consensus Enterprises, who built Rugged. 

The remaining piece is telling Rugged what to sign. In TUF, something that’s signed is a target. Everything in the software update process should be signed. Both automatic updates and project browser are using Composer, so we are integrating signing of packages.drupal.org metadata, Drupal core metadata on Packagist.org, and the packaged zip files that Composer installs. 

As per Q3 2023 we have a proof of concept of the stack deployed, successfully signing what we have. We’re filling the last gaps, including signing metadata about security releases. And we’re working to make it production-ready, including getting a security audit by a 3rd party.

Security Audit

We have partnered with Open Source Technology Improvement Fund, connected to a security auditing firm: Include security

They have previously worked in auditing other TUF implementations.

Audit process has kicked off. Scope:

  • php-tuf
  • Rugged
  • Prod deployment best practices

Gitlab acceleration initiative

Image removed.

Gitlab acceleration pursues multiple goals:

Make Code contribution to the Drupal project easier. 
Adopt standard tools and adapt for the Drupal ecosystem. 
Preserve the collaborative nature of Drupal.
Helps Drupal.org update past Drupal 7.

Update:

We are now feature complete with DrupalCI and we are turning off some DrupalCI features in favour of GitLab CI. It must work with core & contrib, for both Current Drupal & Legacy D7. Contrib testing for modern Drupal versions is available today.

In progress: 

  • single sign on,
  • simplifying drupal.org (commit pages,  profiles, credit system),
  • issue collaboration,
  • issue credit.

Image removed.

Gitlab CI

If you are a project maintainer, GitLab CI is a tool you can enable to run automated tests whenever you make changes to your code, or whenever a contributor submits a merge request.

Core testing is now 5x times faster. What used to take 50 minutes, now takes less than 10 minutes.

Improved speed and performance have a direct translation into improved productivity

Update:

Remaining tasks:

  • Finalise the last testing combinations
  • Ensure private security testing process works in GitLab CI
  • Deprecate DrupalCI

What is left to have all sites in Drupal 10

Image removed.

Goal: Harmonising the whole portfolio of sites of the Drupal Association to the same Drupal version will help spending the resources better.

Updates:

  • Drupal 7 EOL is finally arriving in January 2024.
  • auth/SSO. Migration code is ready for review
  • Bluecheese theme. Port mostly complete
  • Production infrastructure. Major DB migrations for drupal.org

Next sites to move to Drupal 10:

events.drupal.org 

Social events listing feature being developed by our intern Haroms Terfasa 

The site has been upgraded from D9 to D10, which means that it now has sites hosted ranging from D6😱 to D10.

Drupal.org Update to Drupal 10

  • SSO (D7/D10) - Q4’24
  • CDN Config for partial migration - Q4’24
  • Homepage and key marketing pages - Q4’24
  • Drupal Association section/site - Q4’24

Status

  • https://events.drupal.org/ DONE
  • Api.Drupal.org (Migration written, awaiting deployment) - Q4’24
  • Localize.drupal.org (Migration written, awaiting SSO & deployment) - Q1 '24
  • jobs.drupal.org (needs strategic decision) - Q3 '24
  • security.drupal.org (being replaced by private GitLab) - Q3 '24
  • groups.drupal.org (largely replaced by /community/events) Still needs multilingual and interest groups - Q2 '24

Next milestones

  • First D10 Marketing Pages
  • Project Browser Endpoints
  • Telemetry Initiative? (Pending core alignment)
  • Deprecate DrupalCI - Summer '24
  • Deprecate Drupal.org issues (bulk migrate remaining) - Fall '24

Drupal 7 End of Life

As we all (should?) know, Drupal 7 support comes to an end. New landing page finished and published: https://www.drupal.org/about/drupal-7/d7eol/partners

The purpose of this landing is to provide all the information about the EOL, what it means, the timelines, etc and what is more important, your options as a site owner.

The landing gives some guidance as well to some partners that can help migrating to the last version of Drupal, see https://www.drupal.org/about/drupal-7/d7eol/partners#mid-scale-migration-partners 

You can as well became Certified Migration Partners, visit this link if you are interested: https://www.drupal.org/about/drupal-7/d7eol/partner-program 

If you are not sure what resources you may need or even if you need a partner, the D7EOL landing page offers guidance as well, just go to the “Understanding your options as a Drupal 7 site owner” form.

Contribution Health Dashboards

The contribution Health Dashboards is an initiative we took on the last quarter of 2023 and we published our findings and statistics here. Read the blog post with all the information explained here.

Thanks to the Contribution Health Dashboards we can track what is happening in our community in terms of contribution, and take actions towards improving, amongst other things, how innovation happens in Drupal 

The Drop Times: Drupal in Education: Data on CMS Usage in the World's Top 300 Universities

Drupal is a predominant Content Management System among the world's leading educational institutions, with 80% of the top 100 universities globally opting to utilize Drupal for their websites. This substantial adoption underscores Drupal's robustness, flexibility, and suitability for academic environments, marking it a preferred choice for higher education websites.

LN Webworks: 7 Reasons Why Your Drupal Site Needs Ongoing Support and Maintenance

Image removed.

Every security concerns, bugs, and outdated technological systems pose varying issues that need immediate addressing. That’s why you require regular Drupal support and maintenance for your website. If you miss addressing the issues promptly, your business can not only suffer losses but also lose its valuable reputation. This blog elaborates on 7 reasons why consistent Drupal support and maintenance are imperative for your Drupal site. 

Drupalize.Me: Part 4: Utility Components in Drupal (Spotlight on Symfony in Drupal)

Part 4: Utility Components in Drupal (Spotlight on Symfony in Drupal)

We've made it to the final blog post (for now?) in our spotlight on Symfony in Drupal. In this blog post, we'll take a look at Symfony's utility components. We're using this term to group together Symfony components that provide useful functionality. It's a great idea to familiarize yourself with these. You can make use of them in your own modules, or bring them into other PHP application code.

Blake Hall Wed, 01/31/2024 - 18:03