Commit Graph

2892 Commits

Author SHA1 Message Date
renovate[bot]
b5a7f68502 fix(deps): update dependency @fortawesome/vue-fontawesome to v3.3.1 2026-07-13 07:48:32 +00:00
Tink
4425e0d146 fix(attachments): keep blob mime type so pdf previews open inline (#3157) 2026-07-11 18:53:09 +02:00
renovate[bot]
8b4cda2203 chore(deps): update dev-dependencies 2026-07-11 12:21:26 +00:00
renovate[bot]
b6f6ac354a fix(deps): update dependency @sentry/vue to v10.64.0 2026-07-10 19:13:00 +00:00
renovate[bot]
e992ed594c fix(deps): update tiptap to v3.27.3 2026-07-10 12:52:48 +00:00
renovate[bot]
c5f4dde4da chore(deps): update dev-dependencies 2026-07-10 12:52:27 +00:00
renovate[bot]
115e30377c fix(deps): update tiptap to v3.27.2 2026-07-09 11:56:03 +00:00
renovate[bot]
10d780f5cd chore(deps): update pnpm to v11.10.0 2026-07-08 07:32:05 +00:00
Frederick [Bot]
c529ca0fc3 chore(i18n): update translations via Crowdin 2026-07-08 00:23:08 +00:00
Tink
d83e90541c feat(tasks): soft-delete tasks with permanent deletion after 30 days (#3119) 2026-07-07 11:38:33 +02:00
taiwithers
d8b4b49016 fix: use correct label for imported tasks 'project'
Changes the label in the dropdown menu for column mapping CSV task
imports from "Title" to "Project"
2026-07-06 20:19:39 +00:00
kolaente
167556ce2b feat(search): add explicit relevance sort field
sort_by=relevance renders as pdb.score(tasks.id) DESC at its requested
position, so clients can express orderings like done,relevance (undone
first, most relevant within each group). The implicit no-sort ranking
reuses the same mechanism via an injected sort param.

When the database or query shape cannot score, relevance params are
dropped and the remaining sorts plus the id tiebreaker apply, so the
field is safe to send unconditionally; getOrderByDBStatement also only
emits pdb.score when ParadeDB is actually available.

The quick-actions search sends sort_by=done,relevance (typed via
TaskFilterParams) and keeps surfacing undone tasks first.
2026-07-06 15:45:55 +00:00
kolaente
e24ec07293 feat(search): rank ParadeDB search results by relevance
Searching with ParadeDB returns fuzzy/OR matches in id order, so a task
matching all query words can sink below tasks matching only one. When a
search term is present and the client sends no explicit sort, order the
results by pdb.score(tasks.id), keeping the stable id tiebreak.

Numeric #id searches and the Favorites view keep the default order since
pdb.score rejects those query shapes. On the all-projects scope the
favorites arm is dropped when every favorited task already lies inside
the project scope, so global search stays ranked for users with
favorites; out-of-scope favorites fall back to the unranked order.

The frontend omits sort_by while searching in project views unless the
user explicitly picked a sort, so the backend ranking engages.
2026-07-06 15:45:55 +00:00
renovate[bot]
7f241b6951 chore(deps): lock file maintenance 2026-07-06 14:21:47 +00:00
renovate[bot]
66ec7fa23a fix(deps): update dependency @sentry/vue to v10.63.0 2026-07-05 08:35:12 +00:00
renovate[bot]
6cd0c264d9 chore(deps): update dev-dependencies 2026-07-05 08:34:23 +00:00
kolaente
848392e373 chore(deps): migrate rollup override to pnpm catalog
pnpm 11 deprecated the $name reference syntax in overrides; the
catalog keeps the version defined in a single place.
2026-07-05 10:30:43 +02:00
Frederick [Bot]
aa455a8984 chore(i18n): update translations via Crowdin 2026-07-04 00:25:39 +00:00
kolaente
5800f323a4 feat(editor): add focus style around the whole editor 2026-07-03 22:15:50 +02:00
Takács-Tolnai Dávid
323656ddc8 feat(frontend): preload assignee list on click with current user first (#2704) 2026-07-03 20:19:29 +02:00
renovate[bot]
80e54244f7 chore(deps): update dependency serialize-javascript to v7.0.7 2026-07-03 11:22:31 +00:00
renovate[bot]
9bd014b27f chore(deps): update dependency markdown-it to v14.3.0 2026-07-03 11:19:19 +00:00
renovate[bot]
b81aa69d04 chore(deps): update dev-dependencies 2026-07-03 11:18:41 +00:00
renovate[bot]
278254d9a0 chore(deps): update dependency js-yaml@4 to v5.2.1 2026-07-03 11:13:38 +00:00
kolaente
568b367164 fix: embed frontend assets with names starting with _ or .
The Rolldown-based vite 8 emits plugin-vue's export helper as its own
chunk named _plugin-vue_export-helper-<hash>.js. go:embed excludes
files starting with _ or . unless the all: prefix is used, so the chunk
was missing from the binary and the static handler served index.html in
its place, breaking the frontend entirely.

Fixes #3093
2026-07-03 08:22:20 +00:00
renovate[bot]
80127d9e13 chore(deps): lock file maintenance 2026-07-03 07:48:11 +00:00
kolaente
f4904998ea fix(deps): upgrade to pnpm 11 and migrate config to pnpm-workspace.yaml
pnpm 11 no longer reads the `pnpm` field from package.json, renamed
`onlyBuiltDependencies` to `allowBuilds`, and defaults `strictDepBuilds`
to true. It also reads non-auth/registry settings (like
`public-hoist-pattern`) from pnpm-workspace.yaml rather than .npmrc.

This does what renovate PR #3069 could not: alongside the version bump
it moves the build/override/hoist config for both pnpm projects
(frontend/ and desktop/) into a per-project pnpm-workspace.yaml, so the
settings are actually honored under pnpm 11 instead of being silently
ignored (which made #3069 hard-fail with ERR_PNPM_IGNORED_BUILDS).

- frontend/desktop package.json: drop `pnpm` field, bump packageManager
  to pnpm@11.9.0
- frontend/pnpm-workspace.yaml: allowBuilds + overrides + publicHoistPattern
- desktop/pnpm-workspace.yaml: allowBuilds + overrides
- frontend/.npmrc removed (its only setting moved to publicHoistPattern)
- mise.toml: pnpm 10.34.4 -> 11.9.0

electron-winstaller is a transitive build script that was never in the
old onlyBuiltDependencies, so it was ignored under pnpm 10; it is
explicitly denied (allowBuilds: false) to keep behavior identical while
satisfying strictDepBuilds.

Claude-Session: https://claude.ai/code/session_01AHD9BmNcUfgBZdPveZRa8z
2026-07-03 06:54:50 +00:00
renovate[bot]
7d8dfe9272 fix(deps): update dependency vue-router to v5 2026-07-03 06:34:11 +00:00
Frederick [Bot]
5907d8a3ec chore(i18n): update translations via Crowdin 2026-07-03 00:26:45 +00:00
renovate[bot]
1d96ce9d05 chore(deps): update dev-dependencies 2026-07-02 19:02:40 +00:00
kolaente
756da5c455 chore(deps): update vite to v8
Bumps vite 7.3.6 -> 8.1.0 (Rolldown-based), split out of the bundled
renovate PR #3046.

Rolldown does not elide a type-only import that is referenced purely as
a type, so `RouteLocationRaw` in Notifications.vue must be imported with
`type` to keep it out of the runtime bundle.

vite 8 is not coupled to the other major bumps: vitest 4 and all vite
plugins already accept vite ^8, and @sentry/vite-plugin declares no vite
peer dependency.

Claude-Session: https://claude.ai/code/session_01AHD9BmNcUfgBZdPveZRa8z
2026-07-02 18:04:45 +00:00
Tink
d0dccf2736 feat(pro): admin password reset for existing users (#3085) 2026-07-02 19:39:00 +02:00
kolaente
c1f0b2c81f chore(deps): update typescript to v6
Bump typescript from 5.9.3 to 6.0.3.

TS 6 changes that required source fixes:
- baseUrl is deprecated and now a hard error (TS5101). Dropped the unused
  baseUrl from tsconfig.app.json; the @/* paths are relative and resolve
  without it (tsconfig.vitest.json inherits this).
- vite.config.ts referenced ImportMetaEnv for getSentryConfig's parameter,
  but it is only ever called with loadEnv()'s Record<string, string>. Typed
  the parameter accordingly, matching its caller and the other config helpers.

Claude-Session: https://claude.ai/code/session_01AHD9BmNcUfgBZdPveZRa8z
2026-07-02 16:27:58 +00:00
renovate[bot]
606b23784f chore(deps): update dev-dependencies 2026-07-02 10:44:06 +00:00
renovate[bot]
3801bff4f9 fix(deps): update dependency marked to v18 2026-07-02 09:02:45 +00:00
renovate[bot]
f78543c880 chore(deps): update dependency postcss to v8.5.16 2026-07-02 08:03:51 +00:00
kolaente
c689887fca chore(deps): update low-risk dev-dependency majors
Bumps independent dev-dependency majors split out of the bundled
renovate PR #3046:

- otplib 12.0.1 -> 13.4.1 (v13 is a rewrite: the `authenticator`
  singleton was removed in favour of the functional API; the only
  consumer is the TOTP e2e test, migrated to `await generate({secret})`)
- rollup-plugin-visualizer 6.0.11 -> 7.0.1
- stylelint-config-property-sort-order-smacss 10.0.0 -> 11.2.0
- @sentry/vite-plugin 3.6.1 -> 5.3.0 (no peer-dep coupling to vite)

Claude-Session: https://claude.ai/code/session_01AHD9BmNcUfgBZdPveZRa8z
2026-07-02 06:30:02 +00:00
kolaente
1c142e701e chore(deps): update eslint to v10
Bumps eslint 9.39.4 -> 10.6.0, split out of the bundled renovate
PR #3046. eslint 10 no longer ships `@eslint/js` transitively, so it is
added as a direct devDependency (the flat config imports it for
`js.configs.recommended`).

eslint 10's expanded recommended set flags ten new errors, fixed here:

no-useless-assignment (dead initializer overwritten before any read):
- FilterAutocomplete.ts, UserTeam.vue, helpers/filters.ts,
  parseSubtasksViaIndention.ts, models/notification.ts,
  quickAddMagic/dateParser.ts (x2), quickAddMagic/repeatParser.ts

preserve-caught-error:
- stores/auth.ts verifyEmail() now attaches the caught error as `cause`
- stores/auth.ts refreshUserInfo() keeps its existing `{e, message}`
  cause shape (read by message/index.ts as `cause.message`); the rule
  is disabled inline there since changing the shape is a behaviour change

Claude-Session: https://claude.ai/code/session_01AHD9BmNcUfgBZdPveZRa8z
2026-07-01 12:00:08 +00:00
renovate[bot]
631825a93b chore(deps): update dependency stylelint to v17.14.0 2026-06-30 18:11:36 +00:00
Aldo Miranda-Aguilar
8878a5ea97 feat(task): move new comment form to match sort order (#2789) 2026-06-30 19:30:32 +02:00
renovate[bot]
5d368b849a fix(deps): update vueuse to v14.3.0 2026-06-29 22:08:01 +00:00
renovate[bot]
8f68b3f396 fix(deps): update font awesome 2026-06-29 17:55:47 +00:00
renovate[bot]
01a851ca72 fix(deps): update dependency vue-i18n to v11.4.6 2026-06-29 16:58:17 +00:00
renovate[bot]
65a498dd50 fix(deps): update dependency @sentry/vue to v10.62.0 2026-06-29 16:57:00 +00:00
renovate[bot]
bb0055293b chore(deps): update pnpm to v10.34.4 2026-06-29 16:14:58 +00:00
renovate[bot]
d2fcd2efa5 fix(deps): update dependency axios to v1.18.1 2026-06-29 15:22:25 +00:00
renovate[bot]
07c872eb2b fix(deps): update dependency vue to v3.5.39 2026-06-29 15:22:17 +00:00
renovate[bot]
b866ba3f58 fix(deps): update dependency @intlify/unplugin-vue-i18n to v11.2.4 2026-06-29 08:16:56 +02:00
renovate[bot]
b0bbfa677a chore(deps): update playwright to v1.61.1 2026-06-29 08:16:15 +02:00
renovate[bot]
82f03d94b6 chore(deps): update node.js to v24.18.0 2026-06-29 08:15:34 +02:00