Skip to content

Releases: MyIntervals/emogrifier

V2.2.0

04 Sep 16:28
v2.2.0
Compare
Choose a tag to compare

Added

  • Add a HtmlPruner class
    (#679)
  • Add AbstractHtmlProcessor::fromDomDocument
    (#676)
  • Add AbstractHtmlProcessor::fromHtml
    (#675)

Changed

  • Make the closures static
    (#674)
  • Keep <wbr> elements by default with CssInliner
    (#665)
  • Make the CssInliner inherit AbstractHtmlProcessor
    (#660)
  • Separate CssInliner::inlineCss and the rendering
    (#654)

Removed

  • Drop the removal of unprocessable tags from CssInliner
    (#685)
  • Drop the removal of invisible nodes from CssInliner
    (#684)

Fixed

  • Remove opening <body> tag from body content when element has attribute(s)
    (#677,
    #683)
  • Keep development files out of the Composer packages
    (#678)
  • Call all static methods statically in CssConcatenator
    (#670)
  • Support all HTML5 self-closing tags, including <embed>, <source>,
    <track> and <wbr>
    (#653)
  • Remove all "unprocessable" (e.g. <wbr>) tags
    (#650)
  • Correct translated xpath of :nth-child selector
    (#648)

V2.1.1

10 Dec 11:52
v2.1.1
Compare
Choose a tag to compare

Changed

  • Add a test that a missing document type gets added
    (#641)

Fixed

  • Keep the style element the head
    (#642)

V1.2.2

10 Dec 10:04
v1.2.2
Compare
Choose a tag to compare

Fixed

  • PHP 7.3 support
    (#643)
    • Allow PHP 7.3 in composer.json
    • Test in Travis for PHP 7.3
  • Escape hyphens in regular expressions
    (#599)

Removed

  • Drop the @version PHPDoc annotations
    (#644)

V2.1.0

08 Dec 15:51
v2.1.0
Compare
Choose a tag to compare

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)

V1.2.1

26 Jun 10:16
v1.2.1
e005ae8
Compare
Choose a tag to compare

Added

  • Mark as compatible with PHP 7.2.x
    (#582)

Deprecated

  • Support for PHP 5.5 will be removed in Emogrifier 3.0.
  • Support for PHP 5.4 will be removed in Emogrifier 2.0.

V2.0.0

05 Jan 23:39
Compare
Choose a tag to compare

Added

  • Support for CSS :not() selector (#431)
  • Automatically remove !important annotations from final inline style declarations (#420)
  • Automatically move <style> block from <head> to <body> (#396)
  • PHP 7.2 support (#398)
  • Debug mode. Throw debug exceptions only if debug is active. (#392)

Changed

  • Test with latest and oldest dependencies on Travis (#463)
  • Always enable the debug mode in the tests (#448)
  • Optimize the string operations (#430)

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.

Removed

  • Drop support for PHP 5.4 (#422)
  • Drop support for HHVM (#386)

Fixed

  • Handle invalid/unrecognized selectors in media query blocks (#442)
  • Throw (the correct) exception for invalid excluded selectors (#437)
  • emogrifyBody must not encode umlaut entities (#414)
  • Fix mapped HTML attribute values (#405)
  • Make sure the HTML always has a BODY element (#410)
  • Make inline style priority higher than css block priority (#404)
  • Fix media regex parsing (#402)
  • Silence purposefully ignored PHP Warnings (#400)

V1.2.0

02 Mar 12:54
Compare
Choose a tag to compare

Added

  • Handling invalid xPath expression warnings
    (#361)

Deprecated

  • Support for PHP 5.5 will be removed in Emogrifier 3.0.
  • Support for PHP 5.4 will be removed in Emogrifier 2.0.

Fixed

  • Allow colon (:) and semi-colon (;) when using the *= selector
    (#371)
  • Ignore "auto" width and height
    (#365)

V1.1.0 (2016-09-18)

18 Sep 13:27
Compare
Choose a tag to compare

Added

  • Add support for PHP 7.1
    (#342)
  • Support the attr|=value selector
    (#337)
  • Support the attr*=value selector
    (#330)
  • Support the attr$=value selector
    (#329)
  • Support the attr^=value selector
    (#324)
  • Support the attr~=value selector
    (#323)
  • Add CSS to HTML attribute mapper
    (#288)

Changed

  • Remove composer dependency from PHP mbstring extension
    (Actual code dependency were removed a lot of time ago)
    (#295)

Deprecated

  • Support for PHP 5.5 will be removed in Emogrifier 3.0.
  • Support for PHP 5.4 will be removed in Emogrifier 2.0.

Fixed

  • Ignore value with words more than one in the attribute selector
    (#327)
  • Ignore spaces around the > in the direct child selector
    (#322)
  • Ignore empty media queries
    (#307)
    (#237)
  • Ignore pseudo-class when combined with pseudo-element
    (#308)
  • First-child and last-child selectors are broken
    (#293)
  • Second !important rule needs to overwrite the first one
    (#292)

V1.0.0

15 Oct 09:37
Compare
Choose a tag to compare
Merge pull request #266 from jjriv/task/release-1.0.0

[TASK] Prepare for the 1.0.0 release

V0.1.1

18 May 17:44
Compare
Choose a tag to compare
  • some README update
  • added two new options disableInlineStylesParsing and disableStyleBlocksParsing