Releases: thephpleague/commonmark
Releases · thephpleague/commonmark
2.5.1
Fixed
- Fixed attribute parsing incorrectly parsing mustache-like syntax (#1035)
- Fixed incorrect
Tablestart line numbers (#1037)
New Contributors
- @jasonvarga made their first contribution in #1035
Full Changelog: 2.5.0...2.5.1
2.5.0
Added
- The
AttributesExtensionnow supports attributes without values (#985, #986) - The
AutolinkExtensionexposes two new configuration options to override the default behavior (#969, #987):autolink/allowed_protocols- an array of protocols to allow autolinking forautolink/default_protocol- the default protocol to use when none is specified
Changed
- Made compatible with CommonMark spec 0.31.0, including:
- Allow closing fence to be followed by tabs
- Remove restrictive limitation on inline comments
- Unicode symbols now treated like punctuation (for purposes of flankingness)
- Trailing tabs on the last line of indented code blocks will be excluded
- Improved HTML comment matching
Paragraphs only containing link reference definitions will be kept in the AST until theDocumentis finalized- (These were previously removed immediately after parsing the
Paragraph)
- (These were previously removed immediately after parsing the
Fixed
- Fixed list tightness not being determined properly in some edge cases
- Fixed incorrect ending line numbers for several block types in various scenarios
- Fixed lowercase inline HTML declarations not being accepted
New Contributors
- @svenluijten made their first contribution in #986
Full Changelog: 2.4.4...2.5.0
2.4.4
Fixed
- Fixed SmartPunct extension changing already-formatted quotation marks (#1030)
Full Changelog: 2.4.3...2.4.4
2.4.3
Fixed
- Fixed the Attributes extension not supporting CSS level 3 selectors (#1013)
- Fixed
UrlAutolinkParserincorrectly parsing text containingwwwanywhere before an autolink (#1025)
New Contributors
- @nfreader made their first contribution in #1016
- @macbookandrew made their first contribution in #1025
- @xavierlacot made their first contribution in #1013
Full Changelog: 2.4.2...2.4.3
2.4.2
Fixed
- Fixed declaration parser being too strict
FencedCodeRenderer: don't addlanguage-to class if already prefixed
New Contributors
- @sergiy-petrov made their first contribution in #997
- @clustermin made their first contribution in #988
- @peter279k made their first contribution in #996
Full Changelog: 2.4.1...2.4.2
2.4.1
2.4.0
See the upgrading guide for more information about the exception-related changes
Added
- Added generic
CommonMarkExceptionmarker interface for all exceptions thrown by the library - Added several new specific exception types implementing that marker interface:
AlreadyInitializedExceptionInvalidArgumentExceptionIOExceptionLogicExceptionMissingDependencyExceptionNoMatchingRendererExceptionParserLogicException
- Added more configuration options to the Heading Permalinks extension (#939):
heading_permalink/apply_id_to_heading- Whentrue, theidattribute will be applied to the heading element itself instead of the<a>tagheading_permalink/heading_class- class to apply to the heading elementheading_permalink/insert- now acceptsnoneto prevent the creation of the<a>link
- Added new
table/alignment_attributesconfiguration option to control how table cell alignment is rendered (#959)
Changed
- Change several thrown exceptions from
RuntimeExceptiontoLogicException(or something extending it), including:CallbackGenerators that fail to set a URL or return an expected valueMarkdownParserwhen deactivating the last block parser or attempting to get an active block parser when they've all been closed- Adding items to an already-initialized
Environment - Rendering a
Nodewhen no renderer has been registered for it
HeadingPermalinkProcessornow throwsInvalidConfigurationExceptioninstead ofRuntimeExceptionwhen invalid config values are given.HtmlElement::setAttribute()no longer requires the second parameter for boolean attributes- Several small micro-optimizations
- Changed Strikethrough to only allow 1 or 2 tildes per the updated GFM spec
Fixed
- Fixed inaccurate
@throwsdocblocks throughout the codebase, includingConverterInterface,MarkdownConverter, andMarkdownConverterInterface.- These previously suggested that only
\RuntimeExceptions were thrown, which was inaccurate as\LogicExceptions were also possible.
- These previously suggested that only