kolaente
9f73e2c5f9
fix(filter): don't crash on empty filter
2024-03-09 19:06:34 +01:00
kolaente
c1e137d8ee
fix(filter): make sure single filter condition works
2024-03-09 19:06:34 +01:00
kolaente
de320aac72
feat(filters): basic text filter works now
2024-03-09 19:06:34 +01:00
kolaente
307ffe11c4
feat(filters): very basic filter parsing
2024-03-09 19:06:31 +01:00
Christoph Ritzer
86983f50d4
fix(migration): Trello checklists ( #2140 )
...
continuous-integration/drone/push Build is passing
Details
Trello checklists are now properly converted to html checklists and put into the description.
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: #2140
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Christoph Ritzer <chris@cloumail.at>
Co-committed-by: Christoph Ritzer <chris@cloumail.at>
2024-03-09 09:01:02 +00:00
kolaente
e65c3ffe6b
fix(migration): convert trello card descriptions from markdown to html
continuous-integration/drone/push Build is passing
Details
2024-03-09 09:31:57 +01:00
kolaente
dc291a51f5
fix(migration): do not expire trello token
continuous-integration/drone/push Build is passing
Details
2024-03-06 15:13:54 +01:00
waza-ari
d69fc28125
fix(openid): OIDC teams should not have admins ( #2161 )
...
continuous-integration/drone/push Build is passing
Details
This PR fixes an issue discussed in #2152 . Before this PR, the user who triggered team creation automatically got the admin flag set for this group, which makes perfect sense for the normal UI workflow. OIDC managed teams cannot be edited in Vikunja, and they're created automatically by the first user logging in having this team assigned. This PR therefore makes sure that OIDC managed team members do not receive the admin flag.
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: #2161
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-05 22:08:39 +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
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
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
a3932a0a19
fix(projects): return correct project pagination count
2024-03-02 13:30:34 +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
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
e40a0043d4
fix(migration): do not halt the whole migration when copying a background file failed
continuous-integration/drone/push Build is passing
Details
2024-02-19 19:21:06 +01:00
kolaente
2dab2ccedd
feat: allow using sqlite in memory database
...
continuous-integration/drone/push Build is failing
Details
This allows running vikunja for testing purposes. You almost never want to run this in production.
2024-02-15 10:48:48 +01:00
kolaente
415c6380a5
feat(api tokens): add task attachment to api scopes
...
continuous-integration/drone/push Build is failing
Details
This explicitly adds download and upload of task attachments. Because these are not handled with the usual CRUDables, they were not picked up automatically.
Resolves https://github.com/go-vikunja/vikunja/issues/112
2024-02-14 15:00:16 +01:00
kolaente
162741e940
fix: lint
continuous-integration/drone/push Build is passing
Details
2024-02-13 22:24:46 +01:00
kolaente
205f330f8a
fix(migration): make sure to correctly check if a migration was already running
...
continuous-integration/drone/push Build was killed
Details
This change fixes a bug where Vikunja would not correctly check if a migration was already running. That meant it was not possible for users who had never before migrated anything to start a migration, because Vikunja assumed they already had a migration running for them.
This state was neither properly reflected in the frontend, which is now fixed as well.
2024-02-13 22:21:59 +01:00
kolaente
a12c169ce8
fix: do not send etag when serving the frontend index file
...
continuous-integration/drone/push Build is failing
Details
Without this change, the browser may serve an outdated index.html file which usually does not work, showing the user only a blank page.
2024-02-13 21:32:41 +01:00
kolaente
2facbae0d7
fix(dump): only allow imports from the same version they were dumped on
...
continuous-integration/drone/push Build is failing
Details
Previously, Vikunja would allow imports from any version which then caused problems since the table structure might have changed between releases. This change now checks if the current version is the same as the one the dump was created on.
2024-02-13 21:25:31 +01:00
kolaente
77a779acea
fix(dump): do not export files which do not exist in storage
2024-02-13 21:14:31 +01:00
kolaente
641fec1215
fix: never return frontend on routes starting with /api
...
continuous-integration/drone/push Build is passing
Details
This fixes a problem where Vikunja would sometimes return the html for the frontend when accessing an api route for a nonexistent ressource, because the static handler was the next best.
Resolves #2110
2024-02-13 10:05:15 +01:00
kolaente
1ab6fef70a
fix(metrics): typo
2024-02-12 14:23:16 +01:00
kolaente
d4a389279c
chore: don't send http errors with a status < 500 to sentry
continuous-integration/drone/push Build is passing
Details
2024-02-11 15:29:27 +01:00
kolaente
8752ae2a0b
fix(webhook): fetch all event details before sending the webhook
...
continuous-integration/drone/push Build is passing
Details
Resolves https://community.vikunja.io/t/webhook-comment-data-issues/1952
2024-02-10 14:15:32 +01:00
kolaente
7edb53ca12
fix(export): don't crash when an exported file does not exist
...
continuous-integration/drone/push Build is passing
Details
Related to https://github.com/go-vikunja/vikunja/issues/110
2024-02-10 13:45:12 +01:00
kolaente
5ab9fb89bb
fix(tasks): check for cycles during creation of task relations and prevent them
2024-02-10 13:30:41 +01:00
kolaente
d36b1608cf
fix: lint
continuous-integration/drone/pr Build is passing
Details
2024-02-09 15:32:12 +01:00
kolaente
ca68b52991
feat: replace api url with public url
2024-02-09 14:44:41 +01:00
kolaente
2d32d900c8
feat: replace api url with public url
2024-02-09 14:42:07 +01:00
kolaente
119c68be9d
feat: rename frontend url config to public url
2024-02-09 14:41:55 +01:00
kolaente
78df83ee69
feat: replace api url
2024-02-09 14:38:54 +01:00
kolaente
db2ec45378
feat: move custom logo setting to api
2024-02-09 14:33:21 +01:00
kolaente
d7dc209f15
feat: move allow icon changes setting to api
2024-02-09 14:30:21 +01:00
kolaente
a0e770438d
feat: move sentry configuration from frontend to api
2024-02-09 14:24:29 +01:00
kolaente
b3228794c7
feat: add caching rules for more files
2024-02-09 13:42:05 +01:00
kolaente
8b3cf2ed7e
chore: remove static path config option
2024-02-09 13:41:51 +01:00
kolaente
9c45d9ca15
feat: cache header and etag generation
2024-02-09 13:41:51 +01:00
kolaente
81455242ae
chore: copy static file handler
2024-02-09 13:41:50 +01:00
kolaente
6c5194b892
feat: bundle frontend files with api in one static bundle
2024-02-09 13:41:50 +01:00
kolaente
fceb638e75
docs: remove mention of vikunja/api and vikunja/frontend repos
2024-02-08 14:31:02 +01:00
kolaente
b95b92a23a
fix(filters): add explicit check for string slice filter
...
continuous-integration/drone/push Build is failing
Details
Resolves https://github.com/go-vikunja/api/issues/109
2024-02-05 22:08:17 +01:00
kolaente
8efdc96d02
chore(filters): log type if unknown filter type
continuous-integration/drone/push Build is failing
Details
2024-02-01 16:19:22 +01:00
kolaente
7f46914d5e
fix(project): pass user id to error message
continuous-integration/drone/push Build is failing
Details
2024-01-31 13:50:21 +01:00
Frederick [Bot]
ba0cb022b1
[skip ci] Updated swagger docs
2024-01-28 14:43:54 +00:00
kolaente
96b4f2d1db
fix(projects): don't remove parent project id if the parent project is available in the same run
...
continuous-integration/drone/push Build is passing
Details
Resolves https://github.com/go-vikunja/frontend/issues/139
2024-01-28 15:28:08 +01:00
kolaente
30a2dcd04c
fix: lint
2024-01-28 15:27:14 +01:00
kolaente
0d24ba12bb
chore: rename function
continuous-integration/drone/push Build is failing
Details
2024-01-28 13:36:13 +01:00
kolaente
d9875e476c
fix(assignees): make sure task assignee created event contains the full task
continuous-integration/drone/push Build is failing
Details
2024-01-28 13:23:27 +01:00
kolaente
e4fec01d52
fix(assignees): subscribe assigned users directly to the task, not async
...
continuous-integration/drone/push Build is failing
Details
Resolves https://community.vikunja.io/t/richer-email-notifications/1891
2024-01-28 13:15:43 +01:00
kolaente
b2970c6c04
fix(assignees): prevent double notifications for assignees
2024-01-28 13:11:50 +01:00
kolaente
e03920b84a
fix(assignees): improve wording for assignee emails
2024-01-28 13:11:37 +01:00
kolaente
ce53663a88
fix(openid): use the calculated redirect url when authenticating with openid providers
continuous-integration/drone/push Build is failing
Details
2024-01-28 12:41:35 +01:00
kolaente
a20f6ac815
fix(task): delete the task after all related attributes to prevent task not found errors
continuous-integration/drone/push Build is passing
Details
2024-01-28 12:23:25 +01:00
kolaente
1630e4fc08
fix: tests
continuous-integration/drone/push Build is failing
Details
2024-01-28 11:52:16 +01:00
kolaente
90ad975ca0
fix(typesense): update tasks in Typesense directly when the change happened
...
Resolves https://community.vikunja.io/t/no-filters-working-assignee-date-task-done-etc/1910
2024-01-28 11:47:17 +01:00
kolaente
ae9b382963
fix(webhooks): make sure all events with tasks have the full task
...
continuous-integration/drone/push Build is failing
Details
Resolves vikunja/api#1676
2024-01-27 00:16:17 +01:00
kolaente
d38050f2b8
fix(subscriptions): don't crash when a project is already deleted
continuous-integration/drone/push Build is passing
Details
2024-01-26 23:53:22 +01:00
kolaente
33a47b7f43
fix(relations): don't allow creating relations which already exist
...
continuous-integration/drone/push Build is failing
Details
Resolves https://github.com/go-vikunja/frontend/issues/144
2024-01-26 23:37:59 +01:00
kolaente
ad8fa93cae
fix(user): make disable command actually work
continuous-integration/drone/push Build is passing
Details
2024-01-21 12:24:41 +01:00
kolaente
3ff4d81618
fix(migration): ignore tasks with empty titles
continuous-integration/drone/push Build is passing
Details
2024-01-19 23:04:24 +01:00
kolaente
4d48d814c9
fix: update function signatures
continuous-integration/drone/push Build is failing
Details
2024-01-16 14:06:44 +00:00
kolaente
27a5f6862b
fix: convert everything which looks like an url to a <a href html element
...
continuous-integration/drone/push Build is passing
Details
Related https://elk.zone/social.linux.pizza/@vikunja/111756305763288228
2024-01-14 22:59:31 +01:00
kolaente
2c84688a40
fix: lint
continuous-integration/drone/push Build is passing
Details
2024-01-14 22:23:33 +01:00
kolaente
ec6e3e99e0
chore: check if import zip contains a VERSION file
2024-01-14 22:21:55 +01:00
kolaente
514ea71d93
fix(api): make sure permission to read all tasks work for reading all tasks per project
...
continuous-integration/drone/push Build is failing
Details
Resolves https://github.com/go-vikunja/api/issues/105
2024-01-14 22:17:22 +01:00
kolaente
09696aec1b
fix: create webhooks table for fresh installation
...
continuous-integration/drone/push Build is passing
Details
Resolves https://github.com/go-vikunja/api/issues/104
Resolves vikunja/api#1655
2023-12-30 11:58:02 +01:00
kolaente
a5a6aba7c8
fix(auth): don't reset user settings when updating name or email from external auth provider
...
continuous-integration/drone/push Build is passing
Details
Resolves https://github.com/go-vikunja/api/issues/102
2023-12-25 17:09:19 +01:00
kolaente
32611dc2d7
feat(reminders): persist reminders in the db
continuous-integration/drone/push Build is passing
Details
2023-12-23 15:40:03 +01:00
kolaente
c05f51b923
chore(deps): update golangci-lint rules
continuous-integration/drone/pr Build is failing
Details
2023-12-19 13:34:31 +01:00
kolaente
57bd5aca80
fix(webhooks): send application/json header
continuous-integration/drone/push Build is passing
Details
2023-12-06 14:09:49 +01:00
kolaente
74e40ccfb4
fix(files): keyvalue init in tests
continuous-integration/drone/push Build is failing
Details
2023-12-06 14:05:08 +01:00
kolaente
6ef1bc3944
fix: lint
2023-12-06 14:01:09 +01:00
kolaente
cca42b9188
feat(metrics): add total number of attachments metric
continuous-integration/drone/push Build is failing
Details
2023-12-03 15:30:39 +01:00
kolaente
fd0b2d103d
feat(metrics): add total number of files metric
continuous-integration/drone/push Build is failing
Details
2023-12-03 15:22:41 +01:00
kolaente
0ce110fa52
feat(metrics): add active link share logins
continuous-integration/drone/push Build is failing
Details
2023-12-03 15:12:43 +01:00
kolaente
8a3f16fcfb
fix(labels): make sure labels of shared sub projects are usable
...
continuous-integration/drone/push Build is passing
Details
Resolves https://community.vikunja.io/t/cannot-filter-on-projets-labels/1736
2023-12-03 14:33:43 +01:00
kolaente
d35c30dd0c
fix(import): make sure importing works if parent / child projects are created in a different order
...
continuous-integration/drone/push Build is passing
Details
Resolves https://community.vikunja.io/t/migrating-from-self-hosted-instance/1805
2023-12-03 14:14:27 +01:00
kolaente
66b44da85b
fix(projects): delete child projects when deleting a project
continuous-integration/drone/push Build is passing
Details
2023-12-01 17:27:40 +01:00
kolaente
c6c465c273
feat: make unauthenticated user routes rate limit configurable
continuous-integration/drone/push Build is passing
Details
2023-11-28 22:27:51 +01:00
kolaente
bbc8da1e80
fix(tests): pass the map
continuous-integration/drone/push Build is passing
Details
2023-11-20 12:22:44 +01:00
kolaente
df1f95871a
fix(projects): correctly set project's archived state if their parent was archived
...
continuous-integration/drone/push Build is failing
Details
Resolves vikunja/frontend#3795
2023-11-17 20:00:08 +01:00
Frederick [Bot]
5da1075f88
[skip ci] Updated swagger docs
2023-11-16 12:20:35 +00:00
kolaente
1ed65d306d
fix(docs): remove duplicate paths (params) in swagger docs
continuous-integration/drone/push Build is passing
Details
2023-11-16 13:07:01 +01:00
kolaente
b9a54b019d
fix(tests): remove duplicate projects from assertions
continuous-integration/drone/push Build is passing
Details
2023-11-15 13:17:04 +01:00
kolaente
61bce2b349
fix(projects): don't return child projects multiple times
continuous-integration/drone/push Build is failing
Details
2023-11-15 12:56:36 +01:00
kolaente
ab2eda4bd5
fix(openid): make sure usernames with spaces work
continuous-integration/drone/push Build is passing
Details
2023-11-13 11:38:24 +01:00
Miguel Arroyo
225d65268d
feat(caldav): Add support for subtasks (i.e. `RELATED-TO` property) in CalDAV ( #1634 )
...
continuous-integration/drone/push Build is passing
Details
As I mentioned [here](vikunja/api#1442 (comment) ), this is mainly a cleanup of @zewaren 's original [PR](vikunja/api#1442 ).
It adds support for the `RELATED-TO` property in CalDAV's `VTODO` and the `RELTYPE=PARENT` and `RELTYPE=CHILD` relationships. In other words, it allows for `ParentTask->SubTask` relations to be handled supported through CalDAV.
In addition to the included tests, this has been tested by both @zewaren & myself with DAVx5 & Tasks (Android) and it's been working great.
Resolves vikunja/api#1345
Co-authored-by: Miguel A. Arroyo <miguel@codeheads.dev>
Co-authored-by: Erwan Martin <public@fzwte.net>
Reviewed-on: vikunja/api#1634
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Miguel Arroyo <mayanez@noreply.kolaente.de>
Co-committed-by: Miguel Arroyo <mayanez@noreply.kolaente.de>
2023-11-10 22:44:03 +00:00
kolaente
6169c2e12e
fix(typesense): correctly convert date values for typesense
...
continuous-integration/drone/push Build is passing
Details
Resolves vikunja/api#1636
2023-11-09 12:29:52 +01:00
Frederick [Bot]
91146f139b
[skip ci] Updated swagger docs
2023-11-08 23:29:34 +00:00
kolaente
46683a2516
feat(migration): migration from other services now happens in the background
continuous-integration/drone/push Build is passing
Details
2023-11-09 00:15:11 +01:00
kolaente
707bb6f89e
fix(migration): make sub project hierarchy work when importing from other services
continuous-integration/drone/push Build is passing
Details
2023-11-08 22:56:10 +01:00
kolaente
b2866ca3da
feat(api): enable notifications for api token routes
continuous-integration/drone/push Build is passing
Details
2023-11-07 14:58:46 +01:00
kolaente
4d3ba495a7
fix(tests): use string IDs in Todoist test
continuous-integration/drone/push Build is passing
Details
2023-11-07 13:28:06 +01:00
kolaente
27984157c1
fix(migration): use string for todoist project note id
continuous-integration/drone/push Build is failing
Details
2023-11-03 12:06:23 +01:00
Frederick [Bot]
1c416ae73e
[skip ci] Updated swagger docs
2023-10-24 14:38:04 +00:00
kolaente
a375223872
fix: properly tag bucket-related operations
continuous-integration/drone/push Build is passing
Details
2023-10-24 16:13:15 +02:00
kolaente
a1ea77f751
feat: accept hex values which start with a #
continuous-integration/drone/push Build is failing
Details
2023-10-24 16:12:22 +02:00
Frederick [Bot]
4625377752
[skip ci] Updated swagger docs
2023-10-22 17:21:16 +00:00
kolaente
8a4856ad87
feat: convert all markdown content to html ( #1625 )
...
continuous-integration/drone/push Build is failing
Details
Migration for vikunja/frontend#2222
Reviewed-on: vikunja/api#1625
Co-authored-by: kolaente <k@knt.li>
Co-committed-by: kolaente <k@knt.li>
2023-10-22 13:48:22 +00:00
kolaente
10c9913e12
feat(notifications): add endpoint to mark all notifications as read
continuous-integration/drone/push Build is failing
Details
2023-10-20 16:40:47 +02:00
kolaente
66cf7ab50a
feat(reminders): include project in reminder notification
continuous-integration/drone/push Build is passing
Details
2023-10-20 13:56:14 +02:00
Frederick [Bot]
b2b4b5423f
[skip ci] Updated swagger docs
2023-10-20 11:39:17 +00:00
kolaente
55d345e236
feat(webhooks): validate events and target url
continuous-integration/drone/pr Build is passing
Details
2023-10-20 12:42:28 +02:00
kolaente
61cd08fa13
fix(webhooks): add created by user object when creating a webhook
2023-10-18 22:18:45 +02:00
kolaente
72366a5b27
feat(webhooks): add created by user object when returning all webhooks
2023-10-18 20:06:07 +02:00
kolaente
b4e3d8ee47
fix(webhooks): lint
2023-10-17 20:40:09 +02:00
kolaente
7a74e491da
fix(webhooks): lint
2023-10-17 20:35:14 +02:00
kolaente
2c84cec044
docs(webhooks): add swagger docs for all webhook endpoints
2023-10-17 20:35:14 +02:00
kolaente
fc0029eed7
fix(webhooks): don't send the proxy auth header to the webhook target
2023-10-17 20:35:14 +02:00
kolaente
177f367a8c
feat(webhooks): expose whether webhooks are enabled
2023-10-17 20:35:14 +02:00
kolaente
1b82f26d3e
chore(webhooks): simplify registering webhook events
2023-10-17 20:35:13 +02:00
kolaente
ec4aa606e2
chore(webhooks): reuse webhook client
2023-10-17 20:35:13 +02:00
kolaente
831aa4a014
feat(webhooks): add support for webhook proxy
2023-10-17 20:35:13 +02:00
kolaente
b38360c9a5
feat(webhooks): add timeout config option
2023-10-17 20:35:13 +02:00
kolaente
34a92b759e
feat(webhooks): add setting to enable webhooks
2023-10-17 20:35:13 +02:00
kolaente
8cc775ac4c
fix(webhooks): routes should use the common schema used for other routes already
2023-10-17 20:35:13 +02:00
kolaente
a0d8b28813
feat(webhooks): add hmac signing
2023-10-17 20:35:13 +02:00
kolaente
a3a323cbf1
feat(webhooks): set user agent header to Vikunja
2023-10-17 20:35:13 +02:00
kolaente
4253d14367
chore(webhooks): remove WebhookEvent interface
2023-10-17 20:35:13 +02:00
kolaente
96ccf6b923
feat(webhooks): add route to get all available webhook events
2023-10-17 20:35:13 +02:00
kolaente
eb1b9247ad
feat(webhooks): prevent link shares from managing webhooks
2023-10-17 20:35:13 +02:00
kolaente
57de44694c
feat(webhooks): add index on project id
2023-10-17 20:35:13 +02:00
kolaente
8d7a492936
feat(webhooks): add filter based on project id
2023-10-17 20:35:13 +02:00
kolaente
7d1c5c50c5
feat(webhooks): add basic sending of webhooks
2023-10-17 20:35:12 +02:00
kolaente
7f3c300240
feat(webhooks): add routes
2023-10-17 20:35:12 +02:00
kolaente
c5de41f183
feat(webhooks): add event listener to send webhook payload
2023-10-17 20:35:12 +02:00
kolaente
e5b8d8bd2d
feat(webhooks): register task and project events as webhook
2023-10-17 20:35:12 +02:00
kolaente
ad7d485eb5
feat(webhooks): add basic crud actions for webhooks
2023-10-17 20:35:12 +02:00
kolaente
9a29b29a04
fix(user): allow openid users to request their deletion
...
continuous-integration/drone/push Build is failing
Details
Resolves https://community.vikunja.io/t/delete-user-not-possible-when-using-oidc/1689/4
2023-10-11 19:06:59 +02:00
kolaente
58497f29e6
fix(kanban): filter for tasks in buckets by assignee should not modify the filter directly
...
continuous-integration/drone/push Build is failing
Details
Resolves https://github.com/go-vikunja/api/issues/84
2023-10-11 18:43:28 +02:00
Frederick [Bot]
775b98b729
[skip ci] Updated swagger docs
2023-10-11 08:50:34 +00:00
KaibutsuX
0769d59054
feat(cli): added --confirm/-c argument when deleting users to bypass prompt ( #86 )
...
continuous-integration/drone/push Build is failing
Details
Reviewed-On: https://github.com/go-vikunja/api/pull/86
2023-10-10 21:24:25 +02:00
kolaente
56625b0b90
fix: lint
continuous-integration/drone/push Build is failing
Details
2023-10-10 20:35:43 +02:00
KaibutsuX
137f3bc151
chore: assume username instead of id when parsing fails for user commands ( #87 )
...
continuous-integration/drone/push Build is failing
Details
Reviewed-On: https://github.com/go-vikunja/api/pull/87
2023-10-10 18:06:10 +02:00
kolaente
f5ac3abb2a
chore(test): add task deleted assertion to project deletion test
continuous-integration/drone/push Build is passing
Details
2023-10-03 15:52:38 +02:00
Peter H0ffmann
ad04d302af
chore: reverse the coupling of module log and config ( #1606 )
...
continuous-integration/drone/push Build is passing
Details
This way the config module can already use the log module with the same result (default logging to StdOut with Level INFO, same output as before) but ENV variables can already change the logging of config file related log output). It is now possible to dump as a cronjob without having to filter the default log about the used config file.
Also:
- all logging modules are now configurable when initializing which makes testing easier
- viper dependency removed from logging
- log correct settings when configured error level is invalid
- deprecation of value "false" for log.standard and log.events (already not mentioned in https://vikunja.io/docs/config-options/ )
Co-authored-by: Berengar W. Lehr <Berengar.Lehr@uni-jena.de>
Reviewed-on: vikunja/api#1606
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Peter H0ffmann <hoffmannp@noreply.kolaente.de>
Co-committed-by: Peter H0ffmann <hoffmannp@noreply.kolaente.de>
2023-10-03 09:28:28 +00:00
kolaente
c217233e08
fix(typesense): getting all data from typesense
continuous-integration/drone/push Build is passing
Details
2023-09-29 21:26:12 +02:00
kolaente
98102e59f2
feat(typesense): add new tasks to typesense directly when they are created
continuous-integration/drone/push Build is failing
Details
2023-09-29 21:15:28 +02:00
kolaente
8f4ee3a089
fix(typesense): make sure searching works when no task has a comment at index time
continuous-integration/drone/push Build is passing
Details
2023-09-29 16:35:59 +02:00
Erwan Martin
feacbbff74
fix(caldav): do not update dates of tasks when repositioning them ( #1605 )
...
continuous-integration/drone/push Build is failing
Details
When a task is updated, the position of the tasks of the whole project/bucket are updated. This leads to column "updated" of model Task to be updated quite often. However, that column is used for the ETag field of CALDAV.
Thus, changing a task marks all the other tasks as updated, which prevents clients from synchronizing their edited tasks.
Co-authored-by: Erwan Martin <erwan@pepper.com>
Reviewed-on: vikunja/api#1605
Co-authored-by: Erwan Martin <public@fzwte.net>
Co-committed-by: Erwan Martin <public@fzwte.net>
2023-09-27 16:17:52 +00:00
kolaente
f065dcf4ad
fix(typesense): add typesense sync to initial structs
continuous-integration/drone/push Build is passing
Details
2023-09-15 12:53:29 +02:00
kolaente
addcbdd8ca
fix(test): don't check for error
continuous-integration/drone/push Build is passing
Details
2023-09-13 12:52:42 +02:00
kolaente
054f21821c
fix(typesense): don't try to index tasks if there are none
continuous-integration/drone/push Build is failing
Details
2023-09-13 12:19:09 +02:00
kolaente
38a3a5c6e8
fix(typesense): explicitely create typesense sync table
continuous-integration/drone/push Build is failing
Details
2023-09-13 12:05:37 +02:00
kolaente
1ee243f2bd
fix(project background): add more checks for whether a background file exists when duplicating or deleting a project
...
continuous-integration/drone/push Build is failing
Details
Related discussion: https://community.vikunja.io/t/500-internal-server-error-when-selecting-unsplash-background-image/778/18
2023-09-13 11:20:59 +02:00
kolaente
c5c74e9537
chore(caldav): improve trimming .ics file ending
continuous-integration/drone/push Build is failing
Details
2023-09-07 15:52:37 +02:00
kolaente
e34f503674
fix: lint
continuous-integration/drone/push Build is failing
Details
2023-09-07 11:31:35 +02:00
kolaente
bfcefa0217
fix(caldav): check for related tasks synced back from a caldav client
...
continuous-integration/drone/push Build is failing
Details
Related discussion https://community.vikunja.io/t/tasks-org-subtask-syncing-issue/737/9
2023-09-07 11:29:44 +02:00
kolaente
c6bdb5752a
fix(import): create related tasks without an id
continuous-integration/drone/push Build is failing
Details
2023-09-07 11:16:04 +02:00
kolaente
68d4dcd7e6
fix(projects): don't limit results to top-level projects when searching
...
continuous-integration/drone/push Build is failing
Details
Resolves https://github.com/go-vikunja/api/issues/82
2023-09-07 10:56:59 +02:00
kolaente
b2f3a23cb3
fix(import): correctly set child project relations
continuous-integration/drone/push Build is failing
Details
2023-09-07 10:45:15 +02:00
kolaente
93795d2f29
fix(import): resolve task relations by old task ids
2023-09-07 10:24:15 +02:00
kolaente
adf4b95ed3
fix(import): ignore duplicate project identifier
2023-09-07 10:12:15 +02:00
kolaente
ce3a06f03b
fix(import): don't fail when importing from dev exports
2023-09-07 10:11:59 +02:00
kolaente
2c0c3ea24e
fix(build): don't require swagger to build
continuous-integration/drone/push Build is failing
Details
2023-09-06 21:08:09 +02:00
kolaente
107b0b791f
fix(swagger): add generated swagger docs to repo
continuous-integration/drone/push Build is failing
Details
2023-09-06 18:01:45 +02:00
kolaente
424bf7647b
fix: lint
continuous-integration/drone/push Build is failing
Details
2023-09-06 14:56:25 +02:00
kolaente
06bc92556e
fix(docs): add empty swagger file so that the package exists
continuous-integration/drone/push Build is failing
Details
2023-09-06 13:13:51 +02:00
kolaente
b8e73f4fa5
fix: lint
continuous-integration/drone/push Build is failing
Details
2023-09-06 10:52:30 +02:00
kolaente
bfb01898c2
fix(api tokens)!: make sure task create routes are available to use with the api
...
continuous-integration/drone/push Build is failing
Details
BREAKING CHANGE: The api route to create a new task is now /projects/:project/tasks instead of /projects/:project
2023-09-06 10:33:52 +02:00
kolaente
d6db498853
fix: lint
continuous-integration/drone/push Build is failing
Details
2023-09-04 14:25:46 +02:00
kolaente
80b40bb2c0
feat(notify): don't notify disabled users
continuous-integration/drone/push Build is failing
Details
2023-09-04 14:23:56 +02:00
kolaente
c28d1af877
fix(cmd): do not initialize asnyc operations when running certain cli commands
continuous-integration/drone/push Build is failing
Details
2023-09-04 11:22:50 +02:00
kolaente
f38535b2f4
fix(typesense): upsert all documents at once
2023-09-04 11:19:55 +02:00
kolaente
093b5b99a0
fix(typesense): pass the correct user when fetching task comments
continuous-integration/drone/push Build is failing
Details
2023-09-04 10:42:10 +02:00
kolaente
490d374cfd
fix(typesense): add more error logging
continuous-integration/drone/push Build is passing
Details
2023-09-04 10:20:51 +02:00
kolaente
21a1f02ea3
fix(typesense): add more error logging
continuous-integration/drone/push Build is failing
Details
2023-09-03 22:54:50 +02:00
kolaente
1a492722dd
fix(typesense): upsert one document at a time
continuous-integration/drone/push Build is passing
Details
2023-09-03 22:51:43 +02:00
kolaente
8a15c91a4f
chore(tasks): better error messages when indexing tasks into Typesense
continuous-integration/drone/push Build is passing
Details
2023-09-03 22:22:27 +02:00
kolaente
0e32d478d1
fix(projects): save done and default bucket when updating project
continuous-integration/drone/pr Build is passing
Details
2023-09-03 15:50:47 +02:00
kolaente
60bd5c8a79
feat: make default bucket configurable
continuous-integration/drone/pr Build is passing
Details
2023-09-03 15:17:17 +02:00
kolaente
bbbb45d224
feat: move done bucket setting to project
2023-09-03 15:01:35 +02:00
kolaente
97b5cd306f
feat: add demo mode flag
...
continuous-integration/drone/push Build is passing
Details
Related to vikunja/frontend#2453
2023-09-01 17:47:43 +02:00
kolaente
b3a847e581
fix(kanban): create missing kanban buckets ( #1601 )
...
continuous-integration/drone/push Build is failing
Details
Co-authored-by: edel <edel.altares@pm.me>
Reviewed-on: vikunja/api#1601
Co-authored-by: kolaente <k@knt.li>
Co-committed-by: kolaente <k@knt.li>
2023-09-01 15:41:31 +00:00
edel
11810c9b3e
fix: validate usernames on registration
continuous-integration/drone/push Build is failing
Details
2023-09-01 17:40:31 +02:00
konrad
60cd1250a0
feat: api tokens
...
continuous-integration/drone/push Build is failing
Details
Reviewed-on: vikunja/api#1600
2023-09-01 14:34:39 +00:00
kolaente
edbfc06a41
fix(kanban): don't prevent setting a different bucket as done bucket
...
continuous-integration/drone/push Build is passing
Details
Resolves vikunja/frontend#3373
2023-09-01 16:18:59 +02:00
kolaente
769b4f8d66
fix(task): remove task relation in the other direction as well
...
continuous-integration/drone/push Build is passing
Details
Resolves https://community.vikunja.io/t/removing-parent-relationship-doesnt-remove-the-subtask-relationship/1492/3
2023-09-01 16:12:20 +02:00
kolaente
eac4e455fd
fix(api tokens): lint
continuous-integration/drone/pr Build is passing
Details
2023-09-01 15:56:35 +02:00
kolaente
a4d946b4a9
fix(api tokens): test
2023-09-01 15:54:39 +02:00
kolaente
974e1878f8
chore(api tokens): add swagger docs about api token auth
2023-09-01 15:53:27 +02:00
kolaente
14c5a8ca5b
fix(api tokens): make sure read one routes show up in routes endpoint
continuous-integration/drone/pr Build is failing
Details
2023-09-01 12:58:29 +02:00
kolaente
e3c5a93f4f
chore(api tokens): remove updated date from tokens as it can't be updated anyway
2023-09-01 11:16:36 +02:00
kolaente
8f3d18a809
feat(api tokens): better error message for invalid tokens
2023-09-01 10:27:56 +02:00
kolaente
e295d75e6e
feat(api tokens): move token validation middleware to new function
2023-09-01 10:19:55 +02:00
kolaente
d9bfcdab8e
feat(api tokens): add tests
2023-09-01 10:19:31 +02:00
kolaente
e3dac16398
feat(api tokens): check permissions when saving
2023-09-01 08:52:57 +02:00
kolaente
e4c71123ef
fix: lint
2023-09-01 08:39:25 +02:00