Talking Drupal: Talking Drupal #441 - CI for Drupal modules

Today we are talking about CI for Drupal modules, How it helps us build Drupal, and the ongoing work and improvements being made with guest Fran Garcia-Linares. We’ll also cover Require on Publish as our module of the week.

For show notes visit: www.talkingDrupal.com/441

Topics
  • What does CI mean
  • How do Drupal modules use CI
  • When we talk about Drupal CI are we talking about the website itself or the CI that supports contributors
  • What tools does Drupal use for CI
  • How do maintainers interact with CI
  • What changes have happened in the last year
  • Speed improvements
  • Drupal CI vs Gitlab CI
  • Process to convert
  • When is Drupal CI being shut down
  • What improvements are coming
  • If someone has an issue where do they get help
Resources Guests

Fran Garcia-Linares - fjgarlin

Hosts

Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Anna Mykhailova - kalamuna.com amykhailova

MOTW Correspondent

Martin Anderson-Clutz - mandclu

  • Brief description:
    • Have you ever wanted to have content fields that could be optional until a piece of content is published, or ready to be published? There’s a module for that.
  • Module name/project name:
  • Brief history
    • How old: created in Apr 2018 by Mike Priscella (mpriscella), though recent releases are by Mark Dorison (markdorison) of Chromatic
    • Versions available: 8.x-1.10
  • Maintainership
    • Actively maintained, latest release just over a month ago
    • Security coverage
    • Test coverage
    • Number of open issues: 18, 8 of which are bugs
  • Usage stats:
    • 3,001 sites
  • Module features and usage
    • With this module enabled, form to configure fields for you content types will have a new checkbox labeled “Required on Publish”
    • Check this new box instead of the normal “Required field” checkbox to have the field only required if the content is being published or already published
    • Useful for publishing workflows where you want content creators to be able to quickly get started on content, but ensure that fields will be filled in before publishing
    • Useful for fields that will optimize the content for SEO, social sharing, search, and so on

Drupal Association blog: Meet Imre, empowering Drupal's growth as a board member of the Drupal Association

Image removed.

We're delighted to introduce Imre Gmelig Meijling, one of the newest members elected in October of the Drupal Association Board. Imre, CEO at React Online Digital Agency in The Netherlands, brings a wealth of digital experience from roles at organizations like the United Nations World Food Programme, Disney, and Port of Rotterdam.

Imre is not only a member of the Drupal Association Board of Directors but also serves as an executive member on the DrupalCon Europe Advisory Committee. Previously, he chaired the Dutch Drupal Association, expanding marketing efforts and establishing a successful Drupal Partner Program. Imre played a key role in launching drupal.nl, a community website used by several countries. He co-created the Splash Awards and led Drupaljam, a Dutch Drupal event with almost 500 attendees. In 2023, Imre joined the Drupal Business Survey.

As a recent board member, Imre shares insights on this exciting journey:

What are you most excited about when it comes to joining the Drupal Association board?
I am very excited about joining the Drupal Association Board and contributing with insights and perspectives from the digital business market in Europe. Drupal has a strong market position with many opportunities for the coming years. I look forward to supporting the marketing team in their expanding efforts. I am particularly proud and excited to be part of an inclusive global community. Being part of an inclusive global community and supporting the Open Web Manifesto aligns closely with my personal values.

What do you hope to accomplish during your time on the board?
I aim to help expand Drupal's marketing outreach aiming for more wonderful brands and organizations adopting Drupal and attracting new talent to get involved with Drupal. I am also looking forward to establishing and sustaining relationships between Europe and other regions with the Drupal Association and finding ways to work even more closely together.

What specific skill or perspective do you contribute to the board?
Being part of an inclusive global community and supporting the Open Web Manifesto aligns closely with my personal values. Working with Drupal at various digital agencies in Europe, I support the growth of Drupal from a business-perspective, but having a technical background, I know the strength of the Drupal community has and can be for brands. Having been in both worlds for a long time, I will help and make sure we bring them together.

