cdn 8.x-3.0-rc1

Release notes

After two weeks of beta1, here’s RC1! Since no bugs were reported (and I fixed the ones I found), I felt it was time for an RC, to get more people to test it 🙂

The CDN module is now fully ported to Drupal 8. It is much simpler to use (just look at the UI). It has less overhead (the UI is in a separate module, the altering of file URLs has far simpler logic). It has lower technical complexity (File Conveyor support was dropped, it no longer needs to detect HTTP vs HTTPS: it always uses protocol-relative URLs, less unnecessary configurability, the farfuture functionality no longer tries to generate file and no longer has extremely detailed configurability).

In other words: the CDN module in Drupal 8 is much simpler. And has much better test coverage too. (You can see this in the tarball size too: it’s about half of the Drupal 7 version of the module!)

The CDN UI module's configuration UI.

all the fundamentals
  • the ability to use simple CDN mappings, including conditional ones depending on file extensions, auto-balancing, and complex combinations of all of the above
  • DNS prefetching
  • a simple UI to set it up — in fact, much simpler than before!
  1. the CDN module now always uses protocol-relative URLs, which means there’s no more need to distinguish between HTTP and HTTPS, which simplifies a lot
  2. the UI is now a separate module (fixes #1784432: Version 3.0: move UI of CDN module into a cdn_ui module)
  3. the UI is optional: for power users there is a sensible configuration structure with strict config schema validation
  4. complete unit test coverage of the heart of the CDN module, thanks to D8’s improved architecture
  5. DNS prefetching using headers rather than tags in <head>, which allows me to use a much simpler/cleaner Symfony response subscriber
  6. tours instead of advanced help (fixes #1753174: Dependency for advanced_help module), which very often was ignored
  7. there is nothing to configure for the SEO (duplicate content prevention) feature anymore
  8. nor is there anything to configure for the Forever cacheable files feature anymore (named Far Future expiration in Drupal 7), and it’s a lot more robust
  1. File Conveyor support
  2. separate HTTPS mapping (also mentioned above)
  3. all the exceptions (blacklist, whitelist, based on Drupal path, file path…) — all of them are a maintenance/debugging/cacheability nightmare
  4. configurability of SEO feature
  5. configurability of unique file identifiers for the Forever cacheable files feature
  6. testing mode

Changes since 8.x-3.0-beta1:

  • #2717015 by Wim Leers, captainack: Add test coverage to ensure rewriting file URLs in tags continues to work
  • #2801225 by [email protected], Shashwat Purav, Wim Leers, shruti1803: Add hook_help() to the module
  • #2745109 by Wim Leers: Files referenced in CSS aggregates should not have CDN URLs: already root-relative, and they cannot be safely made forever cacheable anyway
  • #2806241 by Wim Leers: Far Future expiration functionality doesn’t work when Drupal is not installed in the root of a domain
  • #2804463 by Wim Leers: The UI incorrectly marks the status as always being enabled, even when it’s not
  • #2801255 by Wim Leers: Move CdnIntegrationTest from src/Tests/ to tests/Functional/
Download Size md5 hash
cdn-8.x-3.0-rc1.tar.gz 30.77 KB 7bf35506c414d9fb2de1ce4fb0158a4d 46.46 KB 1915d9ff62e17ae611cbe1e78dae1ce3
Last updated: September 26, 2016 – 14:13
Official release from tag: 
Core compatibility: 
Release type: 
Short Description: 
First release candidate!
Packaged Git sha1: