Planet Drupal

Subscribe to Planet Drupal feed
Drupal.org - aggregated feeds in category Planet Drupal
Updated: 22 hours 19 min ago

PreviousNext: Updating to Drupal 8.8.0 Beta with Composer

12 November 2019 - 8:46pm

PreviousNext continue to be major contributors to the development and promotion of Drupal 8. As participants of the Drupal 8.8.0 Beta Testing Program, we thought it would be useful to document the steps we took to update one of our sites on Drupal 8.7 to the latest 8.8.0 beta.

Every site is different, so your mileage may vary, but it may save you some time.

by Kim Pepper / 13 November 2019

Drupal 8.8 is a big release, with a number of new features added, and APIs deprecated to pave the way to a Drupal 9.0 release. Thankfully, the upgrade process was fairly straightforward in our case.

Upgrade PathAuto

First step was to deal with The Path Alias core subsystem has been moved to the "path_alias" module This meant some classes were moved to different namespaces. In order to make things smoother, we installed the latest version of pathauto module and clear the caches.

composer require drupal/pathauto:^1.6@beta
drush cr

Core Dev Composer Package

We use the same developer tools for testing as Drupal core, and we want to switch to the new core composer packages, so first we remove the old one.

composer remove --dev webflo/drupal-core-require-dev

Update Patches

We sometimes need to patch core using cweagans/composer-patches. In the case of this site, we are using a patch from ckeditor_stylesheets cache busting: use system.css_js_query_string which needed to be re-rolled for Drupal 8.8.x. We re-rolled the patch, then updated the link in the extra/patches section.

Update Drupal Core and Friends

