Gábor Hojtsy: First beta of Upgrade Status for Drupal 8 out with highly improved reporting, helps to best collaborate with project maintainers
On our way to Drupal 9 every site will need to take care of making updates to their custom code as well as updating their contributed projects. However this time, instead of needing to rewrite code, only smaller changes are needed. Most contributed modules will only need to deal with a couple changes. Collaborating with project maintainers is the best way to get to Drupal 9. The first beta of the Upgrade Status module alongside recent drupal.org changes focus on making this much easier.Upgrade Status beta provides better insight into Drupal 9 readiness
Take the first beta of the Upgrade Status module and run it on your site. It will provide executive summaries of results about all scanned projects and lets you inspect each individually.
Custom and contributed projects are grouped and summarised separately. You should be able to do all needed changes to your custom code, while for contributed projects you should keep them up to date in your environment and work with the maintainers to get to Drupal 9. The later is facilitated by displaying available update information inline and by pulling the Drupal 9 plan information from drupal.org projects and displaying it directly on the page.
This is how the summary looks like after scanning a few projects:
Digging deeper from the executive summary, you can review each error separately. The beta release now categorizes issues found to actionable (Fix now) and non-actionable (Fix later) categories with a Check manually category for items where it cannot decide based on available information. For custom projects, any deprecation is fixable that has replacements in your environment while for contributed projects supporting all core versions with security support the window is shifted by a year. Only deprecations from two or more releases earlier can be fixed (compared to the latest Drupal release) while keeping Drupal core support. So somewhat ironically, Upgrade Status itself has deprecated API uses that it cannot yet fix (alongside ones it could fix, but we have them for testing purposes specifically):
The module is able to catch some types of PHP fatal errors (unfortunately there are still some in projects that we need to figure out the best way to catch). The @deprecated annotation information guiding you on how to fix the issues found are also displayed thanks to lots of work by Matt Glaman.Own a Drupal.org project? Direct contributors to help you the way you prefer!
If you own a Drupal.org project that has Drupal 8 code, you should specify your Drupal 9 plans. It is worth spending time to fill in this field to direct contributors to the best way you prefer them help you, so contributions can be a win-win for you and your users alike. Whether it is a META issue you plan to collect work or a specific time in the future you will start looking at Drupal 9 deprecations or a funding need to be able to move forward, letting the world know is important. This allows others to engage with you the way you prefer them to. Additionally to it being displayed in Upgrade Status's summary it is also displayed directly on your project page!
Go edit your project and find the Drupal 9 porting info field to fill in. Some suggestions are provided for typical scenarios:
This will then be displayed on your project page alongside usage and security coverage information. For example, check it out on the Upgrade Status project page.Thanks
Special thanks for dedicated contributors and testers of the Upgrade Status module who helped us get to beta, especially Karl Fritsche (bio.logis), Nancy Rackleff (ThinkShout), Tsegaselassie Tadesse (Axelerant), Bram Goffings (Nascom), Travis Clark (Worthington Libraries), Mats Blakstad (Globalbility), Tony Wilson (UNC Pembroke), Alex Pott (AcroMedia, Thunder), Charlie ChX Negyesi (Smartsheet), Meike Jung (hexabinær Kommunikation). Thanks to Neil Drumm (Drupal Association) and Angela Byron (Acquia) for collaboration on the Drupal 9 plan field.
Redis is an open-source, networked, in-memory, key-value data store that can be used as a drop-in caching backend for your Drupal, Add the Redis module from Drupal.org, Enable the module & Verify Redis is enabled.heykarthikwithu Friday, 19 July 2019 - 15:00:23 IST
Mediacurrent created the Rain Install Profile to build fast, consistent Drupal websites and improve the editorial experience. Rain expedites website creation, configuration, and deployment.
In this article, we will walk through each of the main features that ship with the Rain distribution. This tutorial is intended to help content authors and site administrators get set up quickly with all that Rain has to offer.
Have a question or comment? Hit me up @drupalninja on Twitter.Content Moderation
A question we often hear when working with a client is, “how can Drupal help build a publishing workflow that works for my team and business?"
Drupal 8 marked a big step forward for creating flexible editorial workflows. Building on Drupal 8's support for content moderation workflows, Rain comes pre-configured with a set of Workflow states. The term “states” refers to the different statuses your content can have throughout the publishing process - the four statuses available by default are “Draft”, “Needs Review”, “Published” and “Archived.” They can be easily enabled for any content type. As with everything in Drupal, these states and workflows are highly configurable.
Once enabled, using content moderation in Drupal 8 is straightforward. After you save a piece of content, initially it will default to the “Draft” status which will remain unpublished. The “Review” status also preserves the unpublished status until the current edits get published. What’s great about Workflow in Drupal 8 is that you can make updates on a published piece of content without affecting the published state of that content until your changes are ready to be published. The video below demonstrates how to enable workflow and see draft updates before they are published.
To review any content currently in a workflow state you can click on the “Moderated Content” local task which is visible from the main Admin content screen (see below).
As a best practice, we recommend enabling revisions for all content. This allows editors to easily undo a change made by mistake and revisions keeps a full history of edits for each node. By default, all of Rain’s optional content features have revisions enabled by default. As illustrated below once you have made a save on a piece of content, the “Revisions” tab will appear with options for reviewing or reverting a change.
Coming soon to Drupal core is an overhauled Media library feature. In the meantime, Drupal contrib offers some very good Media library features that are pre-configured in Rain. The Rain media features are integrated with most image fields including the “thumbnail” field on all content type features that ship with Rain.
The video below demonstrates two notable features. First is the pop-up dialog that shows editors all media available to choose from within the site. Editors can search or browse for an existing image if desired. Second is the drag-and-drop file upload which lets the editor user drag an image onto the dialog to immediately upload the file.
Media is commonly embedded within the WYSIWYG editor in Drupal. Rain helps improve this experience by adding a button which embeds the Media library feature to be used within WYSIWYG. The key difference between the Media library pop-up you see on fields versus the pop-up you see within WYSIWYG is that here you will have an option to select the image style. The video below illustrates how this is done.
Another WYSIWYG enhancement that ships with Rain is the integrated “Linkit” module that gives users an autocomplete dialog for links. The short video below demonstrates how to use this feature.
A common task for content editors is scheduling content to be published at a future date and time. Rain gives authors the ability to schedule content easily from the content edit screen. Note that this feature will override the Workflow state so this should be considered when assigning user roles and permissions. The screenshot below indicates the location of the “Scheduling options” feature that appears in the sidebar on node edit pages.
Drupal is usually configured with the ability to set alias patterns for content. This will create the meaningful content “slugs” visitors see in the browser which also adheres to SEO best practices. Rain’s approach is to pre-load a set of sensible defaults that get administrators started quickly. The video below demonstrates how an admin user would configure an alias pattern for a content type.
By default, the Rain distribution generates a sitemap.xml feed populated with all published content. For editors, it can be important to understand how to exclude content from a sitemap or update the priority for SEO purposes. The screenshot below indicates where these settings live on the node edit page.
The default configuration enabled by the Rain install profile should work well for most sites. Metatag, a core building block for your website’s SEO strategy, is also enabled for all optional content features that ship with the Rain distribution. To update meta tags settings on an individual piece of content, editors can simply edit the “Meta tags” area of the sidebar on the edit screen (see below).
Enabling Google Analytics on your Drupal website is a very simple process. The Rain distribution installs the Google Analytics module by default but the tracking embed will not fire until an administrator has supplied a “Web Property ID.” The Google Analytics documentation shows you where to find this ID. To navigate to the Google Analytics settings page, look for the “Google Analytics” link on the main admin configuration page. Most of the default settings will work well without change and the only required setting is the “UA” ID highlighted below.
Enabling Content Features
Rain comes with many optional content features that can be enabled at any time. This includes content types, vocabularies, paragraphs, search and block types. Enabling a content feature will create the corresponding content type, taxonomy, etc. that can then be further customized. Any paragraph feature that is enabled will be immediately visible on any Rain content type that has enabled. Watch the video below to see an example of how to enable these features.
Mediacurrent created Rain to jump-start development and give editors the tools they need to effectively manage content. All features that ship with Rain are optional and highly configurable. We tried to strike a balance of pre-configuring as many essential modules as possible while still allowing site administrators to own the configuration of their Drupal site.
In the next tutorial, we will “pop open the hood” for Drupal developers to explain in technical detail how to build sites with Rain.
Mike and Matt gather a fleet of Lullabots to talk the ins and outs of continuous integration (CI) in 2019.Tools and Services mentioned in this episode:
Sometimes, you would want to restrict access to certain pages on your site to users who do not have a specific role. You would want users to upgrade to a paid plan. Or you would just want to collect some more information from them.
The Rabbit Hole module controls what should happen when a user clicks the link to the entity or enters a URL in the address bar. It redirects such users to another page in the site.
The Rabbit Hole module works with different types of entities. They could be nodes, users, taxonomy terms and files, to name a few.
This tutorial will explain the basic usage of this module. Let’s start!
At Microserve we're always ambitious about the solutions that we design and develop from scratch, but we're also conscious that there's no point in 'reinventing the wheel' when perfectly good solutions already exist. Our clients usually have third-party systems that they rely on for all kinds of business-critical services like CRM, marketing automation, authentication, recruitment and lots more. It's our job as technical architects to understand where those systems end and where the system that we’re developing begins. Crucially, we need to plan how data flows between those systems to get them working seamlessly together. In other words: how to integrate the systems.
Palantir is excited to return to Denver as a sponsor for DrupalCamp Colorado 2019, featuring a keynote from our CEO, Tiffany Farriss. Tiffany will be discussing the role of organizational culture and open source projects like Drupal in the success of tech companies. We hope to see you there!
- Location: TBD
- Date: August 3rd, 2019
- Time: 9 AM - 10 AM MDT
The Drupal community maintains its own evergreen coding standards that differ from those of the broader PHP community (e.g., PSR-2). It's encouraged to pore through the standards line-by-line and memorize each for perfect real-time compliance, but for those with better things to do, fear not! The standards will come to you.
In Drupal 8.7.4, when the experimental Workspaces module is enabled, an access bypass condition is created.
This can be mitigated by disabling the Workspaces module. It does not affect any release other than Drupal 8.7.4.
Drupal 8.7.3 and earlier, Drupal 8.6.x and earlier, and Drupal 7.x are not affected.Solution:
If the site is running Drupal 8.7.4, upgrade to Drupal 8.7.5.
Note, manual step needed. For sites with the Workspaces module enabled, update.php needs to run to ensure a required cache clear. If there is a reverse proxy cache or content delivery network (e.g. Varnish, CloudFlare) it is also advisable to clear these as well.Reported By:
The Embedded Google Docs Field allows the site administrator to change the display of normal file fields, making them viewable directly on the node with the help of the Google Docs Viewer.
This tutorial will explain the usage of this module through an example.
Hint: Google has to be able to locate your site on the web, in order to embed the viewer. This module will not work in a local environment.
What is the latest business forecast for the media and publishing industry? The thunder and lightning of success! This is because Drupal has very useful web solutions for this industry.
In addition to easy content editing in Drupal 8 and other niceties, there are Drupal distributions for media and publishing. They are called Thunder and Lightning, and we will now discuss what they can give you.
The Migrate Drupal UI module provides a web browser user interface for upgrading from Drupal 6 / 7 to Drupal 8. There is a pre-upgrade analysis which displays a list of legacy modules that will be upgraded and will not be upgraded. Included in those that will be upgraded are modules that do not need an upgrade, such as the Help module. In order for this analysis to be correct, some Drupal 8 modules must provide information in a MODULE_NAME.migrate_drupal.yml file in the module's migrations/state directory.heykarthikwithu Wednesday, 17 July 2019 - 17:06:08 IST
The Apigee Dev Portal does not support SOAP/WSDL (Simple Object Access Protocol/Web Service Definition Language) documentation by design. However, Apigee is seeing a number of prospects and customers who have legacy SOAP APIs that they want to onboard onto Apigee Edge quickly. Apigee’s current strategy is to put a REST (Representational State Transfer) facade in front of a SOAP backend as an interim solution. This way customers can take advantage of the out-of-the-box analytics as part of their rationalization exercise to improve and build new RESTful APIs. However, these enterprise clients want to display WSDL documentation in addition to RESTful API documentation.
Shape the exciting lineup of community-driven, educational sessions by serving on the Program Committee!
Our normally scheduled call to chat about all things Drupal and nonprofits will happen this Thursday, July 18, at 1pm ET / 10am PT. (Convert to your local time zone.)
Feel free to share your thoughts and discussion points ahead of time in our collaborative Google doc: https://nten.org/drupal/notes
Already on the agenda: A discussion of announced changes to 20NTC, which specifically impact the community driven sessions our great group of volunteers organized last year.
We have an hour to chat so bring your best Drupal topics and let's do this thing!
Some examples to get your mind firing: how do I recreate [feature] on my Drupal 7 site in Drupal 8? I need to explain [complicated thing] to a non-technical stakeholder -- any advice? How can I get Drupal and my CRM to play nicely?
This free call is sponsored by NTEN.org but open to everyone.
- Join the call: https://www.uberconference.com/ntencommunity
- Optional dial in number: (866) 853-1888
- Alternate number: (720) 689-1432
- Follow along on Google Docs: https://nten.org/drupal/notes
- Follow along on Twitter: #npdrupal
Despite Drupal 8 (D8) being launched back in 2015 and Drupal 9’s release date looming; there are almost a million websites on the internet still running on Drupal 7 (D7). However; many of the website owners justify their reasoning for sticking with Drupal 7 until now to the long update to Drupal 8 process and the budget required.
So... should you upgrade your website to Drupal 8 now? That really depends on your business needs… however; since you decided to build your website using Drupal, I assume you already know the unique advantages that Drupal brings to your brand’s digital experience.
We take a look at a few logical reasons to upgrade your website to Drupal 8 sooner rather than later:
1. D7 End-Of-Life (EOL) Is Around the Corner
Both Drupal 7 and Drupal 8 versions will continue to receive support and fixes from the community until November 2021, a whole year after the release of Drupal 9 in 2020. Beyond that EOL date; D7 and D8 will no longer receive any support. What does that mean?
The community at large will no longer create new projects, fix bugs in existing projects, write documentation, etc. around Drupal 7. There will be no more core commits to Drupal 7. The Drupal Security Team will no longer provide support or Security Advisories for Drupal 7 core or contributed modules, themes, or other projects. Reports about Drupal 7 vulnerabilities might become public creating 0 day exploits. All Drupal 7 releases on all project pages will be flagged as not supported. Maintainers can change that flag if they desire to. On Drupal 7 sites with the update status module, Drupal Core will show up as unsupported.
After November 2021, using Drupal 7 may be flagged as insecure in 3rd party scans as it no longer gets support. If you have a site that is running on Drupal 7, now is the time to start planning the upgrade. You don’t want to be making that decision with only a couple of months to the EOL date remaining.
If you still plan to stick to Drupal 7; you can engage the services of specific vendors who will be announced at a later date as officially recognized members of the Drupal 7 Vendor Extended Support program (D7ES).
Or, you could save money and time by upgrading now and gain the significantly richer benefits of Drupal 8. I strongly recommend this approach. Win-Win.
2. Power Your Digital Business
This one is logical. If you think you’d be saving money and time by jumping directly to Drupal 9 from Drupal 7, think again.
You are already missing out on Drupal 8’s awesome features. Drupal 8 was built with a focus on creating engaging user experiences. Website performance is at the core of all improvements, updates, and modules being created for Drupal 8. One of the first significant improvements introduced was Facebook’s BigPipe, which is now a built-in stable module in Drupal core.
Major brands that are running websites on Drupal 8 can give their site visitors the mobile-first, search engine optimized and secure user experience they crave. Businesses that cater to a global audience are reaping the benefits of the multilingual and translation tools built-in Drupal 8’s CMS.
Additionally, Drupal 8 replaced PHPtemplate with a new, faster, simpler and much more secure theming engine, Twig. Though Twig is PHP-based, all that front end developers need to create beautiful websites is their skill in HTML/CSS. They don’t need to boast much PHP experience or expertise anymore.
The aforementioned are but a sample of highlighted features. Think of all the modules that have been improved and enhanced to build a digital experience that engages your base better than ever. Are you willing to be behind the pack until you decide I need to upgrade closer to the Drupal 7’s EOL date?
3. Smooth Migration to D9
Migrating your website from Drupal 6 to 7 demanded an entire rebuild. It’s true that migrating from Drupal 7 to 8 would be a major hassle as well, however, this would be the last major rebuild you will ever have to make again thanks to Semantic Versioning.
Drupal 9 is built on-top of Drupal 8. Hence, the transition when migrating from Drupal 8 to 9 will be seamless and effortless, especially when you compare the hassle of migrating between other major versions.
“The first release of Drupal 9 will be very similar to the last minor release of Drupal 8, as the primary goal of the Drupal 9.0.0 release will be to remove deprecated code and update third-party dependencies. By keeping your Drupal 8 sites up to date, you should be well prepared for Drupal 9.” - Dries Buytaert, Drupal Project Lead
If you are still reluctant to rebuild your website in order to benefit from the sample of highlighted Drupal 8 features we mentioned earlier; consider Varbase.
Varbase is an enhanced Drupal distribution packed with adaptive functionalities and essential modules, that speed up your development, and provides you with standardized configurations, making your life easier. The essence of Varbase, lies within the basic concept that initiated it; DRY (Don’t Repeat Yourself). Varbase handles that for you, relieving you from repeating all the modules, features, configurations that are included in every Drupal project.
You can build a beast of a digital experience that caters for a global and diverse audience, search engine optimized and mobile-first; whilst saving over 200 development hours.
The time to prepare for your business’ digital future is now. Adopting a neutral stance is only going to be a waste of time, traction and money. Choosing to upgrade to Drupal 8 right now means that you have already upgraded to Drupal 9.
Drupal’s focus on engaging digital experiences reflects the actual shift in user behavior in real life. That is the main reason why global brands and many industries such as the entertainment industry, higher education, healthcare, and even public sectors are adopting Drupal… and Drupal 8’s features offer your digital business more than you can begin to imagine. Our award-winning team can help you build a digitally thriving business in the future by guiding you through the upgrade process.
Contact us now and get a thorough complimentary performance audit of your website!
How did the City of Sandy Springs, GA improve information system efficiency with a unified platform? Join our webinar to see how we built this city on decoupled Drupal 8, GatsbyJS, and Netlify.
We'll explore how a “build-your-own” software approach gives Sandy Springs the formula for faster site speed and the ability to publish messages across multiple content channels — including new digital signage.What You'll Learn
The City of Sandy Springs’ challenges and goals before adopting Drupal 8
How Sandy Springs manages multi channel publishing across the website, social media, and a network of digital signage devices.
- Benefits gained from Drupal 8 and GatsbyJS, including: a fast, reliable site, hosting costs, and ease of development for their team.
Jason Green, Visual Communications Manager at City of Sandy Springs, and Mediacurrent Director of Front End Development Zack Hawkins share an inside look at the project.Registration
Follow the City of Sandy Springs on the path to government digital innovation. Save your seat today!
For contributors working on refreshing the Getting Involved Guide, the regular meeting takes place in the Drupal Slack #documentation channel on every other Tuesday at 1600UTC.
See the channel at https://drupal.slack.com/app_redirect?channel=documentation and take part!
The meeting will be text-based so people are encouraged to drop by even after the meeting to check on progress.
Issues are managed in the Drupal.org/project/drupal_org_community project under the component "Getting Involved Guide"