Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-08-24 | fix: character entity parsing | Kieran Brahney | |
2020-07-05 | cs fix | Asmir Mustafic | |
2020-07-03 | mitigate cyclic reference between output rules and the traverser objects | Asmir Mustafic | |
2020-06-30 | Fixed memory leak in HTML5::saveHTML() | Grégoire Pineau | |
2020-06-24 | Add special case for end tag </br>. Fixes #185 | Rowan Tommins | |
Normally, an end tag for a void element would simply be discarded, but the spec includes a special rule as follows: > An end tag whose tag name is "br" > Parse error. Drop the attributes from the token, and act as > described in the next entry; i.e. act as if this was a "br" > start tag token with no attributes, rather than the end tag > token that it actually is. | |||
2020-02-06 | prevent infinite loop on unterminated entity declaration at end of stream | Asmir Mustafic | |
2019-06-15 | Merge pull request #168 from idimopoulos/html5_encoding | Asmir Mustafic | |
Set default encoding in the DOMDocument object | |||
2019-06-14 | Set default encoding in case it does not exist. | Ilias Dimopoulos | |
2019-03-10 | drop hhvm support | Asmir Mustafic | |
2018-12-29 | Allow to pass a charset to the Scanner | Titouan Galopin | |
2018-11-27 | Optimize the processing of text between nodes | Christophe Coevoet | |
Instead of processing the text token one by one in the main loop, it is now processed in batch until the next special token (< and & which have special handling in the main loop and NUL characters which need to report a parse error). | |||
2018-11-27 | Merge pull request #161 from stof/optimize_main_loop | Asmir Mustafic | |
Optimize main loop | |||
2018-11-26 | Optimize the main loop | Christophe Coevoet | |
2018-11-26 | Merge pull request #155 from stof/optimize_attributes | Asmir Mustafic | |
Optimize the parsing of unquoted attributes | |||
2018-11-26 | Merge pull request #154 from stof/optimize_token_comparison | Asmir Mustafic | |
Optimize the token comparison | |||
2018-11-26 | Remove useless condition for the parsing of cdata | Christophe Coevoet | |
The caller already ensures that the current token is the right one. | |||
2018-11-26 | Simplify the doctype matching | Christophe Coevoet | |
- the doctype() function is only called for a D or d token, so there is no need to check again inside the method - checking that we have the DOCTYPE string can use a sequence matching | |||
2018-11-26 | Optimize the handling of the EOF detection in the main loop | Christophe Coevoet | |
The eof() method is a no-op when the token is not false. As the main loop already needs to identify that case anyway, skipping the method call allows to reduce the cost of parsing text tokens. | |||
2018-11-26 | Optimize the parsing of unquoted attributes | Christophe Coevoet | |
2018-11-26 | Optimize the token comparison | Christophe Coevoet | |
Tokens are always a single char. Using strspn to find whether they belong to a fixed list is slower than comparing them directly. | |||
2018-11-26 | Replace next calls with consume calls when the return value is ignored | Christophe Coevoet | |
2018-11-25 | Normalize PHPDoc comments | Titouan Galopin | |
2018-11-25 | Fix coding style | Titouan Galopin | |
2018-11-24 | Merge pull request #153 from stof/optimize_whitespace | Asmir Mustafic | |
Optimize consuming whitespaces | |||
2018-11-24 | Merge pull request #156 from stof/fix_typo | Asmir Mustafic | |
Fix typos in comments | |||
2018-11-24 | Fix typos in comments | Christophe Coevoet | |
2018-11-24 | Optimize the check for the element types during adding. | Christophe Coevoet | |
2018-11-24 | Optimize consuming whitespaces | Christophe Coevoet | |
Places consuming whitespaces don't care about the matched substring. They either need its length, or nothing. Returning only the length directly avoids computing the substring. | |||
2018-11-24 | Merge pull request #150 from Masterminds/backport | Asmir Mustafic | |
Backport few changes from old master branch | |||
2018-11-24 | Merge pull request #152 from stof/fix_typo | Asmir Mustafic | |
Fix typo in an error message | |||
2018-11-24 | Fix typo in an error message | Christophe Coevoet | |
2018-11-24 | Optimize the handling of references when consuming data | Christophe Coevoet | |
2018-11-23 | The element mask is 0 rather than false if element not fount. | Matt Farina | |
2018-11-23 | On the Html5::save method fixing docs. | Matt Farina | |
2018-11-23 | Setting variable for local namespaces to protected in writer. | Matt Farina | |
The namespaces for mathml, html, and svg are set to protected so they cannot be altered. These are part of the spec. | |||
2018-11-08 | move sequenceMatches to the Scanner | Asmir Mustafic | |
2018-11-08 | improve consume speed | Asmir Mustafic | |
2018-11-08 | Merge pull request #147 from tgalopin/tokenizer-perfs | Asmir Mustafic | |
Improve the Tokenizer performance | |||
2018-11-06 | Remove another current call | Titouan Galopin | |
2018-11-05 | Inline tag open in Tokenizer to further improve performances | Titouan Galopin | |
2018-11-05 | Improve Tokenizer performance by inlining text parsing and removing some ↵ | Titouan Galopin | |
Scanner::current calls | |||
2018-11-03 | Improve performance by relying on a native string instead of InputStream | Titouan Galopin | |
2018-11-02 | Add more extensions on composer.json, improve phpdocs and remove dead code | Titouan Galopin | |
2018-10-22 | Remove experimental comment | Titouan Galopin | |
2018-10-08 | audio is not a block tag | Asmir Mustafic | |
see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio | |||
2017-12-04 | #136: Respect self-closing tags only on foreign elements | Albert Peschar | |
2017-09-01 | Merge pull request #134 from Masterminds/ampersand-in-urls | Asmir Mustafic | |
Raw & in attributes | |||
2017-08-31 | reduce number of times "current" is invoked | Asmir Mustafic | |
2017-08-28 | Fixes https://github.com/Masterminds/html5-php/issues/124 | Asmir Mustafic | |
Reference: https://www.w3.org/TR/html52/syntax.html#character-reference-state If the character reference was consumed as part of an attribute (return state is either attribute value (double-quoted) state, attribute value (single-quoted) state or attribute value (unquoted) state), and the last character matched is not a U+003B SEMICOLON character (;), and the next input character is either a U+003D EQUALS SIGN character (=) or an alphanumeric ASCII character, then, for historical reasons, switch to the character reference end state. If the last character matched is not a U+003B SEMICOLON character (;), this is a parse error. | |||
2017-08-25 | handle special "img" "image" handling | Asmir Mustafic | |