Commit Graph

9118 Commits

Author SHA1 Message Date
renovate 43b0689c1a chore(deps): update dev-dependencies
continuous-integration/drone/push Build is passing Details
2024-03-05 07:21:24 +00:00
renovate 48d1937bd4 fix(deps): update module golang.org/x/oauth2 to v0.18.0
continuous-integration/drone/push Build is failing Details
2024-03-05 07:21:02 +00:00
renovate 3e5d55d9e8 fix(deps): update dependency vue-flatpickr-component to v11.0.5
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is failing Details
2024-03-05 05:06:23 +00:00
waza-ari a3154e805c fix(auth): use (issuer, name) to check for uniqueness of oidc teams (#2152)
continuous-integration/drone/push Build is passing Details
The change introduced in #2150 introduces a bug where a Team would be re-created every time a user logs in, as the check if a team already exists was based on both the unique `oidcID` and the `name`. This PR proposes to only base the check on the ID, as this should be unique.

Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: #2152
Reviewed-by: konrad <k@knt.li>
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
2024-03-04 20:26:45 +00:00
renovate 2414b580c1 fix(deps): update module golang.org/x/crypto to v0.21.0
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is failing Details
2024-03-04 19:06:31 +00:00
renovate 87ac9e261f fix(deps): update module golang.org/x/term to v0.18.0
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-03-04 18:06:30 +00:00
renovate 63e9f8f682 fix(deps): update module github.com/arran4/golang-ical to v0.2.7
continuous-integration/drone/push Build is passing Details
2024-03-04 16:37:53 +00:00
renovate 5a9de579cc fix(deps): update module golang.org/x/sys to v0.18.0
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is failing Details
2024-03-04 16:05:48 +00:00
renovate 42e660c3d6 fix(deps): update dependency vue-i18n to v9.10.1
continuous-integration/drone/push Build is passing Details
2024-03-04 11:27:12 +00:00
renovate 6533e75496 fix(deps): update module github.com/stretchr/testify to v1.9.0
continuous-integration/drone/push Build is failing Details
2024-03-04 11:27:09 +00:00
renovate f8c5e314df fix(deps): update sentry-javascript monorepo to v7.105.0
continuous-integration/drone/push Build is passing Details
2024-03-04 10:14:01 +00:00
renovate 429b140cad chore(deps): update dependency vue-tsc to v2
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-03-04 05:07:03 +00:00
renovate dc7ee851ec chore(deps): update dev-dependencies
continuous-integration/drone/push Build is passing Details
2024-03-03 22:31:33 +00:00
waza-ari 92d9c31101 docs: improve OpenID documentation (#2151)
continuous-integration/drone/push Build is passing Details
This PR stems from issue #2150, in turn following up on PR #1393

It adds additional details around the OIDC authentication feature, as well as details about how the team assignment works.

Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: #2151
Reviewed-by: konrad <k@knt.li>
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
2024-03-03 22:19:16 +00:00
kolaente ac8751e1be
fix(task): move done tasks to the done bucket when they are moved between projects and the new project has a done bucket
continuous-integration/drone/push Build is passing Details
2024-03-03 18:13:47 +01:00
kolaente f5b90517c4
fix(sentry): send unwrapped error to sentry instead of http error
continuous-integration/drone/push Build is passing Details
2024-03-03 17:36:57 +01:00
kolaente fe27dd59ad
feat(subscription): use a recursive cte to fetch subscriptions of parent projects
continuous-integration/drone/push Build is passing Details
Testing this locally resulted in improved response times from ~50ms to ~20ms when creating a project. It looks like even though the code running these sql queries uses different go routines, they affect each other (caused by IO or context switching?)
2024-03-03 15:34:18 +01:00
kolaente 22933dac4a
fix(project): typo in table name
continuous-integration/drone/push Build is passing Details
2024-03-03 12:47:00 +01:00
kolaente fe02f4da2c
fix(project): check for project nesting cycles with a single recursive cte instead of a loop
continuous-integration/drone/push Build is failing Details
2024-03-03 11:40:43 +01:00
Frederick [Bot] 4bb09b69be [skip ci] Updated swagger docs 2024-03-02 14:50:56 +00:00
kolaente 379b0b24b3
fix(auth): test assertion
continuous-integration/drone/push Build is passing Details
2024-03-02 15:38:01 +01:00
kolaente 6db8728420
docs: add missing front matter
continuous-integration/drone/push Build is failing Details
2024-03-02 15:34:59 +01:00
kolaente a34ca20c1a
fix(teams): use the same color for border between teams in list
continuous-integration/drone/push Build is failing Details
2024-03-02 15:31:54 +01:00
kolaente a4a0ea973a
feat(auth): update team name in Vikunja when it was changed in the openid provider
continuous-integration/drone/push Build is failing Details
2024-03-02 15:27:15 +01:00
kolaente fc4303a778
chore(auth): add oidc suffix to openid team name in db
Related to #2150
2024-03-02 15:23:19 +01:00
kolaente 4f1f96f1e9
chore(auth): refactor openid team creation 2024-03-02 15:22:37 +01:00
kolaente 10ff864e0c
fix(projects): load projects only one when fetching subscriptions for a bunch of projects at once
continuous-integration/drone/push Build is passing Details
This change ensures already loaded projects are passed down when fetching their subscription  instead of re-loading each project with a single sql statement. When loading all projects, this meant all projects were loaded twice, which was highly inefficient. This roughly added 25ms to each request, assuming the per page limit was maxed out at 50 projects.

Empirical testing shows this change reduces load times by ~20ms. Because the request is already pretty fast, this is ~30% of the overall request time, making the loading of projects now even faster
2024-03-02 14:27:11 +01:00
kolaente 89b01e86bc
fix(projects): load all projects when first opening Vikunja 2024-03-02 13:43:04 +01:00
kolaente a3932a0a19
fix(projects): return correct project pagination count 2024-03-02 13:30:34 +01:00
kolaente e42a605597
fix: add root ca to final docker image
continuous-integration/drone/push Build is passing Details
Since Vikunja's docker image is now based on the scratch image, the root ca certificates are not included by default anymore. This meant Vikunja could not check if the certificate presented by a remote host was valid, thus failing the connection. This meant it was impossible to use features communicating with external hosts such as webhooks, openid auth or gravatar.
2024-03-02 11:48:14 +01:00
kolaente 67f55510bf
feat: nest api token permissions under their parents
continuous-integration/drone/push Build is passing Details
This change removes the "select all" first checkbox of api token permissions and replaces it with the title instead.

Resolves #2148
2024-03-02 11:28:46 +01:00
kolaente 178cd8c392
fix: open external migration service in current tab
continuous-integration/drone/push Build is failing Details
2024-03-02 11:22:03 +01:00
viehlieb ed4da96ab1 feat: assign users to teams via OIDC claims (#1393)
continuous-integration/drone/push Build is passing Details
This change adds the ability to sync teams via a custom openid claim. Vikunja will automatically create and delete teams as necessary, it will also add and remove users when they log in. These teams are fully managed by Vikunja and cannot be updated by a user.

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: #1393
Resolves #1279
Resolves https://github.com/go-vikunja/vikunja/issues/42
Resolves #950
Co-authored-by: viehlieb <pf@pragma-shift.net>
Co-committed-by: viehlieb <pf@pragma-shift.net>
2024-03-02 08:47:10 +00:00
kolaente f18cde269b
chore: remove unused docker entrypoint script
continuous-integration/drone/push Build is failing Details
2024-03-01 11:47:29 +01:00
kolaente 09d446765d
docs: update config docs 2024-03-01 11:47:29 +01:00
renovate a99e7f9aa3 fix(deps): update dependency express to v4.18.3
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-02-29 12:05:06 +00:00
renovate e93e48c4c2 fix(deps): update vueuse to v10.9.0
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-02-29 10:05:25 +00:00
renovate 06688fa8d4 fix(deps): update sentry-javascript monorepo to v7.103.0
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-02-29 09:05:28 +00:00
renovate 1a15c865e2 fix(deps): update module golang.org/x/crypto to v0.20.0
continuous-integration/drone/push Build is passing Details
2024-02-29 08:18:30 +00:00
renovate 7b9a72ebe1 fix(deps): update module github.com/prometheus/client_golang to v1.19.0
continuous-integration/drone/push Build is failing Details
2024-02-29 08:15:51 +00:00
renovate a0f4bdbdad fix(deps): update dependency vue to v3.4.21
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is failing Details
2024-02-28 22:06:03 +00:00
renovate eea356e570 chore(deps): update dev-dependencies
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-02-28 18:05:31 +00:00
kolaente 5b70609ba7
fix: usage of limit and order by usage in recursive cte
continuous-integration/drone/pr Build is passing Details
continuous-integration/drone/push Build is passing Details
2024-02-28 14:35:09 +01:00
kolaente 6b1e67485b
feat: fetch all projects with a recursive cte instead of recursive query
continuous-integration/drone/push Build is failing Details
This change modifies the fetching of all projects to use a recursive common table expression instead of recursively calling the method.
2024-02-28 13:42:45 +01:00
kolaente 5d127c2897 feat: run frontend tests with api build from the same branch (#2137)
continuous-integration/drone/push Build is passing Details
Reviewed-on: #2137
Co-authored-by: kolaente <k@knt.li>
Co-committed-by: kolaente <k@knt.li>
2024-02-27 18:06:34 +00:00
kolaente 1275dfc260
fix: lint
continuous-integration/drone/push Build is failing Details
2024-02-27 16:38:20 +01:00
kolaente 997fb6bc54
fix(migration): show correct help message when a migration was started 2024-02-27 16:36:18 +01:00
kolaente b2e5de88ff
fix(labels): make sure labels are aligned in the middle
continuous-integration/drone/push Build is failing Details
2024-02-27 16:29:27 +01:00
kolaente baa5d14ca6
fix(assignees): spacing of users
continuous-integration/drone/push Build is failing Details
2024-02-27 16:15:35 +01:00
kolaente 2d5c496397
fix(kanban): pass active filters down to task lazy loading
continuous-integration/drone/push Build is failing Details
Before this change, applying a filter and then scrolling a bucket would not use that filter when lazy loading the tasks in that bucket. That resulted in all tasks being loaded, regardless if the filter applied to them.
2024-02-27 16:10:19 +01:00