Repository navigation
build(deps-dev): bump the npm-minor-patch group across 1 directory with 4 updates - #53
Conversation
…th 4 updates Bumps the npm-minor-patch group with 4 updates in the / directory: [@playwright/test](https://github.com/microsoft/playwright), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [electron](https://github.com/electron/electron) and [obsidian](https://github.com/obsidianmd/obsidian-api). Updates `@playwright/test` from 1.63.0 to 1.64.0 - [Release notes](https://github.com/microsoft/playwright/releases) - [Commits](microsoft/playwright@v1.63.0...v1.64.0) Updates `@types/node` from 24.19.1 to 24.19.2 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `electron` from 43.7.7 to 43.7.9 - [Release notes](https://github.com/electron/electron/releases) - [Commits](electron/electron@v43.7.7...v43.7.9) Updates `obsidian` from 1.13.1 to 1.14.4 - [Changelog](https://github.com/obsidianmd/obsidian-api/blob/master/CHANGELOG.md) - [Commits](https://github.com/obsidianmd/obsidian-api/commits) --- updated-dependencies: - dependency-name: "@playwright/test" dependency-version: 1.64.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-patch - dependency-name: "@types/node" dependency-version: 24.19.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: electron dependency-version: 43.7.9 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm-minor-patch - dependency-name: obsidian dependency-version: 1.14.4 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm-minor-patch ... Signed-off-by: dependabot[bot] <support@github.com>
qawatake
left a comment
There was a problem hiding this comment.
Update review: npm-minor-patch group — @playwright/test 1.63.0 → 1.64.0, @types/node 24.19.1 → 24.19.2, electron 43.7.7 → 43.7.9, obsidian 1.13.1 → 1.14.4
This PR supersedes #52. Dependabot closed #52 after @dependabot rebase, once #51 and #50 had been merged. Compared with #52, this PR adds @types/node 24.19.2. The other versions and their lockfile integrities are identical to #52, so I reused the upstream evidence for them (release notes, tarball diffs, provenance, license). Everything repo-specific was redone on this head.
Final decision: Proceed
Risk assessment: Medium. Axis hit: change type. @playwright/test and obsidian are minor bumps, and Playwright 1.64.0 lists breaking changes, though none of them applies to this repo. All other axes are Low.
Review type: Approve
Release/deploy: Not required (no-release). I built the artifact at base d186448 (current main, after #51 and #50) and at head 7496642 with pnpm install --frozen-lockfile && pnpm build, then built base a second time to check determinism. main.js sha256 a1c0cbd9… and manifest.json sha256 07a565f7… are identical in all three builds. All four packages are devDependencies, and @types/node is type-only. obsidian and electron are external in esbuild.config.mjs, and check-bundled-deps reports 0 package.
Changes reviewed (2.1)
- Primary sources consulted:
@types/node: a diff of the npm tarballs 24.19.1 → 24.19.2, and the upstream commit8cbe925(DefinitelyTyped#75656).@playwright/test: v1.64.0 release notes.electron: release notes for v43.7.8 and v43.7.9, plus a diff of the npm tarballs.obsidian: the package has no CHANGELOG entries for 1.13/1.14 and no tags or releases, so I diffed the npm tarballs 1.13.1 → 1.14.4 directly. I compared them against the obsidianmd/obsidian-api commits "Update to Obsidian 1.14.4" (40301c1),06b4f1b, and9abd960.- Transitive: moment 2.31.0 release; tag messages for
@codemirror/state6.7.6 and@codemirror/view6.43.13 on code.haverbeke.berlin.
- Version range reviewed:
- @types/node: 24.19.1 → 24.19.2.
- playwright: 1.63.0 → 1.64.0.
- electron: 43.7.7 → 43.7.8 → 43.7.9.
- obsidian: 1.13.1 → 1.14.4. npm has no versions in between, but 1.13.2 exists as a git commit. I reviewed the whole tarball diff.
- Breaking / behavior changes:
- @types/node 24.19.2: the
formatparameter ofutil.styleTextnow also accepts hex colors inside the array form. This is a type-level widening plus a doc comment, and nothing else in the.d.tsfiles changed. - Playwright 1.64.0 breaking changes:
- The
screenproperty is forwarded from device descriptors. - JSX in test files follows
tsconfig.json. --update-snapshots=missingnow passes.- Elements inside hidden iframes are considered hidden.
- Deprecated: screencast
fontSize→style. - Bundled browsers are now Chromium 156, Firefox 157 and WebKit 27.2.
- The
- Electron 43.7.8: macOS sleep/wake crash fix,
webview.findInPage()fix, tzdata 2026d. Electron 43.7.9: upstream Chromium/V8/etc. backports. In the npm package, onlychecksums.jsonand the version strings changed (index.js,cli.js,install.jsare identical). - obsidian 1.14.4 (
obsidian.d.ts+3498/−728):- Large doc-comment additions.
- New settings, secret and frontmatter types;
Sideis widened. - Global augmentations
String.prototype.endsWithandObjectConstructor.hasOwnwere removed. - The return type of
DocumentFragment.findis nowHTMLElement | null. SecretComponent.onChangesignature changed.- Peer deps
@codemirror/state6.5.0 → 6.7.6 and@codemirror/view6.38.6 → 6.43.13, and depmoment2.29.4 → 2.31.0.
- Transitive packages I looked at:
moment2.31.0 fixes CVE-2026-17495 / GHSA-4p3w-j4w9-5jqw and adds bug fixes.@codemirror/*are bug-fix releases, deprecatingvisualLineSide.
- The other transitive packages (
playwright,playwright-core) move in lockstep with@playwright/test. The lockfile's package-name set is identical before and after (72 names): no package was added or removed.
- @types/node 24.19.2: the
Impact and adequacy of the PR (2.2, 2.3)
| Change | Affected location / no impact | Evidence | Is the PR adequate |
|---|---|---|---|
@types/node: styleText signature widened |
No impact | grep styleText over main.ts, scripts/, tests/ and the configs finds no use. check-toolchain confirms the @types/node major still matches Node 24 |
Yes |
PW: device screen forwarding |
No impact | playwright.config.ts imports devices but spreads no device descriptor; tests use _electron.launch only |
Yes |
| PW: JSX follows tsconfig | No impact | No .tsx/JSX under tests/ |
Yes |
PW: --update-snapshots=missing, toHaveScreenshot |
No impact | No snapshot / screenshot assertions (grep updateSnapshots|toHaveScreenshot) |
Yes |
| PW: hidden-iframe visibility | No impact | Only toBeVisible() is tests/e2e/sample.spec.ts:74 (getByText("Woah!") in the Obsidian window, not an iframe) |
Yes |
| PW: new bundled browsers / browser regressions reported for 1.64 | No impact | Tests drive Electron via _electron, not bundled browsers |
Yes |
| Electron patch fixes | e2e runtime only | scripts/setup-obsidian.sh checks the Electron major against Obsidian's bundled one; CI log: Electron 43.7.9 matches Obsidian's bundled major (43.7.7) |
Yes |
obsidian: removed endsWith/hasOwn augmentations, find return type, SecretComponent.onChange |
No impact | main.ts imports App, Editor, MarkdownView, Modal, Notice, Plugin, PluginSettingTab, Setting. Its only onChange is on a TextComponent (main.ts:140). There is no endsWith/hasOwn/.find( use in main.ts; the .find( calls in tests/e2e-setup/cleanup.ts are on arrays. tsc --noEmit passes on head. |
Yes |
obsidian peers @codemirror/*, moment |
No impact on the artifact | Listed as external in esbuild.config.mjs; main.ts does not import them; type-only via obsidian.d.ts |
Yes |
Verification (2.4)
-
CI results, and what CI does not cover: run 38998321529 on head
7496642. Its base isd186448, so jdx/mise-action v5.1.1 and actions/upload-artifact v7.0.2 were already onmain.build,e2eandtest-e2e-toolsall succeeded. I read the log bodies:pnpm installresolved the expected versions, including@types/node 24.19.2.toolchain: ok,actions-pinned: ok,config-schema: ok (biome.jsonc -> @biomejs/biome@2.5.15).pnpm audit --audit-level=high: "No known vulnerabilities found".biome check: "Checked 7 files … No fixes applied".tsc --noEmit: clean.bundled-deps: ok.- The e2e jobs ran against Obsidian v1.14.4, the same version as the new types, with
1 passedeach.
CI does not cover cold Playwright features (video, WebMCP), which this repo does not use.
-
Additional checks I did:
- Ran the local artifact diff described above (no change) and a local
pnpm typecheckon head (passes). - Diffed the tarballs for obsidian and electron.
- Verified that the electron
checksums.json(75 entries) matchesSHASUMS256.txtof the v43.7.9 GitHub release.
- Ran the local artifact diff described above (no change) and a local
Rollback, supply chain, license (2.5, 2.6, 2.7)
- Rollback: revert
package.jsonandpnpm-lock.yaml. No persistent data, schema or artifact format is involved. - Supply chain:
- Lockfile integrity: every changed
integrityinpnpm-lock.yamlmatchesdist.integrityfrom the npm registry. No entry changes its hash without changing its version. - Install scripts: none of the changed packages declares
preinstall/install/postinstall.electronhas had none in either version: it uses theinstall-electronbin. The@codemirror/*packages have onlyprepare, which does not run for registry installs. - @types/node 24.19.2:
- Published 2026-10-09 (8 days ago) by the
typesaccount, the same publisher as 24.19.1, through the DefinitelyTyped publisher. - No npm provenance, before or after, so the publish path is unchanged.
- The content matches upstream commit
8cbe925(merged PR #75656). The tarball diff touches onlyutil.d.ts(+7/−4),package.json(version and content hash) andREADME.md. - No install scripts. Dependencies are unchanged (
undici-types >=7.24.0 <7.24.7).
- Published 2026-10-09 (8 days ago) by the
- @playwright/test, playwright, playwright-core 1.64.0: published via npm trusted publishing with provenance from
microsoft/playwright,.github/workflows/publish_release.yml,refs/tags/v1.64.0, commit606ecd8b. That commit matches tagv1.64.0. The publish path (repo, workflow, publisher) is the same as 1.63.0. Published 2026-10-07 (10 days ago). - electron 43.7.9: published by
electron-nightly, the same publisher as 43.7.7. It has no provenance, and neither did 43.7.7. Tagv43.7.9is annotated: after dereferencing it points to commitc41115bb, released bysudowoodo-release-bot[bot]. The binary download is pinned bychecksums.json, which matches the GitHub release. Published 2026-10-07. - obsidian 1.14.4: published by
lishid, the same publisher as 1.13.1. It has no provenance, and neither did 1.13.1. The upstream repo has never had tags or releases, so the "tag exists" check cannot be met for any version of this package. I compensated with a content check:- The 1.13.1 tarball's
obsidian.d.tsis byte-identical to upstream commit28a6b86("Release v1.13.1"). - The 1.14.4 tarball's
obsidian.d.tsdiffers from upstreammaster(9abd960) only in 5 doc-comment lines ("sidedock" vs "sidebar"). - The tarball contains only
.d.ts,.md,LICENSE.mdandpackage.json: no executable code. It also drops anundo.patchfile that 1.13.1 shipped. - Published 2026-10-08 (9 days ago).
- The 1.13.1 tarball's
- moment 2.31.0 (transitive): the publish path improved from a manual publish (2.29.4) to trusted publishing with provenance from
moment/momentrelease.ymlatrefs/tags/2.31.0(commit15b45d4= tag). - @codemirror/state 6.7.6 / @codemirror/view 6.43.13 (transitive):
- The
repositoryfield changed from github.com/codemirror/* to code.haverbeke.berlin/codemirror/*. The move took effect in npm metadata from view 6.42.0 (2026-05) and is announced publicly: the GitHub repos are archived with "This repository has moved to https://code.haverbeke.berlin/…" in the README. - The publisher (
marijn) is unchanged, and tags6.7.6/6.43.13exist on the new forge. - Both packages are used for types only here.
- The
- Lockfile integrity: every changed
- License:
- Unchanged for all four direct dependencies:
@types/nodeMIT → MIT,@playwright/testApache-2.0 → Apache-2.0,electronMIT → MIT,obsidianMIT → MIT. - Transitive packages:
momentMIT and@codemirror/*MIT, both unchanged. - No packages were added and no majors were bumped.
- Unchanged for all four direct dependencies:
Blocking conditions
- Hit: none.
Requests
- None.
Unverified items / notes for other reviewers (2.9)
- 2.8 (minimal change): this group bundles four unrelated dev-only packages. I accepted it because of the repo's deliberate
npm-minor-patchgrouping for development dependencies. The artifact is unchanged, so a revert of the whole PR is cheap. Any regression would show up in typecheck or e2e, and both are green. obsidianis declared as"latest"inpackage.json, so this group will keep picking up Obsidian type updates without a version cap. This was already the case before this PR and is not a blocker for it. I raise it only so someone can decide whether to pin it.- Known constraint:
obsidianhas neither provenance nor tags upstream (see above). I relied on the content comparison against upstreammaster, not on a tag. - The
pnpm-workspace.yamlcomment says electron "Downloads the Electron binary in its postinstall", but neither 43.7.7 nor 43.7.9 declares a postinstall script. The comment is stale. This is pre-existing and not caused by this PR.
Bumps the npm-minor-patch group with 4 updates in the / directory: @playwright/test, @types/node, electron and obsidian.
Updates
@playwright/testfrom 1.63.0 to 1.64.0Release notes
Sourced from @playwright/test's releases.
... (truncated)
Commits
606ecd8cherry-pick(#43192): fix(locators): parse locators the way the client API bui...e4f872ccherry-pick(#43188): feat(api): expose asLocatorDescription via LocalUtils fo...f6a439echerry-pick(#43189): docs(webmcp): expose WebMCP to all languagese2335c3cherry-pick(#43174): fix(mcp): do not close the browser twice when the client...d2a436echerry-pick(#43163): Revert "fix(blob): do not remove existing reports from o...a0c4b5echerry-pick(#43175): feat(api): return language-specific locator code from re...3f7d535cherry-pick(#43131): docs: fix broken C# samples in API docs and handles guide1cde64fcherry-pick(#43170): fix(locators): parse mixed role options8851e72cherry-pick(#43171): fix(locators): parse JavaScript escapes and regex classesdcc5065cherry-pick(#43172): fix(locator): parse within and getByRef locatorsUpdates
@types/nodefrom 24.19.1 to 24.19.2Commits
Updates
electronfrom 43.7.7 to 43.7.9Release notes
Sourced from electron's releases.
Commits
c41115bchore: cherry-pick 47 changes from angle, chromium, dawn, fontconfig, skia, v...e546ddetest: add mouse-input addon for setIgnoreMouseEvents specs (#54606)b2a89a1chore: cherry-pick 9 changes from angle, chromium, skia, v8 and webrtc (#54658)e23db61fix: update ICU time zone data to tzdata 2026d (#54622)83a7520build: update PGO profiles (#54640)0b605a8chore: cherry-pick 69403d85b78b from chromium (#54597)f5e30a9fix: webview findInPage() hang when the embedder page has an iframe (#54584)Updates
obsidianfrom 1.13.1 to 1.14.4Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore <dependency name> major versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)@dependabot ignore <dependency name> minor versionwill close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)@dependabot ignore <dependency name>will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)@dependabot unignore <dependency name>will remove all of the ignore conditions of the specified dependency@dependabot unignore <dependency name> <ignore condition>will remove the ignore condition of the specified dependency and ignore conditions