In our first attempt, composer could not install due to a version conflict with some symfony packages (symfony/findersymfony/filesystem and symfony/debug). These are transient dependencies (we don't require them explicitly). Our solution was to explicitly require them (temporarily) with versions that Drupal core is compatible with, then remove them afterwards.

First require new Drupal core and dependencies:

composer require --update-with-dependencies \
  drupal/core:^8.8@beta \
  symfony/finder:^3.4 \
  symfony/filesystem:^3.4

Second, require new core-dev package and dependencies:

composer require --dev --update-with-dependencies \
  drupal/core-dev:^8.8@beta \
  symfony/debug:^3.4

Lastly, remove the temporary required dependencies:

composer remove -n \
  symfony/finder \
  symfony/filesystem \
  symfony/debug

Update the Database and Export Config

Now our code is updated, we need to update the database schema, then re-export our config. We use drush_cmi_tools, so your commands may be different, e.g. just a drush config-export instead of drush cexy.

drush updb
drush cr
drush cexy

Settings.php

We also need to update our settings.php file now that The sync directory is defined in $settings and not $config_directories.

This is a trivial change from:

$config_directories['sync'] = 'foo/bar';to:$settings['config_sync_directory'] = 'foo/bar';

Final Touches

In order to make sure our code is compatible with Drupal 9, we check for any custom code that is using deprecated APIs using the excellent PHPStan and Matt Glaman's mglaman/phpstan-drupal. (Alternatively you can use Drupal Check.)

 We were using an older version that was incompatible with "nette/bootstrap":">=3" so needed to remove that from the conflict section and do the remove/require dance once again.

composer remove --dev \
  phpstan/phpstan-deprecation-rules \
  mglaman/phpstan-drupal

composer require --dev --update-with-dependencies \
  phpstan/phpstan-deprecation-rules:^0.11.2 \
  mglaman/phpstan-drupal:^0.11.12

And that's it! Altogether not too painful once the composer dependencies were all sorted out. As we are testing the beta, some of these issues may be addressed in future betas and RCs.

I hope you found this useful! Got a better solution? Let us know in the comments!

Tagged Drupal Beta Testing
Categories: Drupal

JD Does Development: Docksal gets a Training

12 November 2019 - 3:19pm
Docksal gets a Training jflynn Tue, 11/12/2019 - 17:19

In July of last year I started a new job as a developer with a new agency. During my first week, in between meetings, HR trainings, and all the other fun things that happen during onboarding, I was introduced to the preferred local development environment that was being used on most of the projects.

It was lightweight, based on Docker, it ran easily, and it was extremely easy to configure. Prior to this, I had bounced around from local setup to local setup. My local dev environment resume included such hits as MAMP, WAMP, Acquia Dev Desktop, Kalabox, VAMPD, DrupalVM, Vagrant, ScotchBox, VirtualBox, native LAMP stacks, and everything in between. All of them had their strengths and weaknesses, but none of them really had that spark that really hooked me.

Enter Docksal.

When I first started using Docksal, I thought it was just like any other setup, and to a point, it is. It creates a reusable environment that can be shared across multiple developers and setup to mimic a hosting provider to a certain point, but the two things that really grabbed me were how easy it was to get started and how fast it was compared to other systems. Docksal has one key, killer feature in my opinionated mind, and that’s the fact that the entire application is written in Bash. The primary binary (which may or may not be the name of my upcoming one-man, off-Broadway, off-any stage show) begins with #! /usr/bin/env bash and runs on any system that has the bash executable, which encompasses Linux (of course), macOS, and now Windows thanks to WSL and the ability to add Ubuntu.

One thing that was missing, though, was a training guide. It has AMAZING documentation, available at https://docs.docksal.io, including a great getting started walkthrough, but for someone just starting out using it who might not have guidance and support from people they work with, it might take a little getting used to.

If you know me, you know that I enjoy talking at conferences. I’ve given over two dozen presentations at several types of events from local meetup groups to national level conferences. If you don’t know me, you just learned something new about me. Since I enjoy talking in front of people so much, the next logical step was to find something I’m familiar with and make a training of it. Turns out, I’m familiar with Docksal.

I submitted my pitch for a training to NEDCamp, the New England Drupal Camp, and they accepted it. Since I now had a reason to write a training, I began writing a training. Initially, I started with a very high-level outline, and eventually built a framework for my training. Thanks to the nature of open source, I was able to use many of the features that https://docs.docksal.io already had in order to make my training seem a little familiar to current users and easily accessible to new users.

The first go at this training will be at NEDCamp 2019 on Friday, November 22nd. This will be the first time a dedicated training spot has been used to train on Docksal, and I'm extremely excited to see how it goes and how to improve. After that training, I will make my handbook available online, eventually to be merged into the Docksal Github repo as part of the documentation. I have had help from numerous people in building this training, especially from the Docksal maintainers, Sean Dietrich, Leonid Makarov, Alexei Chekiulaev; folks who have reviewed what I've written so far, Dwayne McDaniel and Wes Ruvalcaba; and people who have challenged me to learn more about Docksal, whose numbers are too high to list them all.

If you're interested in learning how to use Docksal or what it's all about, consider attending my training at NEDCamp on November 22nd. You can find all the details on the NEDCamp training page, and if you can't make it, be sure to watch for the handbook to be released soon.

Since I'm still working on the finishing touches, why not take the time to let me know what you would like to get out of this type of training or what you wish you would have known when learning how to use Docksal or a similar product in the comments and where you feel extra attention should be placed.

Category Development Tags Drupal Planet Docksal Drupal NEDCamp Comments
Categories: Drupal

Hook 42: Drupal Core Initiative Meetings Recap - November 04 - November 08, 2019

12 November 2019 - 6:30am
Drupal Core Initiative Meetings Recap - November 04 - November 08, 2019 Lindsey Gemmill Tue, 11/12/2019 - 14:30
Categories: Drupal

Amazee Labs: Our next Webinar: Test-Driven Development with Drupal & Cypress.io

12 November 2019 - 1:25am
In our upcoming webinar – Test-Driven Development with Drupal & Cypress.io – we will demonstrate how to use Cypress (and the respective integration module for Drupal) for Behaviour-Driven Development (BDD) to elevate the quality of your code and project.
Categories: Drupal

ADCI Solutions: 7 reasons to migrate to Drupal 8 (and don’t wait for Drupal 9)

11 November 2019 - 8:46pm

This is the first article in the series devoted to the Drupal 7 and Drupal 8 end of life and the Drupal 9 release.

Here we will talk about why migration to Drupal 8 is a good idea for Drupal 6 and Drupal 7 websites’ owners. Also, we will tell why it’s not necessary to wait for the Drupal 9 release.

Read 7 reasons to migrate to Drupal 8 (and don’t wait for Drupal 9)

 

Categories: Drupal

PreviousNext: PreviousNext's engagement with DrupalSouth and the Drupal Association Board

11 November 2019 - 8:20pm

Since co-founding PreviousNext in 2009 with Kim Pepper, our company has put a lot of focus into supporting the Drupal open source project and community at a regional and global level.

by Owen Lansbury / 12 November 2019

This has included a number of key initiatives, including:

  • Providing our team with up to 20% of their paid working hours to contribute code to Drupal core software and contributed modules. This has seen PreviousNext consistently rank in the Top 5 companies contributing code to Drupal at a global level, with several of our individual team members in the Top 100 contributing developers. 
  • Supporting our team to contribute time to voluntary groups that sustain the Drupal community, such as Drupal’s Security Team, running free Drupal training days and organising Drupal events.
  • Donating funds to the Drupal Association's supporting partner program, global initiatives like Promote Drupal, regional conferences and local meetups.
  • Funding our team to travel and speak or participate in regional and global Drupal conferences.

This support plays a key role in PreviousNext’s ability to attract and retain the best Drupal talent, facilitates trusted relationships with key members of the global Drupal community and maintains our reputation as Drupal experts in the eyes of prospective clients. In other words, strong support for Drupal pays dividends to maintain PreviousNext as a sustainable company.

After a decade of leading PreviousNext myself, long-term colleague Jason Coghlan took the reins as Managing Director in late 2018. Jason is responsible for all of PreviousNext’s operations and client engagements, which he manages in concert with our internal Leadership and Delivery teams. My ongoing role is to guide PreviousNext’s strategy, marketing and finances as Chair of our Executive Team, paired with enhanced engagement with the Drupal community.

The first initiative I’ve focused on in 2019 has been the formation of the DrupalSouth Steering Committee. DrupalSouth has been running as an annual conference in Australia and New Zealand since 2008 but had always been reliant on ad-hoc volunteers to take on the significant work to organise and run each event. The Steering Committee’s objective is to provide ongoing consistency for the annual conference whilst spearheading other initiatives that support and grow Drupal’s community and commercial ecosystem in the region. We’ll be presenting our initial ideas at DrupalSouth in Hobart in late November.

I’m also honoured to have been appointed to the global Drupal Association Board of Directors and just returned from my first board retreat before DrupalCon Amsterdam. The board works alongside the new Drupal Association Executive Director, Heather Rocker, on overall strategy and direction for her team of almost 20 staff to implement. I’ve been asked to chair the board’s Revenue Committee that oversees how the DA is funded through event attendance, sponsorships and other sources, and to sit on the Strategic Planning Committee that will define where the association's focus can be best directed. My initial term will run until 2022 with a frequent presence at DrupalCon North America and Europe in coming years.

Drupal Association Board & Staff at the Amsterdam retreat

Whilst in Amsterdam, I also sat in on round table discussions with other local Drupal associations from around the world, sharing ideas about how we can scale community engagement whilst leveraging common approaches and resources. A Supporting Partners round table focused more on the needs of Drupal services vendors and large users and a CEO dinner was a great insight into the state of Drupal businesses around the world. It was inspiring to see how professionally organised the global Splash Awards were and to understand how we might bring the initiative to our local region to recognise world-class projects being developed here. To cap things off, I had a talk accepted where I could share some of PreviousNext's experience winning and retaining long term clients - essentially all the things I wish someone had told me a decade ago!

With the upcoming release of Drupal 9 in mid 2020 there’s a high degree of optimism and confidence around Drupal’s immediate future. The software is a clear choice for enterprise and large organisations, Drupal services business are doing well and there’s a huge number of fresh and enthusiastic members of our community. While there’s some clear challenges ahead, I’m excited to be able to play a role in helping solve them at a global and regional level.

If you ever want to connect with me to discuss how I can help with your own Drupal community or business initiatives, feel free to get in touch via Drupal.org or Drupal Slack.

Tagged Drupal Association, DrupalCon
Categories: Drupal

Tag1 Consulting: Evaluating real-time collaborative editing solutions for a top Fortune 50 company

11 November 2019 - 3:00pm
Table of Contents What makes a collaborative editing solution robust? Decentralized vs. Centralized Architectures in Collaborative Editing Operational Transformation and Commutative Replicated Data Types (CRDT) Why Tag1 Selected Yjs Conclusion In today’s editorial landscape, content creators can expect not only to touch a document countless times to revise and update content, but also to work with other writers from around the world, often on distributed teams, to finalize a document collaboratively and in real time. For this reason, collaborative editing, or shared editing, has become among the most essential and commonly requested features for any content management solution straddling a large organization. Collaborative editing has long existed as a concept outside the content management system (CMS). Consider, for example, Google Docs, a service that many content creators use to write content together before copy-and-pasting the text into form fields in a waiting CMS. But in today’s highly demanding CMS landscape, shouldn’t collaborative editing be a core feature of all CMSs out of the box? Tag1 Consulting agreed, and the team decided to continue its rich legacy in CMS innovation by making collaborative editing a reality. Recently, the team at Tag1 Consulting worked with the technical leadership at a top Fortune... Read more preston Mon, 11/11/2019 - 15:00
Categories: Drupal

Gábor Hojtsy: The dramatic shift in how a Drupal upgrade is now done in Drupal 8 for Drupal 9

11 November 2019 - 1:51pm

I've had various deep discussions with contributed module maintainers recently about their process to update code to Drupal 9 and one point struck me. We are so attached to "Make it ready for Drupal 9" that a key point of the message may be lost. Check out this section of the State of Drupal keynote from DrupalCon Amsterdam 2019 where Dries Buytaert showcases Johanna's relatively simple site that she prepares for the Drupal 9 upgrade entirely in Drupal 8. Notice that she does all the steps in Drupal 8 other than the final Drupal 9 upgrade itself:

This is the base principle of the process towards Drupal 9, making your Drupal 8 site better and more prepared, so the move to Drupal 9 itself at the end is a relatively small step and you got a better Drupal 8 site in the meantime. You are not jumping over the fence all at once, but in gradual steps. I thought a comparison with Drupal 6 to 7, 7 to 8 and 8 to 9 would help, since people may have assumptions or prior experiences with those, so its worth looking at how our new process compares to the two previous transitions.

Categories: Drupal

Drupal.org blog: What’s new on Drupal.org - October 2019

11 November 2019 - 12:54pm

   

Select members of the Drupal Association team have just returned from a wonderful DrupalCon Amsterdam. The revival of the European DrupalCon was a tremendous success, and we want to thank all of the volunteers and sponsors who made it possible. 

The content at the conference was great as well. This year the core initiative leads provided a comprehensive update, followed by the traditional #Driesnote the next day, which laid out the vision for Drupal 9's key initiatives moving forward. The DA also shared an update from the Drupal Association board, held a community town hall, and provided our bi-annual update from the engineering team. 

While DrupalCon was action-packed, we also moved forward a lot of other initiatives on the community's behalf in October. 

Project News Reminder: Drupal 8.8.0 is coming soon! 

Drupal 8.8.0-beta1 was released in early November, to be followed by the full release in early December. A variety of great features are landing in version 8.8.0, including improved Composer support in core, an updated Media Library, and updates to JSON:API. This is likely to be the last minor release before the simultaneous release of Drupal 8.9.0 and Drupal 9.0.0 next June.  

If you want to help ensure a smooth release, we invite you to join the Drupal Minor Release beta testing program.

Time to get ready for Drupal 9

The time is now to get ready for Drupal 9. At DrupalCon Amsterdam the core initiative team put out the call for the community at large to get ready. 

If you are a site owner, the best way you can get ready is to make sure you're up to date on the latest version of Drupal 8. From there, it'll be an easy upgrade to 9. 

If you maintain a community module, or your own custom modules, you may have some work to do.  Many contributed or even custom modules only need a one-line change to be ready for Drupal 9. Check yours using: the upgrade status module, or the Drupal Check command line tool.

Drupal.org Update Automatic Updates Initiative needs your help!

For the last year we've been working together with the European Commission to bring automatic updates to Drupal. The first phase of this work covers updates for Drupal Core only, and only in non-Composer scenarios, but even so it should be able to protect many Drupal 8 and especially Drupal 7 site owners. 

The module is ready for testing now. Your feedback is welcome to help us make this first phase stable for production use by the community. 

You can also help by supporting Phase 2 of this initiative, which will include more advanced features like support for Composer-based sites, database updates, and a robust roll-back capability. We're looking for sponsors for this next round of work now. 

Forming a Contribution Recognition Committee

The Drupal Association's contribution credit system is an industry first in open source, and so we want to take great care on each step on this new journey. 

During the conference we also announced the formation of a Contribution Recognition Committee to govern the contribution credit algorithm which weights the order of the Drupal services marketplace on drupal.org. 

We are now seeking applications from community members who would like to sit on the committee. 

When will we enable GitLab merge requests?

When we migrated Drupal.org's git repositories to GitLab, it was the first step on the road to modernizing and improving the project's collaboration tools. The most significant step in that journey will be enabling merge requests, and we know it's a feature that the community has been waiting for. 

So what's the hold up? 

There are a few factors that have held us back from enabling the feature sooner. First, we were waiting for the GitLab team to add support for Git object de-duplication. Beta support for this feature was added in GitLab version 12.0, and then enabled by default beginning with the release of GitLab version 12.1.

While waiting for these features, the Drupal Association engineering team focused on other major commitments: moving forward the Automatic Updates initiative, in partnership with the European commission, co-leading the Composer Initiative to improve support in Drupal core, and preparing Drupal.org to support the release of Drupal 9. 

While these other initiatives have overtaken much of our internal capacity, we're hoping to get back to the merge request feature very soon, and we're just as excited to release the feature as you are to begin using it! 

———

As always, we’d like to say thanks to all the volunteers who work with us, and to the Drupal Association Supporters, who make it possible for us to work on these projects. In particular, we want to thank: 

  • Zyxware - Renewing Signature Supporting Partner
  • EPAM - Renewing Premium Supporting Partner
  • Datadog - Premium Technology Supporter
  • KWALL - Renewing Classic Supporting Partner
  • ANNAI - Renewing Classic Supporting Partner
  • SymSoft - Renewing Classic Supporting Partner
  • Forum One - Renewing Classic Supporting Partner
  • Catalyst IT - Renewing Classic Supporting Partner
  • Old Moon Digital - Renewing Classic Supporting Partner
  • Authorize.Net - *NEW* Classic Technology Supporter
  • SiteGround - Renewing Classic Hosting Supporter

If you would like to support our work as an individual or an organization, consider becoming a member of the Drupal Association

Follow us on Twitter for regular updates: @drupal_org, @drupal_infra

Categories: Drupal

Tag1 Consulting: Modern Rich Text Editors: How to Evaluate the Evolving Landscape

11 November 2019 - 12:00pm
Table of Contents What is a Rich Text Editor? The Modern Rich Text Editor and Emerging Challenges How we Evaluated Rich Text Editors Why Tag1 Selected ProseMirror Conclusion Among all of the components commonly found in content management systems (CMSs) and typical editorial workflows, the rich text editor is perhaps the one that occupies the least amount of space but presents the most headaches due to its unique place in content architectures. From humble beginnings in discussion forums and the early days of the web and word processing, the rich text editor has since evolved into a diverse range of technologies that support a lengthening list of features and increasingly rich integrations. Recently, Tag1 embarked on an exploration of rich text editors to evaluate solutions for a Fortune 50 company with demanding requirements. In this blog post, we’ll take a look at what impact the choice of a rich text editor can have down the line, some characteristics of the modern rich text editor, and Tag1’s own evaluation process. In the end, we discuss some of the rationales behind Tag1’s choice of ProseMirror as a rich text editor and some of the requirements leading to a decision that can serve... Read more preston Mon, 11/11/2019 - 12:00
Categories: Drupal

Evolving Web: Drupal North: Growth of the Drupal Ecosystem in Canada

10 November 2019 - 4:21pm

There’s never been a better time to be a Drupal user in Canada.

Since I started using Drupal in 2008, I’ve seen anecdotal evidence that Drupal is popular in Canada. Since 2006, and probably earlier, there have been active users groups in Toronto, Vancouver, and Montreal, that organize regular conferences and meetups. These local groups are key to the Drupal community’s culture of open source and knowledge sharing. So I wasn’t surprised to learn that Canada is fourth in the world in terms of active users on Drupal.org (behind the US, Great Britain, and India).

Now, with the trend towards using Drupal for enterprise-level projects, the Canadian federal government, which has been using Drupal for years across a myriad of departments, is moving towards Drupal as the go-to platform for building digital experiences. It’s already being used by almost every government department you can think of in some capacity, but with the government's new Open First philosophy, Drupal is poised to become the default choice.

On November 21, Dries Buytaert (the founder of Drupal) will be in Ottawa talking about digital transformation for government. And at the 2019 DrupalCamp Ottawa this year (a sold-out event) I encountered a wave of government agencies eager to adopt Drupal for building the next wave of digital services and information portals for citizens and public servants. The ability to standardize on a platform that is secure, multilingual, and accessible, and also flexible enough to meet the needs of a whole range of applications and audiences is what makes Drupal so appealing. 

Recently, I’ve also seen growing momentum behind Drupal in the Quebec. Sites for Tourism Quebec, Viarail, and the Aéroports de Montréal are built with Drupal. And beyond public organizations, iconic Quebec brands like Agropur and Videotron are using Drupal for their large-scale web projects.

At Drupal North earlier this year (the largest Drupal event in Canada), I co-hosted a higher education summit that was attended by web managers and developers from some of the largest educational institutions in our country: the University of Toronto, McGill, Université Laval, and the University of Waterloo to name but a few. Many of these organizations also contribute to the Drupal project, sharing code, best practices, and techniques for scaling Drupal.

Even at non-Drupal web conferences, Drupal is a common topic of conversation. When I presented at year's #PSEWEB in Saskatoon (the Canadian version of HighEdWeb Conference), where I heard that the University of Calgary is continuing to re-platform their sites onto Drupal 8. 

Pantheon sponsored Drupal North this year, announcing that they would be expanding their hosting services to Canada, joining Acquia in catering to organizations that are mandated to host on Canadian soil or who want hosting close to home.

I'm looking forward to seeing the market for Drupal expand further in Canada. I'd love to hear your thoughts on how we can grow the community!

One thing we do at Evolving Web to keep Drupal growing is by providing Drupal training, including free community trainings online and at Drupal Camps, and more in-depth trainings. We have trainings coming up in Ottawa and Vancouver. And training on-demand in Toronto, Montreal, Quebec City, Calgary, Winnipeg, Halifax, Victoria, and your corner of Canada. Just give us a shout if we should do a training in your town.

+ more awesome articles by Evolving Web
Categories: Drupal

Tandem's Drupal Blog: Migrating a Drupal 4.6 Site To VuePress

10 November 2019 - 4:00pm
November 11, 2019 With Lando and Symfony Console, migrating this legacy Drupal 4.6 site to VuePress was fairly straightforward. Overview Over the summer, Rachel Lawson sent out a tweet that a small non profit was looking to migrate their legacy Drupal site. I reached out and chatted with the people at interACT to learn more about this project. ...
Categories: Drupal

DrupalCon News: Program Committee Support

8 November 2019 - 9:42am

The program committee talks about how you can share that unique voice and perspective of yours that we want to hear!

Categories: Drupal

OpenSense Labs: Best of Drupal 8 Modules for Social Login

8 November 2019 - 6:50am
Best of Drupal 8 Modules for Social Login Jayati Fri, 11/08/2019 - 20:20

From gated content to event enrollments, social logins and easy registration are the go-to for many sites now. The website captures data and permissions from your social accounts and gives you access to the content. There are modules primarily dedicated to integrate social accounts and run the process. 

Drupal offers many modules for seamless integration of social logins for your website. 

Let’s skim through the list and their features! 

Check out this list of modules for social login in Drupal 8 and choose the one that suits you best:

OneAll Social Login

Offering 35+ social networks to login from, the OneAll Social Login is a significant module that can benefit you. It is fully compliant with European (GDPR) and U.S. data protection laws. The module monitors changes constantly and automatically updates APIs for a smooth run of the logins. The simplified process helps increase the registration rate, too.

Social Auth

A commonly used module, Social Auth is part of the Social API. It possesses its own content entity and stores all data in the database. With this Drupal 8 module, visitors can register on the website via 30 social networks including Slack, Reddit, Uber, and more.   

Auth0 Single Sign On

It provides a login form powered by Auth0. With implementing authentification for platforms like GitHub and Twitter, Auth0 Single Sign On is another top module in the list. 

Social Auth Google

Primarily for Google account, the Social Auth Google module can help you register and log in with any social site. It performs the authentication on your behalf and gives seamless access.  

Hybrid Auth Social Login

With the aid of the HybridAuth library, this module integrates Drupal and allows the login and registrations for the visitors on sites like Facebook, Twitter, Windows Live, Instagram, AOL, and much more. The HybridAuth Social Login doesn’t depend on external services or load any external CSS or JS files for the authentification process. 

However, it relies on a third-party open source PHP library, HybridAuth, developed and supported on GitHub. 

uLogin (advanced version)

A selective range of forms is available in this module for the social logins to be integrated with your Drupal site. Written in compliance with Drupal coding standards, uLogin has several widgets with default settings that are configurable through UI. The module gives you options to remove username and password fields from the user profile edit form.

Varbase Social Single Sign-On

Varbase module is built using Social API and adds single sign-on using your social networking services. It is supported by the Drupal 8 version and even if installed with the Minimal or Standard profile.

Social Auth Facebook

It is a direct module for Facebook and allows users to register/login to the Drupal site via a Facebook account. The scope of the website’s request is wider and based on the authentication with Facebook services. The module also compares the user id or email address facilitated by Facebook. It automatically accepts the login if it is a returning user to the site.

Social Auth Twitter 

Similar to the above two, this is also exclusive to Twitter. It allows the user to register and login to your Drupal site and is based on Social Auth and Social API. 

The Social Auth Twitter module lets you compare the user id or email address once Twitter brings you back to the site.

Social Auth LinkedIn 

This module allows websites to request any scopes and users to register/login to your Drupal site with the LinkedIn account. The Social Auth LinkedIn module lets you compare the user id or email address once LinkedIn brings you back to the site. The ‘LinkedIn’ button lets you initiate the login in the social auth block.

Conclusion

These modules will definitely support the login process of your website and placidly run the integration. With each module having its own significance one can only decide for themselves which suits them the best.

We at OpenSense Labs have a pioneering experience in site building with Drupal 8 and its modules. For the best of services contact us at hello@opensenselabs.com

Also, connect with us on our social media channels: FacebookLinkedIn, and Twitter for more such insights. 

blog banner blog image Social Media Platforms Drupal 8 Drupal module Drupal Modules Drupal 8 Module Blog Type Articles Is it a good read ? On
Categories: Drupal

Drupal core announcements: Drupal 7 roadmap and release schedule published, plus PHP 7.3 compatibility!

8 November 2019 - 6:43am

The Drupal 7 maintainers have published a new D7 roadmap and release schedule:

https://www.drupal.org/core/drupal7-roadmap-release-schedule

There is also a new proposed D7 contributor / maintainer workflow issue:

https://www.drupal.org/project/drupal/issues/3093258

Finally, we're pleased to announce that the 7.x branch's core tests now pass in PHP 7.3!

Feedback is welcome, and thank you very much to all of the many D7 contributors!

Categories: Drupal

Mediacurrent: 5 Reasons Why You Should Consider a GraphQL Server

8 November 2019 - 5:24am
What is GraphQL?

If you are a frontend web developer you have probably heard of GraphQL or maybe you have even used it, but what is it? GraphQL is a query language for APIs that allows you to write queries that define the data you receive. No more emailing the backend team to update an endpoint for your application. The client developer defines the data returned in the request.

What is a GraphQL Server/API?

A GraphQL server is a server-side implementation of the GraphQL spec. In other words, a GraphQL server exposes your data as a GraphQL API that your client applications can query for data. These clients could be a single page application, a CMS like Drupal, a mobile app, or almost anything. For example, say you have a MySQL database and you want to expose the content to a React application. You could create a GraphQL server that will allow our React application to query the database indirectly through the GraphQL server.

Why would you consider a GraphQL API? 1. You need an API for your applications

At Mediacurrent, we have been building decoupled static web sites using GatsbyJS. But sometimes we also need some components with dynamic data. You need an API for that and our front-end team was already using GraphQL in Gatsby. Or maybe you might develop a mobile app and need a reliable and fast way to get data from your legacy database. You can use GraphQL to expose only the data you need for your new app but at the same time give your client app developers the ability to control what data they get back from the API.

2. You need data normalization

For our purposes as developers data normalization is simply the process of structuring our data to remove redundancy and create relationships between our data. Data normalization is something database designers think about but developers and software architects should consider as well.

One of the biggest mistakes I’ve seen in my years building web applications is the pattern of including too much business logic in application components. These days, it is not unusual to require data from multiple applications, public REST APIs as well as databases. There is often duplication across these systems and the relationships are rarely clear to the development team. Creating components that require data from multiple systems can be a challenging task. Not only do you have to make multiple queries to retrieve the data, but you also need to combine it in your component. It’s a good pattern to normalize the data outside of your components so that your client application’s components can be as simple and easy to maintain as possible. This is an area where GraphQL shines. You define your data’s types and the relationships between your data in a schema. This is what allows your client applications to query data from multiple data sources in a single request.

3. You love your client application developers

A well-built GraphQL server will avoid these issues that are common with REST APIs.

  • Over-fetching - receiving more data than you need.
  • Under-fetching - not receiving all the data you need.
  • Dependent requests - requiring a series of requests to get the data you need.
  • Multiple round trips - needing to wait for multiple requests to resolve before you can continue.


Over-fetching

In a perfect would we would only fetch the data we need. If you have ever worked with a REST API you will likely know what I mean here. Your client application developers may only need a user’s name but it is likely that when they request the name using the REST endpoint they will get much more data back from the API. GraphQL allows the client to specify the data returned in the request. This means a smaller payload delivered over the web which will only help your app be more performant.

Under-fetching, dependent requests, and multiple round trips

Another scenario is under-fetching. If you need a user’s name and the last three projects they were active on, you probably need to make two HTTP requests to your REST API. With GraphQL relationships, you can get this data back in a single request. No more callbacks and waiting on multiple endpoints to resolve. Get all your data in one request. Now you are avoiding multiple requests, dependent requests, and multiple round trips to get the data for your app’s components.


GraphQL single request to multiple data sources.

Self documenting

The type based schema that GraphQL provides creates the structure to build powerful tools like Graphiql, an in-browser IDE for exploring GraphQL.

This schema also allows for what I would call a self documenting API. GraphQL playground is an example of the power of the GraphQL schema. It takes this schema and creates documentation as well as an IDE like Graphiql. When you update your schema, your documentation is automatically updated as well as the IDE. That’s a huge win!


You can try out a demo of the GraphQL Playground on graphqlbin.com.

4. GraphQL can replace your legacy REST API

It can be challenging to maintain versions of a REST API. Requirements change. You need to add new fields or maybe you want to delete fields from your database. Due to the requirements for backward compatibility your API has to continue supporting these old requirements. Maybe you have an old Android mobile app that relies on your REST endpoints. Maybe you have a Salesforce integration that you don’t have time to update. Most organizations can’t update all their applications at once so you can’t just turn off your old REST API. A GraphQL server can act as a middleware between your old REST API and your new applications. Then as you update your other client apps that use the REST API’s you can update them to work with your new GraphQL API. Once all of your clients are no longer using the REST endpoints you can replace the REST API fully with the GraphQL API.

5. You’re tired of maintaining old versions of your REST API

GraphQL has the @deprecated annotation that you can add to your schema to let clients know that a field should no longer be used. This is much easier to maintain than multiple versions of a REST API.

Which server should you use?

Check out GraphQL.org’s list of servers. There are projects in C# / .NET, Clojure, Elixir, Erlang, Go, Groovy, Java, JavaScript, PHP, Python, Scala, and even Ruby. My choice is the Apollo Server project. It has great documentation and provides a self documenting API for your team that is enjoyable to use. If you use Drupal there is the Graphql module that adds a GraphQL API to your site.

I hope I’ve sparked your interest in GraphQL and building a GraphQL server API. At Mediacurrent, we have seen how powerful this tool can be for solving complex application and data problems and we’d love to talk with you about it. Hit us up in the comments.

Categories: Drupal

Agiledrop.com Blog: Our blog posts from October 2019

8 November 2019 - 2:14am

Each month, we do a roundup of all the blog posts we wrote in the previous month. So, no need to worry if you missed some of our posts from October - here’s an overview of all of them!

READ MORE
Categories: Drupal

heykarthikwithu: Drupal JSON:API GET, POST, PATCH and DELETE Samples

8 November 2019 - 1:44am
Drupal JSON:API GET, POST, PATCH and DELETE Samples

The API that the JSON:API module makes available is centered on Drupal's entity types and bundles. Every bundle receives its own, unique URL path, which all follow a shared pattern.

karthikkumardk Friday, 08 November 2019 - 15:15:10 IST
Categories: Drupal

Consensus Enterprises: Lando and Drumkit for Drupal 8 Localdev

7 November 2019 - 3:06pm
Over the last 2 or 3 years, the Drupal community has been converging around a solid set of Docker-based workflows to manage local development environments, and there are a number of worthy tools that make life easier. My personal favourite is Lando, not only because of the Star Wars geekery, but also because it makes easy things easy and hard things possible (a lot like Drupal). I appreciate that a “standard” Lando config file is only a few lines long, but that it’s relatively easy to configure and customize a much more complex setup by simply adding the appropriate lines to the config.
Categories: Drupal

Drupal blog: State of Drupal presentation (October 2019)

7 November 2019 - 2:24pm

This blog has been re-posted and edited with permission from Dries Buytaert's blog.

DrupalCon Amsterdam Driesnote presentation

Last week, many Drupalists came together for Drupalcon Amsterdam.

As a matter of tradition, I presented my State of Drupal keynote. You can watch a recording of my keynote (starting at 20:44 minutes), or download a copy of my slides (149 MB).

Drupal 8 innovation update

I kicked off my keynote with an update on Drupal 8. Drupal 8.8 is expected to ship on December 4th, and will come with many exciting improvements.

Drupal 8.7 shipped with a Media Library to allow editors to reuse images, videos and other media assets. In Drupal 8.8, Media Library has been marked as stable, and features a way to easily embed media assets using a WYSIWYG text editor.

I'm even more proud to say that Drupal has never looked better, nor been more accessible. I showed our progress on Claro, a new administration UI for Drupal. Once Claro is stable, Drupal will look more modern and appealing out-of-the-box.

The Composer Initiative has also made significant progress. Drupal 8.8 will be the first Drupal release with proper, official support for Composer out-of-the-box. Composer helps solve the problem of Drupal being difficult to install and update. With Composer, developers can update Drupal in one step, as Composer will take care of updating all the dependencies (e.g. third party code).

What is better than one-step updates? Zero-step updates. We also showed progress on the Automated Updates Initiative.

Finally, Drupal 8.8 marks significant progress with our API-first Initiative, with several new improvements to JSON:API support in the contributed space, including an interactive query builder called JSON:API Explorer. This work solidifies Drupal's leadership position as a leading headless or decoupled solution.

Drupal 9 will be the easiest major update

Next, I gave an update on Drupal 9, as we're just eight months from the target release date. We have been working hard to make Drupal 9 the easiest major update in the last decade. In my keynote at 42:25, I showed how to upgrade your site to Drupal 9.0.0's development release.

Drupal 9 product strategy

I am proud of all the progress we made on Drupal 8. Nevertheless, it's also time to start thinking about our strategic priorities for Drupal 9. With that in mind, I proposed four strategic tracks for Drupal 9 (and three initial initiatives):

Strategic track 1: reduce cost and effort

Users want site development to be low-cost and zero-maintenance. As a result, we'll need to continue to focus on initiatives such as automated updates, configuration management, and more.

Strategic track 2: prioritizing the beginner experience

As we saw in a survey Acqua's UX team conducted, most people have a relatively poor initial impression of Drupal, though if they stick with Drupal long enough, their impression of Drupal grows significantly over time. This unlike any of its competitors, whose impression decreases as experience is gained. Drupal 9 should focus on attracting new users, and decreasing beginners' barriers to entry so they can fall in love with Drupal much sooner.

Beginners struggle with Drupal while experts love Drupal.

Drupal's sentiment curve goes in the opposite direction of WordPress', AEM's and Sitecore's. This presents both a big challenge and opportunity for Drupal.

We also officially launched the first initiative on this track; a new front-end theme for Drupal called "Olivero". This new default theme will give new users a much better first impression of Drupal, as well as reflect the modern backend that Drupal sports under the hood.

Strategic track 3: drive the Open Web

As you may know, 1 out of 40 websites run on Drupal. With that comes a responsibility to help drive the future of the Open Web. By 2022-2025, 4 billion new people will join the internet. We want all people to have access to the open web, and as a result should focus on accessibility, inclusiveness, security, privacy, and interoperability.

Strategic track 4: be the best structured data engine

We've already seen the beginnings of a content explosion, and will experience 300 billion new devices coming online by 2030. By continuing to make Drupal a better and better content repository with a flexible API, we'll be ready for a future with more content, more integrations, more devices, and more channels.

Over the next six months, we'll be opening up these proposed tracks to the community for discussion, and introducing surveys to define the 10 inaugural initiatives for Drupal 9. So far the feedback at DrupalCon Amsterdam has been very positive, but I'm looking forward to much more feedback!

Growing sponsored contributions

In a previous blog post, Balancing Makers and Takers to scale and sustain Open Source, I covered a number of topics related to organizational contribution. Around 1:19:44, my keynote goes into more details, including interviews with several prominent business owners and corporate contributors in the Drupal community.

You can find the different interview snippet belows:

  • Baddy Sonja Breidert, co-founder of 1xINTERNET, on why it is important to help convert Takers become Makers.
  • Tiffany Farriss, CEO of Palantir, on what it would take for her organization to contribute substantially more to Drupal.
  • Mike Lamb, Vice President of Global Digital Platforms at Pfizer, announcing that we are establishing the Contribution Recognition Committee to govern and improve Drupal's contribution credit system.
Thank you

Thank you to everyone who attended Drupalcon Amsterdam and contributed to the event's success. I'm always amazed by the vibrant community that makes Drupal so unique. I'm proud to showcase the impressive work of contributors in my presentations, and congratulate all of the hardworking people that are crucial to building Drupal 8 and 9 behind the scenes. I'm excited to continue to celebrate our work and friendships at future events.

Thanks to the 641 individuals who worked on Drupal 8.8 so far.

Thanks to the 243 different individuals who contributed to Drupal 8.8 to date.

Categories: Drupal

Pages