Drupal Core News: Drupal 11.0 will require PHP 8.3 and MySQL 8.0

Planet Drupal - 25. März 2024 - 13:08

Drupal 11 development has reached a point where the system requirements are being raised in the development branch. To prepare core developers for this and to inform the community at large, we are announcing the following requirements for Drupal 11.

Webserver

We announced in mid-February that there is an RFC to remove support for Windows in production. Other webserver requirements are unchanged.

PHP

Drupal 11 will require PHP 8.3 and older versions of PHP are not supported. Note that as of Drupal 9.4, a policy was adopted to automatically drop support for PHP versions no longer supported by the PHP maintainers, so future minor versions of Drupal 11 will increase the requirement further.

Database

The minimum database requirements for backends supported by Drupal 11 are MySQL 8.0, MariaDB 10.6, PostgreSQL 16 and SQLite 3.45.

Composer

Similar to Drupal 10.2, Drupal 11 will require Composer 2.7.0 or newer; this change was made for the Composer security fix released in February 2024.

Browsers

The existing browser policy has not changed and there was no need to update it for Drupal 11. Drupal already drops support for older versions of browsers as new ones get released.

PHP and JavaScript dependencies

Drupal 11 will depend on Symfony 7, PHPUnit 10 and jQuery 4, work is ongoing to update to these versions'.

Drupal 10 will receive long term support

Drupal 10 will continue to be supported until mid-late 2026 and the release of Drupal 12.

Drupal.org blog: Pitchburgh update March 2024

Planet Drupal - 25. März 2024 - 11:05

As the Pitchburgh projects are reaching their final milestones and they get completed, I wanted to do something new for this update, something different and, hopefully, something exciting and fun as well.

For this update I asked a few of them to provide a demo or video, so the project leads could explain in their own words, what their projects are about and how they look. I thought that it would be specially interesting for the projects that are more technical (which in turn, are difficult to understand for the less technical people) but really, nice for the rest of them as well, so after those many months just reading updates about them, we could actually see them giving some updates “in the flesh”. If applicable, we will also review next steps for those projects, as some of them (a few actually) will continue beyond Pitchburgh funding.

And I want to emphasize that last point. We need to think how amazing it is that, a seed capital like Pitchburgh has not just accomplished so much, but it has also started something bigger, something that will go beyond the scope of Pitchburgh and will continue to provide a lot of value for the community and Drupal even after the funding is finished.

Ok, let’s start with the projects that have completed all their milestones and are finished or mostly finished in the scope of Pitchburgh.

Access policy

Kristiaan´s Access Policy code has been merged into core, and we couldn’t be more excited, as his work is the first Pitchburgh project that made it into core (of the two projects that will have code contributed to core).

Kristiaan continues his work and conversations with the core maintainers team to get the next part committed, which is to make core itself run on the API. All the work is finished, it just needs to be reviewed and committed

His Pitchburgh proposal was to “add an API to Drupal core that allows people to assign permissions via other means than user roles. These permissions will be assigned based on custom policies such as time of day, safety level of the account, etc”

You can watch his Pitchburgh winning pitch here:

Watch Kristiaan’s demo to understand more about the project, what updates and innovations is introducing and more.

Next steps

Kristiaan is in conversations with the core committers, as this has been approved to be released in Drupal 11 (although it could be as soon as 10.3) and he’s keeping an eye in case anything is needed from himself.

JSON api

The other project that will introduce code in Drupal core is JSON API, led by Brad Jones. 

His work will “unlock the ability to perform NoSQL-like queries within Drupal's existing relational data model, making Drupal more flexible as a site grows and matures”

You can watch his Pitchburgh winning pitch here:
 

And his final update here:

Next steps

His work is on queue to be merged into core, and although the code is ready to be merged, and hence project can be considered as done, Brad continues working on his JSON api, updating the code as needed on the code review process and ensuring that it will be on a mergeable state once the core committer team is on a position to do so. We're very grateful for Brad for continuing to foster this project across the finish line!

