Drupal 8 | Modules Unraveled

162 Drupal 8 Enterprise Development with Allan Chappell and David Diers - Modules Unraveled Podcast

Photo of Allan Chappell and David Diers

Migration

  • In D7, we used the Migrate Drupal to Drupal module, what’s the case for D8?
    • Speak on pattern of using Migrate Drupal as a basis for a migration.
    • Migration plugins and yml configuration declarations are an improvement on an already excellent module - if you are going to handle migrations like you did in 7 - which might be appropriate depending on your use case
    • Appropriate where you are significantly revising the content model, configuration or site composition.
  • What are some of the pros and cons of the way Migrate Drupal works in D8?
    • Pros
    • Migration of most Drupal settings: registration emails, site name, debug settings, etc.
    • Migration of most fields (work is ongoing to include contrib into upgrade migrations)
    • Migration of all content types with nodes and revisions
    • Cons
    • By default, fixed ids (not ideal for staged work)
    • Miss an opportunity to take out the trash

Configuration management

  • Let’s talk about configuration management. I know from working with you guys that you started out using Features...
    • Tried out a features based approach at first - because it was similar to well established patterns in 7 - but abandoned it for the project
    • Feature branch activity then confex seems to be working out well
    • Configuration import and export has inspired a lot of confidence in getting to known states.
    • The challenge is probably in managing environmental config settings - that’s where Master still might have a place.
    • Using configuration export and import committed to git repo.
    • Challenges of local configuration vs production configuration.
    • Managing code review
    • Automated removal of local configuration
    • Would like to know some other people’s workflows

160 The Workflow Initiative for Drupal 8 with Dave Hall and Dick Olsson - Modules Unraveled Podcast

Photo of Dave Hal and Dick Olsson

Workflow Initiative

  • What is the Workflow Initiative and what are the goals you’re trying to achieve?
  • What lead you into proposing this initiative for core and what’s the background story?
  • Dries mentioned in the keynote that official initiatives preferably should have a dedicated team, and have funding. How is that going to work for the Workflow Initiative?
    • How is it funded?
    • Who is on the team?
  • What will the process be like for getting this into core? [talk about the new governance structure for core initiatives]
    • Roadmap for Drupal

How will it work?

  • How will the content moderation workflow work when it’s in core?
  • How will the full-site content preview work when it’s in core?

Questions from Twitter

  • Jibran Ijaz ‏@JibranIjaz
    What will happen to the workflow initiative if Drupal shop(s) will stop supporting it? #MUP160

  • Jibran Ijaz ‏‏@JibranIjaz
    How can we make sure that this'll be a community driven initiative not specific to someones requirements. #MUP160

  • Steve Persch ‏@stevector
    Do you anticipate support for making/deploying configuration changes through workspaces? #MUP160

  • Steve Persch ‏@stevector
    @JibranIjaz @dickolsson I'd like part of the answer to be consensus formed around Behat-executable stories/scenarios. #MUP160

  • Justin Ludwig @jludwig89
    Can the Workflow Initiative fit into a multi-site install, where content is to be deployed to more than one site? #MUP160

157 The Drupal 8 Port of Advagg with Nick Wilde - Modules Unraveled Podcast

Photo of Nick Wilde

Advagg

  • First, can you give us an overview of what Advagg is?

The Drupal 8 Port

  • Are you the main maintainer of the D8 version?
  • What was the porting process like?
  • What features are in the Drupal 8 version right now?
  • What's the status of the Drupal 8 version?
  • Do you know of any compatibility issues with other modules?
  • What do you have planned for the future?

156 Using BigPipe to Achieve Incredible Site Speed in Drupal 8 with Wim Leers - Modules Unraveled Podcast

Photo of Wim Leers

Big Pipe

  • What is Big Pipe?
  • This isn’t a Drupal specific thing right? Where did the idea of BigPipe come from?
  • How does it work?
    • Builds on Drupal 8’s caching system, specifically cacheability metadata (tags, contexts, max-age)
    • Rendering system (bubbling, placeholders)
    • page cache / dynamic page cache
    • BigPipe is built ON TOP OF ALL OF THE ABOVE
  • Does it work for anonymous and authenticated users?
  • Is this compatible with reverse proxies like Varnish?
  • Does BigPipe affect the need for something like redis or memchache?
  • How does BigPipe relate to authcache?

Use Cases

  • How can we start using it? What’s the install process?
  • What do we need to do to configure it for our site?
  • Is BigPipe ready to be used?
  • Is there anything like this for Drupal 7?

Questions from Twitter

  • Daniel Noyola @danielnv18
    What can I do to make my site compatible with BigPipe? O what shouldn't do?
  • Daniel Noyola @danielnv18
    Is it compatible with contrib modules like panels or display suite?
  • Ryan Gibson @ryanissamson
    I may have missed it, when BigPipe is included in D8.1, will it be enabled by default?
  • TheodorosPloumis @theoploumis
    Is the bigpipe caching working with the RESTful responses?

155 Using the Block Visibility Groups Module as a Lightweight Replacement for Context and Panels in Drupal 8 with Ted Bowman - Modules Unraveled Podcast

Photo of Ted Bowman

Scheduled Updates

  • What is the Scheduled Updates module?
  • How does it differ from the Scheduler module?
  • What are some of the use cases? What types of updates can be scheduled?
  • Is it ready to be used?

Block Visibility Groups

  • What is Block Visibility Groups?
  • How does it differ from Context and Panels?
  • Do you intend it to be a replacement for context?
  • When would you use it instead Panels
  • What are some example use cases?
  • How does it work with other D8 block-related modules?
  • Is it ready to be used?

154 Commerce 2.x for Drupal 8 with Bojan Zivanovic - Modules Unraveled Podcast

Photo of Bojan Zivanovic

Commerce 2.x for Drupal 8

  • What has been the biggest success of Commerce on D7?
    • By starting from scratch on D7 technologies we created a solution that is intuitive to Drupal developers and easier to extend. And with 60k installs, we’ve set a record for ecommerce on Drupal in general.
  • And what do you think have been its biggest weaknesses?
    • Not prioritizing UX from the start. Took us a year after the 1.0 release to create Inline Entity Form and recreate the admin screens as a part of the Kickstart. At that point many people already had the impression that Commerce was hard to use.
    • Not providing enough direction to developers. Flexibility is important, as is having unopinionated code. But developers also need to have a clear and obvious path forward. Having an opinionated layer on top, with sane defaults, can save a lot of development time and prevent frustration.
    • Not prioritizing certain features, leaving them to contrib instead. Modules that make up the checkout ux (checkout progress, checkout redirect, addressbook), discounts. Of course, all generals are smart after the battle.
  • How has that influenced the development of Commerce 2.x?
    • With Commerce 2.x we once again started from scratch, evaluating all feedback received in the 1.x cycle. We decided to address all three of these major points.
    • Better UX means paying more attention to the product and order admin experience, as well as providing better checkout out of the box.
    • Better APIs means doing more work for the developer, especially around pricing and taxes.
    • And finally, we’re growing the core functionality. We’re expecting a dozen contrib modules to be no longer needed, as we address edge cases and add functionality.
  • What are some of the biggest new features of Commerce 2.x?
    • Multi-store will allow people to bill customers from different branches (US and FR offices, for example), or create marketplaces like Etsy.
    • Improved support for international markets means better address forms, better currency management, and significantly better tax support, the kind that will reduce the need for people to use cloud-based tax solutions, at least in Europe.
    • Support for multiple order types, each with its own checkout and workflows will allow developers to create tailored experiences for different kinds of products, such as events, ebooks, t-shirts.
    • An integrated discounts UI means more power to the store admin.
    • And this is just the beginning. Under the hood there are many small features and improvements, over both 1.x and Kickstart.
  • What has Commerce done to integrate better with the PHP and Drupal communities?
    • We’ve created several independent ecommerce libraries, attacking currency formatting, address management and taxes. These libraries are now being adopted by the wider PHP community, bringing us additional contributors.
    • On the Drupal side we’ve joined forces with the Profile2 team, creating the D8 Profile module that we’ll use for customer profiles. We’re also depending on Inline Entity Form, which is now shared with the Media team. We’re also moving some of our generic entity code into a new Entity API module, maintained together with Daniel Wehner and other community members.
    • Finally, we have been champions of Composer, the replacement for Drush Make, and required for any module that depends on external libraries.

The Future of Commerce 2.x

  • Commerce 2.x is now in alpha2. What’s included? What’s next?
    • Alpha2 includes stores and products, as well as initial order and cart implementations.
    • It also has functional currency management and formatting, address and profile management.
    • Alpha3, to be released in the next two weeks, is focusing on completing the order and cart implementations, and adding the initial checkout implementation.
    • Post-alpha3 our focus will be on discounts, taxes, and finally, payments.
    • The best way to learn more about this is to read the drupalcommerce.org blog, where I post “Commerce 2.x stories” detailing work done so far. We have several new posts planned for february.
  • When can we expect Commerce 2.x to be production ready?
    • Our current goal is to release a production ready beta by end of march. We should also have Search API and Rules by then. Leading up to DrupalCon New Orleans we’ll be helping the community implement shipping and licensing and port payment modules. At the same time, we’ll be focusing on reaching RC status.
  • What’s the status of commerce contrib? Like PayPal, Authorize.net, etc.
  • How can the community help?
    • Each new alpha welcomes more manual testing and feedback.
    • We also have office hours every wednesday at 3PM GMT+1 on #drupal-commerce where people can discuss code and help out on individual issues.
  • Do you feel that requiring Commerce to be installed via Composer will impact adoption?
    • The average developer is already familiar with Composer and will benefit greatly from it, just like D7 developers benefited from Drush Make. Getting Drupal, Commerce, and all dependencies is a single Composer command, as is keeping it all up to date.
    • People unwilling to run Composer on their servers can run it locally and commit the result.
    • I’m also hoping we’ll be able to offer distribution-like tarballs on either drupal.org or drupalcommerce.org as we get closer to a release candidate.

