Skip to content

V2.1.0

Compare
Choose a tag to compare
@oliverklee oliverklee released this 08 Dec 15:51
v2.1.0

Added

  • PHP 7.3 support
    (#638)
    • Allow PHP 7.3 in composer.json
    • Test in Travis for PHP 7.3
  • Add a renderBodyContent() method
    (#633)
  • Add a getDomDocument() method
    (#630)
  • Add a Composer script for PHP CS Fixer
    (#607)
  • Copy matching rules with dynamic pseudo-classes or pseudo-elements in
    selectors to the style element
    (#280,
    #562,
    #567)
  • Add a CssToAttributeConverter
    (#546)
  • Expose the DOMDocument in AbstractHtmlProcessor
    (#520)
  • Add an HtmlNormalizer class
    (#513,
    #516)
  • Add a CssInliner class
    (#514,
    #522)
  • Composer scripts for the various CI build steps
  • Validate the composer.json on Travis
    (#476)

Changed

  • Mark the work-in-progress classes as @internal
    (#640)
  • Remove the unprocessable tags from the DOM, not from the raw HTML
    (#627)
  • Reject empty HTML in setHtml()
    (#622)
  • Stop passing the DOM document around
    (#618)
  • Improve performance by using explicit namespaces for PHP functions
    (#573,
    #576)
  • Add type hint checking to the code sniffs
    (#566)
  • Check the code with PHPMD
    (#561)
  • Add the cyclomatic complexity to the checked code sniffs
    (#558)
  • Use the Symfony CSS selector component
    (#540)

Deprecated

  • Support for PHP 5.5 will be removed in Emogrifier 3.0.
  • Support for PHP 5.6 will be removed in Emogrifier 4.0.
  • The removal of invisible nodes will be removed in Emogrifier 3.0.
    (#473)
  • Converting CSS styles to (non-CSS) HTML attributes will be removed
    in Emogrifier 3.0. Please use the new CssToAttributeConverter instead.
    (#474)
  • Emogrifier 3.x.y will be the last release that supports usage without
    Composer (i.e., you can still require the class file).
    Starting with version 4.0, Emogrifier will only work with Composer.
  • The Emogrifier class will be superseded by CssInliner class in
    Emogrifier 3.0. For this, the Emogrifier class will be deprecated for
    version 3.0 and removed for version 4.0.

Removed

  • Drop the @version PHPDoc annotations
    (#637)
  • Drop the destructors
    (#619)

Fixed

  • Add required XML PHP extension to composer.json
    (#614)
  • Add required DOM PHP extension to composer.json
    (#595)
  • Escape hyphens in regular expressions
    (#588)
  • Fix Travis for PHP 5.x
    (#589)
  • Allow CSS between empty @media rule and another @media rule
    (#534)
  • Allow additional whitespace in media-query-list of disallowed @media rules
    (#532)
  • Allow multiple minified @import rules in the CSS without error (note:
    @imports are currently ignored,
    #527)
  • Style property ordering when multiple mixed individual and shorthand
    properties apply (#511,
    #508)
  • Calculation of selector precedence for selectors involving pseudo-classes
    and/or attributes (#502)
  • Allow @charset in the CSS without error (note: its value is currently
    ignored, #507)
  • Allow attribute selectors in descendants
    (#506,
    #381)
  • Allow adjacent sibling CSS selector combinator in minified CSS
    (#505)
  • Allow CSS property values containing newlines
    (#504)