Decoupled LB

The goal of this project was to “transform and improve the Layout Builder UI experience [...] By rewriting it using React. We’ll design an API that describes the future state of how a Decoupled Layout Builder could work, dramatically enhancing the content editor experience and in turn, bringing Drupal into the modern era of Web UX”.

Work is finished and Lee Rowlands has prepared the demo we are showcasing the way the blocks work, that you can watch here:

You can watch the winning pitch here:

Gutenberg in Drupal

Frontkom went through a workshop, which was part of the pitch to improve Gutenberg in Drupal, and in which Automattic (yes, the company behind Wordpress) not just participated with their people and extremely valuable expertise in this matter, but they even took care of the funding.

This was their pitch:

“Drupal should be the most easy to use enterprise CMS. Let’s move in that direction through Drupal Gutenberg. We want to take it to the next level, connecting the relevant people to innovate together”

And the video:

Thor from Frontkom provided me with the next update after their workshop as a project closure.

After going through the two full days of workshop together we conclude that we met all our 5 defined goals. The Drupal Gutenberg team believes we achieved a lot more than expected, and we had high expectations. The deliveries for the Pitchburgh project are now done, and summaries are being updated to the d.o issues as we speak.

We are working on a strategic action plan for the integration of Gutenberg into Drupal. Key actions for the coming year include:

  • Refactor the Gutenberg UI: The transition from using the full Post Edit component in Gutenberg to employing smaller, more suitable components from Gutenberg was identified as a crucial step.
  • Facilitate efficient data migration: Strategies were proposed to aid migration from CKEditor 5 to Gutenberg, with considerations for structuring data and handling symmetric translations.
  • Better developer experience: Implement a plugin system to generate blocks which would ease the onboarding for developers and reduce the need for extensive Gutenberg and/or React knowledge.
  • Community Adoption: Foster wider adoption of Gutenberg within the Drupal community by meeting the challenges of Gutenberg and Drupal theming knowledge requirements and migration from CKEditor and Layout Builder.
  • Entity Agnostic: The development of an ‘entity agnostic’ feature for Gutenberg in Drupal is proposed. This allows Gutenberg to be used independent of the parent entity type, increasing flexibility and compatibility across various Drupal entities.
  • Enable Single Field Editing in Gutenberg: Another key strategy is to enable the use of Gutenberg for single field editing, which can make content management and individual adjustments more efficient and intuitive. This enhances the granularity of the Gutenberg editor’s control within Drupal.

These strategic decisions aim to improve the Drupal experience with Gutenberg, targeting both user-facing features and the underlying developer experience. The common goal is to promote Gutenberg as a viable and efficient solution for content creation and layout handling.

Next steps

Frontkom is one of the Pitchburgh teams keen to continue working after the context of the Pitchburgh project itself has finished, continuing the work to improve the way users build their sites in Drupal.

Those are the projects that have fully completed their Pitchburgh scope already. Let’s look at the two final projects:

Drupal API

Brian Perry requested funding with the goal to

“assemble a group of contributors in order to combine the best of existing Drupal API clients into a set of utilities that can both address common use cases with little configuration, and also be extended to support the needs of a diverse JavaScript ecosystem.“

Watch his Drupal API Pitchburgh winning proposal:

He provided the next March update:

After a bit of a lull around the holidays, we’ve resumed momentum towards the 1.0 release of our json-api-client package and are once again making good progress. Our most recent release is 0.4.0 which includes support for additional authentication methods, along with support for all JSON:API create, read, update and delete operations. More information can be found in the following changelogs:

@drupal-api-client/json-api-client
@drupal-api-client/api-client

We’ve also created our Open Collective, along with a related project focused on our Pitch-burgh work. We’ve established a budget using some of our funds and have started the process of using these funds to sponsor time for some of our contributors. At the time of this writing we still have budget available to sponsor a modest amount of someone’s time to contribute to our 1.0 release. If you’re interested, join us in the #api-client channel in Drupal Slack and let us know.

We’ve also updated our timeline for the completion of our Pitch-burgh work. Our new target to complete 1.0 is the end of March. This target also ensures that we’ll have a solid month to prepare to spread the word about our 1.0 release at DrupalCon.

Next steps

Brian has not just shown interest to continue working on the project after the funds run out, he is actually committed to finding further funds, resources and help as necessary, and has been working hard on this regardless of the extra resources he may have been finding.

Mentor the mentor

AmyJune continues her amazing work evangelizing and bringing Drupal to new generations, including trailing her new first time contributor workshop in DrupalCon Lille, more recently at Florida DrupalCamp, and the upcoming DrupalCon Portland where the final workshop will be held.

Her goal was to “rebuild the assets for a first time contributor workshop to be more interactive instead of straight content delivery and provide documentation and turn key presentations that any one can use at their local event. I would like to build a presentation around best practices for organizations starting in contributions to help combat ‘“gaming the system’.”

Watch her winning pitch here:

And this is her update:

The new First Time Contributor Workshop was warmly received outside DrupalCon for the first time at Florida DrupalCamp. Designed with flexibility in mind, the workshop slides come fully scripted and can be adapted to various time frames, making it a breeze to tailor to a specific event's needs.

Mike Anello, ultimike, did a fantastic job customizing the workshop for the 45 minute time requirement. The workshop ran smoothly by selectively hiding slides and reserving demos for the contribution room. Meanwhile, AmyJune was in attendance, gathering valuable feedback in real-time, which allowed the slides to be tweaked in real-time, ensuring the presentation was better for the next mentor.

Thanks to the constructive feedback, the Mentoring team is excited to roll out an enhanced version of the slides at upcoming camps over the next few months. This workshop is easily adaptable for both DrupalCon and regional camps alike. The best part? The slides are ready to go as is (scripted and accessible), making them incredibly straightforward for organizers and mentors to use without extensive preparation.

Watch for our revamped First Time Contributor Workshops at upcoming events including DrupalSouth, MidCamp, DrupalCamp New Jersey, and DrupalCon Portland. We can't wait to see you there, and we look forward to making contributing to Drupal an even more accessible and enjoyable experience for newcomers!
 

And like that famous character would say. That’s all folks. We’ll likely provide a final update on Drupal API, or maybe some other updates on some of the projects here and there, but, as most of them are finished, this will likely be my last update talking about the whole scope of Pitchburgh projects in the Innovation Blog. Expect one final update, in person, at DrupalCon Portland. I am looking forward to meeting all of you there; I hope you can make it.

I have to thank everyone involved for their passion, their commitment and the continuing pursuit for improvement and giving back to the community. I particularly love how, every single one of them, are committed to their projects and tasks way beyond any money or personal gains, and they continue to ensure that their work will have a lasting legacy and a positive impact.

Pitchburgh participants:

And for sure, thanks Tim Doyle for his advice and continued pursuit of perfection, Tim Lehnen for his incredible support beyond what his role as my manager would imply, and all the donors without whom this would have not been possible:

And finally thanks to the judges:

Thank you all, you are all just beyond awesomeness ????

Balint Pekker: Automatic Updates

Planet Drupal - 23. März 2024 - 2:36
The Automatic Updates initiative will not only address the often painful process of manually installing crucial security updates but will also make it significantly easier for your Drupal site to remain up-to-date with the security advisories and the latest protections against potential threats. Let's dive into the details and see how it works.

The Drop Times: Enhancing Drupal Experience: A Look into the Documentation and Help Initiative

Planet Drupal - 22. März 2024 - 22:24
Join Amber Matz on a journey through Drupal's evolution as she unveils insights into the Documentation and Help initiative. Delve into the world of community-driven efforts, discovering how collaborative initiatives are shaping the future of Drupal's documentation and assistance.

Droptica: Drupal and Other CMS Systems Used by Polish Universities. The Droptica Report

Planet Drupal - 22. März 2024 - 13:46