I was Chair of the Board for the Dutch Drupal Association, in which time a successful Dutch Partner Program was launched. Also, marketing and advertising on mainstream media was taking off during that time. I was also involved in the design and setup of the Dutch Drupal website, which is now open source. I co-founded the Splash Awards and I am Executive Member of the DrupalCon Europe Community Advisory Committee. I will share all of my experiences where I can. 

How has Drupal impacted your life or career?
It's part of my life, both professional as well as personal, for over 16 years.

Tell us something that the Drupal community might not know about you.
I own my own digital agency in The Netherlands, React Online. I began my career as a UX designer and front end developer for Lotus Notes applications, called 'groupware' at the time, a long gone predecessor to the social collaboration platforms that we now know well. Interestingly, my birthday is on January 15, just like Drupal!

Share a favorite quote or piece of advice that has inspired you.
A true leader is not one with the most followers, but one who makes the most leaders out of others. A true master is not the one with the most students, but one who makes masters out of others.

We can't wait to experience the incredible contributions Imre will make during his time on the Drupal Association Board. Thank you, Imre, for dedicating yourself to serving the Drupal community through your board work! Connect with Imre on LinkedIn.

The Drupal Association Board of Directors comprises 12 members, with nine nominated for staggered 3-year terms, two elected by the Drupal Association members, and one reserved for the Drupal Project Founder, Dries Buyteart. The Board meets twice in person and four times virtually annually, overseeing policy establishment, executive director management, budget approval, financial reports, and participation in fundraising efforts.

ComputerMinds.co.uk: Webform Protected Downloads

Image removed.

I recently produced the first release of the Webform Protected Downloads module that is compatible with Drupal 10. It provides the ability for sites to have 'gated' content which users can download once they have filled out a form for their details. This can convert engaged visitors into leads, set up licenses for customers, or simply validate a user for access to a file. Put simply, as the project's description says, this module could be useful to you if:

  • You want to offer some files for download to either anonymous or registered users
  • You don't want those files to be publicly accessible
  • You want to collect some data before granting access to the files
  • You want to be sure that the user gives a valid email address

One of our clients recently came to us with requirements along these lines for their Drupal 10 site, so I went out looking for suitable solutions. There are several similar modules, but this was the only one that fit these specific needs:

  1. There should be no way for the public to access the files without completing the webform.
  2. There could be more than one file to provide access to from a webform.
  3. The file(s) should be downloaded from the website rather than sent by email.

We had used the module on an old Drupal 7 site a long time ago, but there hadn't been any work on it for a few years and there was no release compatible with Drupal 10. However, development had started in a branch that had been automatically opened up to new maintainers. This was a great example of how that process can help the community keep modules up-to-date and secure with little fuss. All I had to do was confirm a few details myself, and within a few hours I had access to update the project. Of course, I'm building upon the great work that has been done by the previous maintainers - and in this case, Timotej Lovrecic especially, who had created an initial fork on GitHub that was compatible with Drupal 8.

Now that we have a version to use with Drupal 10; let me introduce you to how to use it! I'll assume you can already download and install the module

Image removed. Screenshot of the handler settings (click image for full size)

When you configure the settings of a webform, you can set up 'handlers'. Emails sent to users or administrators are probably the most common sort of handler, so the tab to configure these under Webform's 'Settings' page is labelled 'Emails / Handlers'. Add a handler, and choose the 'Webform protected download' type in the popup.

From here you can control what amount of verification you want to apply to the download link (such as whether you want to restrict it to the user that submits the form or not), whether the link should only work once, or expire after some time. The file to protect can be uploaded at the bottom of the form. 

Once you've configured and saved your handler, the next step is to use tokens to set how a user receives their link. These could go in an email - in which case configure an email handler, or a confirmation message/page - which can be set from the 'Confirmation' tab of the Webform's 'Settings' page.

In either case, the token to use takes the format: [webform_submission:protected_download_url:my_handler_id]. (If you only have one protected download, you can skip that last part off so it is just [webform_submission:protected_download_url].) The handler ID should be the 'machine name' from your handler settings, which is also shown in a column in the list of handlers. The token will be replaced with the user's unique download URL, so you may wish to use it directly within a plain-text email, or as a link destination in a confirmation message (which is usually HTML).

Image removed.Example of using a download token for a link within the confirmation message