Questions from Twitter

  • howdytom ‏@howdytom
    Commerce Kickstart provides a great toolset with basic configuration. Is there a plan to do a Commerce Kickstart for Drupal 8? If not, will Commerce provide more out of the box solutions for a full featured shop?
    • Commerce Kickstart had several parts.
    • The first one was about providing better admin and checkout UX, as well as discounts. That’s now handled by Commerce out of the box.
    • The second was about providing a demo store with a developed set of frontend pages. That’s going to stay in contrib and will greatly benefit from the flexibility introduced by Drupal 8 and CMI.
    • It’s too early to plan a distribution yet. Drupal 8 has almost no contrib, and drupal.org doesn’t support using Composer to build distributions yet.
    • However, we are using Composer to provide single-command site templates, the kind that gives you Drupal core, Commerce and other modules. This will allow us to provide good starting points for different use cases, similar in nature to Commerce Kickstart 1.x.
    • Once 2017 comes around, we’ll investigate next steps.
  • Jimmy Henderickx ‏@StryKaizer
    In commerce d8, will it be possible to alter a product name dynamicly (either by hook or other solution)?
  • Czövek András ‏@czovekandras
    Any plans making iframe payment methods 1st class citizens? Thinking of running checkout form callbacks.
  • Marc van Gend ‏@marcvangend
    How did D8 architecture change the way you code your modules?

153 Protecting Drupal 8 Sites From Spam Using Honeypot with Jeff Geerling - Modules Unraveled Podcast

Photo of Jeff Geerling

Honeypot

  • What is the Honeypot module?
  • What prompted you to contribute the Honeypot module? Why was it originally created?
    Flocknote (two employers ago) user registration
    A bunch of my blogs / comments
  • What methods or techniques does honeypot use to detect bots?
    A literal ‘honeypot’
    Time delay
  • What types of foms can it protect?
  • What’s different about Honeypot vs. other spam prevention modules like CAPTCHA and Mollom?
    Avoid punishing the user (explain)

Drupal 8 and Future of Honeypot

  • How did the port of Honeypot to Drupal 8 go?
  • Have you started developing new sites in Drupal 8? And if so, how’s that going?
  • How have spammers adapted to tools like Honeypot, and how do you try to keep ahead of them?” “More spam getting through Honeypot lately” (https://www.drupal.org/node/2646380)

Community Issues

  • You’re also involved a bit in other open source communities for projects like Ansible. How does the Drupal community compare? What are some things you would like to see improved?
  • Is there anything you’ve done to make sure you can continue to maintain this open source project among many others both on drupal.org and github, and not get burned out?

151 Using Composer to Build Drupal Sites Fast - Modules Unraveled Podcast

Photo of Tim Millwood

Composer

  • What is composer?
    • Dependency Manager for PHP
  • How does it relate to Drush Make?
    • Surprisingly similar
    • “Getting off the island”
  • What can you do with composer on a Drupal site?
    • download dependencies, drupal modules, themes, profiles, drush, external libraries etc
  • How do you download contrib modules?
    • https://packagist.drupal-composer.org/
  • How do you download contrib themes?
    • ^^
  • Can you specify where to download project? ie: modules/contrib and modules/custom?
    • composer/installers & davidbarratt/custom-installer
  • Where do you store custom modules/themes?
    • Two methods: Committing to your repo or creating separate repos
    • Reference repo in you composer.json
    • Toran Proxy
    • davidbarratt/custom-installer
  • How can you specify and download a library to go with a module?
    • module should specify it in composer.json
    • if not submit a patch, and add to your composer.json for now
  • Patches
    • cweagans/composer-patches

Use Cases

  • drupal/drupal vs drupal/core
    • http://cgit.drupalcode.org/drupal/tree/composer.json
    • If you want to use the project-repo/web
    • composer create-project drupal/drupal
  • Composer template for Drupal Projects
    • https://github.com/drupal-composer/drupal-project
  • Build sites from scratch with composer install
  • Update drupal/modules/themes/etc. with composer update

Pages