Drupal is a CMS that colleges from different countries eagerly use. According to a report by The Drop Times, up to 80% of the world's top 100 universities chose Drupal for at least one of their websites. We wanted to find out how this technology is used in Poland and what other content management systems are popular among Polish higher education institutions - both public and private. This report presents the results of our analysis. 

LN Webworks: How to Implement Google Analytics In Drupal : All You Need To Know

Planet Drupal - 22. März 2024 - 12:37

Google Analytics 4 has taken the world of web analytics by storm. It is an incredible tool that helps you understand how users interact with your business website. You can use these insights to deliver personalized experiences to your customers, enhance loyalty, and boost your revenue. If you have availed of Drupal services and run a Drupal-powered website, this blog will help you delve into how you can successfully combine Drupal and GA4 to accomplish phenomenal results. 

How to Combine GA4 With Your Drupal Website

Given the fantastic user insights provided by GA4, its combination with Drupal can take your business website on an upward spiral of growth. As Drupal is a cutting-edge content management system, its combination with GA4 can result in the creation of an incredible marketing strategy and improvement in your site’s performance. 

Acquia Developer Portal Blog: Maximizing Learning and Networking: Insights from DrupalCamp New Jersey

Planet Drupal - 22. März 2024 - 3:29

A DrupalCamp is a one- or two-day event that centers on the Drupal open source web content management system, and tends to bring together people from a geographical region. The goals are primarily, of course, knowledge sharing and increasing awareness of and helping to grow the Drupal community. It's not easy to do this without also increasing awareness and knowledge of the tools we all use along with Drupal as well, which makes the gatherings all the more valuable.

ImageX: Florida DrupalCamp: Not just another Layout Builder article

Planet Drupal - 22. März 2024 - 1:38

Avi Schwab, is a prolific contributor to Drupal, and one of the lead organizers of MidCamp, an annual gathering of the MidWest Drupal community in Chicago.

Théodore 'nod_' Biadala: Replacing jQuery parents() with CSS :has()

Planet Drupal - 22. März 2024 - 0:30

CSS has been on a roll for a few years and we keep getting great things to use. In the process of removing jQuery from Drupal core, we’re running into the problem of replacing jQuery .parents() method by something else. In certain conditions it is very easy to use CSS selectors to replace this method. Given the following HTML:

<html> <body> <main> <article id="article-19"></article> </main> </body> </html>

To select all the parents of the article tag with jQuery you could do:

// This returns: main, body, html $('#article-19').parents(); // This returns: body $('#article-19').parents('body');

The typical way of doing this is with a while loop looking at the parentElement and building the array manually. Now with :has() it becomes much easier:

// This returns: html, body, main document.querySelectorAll(':has(#article-19)'); // To return the same order as jQuery: Array.from( document.querySelectorAll(':has(#article-19)') ).reverse(); // This returns: body document.querySelectorAll('body:has(#article-19)');

The only limitation is that a unique identifier needs to exist to build the CSS selector, that’s easy enough to generate if necessary.

Use the platform. When it’s good, it’s really good.

Four Kitchens: AstroJS and Drupal

Planet Drupal - 21. März 2024 - 22:53

Mike Goulding

Senior Drupal Engineer

Mike has been part of the Four Kitchens crew since 2018, where he works as a senior engineer and tech lead for a variety of Drupal and WordPress projects.

January 1, 1970

There are many different options available for the organization or team that decides it is time to decouple their Drupal site. There are frameworks that are designed for static site generation (SSG) and there are others that use server-side rendering (SSR), with many that claim to do both well.

React and NextJS have been popular options for a while now, and they are well-loved here at Four Kitchens as well. Another framework that is a little different from the above is Astro, and it may be worth considering.

What is Astro?

Astro is an interesting framework to work with, and it only becomes more so with time. Astro’s website makes claims of performance advantages over many other frameworks in the space. The full report can be found here.

