Masterminds/html5-php
An HTML5 parser and serializer for PHP.
30 Releases
Latest: today
2.10.1Latest
📋 What's Changed
- Fix fwrite() null deprecation in OutputRules::wr() on PHP 8.1+ by @eyupcanakman in https://github.com/Masterminds/html5-php/pull/263
- Passing empty to ord() is deprecated in PHP 8.5 by @claudiu-cristea in https://github.com/Masterminds/html5-php/pull/265
- Fix dynamic property deprecation in TraverserTest & TokenizerTest by @ohader in https://github.com/Masterminds/html5-php/pull/266
✨ New Contributors
- @eyupcanakman made their first contribution in https://github.com/Masterminds/html5-php/pull/263
- @claudiu-cristea made their first contribution in https://github.com/Masterminds/html5-php/pull/265
- Full Changelog: https://github.com/Masterminds/html5-php/compare/2.10.0...2.10.1
2.10.0
📋 What's Changed
- Just a quick typo fix. by @citricguy in https://github.com/Masterminds/html5-php/pull/248
- Fix CS by @W0rma in https://github.com/Masterminds/html5-php/pull/255
- Add PHP 8.4 to CI config by @W0rma in https://github.com/Masterminds/html5-php/pull/256
- Ignore duplicate attributes by @Link1515 in https://github.com/Masterminds/html5-php/pull/258
- Address php-cs-fixer remarks by @ohader in https://github.com/Masterminds/html5-php/pull/260
- Ensure empty inline svg and math tags are serialized as void tags by @ohader in https://github.com/Masterminds/html5-php/pull/259
✨ New Contributors
- @citricguy made their first contribution in https://github.com/Masterminds/html5-php/pull/248
- @W0rma made their first contribution in https://github.com/Masterminds/html5-php/pull/255
- @Link1515 made their first contribution in https://github.com/Masterminds/html5-php/pull/258
- Full Changelog: https://github.com/Masterminds/html5-php/compare/2.9.0...2.10.0
2.9.0
📋 What's Changed
- add support for optional end tags for table elements by @goetas in https://github.com/Masterminds/html5-php/pull/240
- Fix masterminds-html5 lib php8-1 notice return type use phpstan by @igumnovaleksey in https://github.com/Masterminds/html5-php/pull/231
- Add PHP 8.3 to CI config by @TimWolla in https://github.com/Masterminds/html5-php/pull/237
- docs: replace travis status badge, with github status badge by @Chris53897 in https://github.com/Masterminds/html5-php/pull/234
- chore: allow phpunit 9 by @Chris53897 in https://github.com/Masterminds/html5-php/pull/235
✨ New Contributors
- @igumnovaleksey made their first contribution in https://github.com/Masterminds/html5-php/pull/231
- Full Changelog: https://github.com/Masterminds/html5-php/compare/2.8.1...2.9.0
2.8.1
📋 What's Changed
- Mark `.github/` as `export-ignore` by @TimWolla in https://github.com/Masterminds/html5-php/pull/233
✨ New Contributors
- @TimWolla made their first contribution in https://github.com/Masterminds/html5-php/pull/233
- Full Changelog: https://github.com/Masterminds/html5-php/compare/2.8.0...2.8.1
2.8.0
📋 What's Changed
- Drop ext-libxml requirement by @alecpl in https://github.com/Masterminds/html5-php/pull/205
- doc(spelling): fix reentrance spelling in readme by @kaznovac in https://github.com/Masterminds/html5-php/pull/213
- GH actions by @goetas in https://github.com/Masterminds/html5-php/pull/223
- Remove deprecations by @goetas in https://github.com/Masterminds/html5-php/pull/224
- Get rid of ctype by @alecpl in https://github.com/Masterminds/html5-php/pull/206
- Mark `<video>` tag as inline element by @HypeMC in https://github.com/Masterminds/html5-php/pull/232
- $tok might be false in Tokenizer.php by @sakarikl in https://github.com/Masterminds/html5-php/pull/221
✨ New Contributors
- @kaznovac made their first contribution in https://github.com/Masterminds/html5-php/pull/213
- @HypeMC made their first contribution in https://github.com/Masterminds/html5-php/pull/232
- @sakarikl made their first contribution in https://github.com/Masterminds/html5-php/pull/221
- Full Changelog: https://github.com/Masterminds/html5-php/compare/2.7.6...2.8.0
2.7.6
📋 Changes
- #218: Address comment handling issues
2.7.5
📋 Changes
- #204: Travis: Enable tests on PHP 8.0
- #207: Fix PHP 8.1 deprecations
2.7.4
📋 Changes
- #191: Fix travisci build
- #195: Add .gitattributes file with export-ignore rules
- #194: Fix query parameter parsed as character entity
2.7.3
📋 Changes
- #190: mitigate cyclic reference between output rules and the traverser objects
2.7.2
📋 Changes
- Fixed memory leak in HTML5::saveHTML() #187
- Add special case for end tag `</br>` #186
2.7.1
📋 Changes
- add PHP 7.4 job #171
- Prevent infinite loop on un-terminated entity declaration at EOF #178
2.7.0
📋 Changes
- #164: Drop HHVM support
- #168: Set default encoding in the DOMDocument object
2.6.0
📋 Changes
- #163: Allow to pass a charset to the Scanner
2.5.0
📋 Changes
- #162, #161, #155, #154, #153, #151: performance improvements
- #156: fixed typos
- #160: adopt and enforce code style
- #159: remove deprecated php unit base test case
- #150: backport changes from old master branch
2.4.0
📋 Changes
- #148: Improve performance by moving sequence matching
- #147: Improve the Tokenizer performance
- #146: Improve performance by relying on a native string instead of InputStream
- #144: Add DOM extension in composer.json
- #145: Add more extensions on composer.json, improve phpdocs and remove dead code
- #143: Remove experimental comment
2.3.1
📋 Changes
- #121: Audio is not a block tag (fixed by #141)
- #136: Handle illegal self-closing according to spec (fixed by #137)
- #141: Minor fixes in the README
2.3.0
📋 Changes
- #129: image within inline svg breaks system (fixed by #133)
- #131: ² does not work (fixed by #132)
- #134: Improve tokenizer performance by 20% (alternative version of #130 thanks to @MichaelHeerklotz)
- #135: Raw & in attributes
Release 2.2.22.2.2
📋 Changes
- #116: In XML mode, tags are case sensitive
- #115: Fix PHP Notice in OutputRules
- #112: fix parsing of options of an optgroup
- #111: Adding test for the address tag
Release 2.2.12.2.1
📋 Changes
- #109: Fixed issue where address tag could be written without closing tag
2.2.0
📋 Changes
- #105: Enable composer cache (for CI/CD)
- #100: Use mb_substitute_character inset of ini_set for environments where
- #98: Allow link, meta, style tags in noscript tags
- #96: Fixed xml:href on svgs that use the "use" breaking
- #94: Counting UTF8 characters performance improvement
- #93: Use newer version of coveralls package
- #90: Remove duplicate test
- #87: Allow multiple root nodes
2.1.2
📋 Changes
- #82: Support for PHP7
- #84: Improved boolean attribute handling
2.1.1
📋 Changes
- #78: Fixes bug where unmatched entity like string drops everything after &.
2.1.0
📋 Changes
- #74: Added disable_html_ns and target_doc dom parsing options
- Unified option names
- #73: Fixed alphabet, ß now can be detected
- #75 and #76: Allow whitespace in RCDATA tags
- #77: Fixed parsing blunder for json embeds
- #72: Add options to HTML methods
Serializer output bugfix1.0.7
#77 Don't output anything on parse (Serializer bug)
Improved handling of HTML5 "unusual" usages 2.0.2
📋 Changes
- closed #50 (empty document handling)
- closed #63 (tags with strange capitalization)
- closed #65 (dashes and underscores as allowed characters in tag names)
- closed #68 (non inline elements inside inline containers)
Small fixes 2.0.1
📋 Changes
- Closed #59
- Closed #56
- Sami as new documentation generator
2.0 Major release2.0.0
📋 Changes
- #53: Improved boolean attributes handling
- #52: Facebook HHVM compatibility
- #48: Adopted PSR-2 as coding standard
- #47: Moved everything to Masterminds namespace
- #45: Added custom namespaces
- #44: Added support to XML-style namespaces
- #37: Refactored HTML5 class removing static methods
1.0.5
📋 Changes
- #38: Set the dev-master branch as the 1.0.x branch for composer (goetas)
- #34: Tests use PSR-4 for autoloading. (goetas)
- #40, #41: Fix entity handling in RCDATA sections. (KitaitiMakoto)
- #32: Fixed issue where wharacter references were being incorrectly encoded in style tags.
1.0.4
📋 Changes
- #30/#31 Don't throw an exception for invalid tag names.
1.0.3
📋 Changes
- #23 and #29: Ignore attributes with illegal chars in name for the PHP DOM.
