Repository navigation
Declare league/commonmark ^2.10.2 as a direct dependency of Storm - #253
Merged
Merged
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
zimudec
force-pushed
the
port-c415db82-wip-1-3
branch
from
October 9, 2026 18:07
f9bae2c to
ab5855b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Re-scoped PR: the two Markdown fixture hunks of the previous version arrived upstream via the
develop→wip/1.3sync of 2026-10-06 (compare merge_base =c415db82, the #247 merge commit ondevelop); thecomposer.jsonrequire was not — that sync resolvedcomposer.jsonas a conflict. What remains is the packaging half: declareleague/commonmarkas a direct dependency of Storm.Why
League\CommonMarkclasses directly at runtime (~25 references acrosssrc/Parse:Markdown.php, the in-treeCommonMarkCoreExtension,StrikethroughExtension, theMarkdownfacade). Composer doctrine: what you import directly, you require directly.laravel/framework(composer why:laravel/framework v12.69.3 requires league/commonmark (^2.8.1)) — a floor below the latest security release, so nothing guarantees≥ 2.10.2for Storm consumers.2.10.2is the security floor (two advisories published 2026-09-30, both first patched in 2.10.2):TableExtensionby default and this one is not mitigable by configuration.DisallowedRawHtmlbypass → stored XSS. Storm loads the extension with commonmark's defaulthtml_input=allow, so it applies.develop, where Fix the simple_table Markdown test for league/commonmark 2.10.2 #247 already left the direct require in place.The caret keeps it below 3.0, where the in-tree Winter extensions (written against the 2.x API) would break.
composer why-not league/commonmark 2.10.2reports no conflicts with current requirements.Verification
league/commonmark 2.10.3and the full suite is green: 866 tests, 3412 assertions, 8 skipped, 13 PHPUnit deprecations (PHP 8.5.9 / PHPUnit 11.5.57).simple_tablefixtures double as a floor test: forcingcomposer update --with league/commonmark:2.10.1turnsMarkdownTest::testParsedata set Updated DotEnv call to pass repository #59 red (the table stops rendering); back on 2.10.3 everything is green.Reference: https://github.com/thephpleague/commonmark/compare/2.10.1…2.10.2
CI note (the red ✗ jobs are not caused by this diff)
This PR's tree is identical to the
wip/1.3head except for the onecomposer.jsonline. Since 2026-10-08 19:41 UTC, three new advisories affect every< 1.0.0version ofenshrined/svg-sanitize(CVE-2026-107380/107381/107379; the patched release is1.0.0, which the current~0.16constraint excludes), and Composer ≥ 2.9's dependency policy (config.policy.advisories.block, enabled by default) refuses to resolve any affected version — so a lock-lesscomposer install(storm ships no lock) now fails on any storm commit, including thewip/1.3head itself (its last green CI run predates those advisories). Reproduced locally with the same error. This PR stays single-concern; the svg-sanitize constraint is an upstream decision (^1.0if API-compatible, or apolicy.advisories.ignorestopgap).