More interesting than performance claims are some of the unique features this framework brings with it. Astro has many official integrations for other popular JS frameworks. This means, for example, that part of a page could use React, while another part could use Svelte. An even more ambitious page could use Vue, React, and AlpineJS for different components. While these examples are not a typical or recommended use case, they do illustrate that flexibility is one of the real strengths of Astro.

This flexibility doesn’t come with a steep learning curve, as Astro makes use of enough familiar pieces so that newcomers aren’t immediately overwhelmed. It is possible to write Astro components in a straightforward manner, similar to HTML, and still incorporate JavaScript XML (JSX) expressions to include data in the component’s output. There are a couple of tutorials for getting started with Astro, and they do a good job of giving the general structure of a project along with some scenarios that are unique to the framework.

(Also, Houston is an adorable mascot and I am here for it!)

Using Astro with Drupal

Despite all of the integrations that can be found in the Astro toolset, there is notably one key thing that is missing: There isn’t an existing integration for Drupal! The list of content management systems (CMSs) that Astro recommends are specifically headless CMSs, which make for a more natural starting point for this setup than converting a Drupal site.

Never fear, though! Drupal may not specifically be on that list, but that doesn’t mean it isn’t something that should be considered. Astro has that incredible flexibility, after all, and that means there are more options than it seems on the surface. All that is needed is an endpoint (or several) to fetch data from Drupal, and things are looking up once again.

Using the Drupal GraphQL and GraphQL Compose modules, it is possible to quickly get data ready to expose from Drupal and into the hands of a decoupled framework like Astro. With that, it becomes possible to fetch that data within Astro and build our frontend while taking advantage of many of the features that Astro offers. This can also be done with REST API or JSON:API, but for our purposes, the consistency and structure of GraphQL can’t be beat when crafting a decoupled integration with Drupal.

Using the fetch function that is available to Astro, (and JavaScript in general), we can get data from just about anywhere into our Astro components. This blends well with the head start from the compose module, as you can take an existing Drupal site and be ready to connect to a frontend framework very quickly. This means quicker prototyping and quicker assembling of components.

Astro also supports dynamic routing out of the box, which is an essential feature when connecting to a Drupal site where routes aren’t always structured like directories. Using this wildcard type of functionality, we can more easily take an existing site — regardless of the structure of the content — and get output into Astro. With the data from the routes in hand, we can get to the fun part: building the components and taking advantage of more of the Astro’s flexibility.

Flexibility is key

For me, Astro’s strength doesn’t solely come from the speed that it builds and renders content or the ease of building pages in a familiar JSX or Markdown pattern. Its real strength comes from the flexibility and variety of build options. While it does a great job handling some functionality on a given component or creating simple pages for a blog listing, it does even more with the ability to bring in other frameworks inside of components. Want to add a search page, but there isn’t an existing integration for Astro? If there is one for React, that works here, too! Do you have an internal team member really excited about building personalized content with Vue? Bring that in, and that component will work as well.

While the reality of the implementations may be a bit more involved than described on the tin, it is surprisingly easy and encouraged to bring in live updating components inside of Astro. This changes what would otherwise be a run-of-the-mill frontend tool into something much more interesting. Astro does shine in its own right, especially with statically generated pages and content. It just wouldn’t be doing anything especially new without bringing in other frameworks.

This is also where bringing a CMS like Drupal into a decoupled setup with Astro is intriguing. There is an opportunity for highly dynamic pages that wouldn’t work with a traditional static framework while still getting the speed and benefits of that approach. Drupal sites are typically very quick to update when content changes, which can be a sticking point for working with a decoupled architecture. How often should the frontend be rebuilt and how much can caching make up the difference? With having some parts of the site use components that can update more easily on the page, there benefits of both approaches can come through.

The post AstroJS and Drupal appeared first on Four Kitchens.

Drupal Core News: RFC Remove support for Windows in production in Drupal 11

Planet Drupal - 15. Februar 2024 - 23:49