With that token in the right place, when your guest completes the webform, they'll now receive the link to download the file they wanted - and you'll have what you wanted in return.

Let me know how you get on. Your feedback is welcome in the comments below or in the Webform Protected Downloads module's issue queue!

The Drop Times: Fostering Diversity, Equity, and Inclusion in Drupal Community

As we weave through the ups and downs of the evolutionary tides of technology, it's imperative to anchor ourselves in the values that foster an inclusive, equitable, and diverse environment. The essence of the Drupal community lies not just in our exceptional technical prowess but in the collective spirit that champions Diversity, Equity, and Inclusion (DEI). This isn't merely a buzzword; it's the bedrock of innovation, creativity, and growth. 

As Mahatma Gandhi once said,

"Our ability to reach unity in diversity will be the beauty and the test of our civilization." 

Let us embrace this wisdom as we continue to build not just extraordinary products but also a community that reflects the world's vast and vibrant tapestry.

In this journey towards a more inclusive community, we must recognize that DEI is not the responsibility of a select few but a commitment from all of us. Whether you are a developer, stakeholder, or a member of the wider public, your voice matters. Your experiences, perspectives, and contributions shape our community's very fabric. Let's pledge to listen, learn, and act with empathy and understanding. Together, we can create a space that not only drives technological advancement but also mirrors the diverse world we live in.

Last week, celebrating Women's Day, TDT spotlighted notable quotes from women in the Drupal community, sharing their valuable insights and messages with fellow Drupalers. Additionally, the TDT released a special feature authored by Alka Elizabeth titled "Inspiring Inclusion: Celebrating the Women in Drupal | #1", emphasizing the importance of fostering inclusivity. In the article, Fei Lauren notes that,

One major problem is that we talk about DEI too abstractly instead of looking at data to identify problems – often, the data isn't even there. And when data is available, too often we talk about solutions without asking the individuals themselves what they need. We should learn to think about everything we do through the lens of DEI, but if we really want to drive change, we need to learn how to ask the right questions.

Please let us know if any women in the Drupal Community have inspired you and would like us to know and help us spread the word about them. Please share your insights with us at editor@thedroptimes.com. Also, part two will be out soon, so stay tuned.

Now, let's shift the focus and explore some of the latest news stories and articles we covered last week.

I had the opportunity to interact with James Shield and delve into his extensive 15-year journey within the Drupal community through a unique blend of personal interests and professional advancements. Read the full interview here.

Before the commencement of NERD Summit 2024 on March 8th and 9th, I also had the opportunity to discuss the event with its organizer, Rick Hood, and the keynote speaker, Jessica Cobb. Drawing from their valuable insights, I crafted a featured article highlighting NERD Summit 2024  titled "Exploring the Dynamic Landscape of NERD Summit 2024."

Alka Elizabeth penned a feature on  Alex Moreno's initiative to transform Drupal.org by integrating user roles for personalized onboarding, fostering community collaboration, sustainability, and innovation to boost contributions and engagement while also exploring future strategies for a sustainable Drupal and the community's pivotal role in effecting change. Learn more here.

In an exciting collaboration announcement, The Drop Times has partnered with DrupalCamp Ghent 2024, marking their return to Ghent on May 10-11, 2024, as the event's official media partner. We are also the official Media Partner for DrupalCamp Asheville 2024, an important fixture in the Drupal community calendar scheduled from July 12-14.

Developers are invited to submit their Drupal-based projects for consideration in the 2024 Splash Award Germany & Austria, with submissions open until July 31. The awards ceremony, scheduled for November 7 in Berlin, will see experts selecting the winners from the pool of digital projects. For more information, visit this link.

Registration is now available for Drupal Developer Days 2024 in Burgas. Speakers must register on the event's website to submit session proposals, but attendance is open to all without registration.

DrupalCon Portland introduces an exclusive $50 rate for students and recent alumni (from 2022 onwards), extending this discounted offer to individuals from colleges, universities, trade schools, and Drupal training programs. Learn more here.

Drupaljam 2024 announces an early-bird ticket promotion, allowing attendees to secure their spots at the event and save on registration fees until March 31st. More details are available for interested participants here.

