Releases: MyIntervals/emogrifier
Releases · MyIntervals/emogrifier
V7.3.0: Add support for PHP 8.4 and CSS custom properties
Added
- Add support for PHP 8.4 (#1278)
- Support CSS custom properties (variables) (#1336)
- Support
:root
pseudo-class (#1306) - Add CSS selectors exclusion feature (#1236)
Changed
- Require
sabberworm/php-css-parser:^8.7.0
(#1355)
Fixed
- Preserve case of CSS custom property (variable) names (#1332)
Documentation
- Add an API and deprecation policy (#1323)
7.2.0: Add support for Symfony 7
Added
- Add support for Symfony 7 (#1243)
V7.1.0: Add support for PHP 8.3
V7.0.0: Add PHP 8.2 support, drop PHP 7.2 and Symfony 3.x support
Added
- Add support for PHP 8.2 (#1155)
Changed
- Throw exception with invalid CSS in debug mode (#1142)
- Only support up to 69 atomic expressions in a selector (#1113)
- Require
sabberworm/php-css-parser:^8.4.0
(#1134) - Upgrade to PHPUnit 9 (#1112)
Deprecated
- Support for PHP 7.3 will be removed in Emogrifier 8.0.
Removed
Fixed
- Bump the minimum Symfony 4.4 version to avoid PHP deprecation warnings (#1187)
V6.0.0: Add support for PHP 8.1 and Symfony 6, drop support for PHP 7.1
Added
- Test with Symfony 6-dev (#1109)
- Add support for PHP 8.1 (#1103)
- Add a dedicated class for caching (#1097)
- Allow installation together with Symfony 6 (#1065)
- Support more file types in the
.editorconfig
(#1035) - Set
align
attribute of<th>
elements withCssToAttributeConverter
(#1008)
Changed
- Use
sabberworm/php-css-parser
to parse the CSS (#1015) - Also check the unit test code with Psalm (#1003)
Deprecated
- Support for PHP 7.2 will be removed in Emogrifier 7.0.
Removed
- Remove a redundant CSS data cache (#1018)
- Drop support for Symfony 5.1 and 5.2 (#972, #1104)
- Drop support for PHP 7.1 (#967)
Fixed
V5.0.1 Bug fixes
V5.0.0
Added
- Add an
.editorconfig
file
(#940) - Support PHP 8.0
(#926) - Run the CI build once a week
(#933) - Move more development tools to PHIVE
(#894,
#907)
Changed
- Automatically add a backslash for global functions
(#909) - Update the development tools
(#898,
#895) - Upgrade to PHPUnit 7.5
(#888) - Enforce constant visibility
(#892) - Rename the PHPCS configuration file
(#891,
#896) - Make use of PHP 7.1 language features
(#883)
Deprecated
- Support for PHP 7.1 will be removed in Emogrifier 6.0.
Removed
- Drop support for Symfony 4.3 and 5.0
(#936) - Stop checking
tests/
with Psalm
(#885) - Drop support for PHP 7.0
(#880)
Fixed
- Fix a nonsensical code example in the README
(#920,
#935) - Remove
!important
fromstyle
attributes also when uppercase, mixed case or
having whitespace after!
(#911) - Copy rules using
:...of-type
without a type to the<style>
element
(#904) - Support combinator followed by dynamic pseudo-class in minified CSS
(#903) - Preserve all uninlinable (or otherwise unprocessed) at-rules
(#899) - Allow Windows CLI to run development tools installed through PHIVE
(#900) - Switch to a maintained package for parallel PHP linting
(#884) - Add
.0
version suffixes to PHP version requirements
(#881)
V4.0.0
Added
- Extract and inject
@font-face
rules into head
(#870) - Test tag omission in conformant supplied HTML
(#868) - Check for missing return type hint annotations in the code sniffs
(#860) - Support
:only-of-type
(with a type)
(#849,
#856) - Configuration setting methods now all return
$this
to allow chaining
(#824,
#854) - Disable php-cs-fixer Yoda conditions
(#791,
#794) - Check the code with psalm
(#537,
#779) - Composer script to run tests with
--stop-on-failure
(#782) - Test universal selector with combinators
(#776)
Changed
- Normalize DOCTYPE declaration according to polyglot markup recommendation
(#866) - Upgrade to V2 of the PHP setup GitHub action
(#861) - Move the development tools to Phive
(#850,
#851) - Switch the parallel linting to a maintained fork
(#842) - Move continuous integration from Travis CI to GitHub actions
(#832,
#834,
#838,
#839,
#840,
#841,
#843,
#846,
#849) - Clean up the folder structure and autoloading configuration
(#529,
#785) - Use
self
as the return type forfromHtml
(#784) - Make use of PHP 7.0 language features
(#777)
Deprecated
- Support for PHP 7.0 will be removed in Emogrifier 5.0.
Removed
- Drop support for Symfony versions that have reached their end of life
(#847) - Drop the
Emogrifier
class
(#774) - Drop support for PHP 5.6
(#773)
Fixed
- Allow
:last-of-type
etc. without type, without causing exception
(#875) - Make sure to use the Composer-installed development tools
(#862,
#865) - Add missing
<head>
element when there's a<header>
element
(#844,
#853) - Fix mapping width/height when decimal is used
(#845) - Actually use the specified PHP version on GitHub actions
(#836) - Support
ci:php:lint
on Windows
(#740,
#780)
V3.1.0
V3.0.0
Added
- Test and document excluding entire subtree with
addExcludedSelector()
(#347,
#768) - Test that rules with
:optional
or:required
are copied to the<style>
element (#748,
#765) - Test that rules with
:only-of-type
are copied to the<style>
element
(#748,
#760) - Support
:last-of-type
(#748,
#758) - Support
:first-of-type
(#748,
#757) - Support
:empty
(#748,
#756) - Test that rules with
:any-link
are copied to the<style>
element
(#748,
#755) - Support and test
:only-child
(#747,
#754) - Support and test
:nth-last-of-type
(#747,
#751) - Support and test
:nth-last-child
(#747,
#750) - Support and test general sibling combinator
(#723,
#745) - Test universal selector with combinators
(#723,
#743) - Preserve
display: none
elements with-emogrifier-keep
class
(#252,
#737) - Preserve valid
@import
rules
(#338,
#334,
#732,
#735) - Add
HtmlPruner::removeRedundantClassesAfterCssInlined
(#380,
#724) - Check on Travis that PHP-CS-Fixer will not change anything
#727) - Support
:not(…)
as an entire selector
(#469,
#725) - Add
HtmlPruner::removeRedundantClasses
(#380,
#708) - Support multiple attributes selectors
(#385,
#721) - Support
> :first-child
and> :last-child
in selectors
(#384,
#720) - Add an
ArrayIntersector
class
(#708,
#710) - Add
CssInliner::getMatchingUninlinableSelectors
(#380,
#707) - Add tests for
:nth-child
and:nth-of-type
(#71,
#698)
Changed
- Relax the dependency on
symfony/css-selector
(#762) - Rename
HtmlPruner::removeInvisibleNodes
to
HtmlPruner::removeElementsWithDisplayNone
(#717,
#718) - Mark the utility classes as internal
(#715) - Move utility classes to the
Pelago\Emogrifier\Utilities
namespace
(#712) - Make the
$css
parameter of theinlineCss
method optional
(#700) - Update the development dependencies
(#691)
Deprecated
- Support for PHP 5.6 will be removed in Emogrifier 4.0.
- Deprecate the
Emogrifier
class
(#701)
Removed
Fixed
- Fix PhpStorm code inspection warnings
(#729,
#770) - Uppercase type combined with class or ID in selector
(#590,
#769) - Dynamic pseudo-class combined with static one (rules copied to
<style>
element, #746) - Descendant attribute selectors (such as
html input[disabled]
)
(#375,
#709) - Attribute selectors with hyphen in attribute name
(#284,
#540,
#704) - Attribute selectors with space, hyphen, colon, semicolon or (most) other
non-alphanumeric characters in attribute value
(#284,
#333,
#550,
#540,
#704) - Don’t create empty
style
attributes for unparsable declarations
(#259,
#702) - Allow
:not(:behavioural-pseudo-class)
in selectors
(#697,
#703)