Drupal added support for IIS in 2010 and we have supported that and WAMP (Running Apache and PHP on Windows). Unfortunately, we have never been able to provide automated testing for these environments.  And since 2010, the use of Microsoft products for hosting websites has declined. Because of this, the Drupal core committers propose drop support for Windows when used on production web sites in Drupal 11.

Support for development on Windows will continue. Drupal will continue to accept bug reports for Windows used in development environments,

The following links show the usage statistics used when making this proposal.

Comment period

Community feedback is sought on the proposed process. Please use this issue to add your input. The feedback period will last until Friday March 8 2024.

"Sora": Generative KI von OpenAI soll realistische Videos erschaffen

heise online Newsticker - 15. Februar 2024 - 23:49

OpenAI hat den Text-zu-Video-Generator "Sora" vorgestellt, der aus Textanweisungen realistisch aussehende Videos von bis zu einer Minute Länge erzeugt.

Gigabit-Netze: EU-Kommission mit neuem Anlauf für Kostenbeteiligung von Big Tech

heise online Newsticker - 15. Februar 2024 - 23:09

Für den weiteren Aufbau der digitalen Infrastruktur bringt die EU-Kommission erneut eine von großen Plattformen zu zahlende Infrastrukturabgabe ins Spiel.

Meldeportal für "kritische Ereignisse in der medizinischen Versorgung" gestartet

heise online Newsticker - 15. Februar 2024 - 22:35

Über ein Meldeportal sollen Versicherte erstmals über kritische, aber auch positive Ereignisse in der medizinischen Versorgung berichten können.

Strategiewechsel bei Microsoft: Vier Xbox-Spiele werden auf Playstation portiert

heise online Newsticker - 15. Februar 2024 - 22:32

Microsoft will mehrere Xbox-Exklusivspiele auf die Playstation portieren. Fans sollen sich um die Zukunft der Xbox aber keine Sorgen machen.

The Drop Times: Drupal's Innovation and Future: 2024 and Beyond—Part 1

Planet Drupal - 15. Februar 2024 - 22:04
Discover the future of Drupal as we delve into insights from prominent community members like AmyJune Hineline, Michael Anello, and more. Explore upcoming advancements, organizational strategies, and the vital role of initiatives like Drupal Diversity & Inclusion in shaping a vibrant community.

The Drop Times: Drupal's Innovation and Future: Share Your Perspectives!

Planet Drupal - 15. Februar 2024 - 22:04
Drupal's success story is written by its community and its users. As the web landscape evolves, understanding the Drupal community's vision for ensuring Drupal remains innovative, adaptable, and inclusive is important. To get a pulse on where Drupal is headed, The Drop Times is launching a special project to gather insights directly from people in the Drupal community and Drupal users. Your perspectives will shape a series of articles focused on "Drupal's Innovation and Future: 2024 and Beyond." In our first article, we connected with diverse experts exploring challenges and opportunities. Now, it's your turn!

Apple bestätigt: Keine Progressive Web Apps mehr für iOS in der EU

heise online Newsticker - 15. Februar 2024 - 21:54

Apples Anpassungen an den Digital Markets Act fordern technischen Tribut: Progressive Web Apps sind ab dem nächsten iOS dahin. Das habe u.a. Sicherheitsgründe.

TechStage | Steckdosen mit USB ab 4 Euro – Mehr Stromanschlüsse und Lademöglichkeiten

heise online Newsticker - 15. Februar 2024 - 21:00

Viele smarte Geräte werden per USB mit Strom versorgt, andere darüber geladen. Steckdosen sind daher oft mit USB-Netzteilen belegt. Doch das muss gar nicht sein. Mit USB-Steckdosen – Unterputzvarianten, Zwischenstecker oder Steckdosenleisten – lässt sich das Problem umgehen.

Debatte auf Mastodon und GitHub: Wie genau Bluesky und das Fediverse verbinden?

heise online Newsticker - 15. Februar 2024 - 19:23

Schon bald könnte es eine Verbindung zwischen zwei der wichtigsten Twitter-Alternativen geben. Das begrüßen vor allem auf Mastodon nicht alle.