Time is running out to submit session proposals for DrupalCon Barcelona 2024, with less than a month left for interested participants to seize the opportunity and share their ideas. Learn more about this here.

Get ready to celebrate coffee and community as the Drupal Coffee Exchange occurs during MidCamp 2024 on Thursday, March 21st, from 2:00 pm to 2:15 pm CDT. Events for the week are here.

Gábor Hojtsy reveals the latest updates on the Drupal 11 release, announcing potential release dates for either the week of July 29 or the week of December 9, 2024, pending completion of beta requirements. To learn more about the release, visit this link.

A critical security update for the Registration Role Module in Drupal has been issued, addressing an access bypass vulnerability affecting versions before 2.0.1. Discovered by Pamela Barone and Renaud Joubert, the flaw stems from a logic error during module upgrades, potentially allowing unauthorized role assignments to new users. Know more about this security update here.

The formation of the Advisory Committee for DrupalCon Barcelona 2024 has been announced, showcasing the combined efforts of diverse volunteers dedicated to ensuring the success of this European Drupal event. For further details about the committee members, visit the provided link.

Alex Moreno unveils a transformative approach to user onboarding, emphasizing enhanced engagement through simplified communication and community contribution incentives. Learn more here.

We acknowledge that there are more stories to share. However, due to selection constraints, we must pause further exploration for now.

To get timely updates, follow us on LinkedIn, Twitter and Facebook. Also, join us on Drupal Slack at #thedroptimes.


Thank you,
Sincerely
Elma John
Sub-editor, TheDropTimes.

Drupal Association blog: Contributor guide: Maximizing Impactful Contributions

As I have mentioned in the past, many people and companies have communicated to me in the past their willingness to know how they could make their contribution more impactful to Drupal and the Drupal association. The Bounty program has proved success, and we are exploring and getting new ideas to extend it. However we don't want to stop here.

That’s why we are publishing today this list of strategic initiatives, and list of issues and modules where your contribution should be more impactful.

Additionally we may want at some point to grant extra credits to some those issues. For now, if you are not sure where to contribute but you want to make sure that your contribution makes a difference, have a look at this list and take your pick. 

And have in mind that this is a work in progress or a living document. Some sections will need proposals that we will start populating after internal review, and depending on the feedback received on the usefulness of this document.

Strategic Initiatives

Strategic initiatives are where some of the most important innovations in Drupal happen. These are often big picture ideas to add major new features to Drupal that range from improving major apis, to adding better page building, to improving the total cost of ownership by adding quality of life features, and much more. 

Participating in a strategic initiative can be challenging but also rewarding. It is not a place for a drive-by contribution - it's a place to join if you have dedicated time to devote, are willing to listen and learn from the existing contributors and initiative leads before you jump in, and have a strong background in related areas.

Find here more information about the current Strategic Initiatives.

Issues

Contributing to individual issues can be less of a long-term commitment than participating in Strategic Initiatives, but it can also be overwhelming because of the sheer number of issues on Drupal.org. It's also very important to follow the issue etiquette guidelines when contributing to issues. Most of all - listen to and respect the project maintainer and their guidance when contributing to issues on their project. It's better to help solve existing issues to show your willingness to help before opening any new ones.

Modules and projects

Drupal is built on the back of a powerful ecosystem of extensions, modules, themes, distributions, etc. These extensions are crucial for supporting the vast variety of industry use cases that Drupal is used for, and oftentimes some of the most important innovations in Drupal begin as contributed extensions. 

These are just a few projects that could use contribution support to help advance Drupal.

Top used patches

  • Would it be amazing to have a list of most used patches, and propose those as priorities to get fixed? We are working on extracting that list. COMING SOON
  • Would you like to propose a patch or patches on this section? Send me your suggestions and why it would make a difference to: alex.moreno@association.drupal.org

Easy picks

Issues that are easy to fix or just need a little push

Ideas/others?

Contact me: alex.moreno@association.drupal.org

Educational resources for contribution

We offer some detailed resources that we recommend everyone review when learning to first contribute: 

Resource #1: A video introduction to contribution:

https://www.youtube.com/watch?v=lu7ND0JT-8A

Resource #2: A slide deck which goes into greater depth about contribution:

https://docs.google.com/presentation/d/1jvU0-9Fd4p1Bla67x9rGALyE7anmzjhQ4vPUbf4SGhk/edit 

Resource #3: The First Time Contributors Workshop from DrupalCon Global:

https://www.youtube.com/watch?v=0K0uIgKaVNQ

Avoid contribution behavior that seems motivated just to 'game the system'

It's unfortunate, but we do sometimes see contributors who appear and disappear on single issues on small, repetitive tasks that could just as easily be handled by automated tools. These issues are generally not eligible for credit anyway, and often cause frustration for Project Maintainers. It's not good for you or your company's reputation to contribute in this way.

Resource #4: Abuse of the credit system

These guidelines help clarify what kinds of contributions are not considered acceptable for marketplace credit.

https://www.drupal.org/drupalorg/docs/marketplace/abuse-of-the-contribution-credit-system

We did see some recent examples of issues being opened for individual phpcs issues, when we prefer to see all phpcs issues fixed in a single issue, for example. 

MidCamp - Midwest Drupal Camp: Looking for Non-Technical Training?

Looking for Non-Technical Training?

With less than two weeks to go, trainings at MidCamp 2024 are on sale and filling up fast. 

This year we’re excited to offer two great options for non-technical folk, also open to technical attendees who are looking for alternative options:

Tech Career Tune-Up: Navigating Your Path in Tech with Confidence and Clarity

Dive into a transformative 3-hour workshop designed by Nichole Addeo of Mythic Digital, specifically for tech professionals.

"Tech Career Tune-Up: Navigating Your Path in Tech with Confidence and Clarity" offers a unique blend of career reflection, exploration, and mental wellness tools tailored to address the challenges unique to the tech world.

Learn More

What am I Getting Myself Into? A Drupal Crash Course for Non-Developers

If you’re new to Drupal, then this hands on course is the class for you. Rod Martin of Promet Source will teach the key concepts you need to understand, navigate and use a Drupal site.

Learn how to build a Drupal 10 site, from content and user organization, to working with modules and themes. This training will answer the questions you didn’t even know to ask!

Learn More

Important Dates:

  • Save $100 before the regular ticket pricing ends: March 14

  • See you there! MidCamp 2024: March 20-22

Save $100 before March 14

Droptica: Why is Drupal a Perfect CMS for Higher Education? 8 Reasons

Image removed.

Universities need a solid online presence to attract students, connect with stakeholders, provide valuable information, and foster collaboration among different departments. Choosing the right content management system is therefore crucial so that you can easily develop a user-friendly, attractive, and informative website. This article will explore why Drupal is the ideal CMS for higher education institutions.

The Drop Times: Inspiring Inclusion: Celebrating the Women in Drupal | #1

The DropTimes is proud to present a new initiative highlighting the remarkable contributions of women in the Drupal community as part of our "Women in Drupal" campaign. This initiative aligns with inspiring inclusion; throughout March, we will be dedicating our platform to showcase these influential figures' unique perspectives and achievements.

As we delve into the stories of women like Rachel Lawson, AmyJune Hineline, Fei Lauren, Sinduri Guntupalli, Stella Power and Krishna R P, The DropTimes aims to shed light on the diverse voices and talents that enrich the Drupal community. Join us throughout March as we explore their journeys, challenges, and insights, offering inspiration and advocating for greater inclusion within the tech industry and beyond.

LN Webworks: How To Protect Your Website With Drupal 10 From Cyber Threats

Image removed.

In 2024, safeguarding your website against a multitude of online threats has become more crucial than ever. With cyberattacks posing significant risks that can potentially cripple your business, ensuring the security and safety of your digital presence is paramount. 

Enter Drupal 10, a robust CMS equipped with advanced features designed to protect your website from these looming dangers. This comprehensive guide will dive into the talk about the prominent thread out there for your website and the key steps you need to take to protect your website. 

Knowing Potential Threats that Can Harm Your Drupal 10 Website:

Before forging your Drupal 10 security shields, understanding the enemies you face is important. Here's a deeper dive into the most common threats, their tactics, and their potential impact: