feat: add getTimeline() and refactor data compression - #137
Conversation
swwind
left a comment
There was a problem hiding this comment.
Besides, why do I have the permission to click the "Approve" button for this PR? It doesn't look like I have the write permission to this repo or something else.
f2e5a2b to
dc665f4
Compare
|
I think because my initial branch was base on yours, GitHub automatically made you a read-only approver. I'm pretty comfortable with where this has landed. FYI @ai , I have made some architectural changes to this module to support your friends working on |
In fact, I've found that anyone can submit an white "approve" decision for any pull request in any project. Perhaps this is a feature of GitHub. I hope I haven't messed up this PR. |
|
Ah right, just good vibes then, haha. You can set rules around PRs needing approvals before the can be merged, but that's not needed her, just needs to pass the test matrix. Then one of the web-platform-dx owners or I can merge it (I'll squash the commits before merging for cleanliness). |
|
@tonypconway Just a gentle ping here, is there any remaining issues before this can be merged? Happy to help if needed. |
// TODO: rewrite commands for building timeline // TODO: look at a better way to determine "widely available on date" correctness // TODO: backfill older browser versions in timeline for getAllVersions
…ing, fix unknown release date compression
…ove Object.entries/values to preserver Node 6 compat
…browser versions edge case
…in getAllVersions
NB: #c4e7a20fccf883801ccc922d4ee19e56c43dbffb fixed a bug that misattributed engine versions, meaning KaiOS 3.x had the wrong Baseline year, reflected in changes here.
dc665f4 to
430e5e4
Compare
|
So sorry, have had some family commitments and sickness blocking me for the last few days. Merging and publishing as v2.11.0 now. For some reasons one of the CLI tests timed out on certain Node versions, but it seems to be environmental rather than a problem with the package, as a re-run of the tests was successful: https://github.com/web-platform-dx/baseline-browser-mapping/actions/runs/29837636545 |
This PR does three things:
getTimeline()method for getting the series of minimum browser changes, either grouped by date or by browser.@mdn/browser-compat-dataanddownstream-browsers.jsonand features fromweb-features(in their very pared down form) with a change-list timeline that reflects which versions supported Baseline (newly available) on a given date. Thanks to @swwind for the idea!util.tsmodule for use in other scripts.process.exit()calls when unsupported option combinations are passed to getCompatibleVersions() andgetAllVersions()in favour of throwing anError. There is a small security risk withprocess.exit()calls that sites accepting unsanitised inputs could be the subject of attacks. Unsupported config options now throw and Error which should allow for more graceful handling. Thanks to @bnbdr for flagging this as vulnerability CVE-2026-45819 .Fixes #134