Commit Graph

555 Commits

Author SHA1 Message Date
f83b09af59 feat: generate a BlurHash when uploading a new image 2022-03-30 16:36:07 +00:00
362706b38d feat: add migration to create BlurHash strings for all list backgrounds 2022-03-30 16:36:07 +00:00
0a1d8c9404 feat: add date math for filters (#1086)
All checks were successful
continuous-integration/drone/push Build is passing
This adds support for relative dates in filters, similar to the ones from [grafana](https://grafana.com/docs/grafana/latest/dashboards/time-range-controls) or [elasticsearch](https://www.elastic.co/guide/en/elasticsearch/reference/7.3/common-options.html#date-math).

In short, it allows you to filter for due dates by passing in dates like "now - 7d" to get a date from 7 days ago.

This is a very powerful addition for saved filters as they will allow you to create filters for all kinds of stuff where you previously only could use fixed dates. Now you can for example create a saved filter for "all tasks this week".

Frontend PR: vikunja/frontend#1342

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1086
2022-03-27 20:35:04 +00:00
ac6818a476
fix: checking for error types
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-27 17:52:33 +02:00
5cf263a86f
feat: upgrade golangci-lint to 1.45.2
Some checks failed
continuous-integration/drone/push Build is failing
2022-03-27 16:55:37 +02:00
b60c69c5a8
chore: cleanup namespace creation
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-06 17:09:05 +01:00
75f74b429e
fix: validate email address when creating a user via cli
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-04 19:58:40 +01:00
8bf2254f4b
fix: restoring dumps with no config file saved in them
All checks were successful
continuous-integration/drone/push Build is passing
2022-02-19 17:46:10 +01:00
22e3f242a3
fix: disabling logging completely now works
Some checks failed
continuous-integration/drone/push Build is failing
2022-02-19 17:42:32 +01:00
8cb92b3924
fix(dump): don't try to save a config file if none was provided and dump vikunja env variables
All checks were successful
continuous-integration/drone/push Build is passing
2022-02-19 11:32:30 +01:00
44aaf0a4ec
fix: clarify which config file is used on startup 2022-02-19 11:32:30 +01:00
43f1daf40c
fix: microsoft todo migration not importing all tasks
All checks were successful
continuous-integration/drone/push Build is passing
Previously, we did not check if a list has more tasks than the ones returned. By default, the Microsoft Graph API only returns 10 tasks. If the user had more they would not get imported.
Now we check if there are more pages with tasks and pull them all in until we have everything.
2022-02-18 20:00:42 +01:00
1322cb16d7 feat: add long-lived api tokens (#1085)
Some checks reported errors
continuous-integration/drone/push Build was killed
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1085
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-02-06 13:18:08 +00:00
f7a06e4644 Enable a list to be moved across namespaces (#1096)
Some checks failed
continuous-integration/drone/push Build is failing
Co-authored-by: Simon Hilchenbach <simon@hilchenba.ch>
Reviewed-on: vikunja/api#1096
Reviewed-by: konrad <k@knt.li>
Co-authored-by: shilch <simon@hilchenba.ch>
Co-committed-by: shilch <simon@hilchenba.ch>
2022-01-23 12:59:43 +00:00
61d49c3a56 feat: add time zone setting for reminders (#1092)
All checks were successful
continuous-integration/drone/push Build is passing
Instead of naeveily checking for all reminders due in the next minute, we now check all reminders in all time zones in the next minutes. This essentially means checking for reminders due in the next 14 or past 12 hours. We then check for each user who would receive a reminder from that result if it is actually due in their time zone.

This should prevent issues where users would get the reminder in the time zone of their server, not in their own.

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1092
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-01-16 11:05:56 +00:00
a31086a7a9
fix: lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 16:03:58 +01:00
a98119f2d6
feat: save user language in the settings
Some checks failed
continuous-integration/drone/push Build is failing
2021-12-12 15:39:47 +01:00
8bb3f8d37c
fix: importing archived lists or namespaces
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 13:18:01 +01:00
190a9f2a4c
fix: friendly name not getting synced on first login from openid
All checks were successful
continuous-integration/drone/push Build is passing
Resolves #874
2021-12-12 12:35:13 +01:00
5c88dfe88e
fix: user deletion schedule
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 12:29:05 +01:00
70e005e7ce
fix: user not actually deleted
All checks were successful
continuous-integration/drone/push Build is passing
2021-12-12 12:28:18 +01:00
f581885e65
fix: user deletion reminder emails counting up
Some checks failed
continuous-integration/drone/push Build is failing
Resolves #1014
2021-12-12 12:24:42 +01:00
72d3c54efd
fix: user deletion never happens
All checks were successful
continuous-integration/drone/push Build is passing
Resolves #1024
2021-12-12 12:04:17 +01:00
73ee696fc3 feat: add marble avatar (#1060)
All checks were successful
continuous-integration/drone/push Build is passing
This adds the marble avatar from [boring avatars](https://github.com/boringdesigners/boring-avatars) as an option for user avatars. Each user gets a different one (based on their id).

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1060
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-12-07 21:11:23 +00:00
fd0d462bf4
fix: importing tasks from todoist without a due time set
Some checks failed
continuous-integration/drone/push Build is failing
Resolves #897
2021-11-23 22:29:57 +01:00
f8a0a7e953
fix: deleting users with no namespaces
Some checks reported errors
continuous-integration/drone/push Build encountered an error
resolves #984
2021-11-22 22:34:20 +01:00
Joseph Kavanagh
36bf3d216a
feat: gravatar - Lowercase emails before MD5 hash (#10)
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-16 22:10:22 +01:00
0b7762590f
fix: lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-16 20:37:37 +01:00
c3e0e6405a
fix: importing trello attachments
Some checks failed
continuous-integration/drone/push Build is failing
Since jan 2021, trello requires authentication to access attachments. This commit passes the required auth headers to make downloading card attachments work.

resolves https://github.com/go-vikunja/api/issues/6
2021-11-14 21:47:51 +01:00
57e5d10eee
fix: sorting for saved filters
All checks were successful
continuous-integration/drone/push Build is passing
resolves #786
2021-11-14 21:03:55 +01:00
88a2cede19
feat: use wallpaper topic for default unsplash background list
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-14 20:47:15 +01:00
093d0c65ca
feat: enable rate limit for unauthenticated routes
All checks were successful
continuous-integration/drone/push Build is passing
2021-11-14 20:42:33 +01:00
cf05de19b3
fix: updating a list might remove its background
All checks were successful
continuous-integration/drone/push Build is passing
resolves #1039
2021-11-13 17:52:14 +01:00
2683ef23d5
feat: expose if a user is a local user through the /user endpoint
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-31 13:57:19 +01:00
516c812043
feat: expose if a user is a local user through its jwt token
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-31 12:37:31 +01:00
9eca971c93
feat: don't require a password for data export from users authenticated with third-party auth 2021-10-31 12:37:08 +01:00
8f55af07c9
feat: add more debug logging when deleting users
All checks were successful
continuous-integration/drone/push Build is passing
related to #1021
2021-10-27 22:08:31 +02:00
jayden-c
dcb52c00f1 feat: improve account deletion email grammar (#1006)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Jayden Chan <jaydencn7@gmail.com>
Reviewed-on: vikunja/api#1006
Reviewed-by: konrad <k@knt.li>
Co-authored-by: jayden-c <jaydencn7@gmail.com>
Co-committed-by: jayden-c <jaydencn7@gmail.com>
2021-10-16 21:53:33 +00:00
50b65a517d
fix: correctly load and pass the user when deleting it
All checks were successful
continuous-integration/drone/push Build is passing
Fixes #984
2021-10-16 17:00:48 +02:00
d7e47a28d4
fix: don't try to load the namespace of a list if it is a shared list
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-16 16:50:16 +02:00
c2b6119434
fix: make sure the full task is available in notifications
All checks were successful
continuous-integration/drone/push Build is passing
2021-10-16 16:38:59 +02:00
82a3330412 Added the ability to configure the JWT expiry date using a new server.jwtttl config parameter. (#999)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Stephen Hill <stephen@gatekiller.co.uk>
Reviewed-on: vikunja/api#999
Co-authored-by: stephen-hill <stephen@gatekiller.co.uk>
Co-committed-by: stephen-hill <stephen@gatekiller.co.uk>
2021-10-09 11:02:28 +00:00
fb9fa27488 healthcheck endpoint (#998)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Igor Rzegocki <igor@rzegocki.pl>
Reviewed-on: vikunja/api#998
Reviewed-by: konrad <k@knt.li>
Co-authored-by: ajgon <vikunja-gitea@ajgon.ovh>
Co-committed-by: ajgon <vikunja-gitea@ajgon.ovh>
2021-10-03 18:37:02 +00:00
0ca1560bf1 fix(deps): update module github.com/swaggo/swag to v1.7.3 (#990)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#990
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-09-26 12:44:37 +00:00
4de8ec56a6
fix: generate swagger docs
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-26 14:18:44 +02:00
ae8db176db
feat: expose if task comments are enabled or not in /info
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-26 13:37:57 +02:00
465f6d90ab
Fix tasks not exported
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-08 18:40:54 +02:00
03d818fd9f
Fix tmp export file created in the wrong path
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-08 17:44:23 +02:00
f019ae42bb
Fix exporting tasks from archived lists
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-08 17:40:33 +02:00
9000f2c3cd
Fix lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-07 19:09:44 +02:00
cc1bb3083f
Don't try to export items which do not have a parent
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-06 22:14:38 +02:00
90146aea5b User Data Export and import (#967)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#967
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-09-04 19:26:31 +00:00
dcddaab7b5
Set todoist migration redirect url to the frontend url by default
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-14 18:27:29 +02:00
483496cc26
Fix saving reminders of repeating tasks
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-13 21:36:16 +02:00
27119ad6d4 User account deletion (#937)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#937
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-11 19:08:10 +00:00
c3da454854 Update module github.com/golang-jwt/jwt to v4 (#930)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#930
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-03 21:43:18 +00:00
e38be9bd18 Update module github.com/labstack/echo/v4 to v4.5.0 (#929)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#929
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-02 18:33:53 +00:00
f237afd2ac
Fix panic on invalid smtp config
Some checks failed
continuous-integration/drone/push Build is failing
2021-08-02 00:05:13 +02:00
4c5f457313 Ensure case insensitive search on postgres (#927)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: vikunja/api#927
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-01 21:40:25 +00:00
9c2a59582a
Fix setting up keyvalue storage in tests
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-30 15:31:51 +02:00
d746c1bede
Notify the user after three failed login attempts
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-30 15:01:04 +02:00
220f43331f
Reset failed totp attempts when logging in successfully
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-30 14:46:10 +02:00
24f7d9b4f7
Only send an email about failed totp after three failed attempts
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-30 14:42:03 +02:00
5cfc9bf2f9
Disable the user account after 10 failed password attempts
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-29 18:45:22 +02:00
3572ac4b82
Send a notification on failed TOTP
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-29 18:05:25 +02:00
1571dfa825 Task mentions (#926)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#926
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-29 15:42:49 +00:00
e600f61e06
Fix moving the done bucket around
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-29 17:32:33 +02:00
6ccb85a0dc Reorder tasks, lists and kanban buckets (#923)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#923
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-28 19:06:40 +00:00
dac315db59
Fix jwt middleware
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-27 15:25:48 +02:00
eae3cbc7bb
Replace jwt-go with github.com/golang-jwt/jwt
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-27 10:46:28 +02:00
d9b38b85f6
Fix setting a saved filter as favorite
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-20 21:32:25 +02:00
c7f337f303
Fix tests & lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-20 11:00:20 +02:00
733f26f017
Fix error handling when deleting an attachment file
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-20 10:14:49 +02:00
e4a0066e20
Make sure all associated entities of a task are deleted when the task is deleted
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-19 23:52:58 +02:00
d28390d792
Fix task relations not getting properly cleaned up when deleting them
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-19 23:40:18 +02:00
0b90d826be
Don't notify the user who created the team
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-19 23:29:25 +02:00
4cf7c459da
Allow running migration 20210711173657 multiple times to fix issues when it didn't completely run through previously
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-15 11:36:33 +02:00
2a80e552cc
Save user tokens as varchar(450) and not text to fix mysql indexing issues
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-14 14:48:27 +02:00
7e229a1b83
Save user tokens as text and not varchar
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-14 12:43:28 +02:00
4216ed7277 Refactor user email confirmation + password reset handling (#919)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#919
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-13 20:56:02 +00:00
d5d4d8b6ed
Fix lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-13 12:16:12 +02:00
9559cbf1ec
Add more logging for test data api endpoint
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-13 12:14:59 +02:00
7adbd21698
Fix setting task favorite status of related tasks
All checks were successful
continuous-integration/drone/push Build is passing
Not really reproducable locally, but a real issue.
2021-07-12 12:19:01 +02:00
e21a3904ff
Fix mapping task priorities from Vikunja to calDAV
All checks were successful
continuous-integration/drone/push Build is passing
Resolves #866
2021-07-11 15:03:50 +02:00
562ef9af36
Add searching for tasks by index
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-11 14:19:59 +02:00
d0c77ad1c1 Make sure list / task favorites are set per user, not per entity (#915)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#915
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-10 10:21:54 +00:00
358661e060
Change task title to TEXT instead of varchar(250) to allow for longer task titles
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-09 19:46:47 +02:00
32a07c4c61
Fix importing archived projects and done items from todoist
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-08 11:37:50 +02:00
5b825f1cc8
Make sure a bucket exists or use the default bucket when importing tasks
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-08 10:34:03 +02:00
50b49ffab6 Add support of Unix socket (#912)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: vikunja/api#912
Reviewed-by: konrad <konrad@kola-entertainments.de>
Co-authored-by: andreymal <andriyano-31@mail.ru>
Co-committed-by: andreymal <andriyano-31@mail.ru>
2021-07-08 08:13:01 +00:00
8b6aeb8571
Fix lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-07 20:53:26 +02:00
0c5dfe5c48
Better logging for errors while importing a bunch of tasks
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-06 18:14:40 +02:00
d7932d2648
Don't fail when removing the last bucket in migration from other services
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-06 15:43:38 +02:00
37718c3282
Todoist migration: don't panic if no reminder was found for task
All checks were successful
continuous-integration/drone/push Build is passing
See #897
2021-06-24 23:02:28 +02:00
6018573d81 Update module github.com/coreos/go-oidc to v3 (#885)
Some checks failed
continuous-integration/drone/push Build is failing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#885
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-06-14 20:56:29 +00:00
6b70069eba Update module prometheus/client_golang to v1.11.0 (#879)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#879
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-06-11 13:08:28 +00:00
9147e6739f
Fix authentication callback
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-09 23:00:42 +02:00
570d146b21
Fix parsing openid config when using a json config file
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-09 21:56:17 +02:00
78a206c818
Add setting for first day of the week
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-03 18:11:44 +02:00
fc5703ac8c
Add truncate parameter to test fixtures setup
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-03 15:30:31 +02:00