Skip to content

Update npm dependencies to latest#53

Merged
gtritchie merged 1 commit into
mainfrom
update-npm-dependencies
May 30, 2026
Merged

Update npm dependencies to latest#53
gtritchie merged 1 commit into
mainfrom
update-npm-dependencies

Conversation

@gtritchie

Copy link
Copy Markdown
Owner

Updates all devDependencies to their latest versions, with one held back, and adapts the source to the two major bumps (TypeScript 6, Obsidian 1.13.0 typings).

Version changes

Package From To
@types/node 25.5.0 25.9.1
esbuild 0.27.5 0.28.0
jiti 2.6.1 2.7.0
obsidian 1.12.3 1.13.0
typescript 5.8.3 6.0.3
typescript-eslint 8.58.0 8.60.0
@eslint/js 9.39.4 held

@eslint/js stays on 9.x because eslint-plugin-obsidianmd@0.3.0 peer-pins @eslint/js: "^9.30.1"; moving to the ESLint 10 ecosystem would break that peer dependency.

Source changes required by the major bumps

  • tsconfig: TypeScript 6 turns baseUrl and moduleResolution: "node" (node10) into hard errors. Removed the unused baseUrl (all imports are relative) and switched moduleResolution to "bundler", which matches the esbuild/ESNext setup.
  • main.ts: Obsidian 1.13.0 adds Plugin.settings?: unknown as a base member. Changed settings!: to declare settings: to refine the inherited type, per the typings' own guidance.
  • settings.ts: PluginSettingTab.display() now requires an override modifier. Internal re-renders route through a new rerender() helper holding a single justified @typescript-eslint/no-deprecated suppression; the imperative settings API remains fully supported and is retained intentionally.
  • confirm-modal.ts / remove-selection-property.ts: kept setWarning() (with a justified suppression) rather than setDestructive(), which would require raising minAppVersion from 1.8.7 to 1.13.0.

minAppVersion is unchanged at 1.8.7.

Verification

  • npm run build (tsc type-check + esbuild production) passes
  • npm run lint exits clean
  • npm install reports 0 vulnerabilities
  • Manual smoke test in Obsidian: settings add/remove re-render, settings persistence, warning buttons, and an end-to-end bulk edit all work

…pings

- Bump @types/node, esbuild, jiti, obsidian, typescript (6.0),
  and typescript-eslint to latest
- Hold @eslint/js at 9.x: eslint-plugin-obsidianmd peer-pins ^9.30.1
- tsconfig: drop unused baseUrl and switch moduleResolution to bundler
  (both deprecated as errors in TS 6.0)
- main.ts: declare settings to refine Plugin.settings (new in 1.13.0)
- settings.ts: add override to display(); centralise the still-supported
  imperative re-render behind rerender() with one deprecation suppression
- Keep setWarning() over setDestructive() to avoid raising minAppVersion
  from 1.8.7 to 1.13.0
@gtritchie gtritchie merged commit 62790c8 into main May 30, 2026
4 checks passed
@gtritchie gtritchie deleted the update-npm-dependencies branch May 30, 2026 01:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant