From 6be335bb8a2fa39e8c53530c089585f92b41ca86 Mon Sep 17 00:00:00 2001 From: PhilflowIO Date: Fri, 14 Aug 2026 21:46:50 +0200 Subject: [PATCH 1/4] style: apply prettier to the last lint holdouts `pnpm lint` has been red for some time with auto-fixable prettier errors. It went unnoticed because ci.yml, which runs lint, only triggers on pull requests to `main` while the default branch is `master`, and release.yml has its lint step commented out -- so nothing ever ran it. Whitespace only, produced by `pnpm lint --fix`. No behaviour change, though the non-minified bundles pick up the reformatting, hence the version bump. --- dist/index.d.ts | 2 +- dist/package.json | 2 +- dist/tsdav.cjs | 5 +---- dist/tsdav.cjs.js | 5 +---- dist/tsdav.esm.js | 5 +---- dist/tsdav.js | 5 +---- dist/tsdav.mjs | 5 +---- package.json | 2 +- src/addressBook.ts | 5 +---- src/client.ts | 4 +--- src/index.ts | 9 +-------- src/todo.ts | 5 +---- 12 files changed, 12 insertions(+), 42 deletions(-) diff --git a/dist/index.d.ts b/dist/index.d.ts index f95c9d17..e1e9925b 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -9,7 +9,7 @@ export { davRequest, propfind, createObject, updateObject, deleteObject } from ' export { collectionQuery, supportedReportSet, isCollectionDirty, syncCollection, smartCollectionSync, } from './collection'; export { calendarQuery, calendarMultiGet, makeCalendar, fetchCalendars, fetchCalendarUserAddresses, fetchCalendarObjects, createCalendarObject, updateCalendarObject, deleteCalendarObject, syncCalendars, freeBusyQuery, } from './calendar'; export { addressBookQuery, addressBookMultiGet, fetchAddressBooks, fetchVCards, createVCard, updateVCard, deleteVCard, makeAddressBook, } from './addressBook'; -export { todoQuery, todoMultiGet, fetchTodos, createTodo, updateTodo, deleteTodo, } from './todo'; +export { todoQuery, todoMultiGet, fetchTodos, createTodo, updateTodo, deleteTodo } from './todo'; export { getBasicAuthHeaders, getBearerAuthHeaders, getOauthHeaders, fetchOauthTokens, refreshAccessToken, } from './util/authHelpers'; export { urlContains, urlEquals, getDAVAttribute, cleanupFalsy } from './util/requestHelpers'; export { DAVNamespace, DAVAttributeMap, DAVNamespaceShort } from './consts'; diff --git a/dist/package.json b/dist/package.json index 8c867c3c..77fd6974 100644 --- a/dist/package.json +++ b/dist/package.json @@ -1,6 +1,6 @@ { "name": "tsdav", - "version": "2.3.3", + "version": "2.3.4", "description": "WebDAV, CALDAV, and CARDDAV client for Nodejs and the Browser", "keywords": [ "dav", diff --git a/dist/tsdav.cjs b/dist/tsdav.cjs index 3eab1378..2ac73915 100644 --- a/dist/tsdav.cjs +++ b/dist/tsdav.cjs @@ -823,10 +823,7 @@ const makeAddressBook = async (params) => { body: props ? { mkcol: { - _attributes: getDAVAttribute([ - exports.DAVNamespace.DAV, - exports.DAVNamespace.CARDDAV, - ]), + _attributes: getDAVAttribute([exports.DAVNamespace.DAV, exports.DAVNamespace.CARDDAV]), set: { prop: props, }, diff --git a/dist/tsdav.cjs.js b/dist/tsdav.cjs.js index 3eab1378..2ac73915 100644 --- a/dist/tsdav.cjs.js +++ b/dist/tsdav.cjs.js @@ -823,10 +823,7 @@ const makeAddressBook = async (params) => { body: props ? { mkcol: { - _attributes: getDAVAttribute([ - exports.DAVNamespace.DAV, - exports.DAVNamespace.CARDDAV, - ]), + _attributes: getDAVAttribute([exports.DAVNamespace.DAV, exports.DAVNamespace.CARDDAV]), set: { prop: props, }, diff --git a/dist/tsdav.esm.js b/dist/tsdav.esm.js index fe4cb9e5..448aeed0 100644 --- a/dist/tsdav.esm.js +++ b/dist/tsdav.esm.js @@ -819,10 +819,7 @@ const makeAddressBook = async (params) => { body: props ? { mkcol: { - _attributes: getDAVAttribute([ - DAVNamespace.DAV, - DAVNamespace.CARDDAV, - ]), + _attributes: getDAVAttribute([DAVNamespace.DAV, DAVNamespace.CARDDAV]), set: { prop: props, }, diff --git a/dist/tsdav.js b/dist/tsdav.js index 71331e30..c7df9c37 100644 --- a/dist/tsdav.js +++ b/dist/tsdav.js @@ -10013,10 +10013,7 @@ const makeAddressBook = async (params) => { body: props ? { mkcol: { - _attributes: getDAVAttribute([ - DAVNamespace.DAV, - DAVNamespace.CARDDAV, - ]), + _attributes: getDAVAttribute([DAVNamespace.DAV, DAVNamespace.CARDDAV]), set: { prop: props, }, diff --git a/dist/tsdav.mjs b/dist/tsdav.mjs index fe4cb9e5..448aeed0 100644 --- a/dist/tsdav.mjs +++ b/dist/tsdav.mjs @@ -819,10 +819,7 @@ const makeAddressBook = async (params) => { body: props ? { mkcol: { - _attributes: getDAVAttribute([ - DAVNamespace.DAV, - DAVNamespace.CARDDAV, - ]), + _attributes: getDAVAttribute([DAVNamespace.DAV, DAVNamespace.CARDDAV]), set: { prop: props, }, diff --git a/package.json b/package.json index 8c867c3c..77fd6974 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tsdav", - "version": "2.3.3", + "version": "2.3.4", "description": "WebDAV, CALDAV, and CARDDAV client for Nodejs and the Browser", "keywords": [ "dav", diff --git a/src/addressBook.ts b/src/addressBook.ts index de1524a3..d37a45e2 100644 --- a/src/addressBook.ts +++ b/src/addressBook.ts @@ -352,10 +352,7 @@ export const makeAddressBook = async (params: { body: props ? { mkcol: { - _attributes: getDAVAttribute([ - DAVNamespace.DAV, - DAVNamespace.CARDDAV, - ]), + _attributes: getDAVAttribute([DAVNamespace.DAV, DAVNamespace.CARDDAV]), set: { prop: props, }, diff --git a/src/client.ts b/src/client.ts index 6cec2299..d46e8a4a 100644 --- a/src/client.ts +++ b/src/client.ts @@ -706,9 +706,7 @@ export class DAVClient { })(params[0]); } - async makeAddressBook( - ...params: Parameters - ): Promise { + async makeAddressBook(...params: Parameters): Promise { return defaultParam(rawMakeAddressBook, { headers: this.authHeaders, fetchOptions: this.fetchOptions, diff --git a/src/index.ts b/src/index.ts index 22591779..98e37367 100644 --- a/src/index.ts +++ b/src/index.ts @@ -60,14 +60,7 @@ export { makeAddressBook, } from './addressBook'; -export { - todoQuery, - todoMultiGet, - fetchTodos, - createTodo, - updateTodo, - deleteTodo, -} from './todo'; +export { todoQuery, todoMultiGet, fetchTodos, createTodo, updateTodo, deleteTodo } from './todo'; export { getBasicAuthHeaders, diff --git a/src/todo.ts b/src/todo.ts index b1c9e418..ba56fe43 100644 --- a/src/todo.ts +++ b/src/todo.ts @@ -202,10 +202,7 @@ export const fetchTodos = async (params: { throw new Error('cannot fetchTodos for undefined calendar'); } throw new Error( - `calendar must have ${findMissingFieldNames( - calendar, - requiredFields, - )} before fetchTodos`, + `calendar must have ${findMissingFieldNames(calendar, requiredFields)} before fetchTodos`, ); } From dc21540ed161c6ac75c466df43ff4544519e7e8c Mon Sep 17 00:00:00 2001 From: PhilflowIO Date: Fri, 14 Aug 2026 21:47:06 +0200 Subject: [PATCH 2/4] chore(hooks): drop deprecated husky v8 preamble husky 9 printed a DEPRECATED warning on every single commit and states these two lines will fail outright on v10. Hooks are invoked directly by husky 9, so the shebang and the `_/husky.sh` source are both redundant. Verified by committing with it removed: the hook still runs every check and the warning is gone. --- .husky/pre-commit | 3 --- 1 file changed, 3 deletions(-) diff --git a/.husky/pre-commit b/.husky/pre-commit index 3ddca96d..e4222778 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,6 +1,3 @@ -#!/usr/bin/env sh -. "$(dirname -- "$0")/_/husky.sh" - echo "🔍 Running pre-commit checks..." # Get list of staged files From c40a64c30a283e06178c1fb7b9499551b6d1bdde Mon Sep 17 00:00:00 2001 From: PhilflowIO Date: Fri, 14 Aug 2026 21:47:06 +0200 Subject: [PATCH 3/4] ci: run CI on pull requests to master ci.yml triggered only on pull requests to `main`, but the default branch is `master` and no `main` exists -- so typecheck, lint and test have never run on any pull request. quality-checks.yml already targets both branches; this matches it. --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 304b8248..567c3ba6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,7 +3,7 @@ name: CI on: pull_request: types: ['opened', 'synchronize'] - branches: [main] + branches: [master, main] jobs: automated-test: From d12571963b64e3bacd183024140585164020342f Mon Sep 17 00:00:00 2001 From: PhilflowIO Date: Fri, 14 Aug 2026 21:47:06 +0200 Subject: [PATCH 4/4] ci: re-enable lint in the release workflow Commented out at some point and never restored, which is half the reason lint rot went unnoticed. `pnpm lint` is clean again as of the preceding commit, so the step passes. --- .github/workflows/release.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c1f49128..e4041224 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -39,8 +39,8 @@ jobs: - name: check types run: pnpm typecheck - # - name: lint - # run: pnpm lint + - name: lint + run: pnpm lint - name: test run: pnpm test