2019-11-24 19:33:16 +01:00
# Changelog
All notable changes to this project will be documented in this file.
2021-09-05 16:49:13 +02:00
The format is based on [Keep a Changelog ](https://keepachangelog.com/en/1.0.0/ ), and this project adheres
to [Semantic Versioning ](https://semver.org/spec/v2.0.0.html ).
2019-11-24 19:33:16 +01:00
2024-08-12 20:22:07 +02:00
All releases can be found on https://code.vikunja.io/vikunja/releases.
2024-09-29 15:45:46 +02:00
## [0.24.4] - 2024-09-29
### Bug Fixes
* *(attachment)* Do not use image previews
* *(checkbox)* Use sibling css selector instead of has
* *(files)* Only use service rootpath for files when the files path is not absolute
* *(filters)* Explicitly search in json when using postgres
* *(task)* Paginate task comments
* *(task)* Do not show close button when the task was not opened via modal
* *(task)* Improve task delete modal on mobile
* *(test)* Use correct selector for modal header
* Partial fix to allow list tasks in ios reminders app (#2717)
* *(attachments)* Revert "chore(attachments): refactor building image preview"
### Dependencies
* *(deps)* Update desktop lockfile
* *(deps)* Update dependency vue to v3.5.7
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue-i18n to v10.0.2
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.5.8
* *(deps)* Update dependency @intlify/unplugin -vue-i18n to v5.1.0
* *(deps)* Update dependency vue-i18n to v10.0.3
* *(deps)* Update dependency @intlify/unplugin -vue-i18n to v5.2.0
* *(deps)* Update dependency @sentry/vue to v8.31.0
* *(deps)* Update dependency tailwindcss to v3.4.13
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency @sentry/vue to v8.32.0
* *(deps)* Update tiptap to v2.7.3
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.5.9
* *(deps)* Update dependency dompurify to v3.1.7
* *(deps)* Update tiptap to v2.7.4
* *(deps)* Update dependency vue to v3.5.10
* *(deps)* Update dev-dependencies
2024-09-20 14:46:33 +02:00
## [0.24.3] - 2024-09-20
### Bug Fixes
* *(a11y)* Hide unfocusable buttons
* *(api)* Return 404 response when using a token and the route does not exist
* *(auth)* Restrict max password length to 72 bytes
* *(caldav)* Make sure colors are correctly saved and returned
* *(caldav)* Reject invalid project id with error 400
* *(editor)* Restore the current value, not the one from a previous task
* *(files)* Use absolute path everywhere
* *(filter)* Do not replace labels keyword when the value is 'label'
* *(filter)* Make sure tasks are in a correct bucket and position when they are part of a date filter
* *(filters)* Immediately propagate changes
* *(filters)* Do not replace filter or project values when the id value resolves to undefined
* *(filters)* Correctly transform and populate saved filter when creating and editing
* *(home)* Explicitly use filter for tasks on home page when one is set
* *(kanban)* Save updated position to store
* *(kanban)* Make task creation loading spinner actually visible
* *(kanban)* Make kanban full width on mobile
* *(kanban)* Do not mark first bucked as done bucket in filter bucket mode
* *(kanban)* Correctly paginate filtered kanban buckets
* *(label)* Ignore existing ID during creation
* *(labels)* Trigger task.updated event when removing a label from a task
* *(labels)* Test error assertion
* *(labels)* Remove input interactivity when label edit is disabled
* *(labels)* Trigger task updated for bulk label task update
* *(modal)* Make sure modal and its content scrolls properly on mobile
* *(modal)* Do not prevent scrolling on mobile
* *(modal)* Make scrolling on iOS Safari work
* *(multiselect)* Make selectPlaceholder optional
* *(notifications)* Only add project subscription as task subscription when the user is not already subscribed to the task
* *(password)* Validate password before sending request to api
* *(project)* Show description in title attribute without html
* *(project)* Reset id before creating
* *(projects)* Do not hide 6th project on project overview
* *(projects)* Description not visible on mobile
* *(reminders)* Notify subscribed users as well
* *(service worker)* Use correct workbox version
* *(subscription)* Always return task subscription when subscribed to task and project
* *(subscriptions)* Ignore task subscription when the user is subscribed to the project
* *(subscriptions)* Correctly inherit subscriptions
* *(subscriptions)* Cleanup and simplify fetching subscribers for tasks and projects logic
* *(subscriptions)* Do not panic when a task does not have a subscription
* *(table)* Make sorting for two-word properties work
* *(task)* Set done at date when moving a task to the done bucket
* *(task)* Specify task index when creating multiple tasks at once
* *(task)* Cyclomatic complexity
* *(task)* Make print styles work when printing task detail view from kanban
* *(task)* Multiple overlapping defer due date popups
* *(task)* Align task title on mobile popup
* *(task)* Dragging and dropping on mobile
* *(task)* Add task to filter view after it was updated
* *(task)* Cleanup old task positions and task buckets when adding an updated or created task to filter
* *(task)* Mark related task as done from the task detail view
* *(task)* Open focused task when pressing enter
* *(test)* Cypress test selector
* *(typesense)* Only fail silently when a project was not found during indexing
* *(typesense)* Add new tasks to typesense properly
* *(typesense)* Make sure task positions are recreated properly when updating them
* *(typesense)* Use emplace instead of upsert to update documents
* *(typesense)* Index tasks one by one
* *(typesense)* Force position to always be float instead of auto-inferring
* *(typesense)* Use typesense bulk insert, log all errors
* *(user)* Do not create user with existing id
* *(view)* Do not crash when saving a view
* *(view)* Correctly resolve label for filtered views or buckets
* *(view)* Correctly resolve bucket filter when paginating
* *(view)* Correctly get paginated task results
* *(views)* Add migration for filtered kanban buckets* Lint ([53d62d3](53d62d35f4488940a96d755de93ded64b8ac34a3))
* Reset id before creating ([93f7dd6](93f7dd611ad288a149f5da5463867d224334815f))
* Test selector ([063aa7a](063aa7afec717c3ed05be9d2ca73bde3d0bd8d35))
### Dependencies
* *(deps)* Update dependency @intlify/unplugin -vue-i18n to v5
* *(deps)* Update dependency @kyvg/vue3 -notification to v3.3.0
* *(deps)* Update dependency @sentry/vue to v8.28.0
* *(deps)* Update dependency @sentry/vue to v8.29.0
* *(deps)* Update dependency @sentry/vue to v8.30.0
* *(deps)* Update dependency axios to v1.7.7
* *(deps)* Update dependency date-fns to v4
* *(deps)* Update dependency dayjs to v1.11.13
* *(deps)* Update dependency express to v4.20.0
* *(deps)* Update dependency express to v4.21.0
* *(deps)* Update dependency go to v1.23.1
* *(deps)* Update dependency pinia to v2.2.2
* *(deps)* Update dependency sortablejs to v1.15.3
* *(deps)* Update dependency tailwindcss to v3.4.10
* *(deps)* Update dependency tailwindcss to v3.4.11
* *(deps)* Update dependency tailwindcss to v3.4.12
* *(deps)* Update dependency vue to v3.5.3
* *(deps)* Update dependency vue to v3.5.4
* *(deps)* Update dependency vue to v3.5.5
* *(deps)* Update dependency vue to v3.5.6
* *(deps)* Update dependency vue-i18n to v10
* *(deps)* Update dependency vue-i18n to v10.0.1
* *(deps)* Update dependency vue-i18n to v9.14.0
* *(deps)* Update dependency vue-router to v4.4.3
* *(deps)* Update dependency vue-router to v4.4.4
* *(deps)* Update dependency vue-router to v4.4.5
* *(deps)* Update dependency vuemoji-picker to v0.3.1* Chore(deps): update goreleaser/nfpm docker tag to v2.40.0 (#2647)
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update github.com/wneessen/go-mail to v0.4.4
* *(deps)* Update golangci
* *(deps)* Update module dario.cat/mergo to v1.0.1
* *(deps)* Update module github.com/gabriel-vasile/mimetype to v1.4.5
* *(deps)* Update module github.com/getsentry/sentry-go to v0.29.0
* *(deps)* Update module github.com/mattn/go-sqlite3 to v1.14.23
* *(deps)* Update module github.com/prometheus/client_golang to v1.20.3
* *(deps)* Update module github.com/prometheus/client_golang to v1.20.4
* *(deps)* Update module github.com/redis/go-redis/v9 to v9.6.1
* *(deps)* Update module github.com/threedotslabs/watermill to v1.3.7
* *(deps)* Update module github.com/typesense/typesense-go to v2
* *(deps)* Update module github.com/typesense/typesense-go to v2
* *(deps)* Update module golang.org/x/crypto to v0.27.0
* *(deps)* Update module golang.org/x/image to v0.20.0
* *(deps)* Update module golang.org/x/oauth2 to v0.23.0
* *(deps)* Update module golang.org/x/term to v0.24.0
* *(deps)* Update module golang.org/x/text to v0.18.0
* *(deps)* Update pnpm to v9.10.0
* *(deps)* Update tiptap to 2.6.6
* *(deps)* Update tiptap to v2.7.0
* *(deps)* Update tiptap to v2.7.1
* *(deps)* Update tiptap to v2.7.2
* *(deps)* Update vueuse to v11
* *(deps)* Update vueuse to v11.1.0
* *(deps)*: update dependency flexsearch to v0.7.43 (#2095)
* *(deps)*: update golangci/golangci-lint docker tag to v1.61.0 (#2678)
### Documentation
* *(api)* Use correct return type for the /user endpoint
### Features
* *(event)* Simplify dispatching task updated event from only a task id
* *(navigation)* Use focus-visible for nav items
* *(task)* Use focus-visible for task focus styles
### Miscellaneous Tasks
* *(attachments)* Refactor building image preview
* *(devenv)* Do not install cypress on darwin
* *(docker)* Use new env format
* *(docs)* Clarify usage of related model creation
* *(errors)* Always add internal error to echo error
* *(files)* Use absolute file path to retrieve and save files
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(i18n)* Update translations via Crowdin
* *(logging)* Simplify log template string
* *(magefile)* Use tx.Sync instead of Sync2
* *(subscription)* Return subscription entity type using json Marshaler
* *(tasks)* Move drag options to direct attributes instead of v-bind
* *(typesense)* Add more debug logging
* *(web)* Move web handler package to Vikunja
* *(web)* Remove unused echo context
* *(web)* Use errors.As instead of type assertion
* *(web)* Remove redundant use of fmt.Sprintf
* *(web)* Directly use new db session
* *(web)* Use config directly
* *(web)* Use web auth factory directly
* *(web)* Use logger directly
* *(web)* Always set internal error* Remove console.log ([40105ee](40105ee4ced980f52565baec4c3219b0ddd4f6ec))
* Fix comment ([1df4a4e](1df4a4ea2e2ca4332347468e8973a2dcbab06ed7))
* Add go and direnv to recommended vscode extensions ([6ab12b9](6ab12b9dd133b52ed7267b6e9334081c2f9719ca))
* Remove console.log ([1e7d9c9](1e7d9c982d3d472e9b4082991b41e6567556f2b2))
* Rearrange cron registers ([4857bfb](4857bfbbdb8401b6ef02b1dc8de93f2a09e8bc3a))
### Other
* *(other)* [skip ci] Updated swagger docs
2024-08-12 20:22:07 +02:00
## [0.24.2] - 2024-08-12
### Bug Fixes
* *(i18n)* Change casing of Ukrainian language in selector
* *(kanban)* Always make cover image full width
* *(mail)* Do not fail testmail command when the connection could not be closed.
* *(migration)* Make sure tasks are associated to the correct view and bucket for data imported from Vikunja dump
* *(migration)* Ensure project background gets exported and imported
* *(projects)* Trigger only single mutation
* *(task)* Do not allow moving a task to the project the task already belongs to
* *(task)* Set current project after moving a task
* *(task)* Move task into new kanban bucket when moving between projects
* *(views)* Do not create task bucket and task position entries when duplicating a project* Emit for DatepickerWithValues ([3aaf363](3aaf3634134a6989337bad02ac99a9329d33b17f))
* Textarea autosize for LanguageTool ([d9f5555](d9f555554e5ecfa9d1243c565e2f42c77f7a7597))
* Remove console log ([0ca43dc](0ca43dc147acd04d9f9b566325ccde0a5782680f))
### Dependencies
* *(deps)* Update module github.com/coreos/go-oidc/v3 to v3.11.0
* *(deps)* Update flake
* *(deps)* Update go toolchain to 1.22.5
* *(deps)* Update dependency node to v20.16.0
### Documentation
* Clarify Todoist redirect url ([7117303](7117303d5705199bb39fb6661b20deebea96959f))
### Features
* *(editor)* Support custom protocol for links* Use withDefaults for Reminders ([8729c24](8729c24e1d2bdc783e750dc1166a8ab31a716107))
* Improve projects store ([d707e15](d707e1576a006baa73c529b432e694dee237db76))
* Improve label store ([a0e3efe](a0e3efe2d12521e773334a19ac985a2011575c3c))
* Improve priority visibility ([dddba4d](dddba4d64a9ddddd6f442c8180661d2d498de994))
* Add tailwind with prefix (#2513) ([d7c5451](d7c54517297e750d92618376f52045b11da6e82c))
* Improve ProjectSettingsViews ([811ccc1](811ccc1baa2fe1fb9fcc8b5515c8c3f3b591e96a))
* Add missing peer dependency ([d586f69](d586f691b7a245bbffd5df4e7a4937f0527047e0))
* Switch from nix flakes to devenv ([73f923b](73f923bc47d32a6a9a689e461901295b07646ebf))
### Miscellaneous Tasks
* *(i18n)* Update translations via Crowdin
* Remove lodash.debounce ([fc780a9](fc780a90ae856038db73d3ad63fcdd5627211c36))
* Improve error message ([6e38bcf](6e38bcf3498a15a1dc1f6fbef254c08513b408b3))
* Use nixpkgs unstable for more recent packages ([f5040ad](f5040ad2f4996fe1ccf03172b1a1ee6007068ee7))
### Other
* *(other)* [skip ci] Updated swagger docs
2019-11-24 19:33:16 +01:00
2024-07-18 16:56:04 +02:00
## [0.24.1] - 2024-07-18
### Bug Fixes
* *(api tokens)* Show error message when the user tries to create an api token without at least one permission selected
* *(filter)* Make sure filter values are properly escaped before executing them
* *(filters)* Add task to buckets of saved filters when creating the task
* *(filters)* Add tasks to filter buckets when updating the filter
* *(filters)* Do not create a default filter for list view when creating a saved filter
* *(filters)* Immediately emit filter query when editing saved filter
* *(filters)* Make sure filters are replaced case-insensitively before filtering on the server
* *(filters)* Only insert task buckets and positions when there are any
* *(filters)* Reload tasks silently when marking one done in the list
* *(filters)* Show actual error message from api when the filter query is invalid
* *(filters)* Trim spaces when parsing filter values
* *(kanban)* Dispatch task updated event when task is moved between buckets
* *(kanban)* Dispatch task updated event when task position is updated
* *(kanban)* Do not allow to create new tasks in saved filter
* *(kanban)* Do not move repeating task into a different bucket
* *(kanban)* Make sure tasks which changed their done status are moved around in buckets
* *(kanban)* Move repeating task back to old bucket when moved to the done bucket
* *(kanban)* Move task to done bucket in all views when moved to done bucket in one view
* *(kanban)* Move task to done bucket when it was marked done from the task detail view
* *(kanban)* Put task into correct bucket when creating via kanban board
* *(kanban)* Update task done status after moving it into done bucket
* *(kanban)* Use correct assertion in the test
* *(kanban)* Use correct text color for deletion button
* *(migration)* Correctly set bucket for related tasks
* *(migration)* Failed migration typo
* *(migration)* Revert to old path for migration routing
* *(project)* Do not use project id of nil project in error
* *(projects)* Do not create backlog bucket when duplicating views
* *(projects)* Do not create buckets in the original project when duplicating a project
* *(quick add magic)* Create the task even when it only contains quick add magic keywords
* *(settings)* Overflow of select on mobile
* *(task)* Use backdropView prop
* *(tasks)* Do not use typesense modified options to search with database
* *(tasks)* Explicitly add task position to select statement when looking up tasks with Typesense
* *(tasks)* Limit to max 250 entries when using typesense
* *(translation)* TOTP casing
* *(typesense)* Do not crash after creating a project when tasks are not yet indexed
* *(typesense)* Do not use modified opts for db fallback search
* *(typesense)* Reindex tasks when their position changed
* *(vscode)* I18n-ally locales path* ProjectSearch default value ([f08039b](f08039b23c1ff8ca208f5c5911f788780ecc80ee))
* Add info log message when starting to run migrations ([5e36bf7](5e36bf797e99d99f83cb084f8c1707d994d0559f))
* Add missing disabled prop ([ed0ef38](ed0ef385e9ba34524d3309bec87eeb44d9dba471))
* App bottom padding ([51660f7](51660f76779e189bca2a24f1e4fca34b8a1a2898))
* Disable button if loading ([a721d92](a721d9286bbb26e0a182992af6b2128e03d5670f))
* Dropdown item disabled prop ([3317280](3317280062c8506d092d5121b92eb4992177f9c2))
* Gitignore dist path ([7ef6ddf](7ef6ddf8f7630e6370bed762779b4ebabbf8962b))
* Lint ([7c42fb5](7c42fb5d75fd9a5aa01abaa852452875f07a1f61))
* Missing error handling ([744b40e](744b40e7f780851d5ce8a288271f78acc462ed14))
* Muliselect optional props ([0a81855](0a81855bc1b403233dec18f036c80f3cad70edee))
* Reorder mail options (#2533) ([136ef58](136ef58820b8e2d27ad0ca50bdd9adabd8e4a95d))
* Scss deprecation warning ([db81701](db81701d3841e12c39b751e919d70fdafc1869d6))
* Spelling mail ([2dc5415](2dc541571cbecc02a178182217d1e4596e4a62aa))
* Wrapped button ([af639a1](af639a180cf56519e9a3a31710da6fee5b305735))
### Dependencies
* *(deps)* Update dependency @github/hotkey to v3.1.1 (#2329)
* *(deps)* Update dependency @sentry/vue to v8.14.0
* *(deps)* Update dependency @sentry/vue to v8.15.0
* *(deps)* Update dependency @sentry/vue to v8.17.0
* *(deps)* Update dependency @sentry/vue to v8.18.0
* *(deps)* Update dependency dayjs to v1.11.12
* *(deps)* Update dependency dompurify to v3.1.6
* *(deps)* Update dependency ufo to v1.5.4
* *(deps)* Update dependency vue to v3.4.32
* *(deps)* Update dependency vue-tsc to v2.0.26
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update flake
* *(deps)* Update font awesome to v6.6.0
* *(deps)* Update goreleaser/nfpm docker tag to v2.38.0
* *(deps)* Update module github.com/arran4/golang-ical to v0.3.1 (#2606)
* *(deps)* Update module github.com/microcosm-cc/bluemonday to v1.0.27
* *(deps)* Update module golang.org/x/crypto to v0.25.0
* *(deps)* Update module golang.org/x/term to v0.22.0
* *(deps)* Update pnpm to v9.5.0
* *(deps)* Update tiptap to v2.5.4
### Features
* *(Multiselect)* Hide multiselect during loading
* *(project)* Add " - duplicate" suffix to duplicated projects title* Move powered by to bottom ([f9e0b43](f9e0b4370700b4cc9c8e99923737bb5aa022a1d0))
* Add withDefaults and emit types to PrioritySelect ([aaa2abc](aaa2abced4258645a9a47b228cece21741bfea25))
* Add withDefaults, defineEmits and defineSlots types for Dropdown ([5545b0e](5545b0e447d406837324186c765cf2e8c8ed47c4))
* Define prop and emit types DatepickerWithRange ([daeefeb](daeefeb487966bfc6535b3d5c8e1dd07ec8a0951))
* Define prop and emit types for FilterPopup ([9d2e79f](9d2e79f7253006d504bd916ab8d820187d50700b))
* DefineModel and withDefaults for PercentDoneSelect ([8ac0eb4](8ac0eb4aa4fbe5a3b147e7f31a29aa2c2f84a1ca))
* Improve BaseButtonEmits type ([c37fe49](c37fe4989015ee18b38bd89b9470c14484759cc8))
* Improve main nav spacing and open speed ([faa797f](faa797f461a57e8a9e115b760af92ab0024f6eed))
* Improve settings label casing ([20efacf](20efacfa59a7f7ff81fd17c2c3b3c9a1d5528e5d))
* Remove PropTypes helper from FilePreview ([0bc1832](0bc18320509e6db7ae484f7336282b7e8e5e841e))
* Remove PropTypes helper from ProjectInfo ([8ad7e7c](8ad7e7c9055e50768ea5b0ad5798d395bb5d3514))
* Remove PropTypes helper from ProjectSettingsEdit ([85889ff](85889fff5603f0b7c7a0f833cae7c32610eeede4))
* Remove eslint rule vue/no-required-prop-with-default ([df1f805](df1f805294e34f8bfaaf60ea65f18cabbd932d9c))
* Remove props destructuring ProjectSettingsViews ([20bdb01](20bdb011877fe17fe5c266eafe77b96dce1646d9))
* Remove props destructuring for DeferTask ([46aa2ff](46aa2fff0f01bf233e4edd39e6675c358c488794))
* Remove props destructuring for Filters ([3ff56d7](3ff56d79874d013ad97c8635fd580edf95290b39))
* Remove props destructuring for ProjectView ([553a97f](553a97f03de3e16593c006ca4a9043fadf5d6a6f))
* Remove props destructuring for ProjectWrapper ([38744df](38744dfd5db0acb53ae03db5e2021265876df2f7))
* Remove props destructuring from Attachments ([07130bd](07130bdc3a65bfb4ed1775e61312b68c62521a4a))
* Remove props destructuring from ColorPicker ([eb07be1](eb07be1a62a9af377b044a7e0268d9d7a8bab77c))
* Remove props destructuring from FilterDelete ([825d1ad](825d1add49595184593ff6fb3ab228cf3fbde9cb))
* Remove props destructuring from FilterEdit ([449e9a9](449e9a911c2fcca7712479cd78dbfe80d5a4bde2))
* Remove props destructuring from FilterInput ([fd6692e](fd6692ea1afce3950c2295a4e8fb551af80e52aa))
* Remove props destructuring from KanbanCard ([ddc18aa](ddc18aa17739963afa5d156241aa07b7100374f4))
* Remove props destructuring from NoAuthWrapper ([c9591fe](c9591fe464e24f38126d5562ef7d0e6060f14b39))
* Remove props destructuring from ProjectKanban ([5af908b](5af908b2e5508712004ee1c702915e4def0ca007))
* Remove props destructuring from ProjectList ([0c70aed](0c70aedeb1a5ca05db3cc2b87138d28427eac959))
* Remove props destructuring from ProjectTable ([99e90c0](99e90c0b02561f1c7b8f49b93ece11b878137e48))
* Remove props destructuring from ShowTasks ([d02c349](d02c349231f29326511755dcae5003d3b3c01ca0))
* Remove props destructuring from SingleTaskInProject ([a15831e](a15831eb33b5104e19f0b85b882dd8ec5336ba62))
* Remove props destructuring from TaskDetailView ([a10f9ca](a10f9ca22580f6fcc435f152776867b380d5be6c))
* Remove props destructuring from ViewEditForm ([2f92e40](2f92e407ccf42892675dc1583dfa057474cb2489))
* Remove unnecessary prop from Card ([1eb1aa2](1eb1aa257574733894f865913a4bb173e22774ea))
* Rename TheNavigation to AppHeader ([43e38fa](43e38fae17d987d96820dcdfd936fcf8d11899ff))
* Simplify playPopSound setting check ([42c458a](42c458a736d88bf4b0f18fa23c08273ddf9c7ca5))
* Type defineEmits for ApiConfig ([1966cc3](1966cc3c0e7a590651db2a5bd0acdcd83e948aa7))
* Type defineEmits for Card ([043a6dd](043a6dd049ba22fa1c87ed88aa0b2f8dba4f2593))
* Type defineEmits for CreateEdit ([098c99f](098c99fd2ede44ddf231e1b504b9cf6d8c0ed17b))
* Type defineEmits for Heading ([fd3f1de](fd3f1de861ac593c0f780c3f341a4b0c5d7b2f1b))
* Type defineEmits for ProjectSearch ([f38a5c9](f38a5c9220c6404152e261a78e4829e52cef5d1b))
* Use withDefaults for Comments ([f19f19b](f19f19bb75a457dc2073d8a06f064eae04a3b772))
* Use withDefaults for DateTableCell ([f586e51](f586e51aad5194043fec37e3b0af94a30c95f3a3))
* Use withDefaults for Datepicker ([78811d9](78811d916aeaa105560c5b7c091290f3b2e38683))
* Use withDefaults for DatepickerInline ([df6a9b6](df6a9b67fd2a462e5027538e521da174ecd24bc6))
* Use withDefaults for DatepickerWithValues ([cb70641](cb706416c61ba31d1fd54d8b9bd8549cc9a33528))
* Use withDefaults for EditLabels ([6e72606](6e72606d7454fbb3b17302d3ef1d2cdf186873ae))
* Use withDefaults for FancyCheckbox ([b4e9d94](b4e9d9437e4fb4b8e5e56c633fc4c74ee45a6225))
* Use withDefaults for Heading ([5cf57a5](5cf57a520cd7048aba0656ce00333cc7cfcc14f9))
* Use withDefaults for Pagination ([1083216](10832165c3798bef63590c292426feb67e178f15))
* Use withDefaults for Password ([577f5ae](577f5ae69a31e14cdff6e0aed5f3091d07484faa))
* Use withDefaults for PriorityLabel ([871e0ac](871e0acd8aa8ba6a9ad7fb08bda8badf20104f94))
* Use withDefaults for ProgressBar ([2f63384](2f6338484bda4670133f3db6c122dbaa6a231c15))
* Use withDefaults for ProjectCardGrid ([479b786](479b786761948b0a0427676c42e082e75579029c))
* Use withDefaults for Reactions ([d6c3b5a](d6c3b5a9a10a04c8fac47ad998ebf434e93dfa71))
* Use withDefaults for ReminderPeriod ([4b9b9da](4b9b9da122a2d085dcff8fbb8dd2693062689fd4))
* Use withDefaults for RepeatAfter ([c8585d1](c8585d1a691403e6331cd9aff852873c0f7771d3))
* Use withDefaults for SelectProject ([fd12c87](fd12c8705ea9b28db6947fd98f2d34ce46fc15b2))
* Use withDefaults for SelectUser ([b500981](b50098143474be8d86e0ae0543bab1787585dfe7))
* Use withDefaults for Subscription ([30769fb](30769fb6eadb21d45629dcf2c67cc1174d26e828))
* Use withDefaults for UserTeam ([f2fdbad](f2fdbad7d4bde5880694a611a4f9d68fe2017367))
* Use withDefaults in ReminderDetail ([a56331d](a56331d39d12c65838b13987fe2096c4ca2a703f))
* WithDefaults for EditAssignees ([f1481d7](f1481d702cc426cddfeda0edae6a6cd06d9f3380))
* WithDefaults for Multiselect ([413d1f9](413d1f9ad7e9ba0234d81a1564745cd03d9f1044))
### Miscellaneous Tasks
* *(i18n)* Update translations via Crowdin
* *(popup)* Trigger close function directly
* *(project)* Rename receiver
* 0.24.0 release preparations ([0b14c31](0b14c311b4d344aecf974489eee19ab939c676ad))
* Go mod tidy ([e640149](e640149a23c931838a93b737804287a9ed570268))
* Update golangci lint config ([d2602a7](d2602a7629ee3d8cd67beb8ef1a44ca3cd2dd7f9))
* *(other)* [skip ci] Updated swagger docs
2024-07-02 17:46:53 +02:00
## [0.24.0] - 2024-07-02
### Bug Fixes
* *(BaseButton)* Comment spelling (#2348)
* *(assignees)* Spacing of users
* *(attachment)* Correct spacing around creation date
* *(auth)* Test assertion
* *(auth)* Use (issuer, name) to check for uniqueness of oidc teams (#2152)
* *(auth)* Log user out when the current account does not exist
* *(backgrounds)* Return full project after uploading image
* *(buckets)* Return correct task count for tasks in buckets
* *(caldav)* Return more than 1000 tasks
* *(caldav)* Check if vtodo contains any components
* *(caldav)* Do not crash for wrong parameters
* *(ci)* Enable cors for api testing
* *(ci)* Use correct docker image for frontend testing
* *(ci)* Use correct docker image
* *(ci)* Use correct docker image for desktop rename
* *(ci)* Correctly set shell for rename command
* *(ci)* Escape bash script for drone variable substitution
* *(ci)* Run test db in memory
* *(ci)* Sign drone config
* *(ci)* Exclude tasks from cron runs
* *(comments)* Order comments by created timestamp instead of id
* *(comments)* Do not use whitespace as gap
* *(datepicker)* Emit date value changes as soon as they happen
* *(datepicker)* Make the date format in the picker consistent with the input field
* *(db migration)* Do not try to create a unique index
* *(docker)* Don't install cypress in docker image
* *(docs)* Openid docs whitespace formatting (#2186)
* *(docs)* Typos
* *(docs)* Correctly document filter query usage
* *(dump)* Do not export files which do not exist in storage
* *(dump)* Only allow imports from the same version they were dumped on
* *(editor)* Ensure task list clicks are only fired once
* *(editor)* Set default id of tasklist items
* *(editor)* Revert task list dependence on ids
* *(editor)* Don't allow image upload when it's not possible to do it
* *(editor)* Do not use Tiptap to open links when clicking on them, use the browser native attributes instead
* *(editor)* Do not prevent shift+enter to add a line break in text
* *(editor)* Use colors from color scheme to render table cells
* *(export)* Make export work with project views and new task positions
* *(extensions)* Remove typescript-vue-plugin from recommendations (#2353)
* *(favorites)* Make favorites work with configurable views
* *(favorites)* Allow marking favorite tasks as done from favorites pseudo project
* *(filter)* Make sure single filter condition works
* *(filter)* Don't crash on empty filter
* *(filter)* Allow filtering on "in" condition
* *(filter)* Allow filtering for "project"
* *(filter)* Translate all tests
* *(filter)* Correctly filter for buckets
* *(filter)* Add role=search to filter card
* *(filter)* Correctly pass down options
* *(filter)* Bubble filter query changes up on blur only
* *(filter)* Don't transform anything when input is empty
* *(filter)* Correctly replace project title in filter query
* *(filter)* Do not match join operator
* *(filter)* Do not show filter footer when creating a filter
* *(filter)* Add white background to filter input
* *(filter)* Make sure highlight works for doneAt attribute
* *(filter)* Move spaces out of button to after the matched filter value to prevent removal of spaces
* *(filter)* Clarify `in` filter syntax
* *(filter)* Trim search term before searching
* *(filter)* Do not add enter in input field
* *(filters)* Lint
* *(filters)* Use readable colors for dark and light mode
* *(filters)* Date filter value not populated
* *(filters)* Make the button look less like a button to avoid spacing problems
* *(filters)* Color
* *(filters)* Make sure spaces before and after are not removed
* *(filters)* Pass correct filter query to kanban and gantt loading
* *(filters)* Swagger docs for kanban buckets
* *(filters)* Correctly use filter in saved filter
* *(filters)* Remove footer when editing a saved filter
* *(filters)* Layout problems with assignee user avatar
* *(filters)* Lint
* *(filters)* Close filter popup when clicking on show results
* *(filters)* Test fixture
* *(filters)* Correctly use date filters in gantt chart
* *(filters)* Do not require string for in comparator
* *(filters)* Parse labels and projects correctly when using `in` filter operator
* *(filters)* Label highlighting and autocomplete fields now work with in operator
* *(filters)* Don't escape valid escaped in queries
* *(filters)* Invalid filter range when converting dates to strings
* *(filters)* Replace project titles at the match position, not anywhere in the filter string
* *(filters)* Set default filter value to only undone tasks
* *(filters)* Rework filter popup button
* *(filters)* Lint
* *(filters)* Persist filters in url
* *(filters)* Do not fire filter change immediately
* *(filters)* Do not watch debounced
* *(filters)* Correctly return project from filter
* *(filters)* Correctly replace values when clicking on an autocomplete result
* *(filters)* Clear autocomplete results when starting the next character
* *(filters)* Make sure the same filter attribute is transformed in all instances
* *(filters)* Enclose values with a slash in them as strings so that date math values work
* *(filters)* Always show filter values in a readable color
* *(filters)* Always persist filter or search in query path and load it correctly into filter query input when loading the page
* *(filters)* Explicitly use `tasks.id` as task id filter column
* *(filters)* Do not match partial labels
* *(filters)* Allow managing views for saved filters
* *(gantt)* Use color variables for gantt header so that it works in dark mode
* *(gantt)* Correctly show day in chart
* *(i18n)* Use correct title for background settings menu
* *(i18n)* Clarify from current date string
* *(i18n)* Typo
* *(i18n)* Adjust tests from 34780daab0af0c088d6484d5fa0ddfba01471e8b
* *(i18n)* Remove duplicate key
* *(kanban)* Pass active filters down to task lazy loading
* *(kanban)* Reset done and default bucket when the bucket itself is deleted
* *(kanban)* Do not use the bucket id saved on the task
* *(kanban)* Remove unused function
* *(kanban)* Make sure all saved taskBucket positions are saved with their project view id
* *(kanban)* Save done and default bucket on the view and not on the project
* *(kanban)* Do not focus kanban board
* *(kanban)* Do not add bottom spacing to view
* *(kanban)* Do not focus on task list in bucket when clicking on a task
* *(kanban)* Fetch project and view when checking permissions
* *(kanban)* Remove leftovers of kanban_position property
* *(labels)* Make sure labels are aligned in the middle
* *(labels)* Allow link shares to add existing labels to a task
* *(logo)* Use correct month for pride logo change
* *(logo)* Add width and height to pride logo svg
* *(metrics)* Typo
* *(migration)* Make sure to correctly check if a migration was already running
* *(migration)* Do not halt the whole migration when copying a background file failed
* *(migration)* Show correct help message when a migration was started
* *(migration)* Do not expire trello token
* *(migration)* Convert trello card descriptions from markdown to html
* *(migration)* Trello checklists (#2140)
* *(migration)* Updated Trello color map to import all labels (#2178)
* *(migration)* Import card covers when migrating from Trello
* *(migration)* Only download uploaded attachments
* *(migration)* Show correct message after starting a migration
* *(migration)* Trello: only fetch attachments when the card actually has attachments
* *(migration)* Import card comments from Trello when migrating
* *(migration)* Invalid field in organization struct
* *(migration)* Import task comments with original timestamps
* *(migration)* Remove buckets table name when dropping index
* *(migration)* Ensure tasks are put into the correct bucket when migrating from todoist
* *(migration)* Put "Import from other services" in settings
* *(modal)* Do not set p in modal card as flex
* *(navigation)* Do not hide shadows of dropdown menu
* *(navigation)* Scrolling when many projects are present
* *(notifications)* Only sanitze html content in notifications, do not convert it to markdown
* *(notifications)* Rendering of plaintext mails
* *(openid)* OIDC teams should not have admins (#2161)
* *(password)* Don't validate password min length on login page
* *(pnpm)* Remove obsolete settings
* *(project)* Don't allow archival or deletion of default projects in UI
* *(project)* Check for project nesting cycles with a single recursive cte instead of a loop
* *(project)* Typo in table name
* *(project)* Correctly show the number of tasks and projects when deleting a project
* *(project)* Load full project after creating a project
* *(project)* Save the last 6 projects in history, show only 5 on desktop
* *(project)* Return the full project when setting a background
* *(project)* Remove child projects from state when deleting a project
* *(project)* Do not crash when views were not loaded yet
* *(project)* Delete all related entities when deleting a project
* *(project)* Do not crash when duplicating a project with no tasks
* *(project)* Return full project after duplicating it
* *(project)* Add more spacing between filter button and view switcher on mobile
* *(project)* Bottom spacing in list view
* *(project)* Make sure gantt and kanban views shared with link share are full width
* *(project)* Do not remove project from navigation after removing background image
* *(project)* Show "remove background" button only when the project has a background set
* *(projects)* Return correct project pagination count
* *(projects)* Load all projects when first opening Vikunja
* *(projects)* Load projects only one when fetching subscriptions for a bunch of projects at once
* *(projects)* Remove done bucket id field from projects struct
* *(projects)* Allow arbitrary nesting of new projects
* *(projects)* Do not return parent project id of parents where the user does not have access
* *(projects)* Do not return parent project id when authenticating as link share
* *(quick actions)* Do not allow creating a task when the current project is a saved filter
* *(quick add magic)* Parse full month name as month, do not replace only the abbreviation
* *(quick add magic)* Assume today when no date was specified with time
* *(reactions)* Do not enable reaction picker when the current user does not have write access
* *(reminder)* Do not close the popup directly after changing the value
* *(reminders)* Emit reminder changes at the correct time (and make sure they are actually emitted)
* *(reminders)* Make debounce logic actually work
* *(reminders)* Do not fall back to hours when the reminder interval is minutes
* *(reminders)* Do not show relative reminders as minutes when they round to hours
* *(restore)* Transform json fields during restore
* *(semver)* Fix produced version number (#2378)
* *(sentry)* Send unwrapped error to sentry instead of http error
* *(sentry)* Do not send api errors to sentry
* *(sharing)* Show user display name and avatar when displaying search results
* *(table view)* Do not sort table column fields when the field in question is hidden
* *(task)* Move done tasks to the done bucket when they are moved between projects and the new project has a done bucket
* *(task)* Navigate back to project when the project was the last page in the history the user visited
* *(task)* Clear timeout for description save when closing the task detail
* *(task)* Do not crash when loading a task if parent projects are not loaded
* *(task)* Show repeating indicator in task list for monthly repeating tasks
* *(task)* Only count unique tasks in a bucket when checking bucket limit
* *(task)* Do not require admin permission to move tasks between buckets
* *(task)* Do not try to set bucket for filtered bucket configuration
* *(task)* Show correct success message when marking a repeating task as done
* *(task)* Do not move task dates when undoing a repeated task
* *(tasklist)* Migrate old tasklist format
* *(tasks)* Sort done tasks last in relations
* *(tasks)* Correctly show different project in related tasks
* *(tasks)* Use correct filter query when filtering
* *(tasks)* Index and order by task position when using typesense
* *(tasks)* Make fetching tasks in buckets via typesense work
* *(tasks)* Ambiguous column name error when fetching favorite tasks
* *(tasks)* Do not crash when order by id and position
* *(tasks)* Tests
* *(tasks)* Clarify usage of repeating modes available in quick add magic.
* *(teams)* Use the same color for border between teams in list
* *(teams)* Do not show leave button for OIDC teams (#2181)
* *(teams)* Fix duplicate teams being shown when new public team visibility feature is enabled (#2187)
* *(test)* Use correct selector in Cypress test
* *(test)* Correctly mock localstorage in unit tests
* *(test)* Visit one more project in project history test
* *(test)* Add task to bucket in test
* *(test)* Cast result before comparing
* *(tests)* Make filter tests work again
* *(tests)* Do not try to create tasks with bucket_id
* *(ts)* Align with create-vue setup
* *(typesense)* Fix reindexing views and positions in typesense
* *(typesense)* Make fetching task positions per view more efficient
* *(typesense)* Correctly incorporate existing filter when it is empty
* *(typesense)* Only return distinct tasks once
* *(typesense)* Correctly join task position table when sorting by it
* *(typesense)* Do not try to sort by position when searching in a saved filter
* *(typesense)* Correctly index assignee changes on tasks
* *(views)* Correctly fetch project when fetching tasks
* *(views)* Do not break filters when combining them with view filters
* *(views)* Make gantt view load tasks again
* *(views)* Make table view load tasks again
* *(views)* Make fetching tasks in kanban buckets through view actually work
* *(views)* Fetch buckets through view
* *(views)* Return tasks in their buckets
* *(views)* Return buckets when fetching tasks via kanban view
* *(views)* Return tasks directly or in buckets, no matter if accessing via user or link share
* *(views)* Make no initial view work in the frontend
* *(views)* Move to new project view when moving tasks
* *(views)* Do not load views async
* *(views)* Get tasks in saved filter
* *(views)* Make setting task position in saved filters work
* *(views)* Make bucket creation work again
* *(views)* Make bucket edit work
* *(views)* Do not return kanban tasks multiple times
* *(views)* Make parsing work
* *(views)* View deletion
* *(views)* Create view
* *(views)* Set correct default view
* *(views)* Set current project after modifying views
* *(views)* Make kanban tests work again
* *(views)* Move all tasks to the default bucket when deleting a bucket
* *(views)* Duplicate all views and related entities when duplicating a project
* *(views)* Update test fixtures for new structure
* *(views)* Test assertions
* *(views)* Count task buckets
* *(views)* Return correct error
* *(views)* Integration tests
* *(views)* Import
* *(views)* Lint
* *(views)* Lint
* *(views)* Make tests for project history kind of work again
* *(views)* Tests for kanban and gantt views
* *(views)* Correctly pass project id when loading more tasks in kanban views
* *(views)* Return only tasks when the bucket id was already specified
* *(views)* Reset bucket when moving tasks between projects
* *(views)* Make kanban cypress tests work again
* *(views)* Make list cypress tests work again
* *(views)* Always redirect to the first view when none was specified
* *(views)* Make table view cypress tests work again
* *(views)* Correctly save and retrieve last accessed project views
* *(views)* Make link share cypress tests work again
* *(views)* Make overview cypress tests work again
* *(views)* Make task cypress tests work again
* *(views)* Kanban test assertions
* *(views)* Update done status of recurring tasks
* *(views)* Include order by fields in distinct clause when sorting by task position
* *(views)* Stable assertion for bucket in tests
* *(views)* Redirect to project after authenticating with a link share
* *(views)* Intercept request
* *(views)* Create bucket in test
* *(views)* Create default bucket
* *(views)* Do not map bucket id from xorm
* *(views)* Add bottom spacing
* *(views)* Update all fields when updating a view
* *(views)* Use correct assertion in test
* *(views)* Correctly pass view id to wrapper when gantt view is active
* *(views)* Transform view filter before and after loading it from the api
* *(views)* Refactor filter button slot in wrapper
* *(views)* Remove default filter from frontend, apply by default to new list views instead (#2240)
* *(views)* Check if bucket index already exists before creating new index
* *(views)* Make sure the view is saved properly in localStorage
* *(views)* Make sure view changes are reflected in switcher
* *(views)* Only allow project admins to manage views
* *(views)* Transform bucket configurations
* *(views)* Edit views with filters
* *(views)* Do not allow moving tasks or editing board when bucket mode is filter
* *(views)* Move bucket update to extra endpoint
- **BREAKING**: The bucket id of the task model is now only used internally and will not trigger a change in buckets when updating the task.
* *(vue)* ToValue instead of unref
* *(webhook)* Log errors in webhook response
* *(webhooks)* Fire webhooks set on parent projects as well* Never return frontend on routes starting with /api ([641fec1](641fec12157504b8ed2935ba9943828662a725f9))
* Do not send etag when serving the frontend index file ([a12c169](a12c169ce88c5cf6711a3239f1687a1dad24a241))
* Lint ([162741e](162741e94064ee199cd5ff021d1ed05f7f5d5ff1))
* Lint ([cc5f48e](cc5f48eb7411f2afa1b0bfb0fc975356b330399a))
* Lint ([ff1730e](ff1730e323b61c8c5ab6f9955bb067bc04e72c8f))
* Clarify preview deployment text and fix typo ([1ffb93b](1ffb93b63c6a57202c7154d09c1db749779b2fbd))
* Lint ([1275dfc](1275dfc260cfd3be98ebed652ef449f182ca42ff))
* Usage of limit and order by usage in recursive cte ([5b70609](5b70609ba760ea68b43f6d42a69a1b32eeb2abec))
* Open external migration service in current tab ([178cd8c](178cd8c3927759a5ca553b3ae76be5ff23e23d83))
* Add root ca to final docker image ([e42a605](e42a605597335507c71ac038f51a775df2775ebd))
* Lint ([6fc3d1e](6fc3d1e98fe28d7e561a4ebe1d00938f8346fae1))
* Lint ([49ab90f](49ab90fc19f9da7d1308c923d6dd99b8a6a355ef))
* Lint ([5e9edef](5e9edef3b36f6a4be5002b8aef4bc02c7649f7b6))
* Lint ([6f51b56](6f51b565895edd75ca26d96c08af26d85ce38f3a))
* Pick first available view if currently configured view got deleted (#2235) ([c4d3d99](c4d3d99cd49aa65d602327abcc5f848d81d6da4e))
* Do not try to fetch nonexistant bucket ([037022e](037022e8570f9b7b0d3053e2b20057b8f5630803))
* Update task in typesense when adding a label or assignee to them ([5213006](521300613f24f2ed585ca7da49a02b58f7d77fb8))
* Lint ([1cd5dd2](1cd5dd2b2fc06731c70721a42ca93966449fa3d2))
* Drop bucket index before recreating it ([ca33c0b](ca33c0b2bcaf9de018cecca1051bc4c3b176ce61))
* Lint ([af3b0bb](af3b0bbea1f31725910011a57bf8db81b8d73e43))
* Lint ([7d755fc](7d755fcb89bbdbbb4f5fe7f329903f1ffba96a29))
* License in cmd help text ([9a16f6f](9a16f6f817157316ce40c8c76f83a8e0d8c0e669))
* Do not push nil errors to sentry ([1460d21](1460d212ee4a0e2baddb297d52d91af69d58c881))
* Correctly return error and bubble up when the api could not be reached ([84197dd](84197dd9c14b7f016bad452f8d529b32f593683c))
* Do not remove empty openid teams when none are present ([66e9632](66e96322eabf009b25a1f7b9c4b2750b9cb47817))
* Use correct project title in project card ([d3a7d79](d3a7d79eb95595f7154b9fbf05e369941189cf5c))
* Ignore casing to check if file extensions can be previewed (#2341) ([81bdad4](81bdad4bebdc8ee19c01d8b44012e89daef6930b))
* Recommended vitest extension (#2351) ([d3d5df5](d3d5df5f62cbb61dd8bb9166500203b212173f28))
* Remove obsolete vscode plugin settings (#2354) ([666eef2](666eef248b5b328f51bda430098d4a6fa625e9db))
* Throw in warnHandler ([81bb49f](81bb49f83aa7878963bb21a436f96d766464188c))
* Use node20 typescript types ([abf912f](abf912f93f86f98855fd141d8c9e4deb447390c1))
* Remove jsxTemplates ([9fa8c54](9fa8c5429b1191e9705caf06d113ec196755e0ae))
* Remove wrong expression ([fe2c390](fe2c3906cabce98fe4dbe1bb7240424fc58e6a05))
* Remove obsolete types ([97a11d2](97a11d2e120f7819be8eed31765ab152fd69da35))
* UseTitle types (#2369) ([9fd17ac](9fd17aca1813087e98b4d5e5a758b7e62482d3d9))
* Remove obsolete vite reactivityTransform option (#2349) ([3718d09](3718d09f3573cfd122ccff92576ee4e03abdd0b6))
* Missing required prop BackgroundColor ([47143af](47143af9d1716dac8b75c29c5c26066a96ddc2e6))
* Use button icon prop ([18e23bf](18e23bf371ef2a6067bde0a976ddc546d0a7d73a))
* Remove uppercase transformation from username (#2445) ([ff5ee51](ff5ee515f9da78b506f8be124b9e803b494df49c))
* Disable vetur in case it's installed ([abdec17](abdec17d366b7dbfc2565a6e354e065256a7451e))
* Import PeriodUnit as type ([baaf612](baaf612239e4e53631c9148f2f3735d8a10ca1b4))
* Reset drag.value ([c90ee01](c90ee0142a959135546d5821f03f4615b5020f07))
* Import type in EditorToolbar ([9f375ec](9f375ecd7d8fb36ac74e4d45af19a271b4272551))
* Remove props prefix from template ([b224b33](b224b331f5df94a9a976bccd18d9a905298b9e54))
* Move types to dev dependencies ([7979884](79798847b2a095c3c89931cb3d0354441bee80d4))
* Typecheck ([142443c](142443c0a757968a9c8b2caeb7fddb6c6bc6dc76))
* Align spelling in config.yml.sample (#2499) ([6d79eb0](6d79eb00885c7f597e681ab2af339cdd4a11b807))
### Dependencies
* *(deps)* Update dependency vue to v3.4.18
* *(deps)* Update module golang.org/x/sys to v0.17.0
* *(deps)* Update module github.com/getsentry/sentry-go to v0.27.0
* *(deps)* Update module xorm.io/xorm to v1.3.8
* *(deps)* Pin dependencies
* *(deps)* Update module golang.org/x/oauth2 to v0.17.0
* *(deps)* Update tiptap to v2.2.2
* *(deps)* Update dev-dependencies to v7
* *(deps)* Update pnpm to v8.15.2
* *(deps)* Update dependency vue to v3.4.19
* *(deps)* Update sentry-javascript monorepo to v7.101.0
* *(deps)* Update module github.com/arran4/golang-ical to v0.2.5
* *(deps)* Update pnpm to v8.15.3
* *(deps)* Update module github.com/arran4/golang-ical to v0.2.6
* *(deps)* Update dependency vue-flatpickr-component to v11.0.4
* *(deps)* Update sentry-javascript monorepo to v7.101.1
* *(deps)* Update dependency @kyvg/vue3 -notification to v3.2.0
* *(deps)* Update module github.com/go-testfixtures/testfixtures/v3 to v3.10.0
* *(deps)* Update tiptap to v2.2.3
* *(deps)* Update module github.com/redis/go-redis/v9 to v9.5.0
* *(deps)* Update vueuse to v10.8.0
* *(deps)* Update sentry-javascript monorepo to v7.102.0
* *(deps)* Update module github.com/redis/go-redis/v9 to v9.5.1
* *(deps)* Update dependency electron to v29
* *(deps)* Update dependency dompurify to v3.0.9
* *(deps)* Update dependency vue-router to v4.3.0
* *(deps)* Update tiptap to v2.2.4
* *(deps)* Update pnpm to v8.15.4
* *(deps)* Update sentry-javascript monorepo to v7.102.1
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.4.21
* *(deps)* Update module github.com/prometheus/client_golang to v1.19.0
* *(deps)* Update module golang.org/x/crypto to v0.20.0
* *(deps)* Update sentry-javascript monorepo to v7.103.0
* *(deps)* Update vueuse to v10.9.0
* *(deps)* Update dependency express to v4.18.3
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue-tsc to v2
* *(deps)* Update sentry-javascript monorepo to v7.105.0
* *(deps)* Update module github.com/stretchr/testify to v1.9.0
* *(deps)* Update dependency vue-i18n to v9.10.1
* *(deps)* Update module golang.org/x/sys to v0.18.0
* *(deps)* Update module github.com/arran4/golang-ical to v0.2.7
* *(deps)* Update module golang.org/x/term to v0.18.0
* *(deps)* Update module golang.org/x/crypto to v0.21.0
* *(deps)* Update dependency vue-flatpickr-component to v11.0.5
* *(deps)* Update module golang.org/x/oauth2 to v0.18.0
* *(deps)* Update dev-dependencies
* *(deps)* Update src.techknowlogick.com/xgo digest to 770b8ea
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency @intlify/unplugin -vue-i18n to v3
* *(deps)* Update dependency @intlify/unplugin -vue-i18n to v3.0.1
* *(deps)* Update dependency electron to v29.1.1
* *(deps)* Update github.com/go-jose/go-jose to 3.0.3
* *(deps)* Update sentry-javascript monorepo to v7.106.0
* *(deps)* Update module github.com/golang-jwt/jwt/v5 to v5.2.1
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency @vue/eslint -config-typescript to v13
* *(deps)* Update module github.com/go-sql-driver/mysql to v1.8.0
* *(deps)* Update dependency happy-dom to v13.7.1
* *(deps)* Go mod tidy
* *(deps)* Update dependency node to v20.11.1
* *(deps)* Sign drone config
* *(deps)* Update golangci/golangci-lint docker tag to v1.56.2 (#2099)
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency date-fns to v3.4.0
* *(deps)* Update sentry-javascript monorepo to v7.106.1
* *(deps)* Pin dependency vuemoji-picker to 0.2.1
* *(deps)* Update dependency happy-dom to v13.8.2
* *(deps)* Update dev-dependencies
* *(deps)* Update google.golang.org/protobuf from 1.32.0 to 1.33.0
* *(deps)* Update dev-dependencies
* *(deps)* Update sentry-javascript monorepo to v7.107.0
* *(deps)* Update dependency axios to v1.6.8
* *(deps)* Update dependency ufo to v1.5.0
* *(deps)* Update dependency vue-i18n to v9.10.2
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency ufo to v1.5.1
* *(deps)* Update dependency date-fns to v3.5.0
* *(deps)* Update module github.com/adlio/trello to v1.11.0
* *(deps)* Update dependency date-fns to v3.6.0
* *(deps)* Update dev-dependencies
* *(deps)* Update pnpm to v8.15.5
* *(deps)* Update module xorm.io/xorm to v1.3.9
* *(deps)* Update dependency happy-dom to v14
* *(deps)* Update dependency ufo to v1.5.2
* *(deps)* Update dependency @kyvg/vue3 -notification to v3.2.1
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency dompurify to v3.0.10
* *(deps)* Update module github.com/coreos/go-oidc/v3 to v3.10.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency @infectoone/vue -ganttastic to v2.3.1
* *(deps)* Update dependency express to v4.19.0
* *(deps)* Update dependency ufo to v1.5.3
* *(deps)* Update sentry-javascript monorepo to v7.108.0
* *(deps)* Update dependency dompurify to v3.0.11
* *(deps)* Update dependency express to v4.19.2
* *(deps)* Update module github.com/go-sql-driver/mysql to v1.8.1
* *(deps)* Sign drone config
* *(deps)* Update sentry-javascript monorepo to v7.109.0
* *(deps)* Update dev-dependencies (#2229)
* *(deps)* Update dev-dependencies
* *(deps)* Update src.techknowlogick.com/xgo digest to e01c4fb
* *(deps)* Update golangci/golangci-lint docker tag to v1.57.2 (#2225)
* *(deps)* Update dev-dependencies
* *(deps)* Update pnpm to v8.15.6
* *(deps)* Update dependency @infectoone/vue -ganttastic to v2.3.2
* *(deps)* Update goreleaser/nfpm docker tag to v2.36.1
* *(deps)* Update font awesome to v6.5.2
* *(deps)* Update module github.com/yuin/goldmark to v1.7.1
* *(deps)* Update tiptap to v2.2.6
* *(deps)* Update dependency dompurify to v3.1.0
* *(deps)* Update dependency vue-i18n to v9.11.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue-i18n to v9.11.1
* *(deps)* Update tiptap to v2.3.0
* *(deps)* Update dev-dependencies
* *(deps)* Update module github.com/arran4/golang-ical to v0.2.8
* *(deps)* Update github.com/adlio/trello to v1.12.0
* *(deps)* Update sentry-javascript monorepo to v7.110.1
* *(deps)* Update pnpm to v8.15.7
* *(deps)* Update dependency vue to v3.4.23
* *(deps)* Update dependency @intlify/unplugin -vue-i18n to v4
* *(deps)* Update module golang.org/x/sync to v0.7.0 (#2258)
* *(deps)* Update dependency vue-router to v4.3.2
* *(deps)* Update module github.com/tkuchiki/go-timezone to v0.2.3
* *(deps)* Update module golang.org/x/oauth2 to v0.19.0
* *(deps)* Update sentry-javascript monorepo to v7.111.0
* *(deps)* Update module github.com/labstack/echo/v4 to v4.12.0
* *(deps)* Update dependency vue-i18n to v9.13.0
* *(deps)* Update pnpm to v9
* *(deps)* Update dependency node to v20.12.2 (#2238)
* *(deps)* Update dev-dependencies
* *(deps)* Update pnpm to v9.0.4
* *(deps)* Update dev-dependencies
* *(deps)* Update pnpm to v9.0.5
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.4.24
* *(deps)* Update dependency vue-i18n to v9.13.1
* *(deps)* Update github.com/dustinkirkland/golang-petname digest to 76c06c4
* *(deps)* Update dev-dependencies
* *(deps)* Update sentry-javascript monorepo to v7.112.0
* *(deps)* Update sentry-javascript monorepo to v7.112.1
* *(deps)* Update dependency workbox-precaching to v7.1.0
* *(deps)* Update dev-dependencies
* *(deps)* Update sentry-javascript monorepo to v7.112.2
* *(deps)* Update dependency vue to v3.4.25
* *(deps)* Update dependency vitest to v1.5.1
* *(deps)* Update pnpm to v9.0.6
* *(deps)* Update dependency vitest to v1.5.2
* *(deps)* Update dependency dompurify to v3.1.1
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency dayjs to v1.11.11
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.4.26
* *(deps)* Update tiptap to v2.3.1
* *(deps)* Update dependency dompurify to v3.1.2
* *(deps)* Update dev-dependencies
* *(deps)* Update sentry-javascript monorepo to v7.113.0
* *(deps)* Update dependency vite to v5.2.11
* *(deps)* Update dev-dependencies
* *(deps)* Update module golang.org/x/oauth2 to v0.20.0
* *(deps)* Update module golang.org/x/sys to v0.20.0
* *(deps)* Update module golang.org/x/text to v0.15.0
* *(deps)* Update dev-dependencies
* *(deps)* Update module golang.org/x/term to v0.20.0
* *(deps)* Update module golang.org/x/image to v0.16.0
* *(deps)* Update pnpm to v9.1.0
* *(deps)* Update module golang.org/x/crypto to v0.23.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.4.27
* *(deps)* Update dependency node to v20.13.0
* *(deps)* Update dependency go to v1.22.3
* *(deps)* Update dev-dependencies
* *(deps)* Update sentry-javascript monorepo to v7.114.0
* *(deps)* Update tiptap to v2.3.2
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency node to v20.14.0 (#2334)
* *(deps)* Update dependency go to v1.22.4
* *(deps)* Update dependency @fortawesome/vue -fontawesome to v3.0.8
* *(deps)* Update dependency dompurify to v3.1.5
* *(deps)* Update dependency vue-advanced-cropper to v2.8.9
* *(deps)* Update dependency vue-router to v4.3.3
* *(deps)* Update module github.com/gabriel-vasile/mimetype to v1.4.4
* *(deps)* Update module github.com/ganigeorgiev/fexpr to v0.4.1
* *(deps)* Update module github.com/prometheus/client_golang to v1.19.1
* *(deps)* Update module github.com/redis/go-redis/v9 to v9.5.3
* *(deps)* Update pnpm to v9.3.0
* *(deps)* Update dev-dependencies
* *(deps)* Update tiptap to v2.4.0
* *(deps)* Update vueuse to v10.10.1
* *(deps)* Update dependency @sentry/vue to v7.117.0
* *(deps)* Update dependency axios to v1.7.2
* *(deps)* Update module github.com/arran4/golang-ical to v0.3.0
* *(deps)* Update module github.com/hashicorp/go-version to v1.7.0
* *(deps)* Update module github.com/go-testfixtures/testfixtures/v3 to v3.11.0
* *(deps)* Update module golang.org/x/oauth2 to v0.21.0
* *(deps)* Update module golang.org/x/sys to v0.21.0
* *(deps)* Update module github.com/spf13/viper to v1.19.0
* *(deps)* Update module golang.org/x/text to v0.16.0
* *(deps)* Update module golang.org/x/image to v0.17.0
* *(deps)* Update dependency @sentry/vue to v8
* *(deps)* Update module github.com/getsentry/sentry-go to v0.28.1
* *(deps)* Update dependency snake-case to v4
* *(deps)* Update flake
* *(deps)* Update dev-dependencies
* *(deps)* Update module golang.org/x/term to v0.21.0
* *(deps)* Update vueuse to v10.11.0
* *(deps)* Update dependency camel-case to v5
* *(deps)* Update dependency vue to v3.4.29
* *(deps)* Update module golang.org/x/crypto to v0.24.0
* *(deps)* Update module github.com/typesense/typesense-go to v1.1.0
* *(deps)* Update module github.com/yuin/goldmark to v1.7.2
* *(deps)* Update module github.com/spf13/cobra to v1.8.1
* *(deps)* Update pnpm to v9.4.0
* *(deps)* Update dev-dependencies
* *(deps)* Update goreleaser/nfpm docker tag to v2.37.1
* *(deps)* Update golangci-lint to 1.59.1
* *(deps)* Update module github.com/wneessen/go-mail to v0.4.1
* *(deps)* Update dependency @sentry/vue to v8.10.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency @types/node to v20.14.6
* *(deps)* Update dependency node to v20.15.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue-router to v4.4.0
* *(deps)* Update dependency @sentry/vue to v8.11.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency vue to v3.4.30
* *(deps)* Update module github.com/yuin/goldmark to v1.7.3
* *(deps)* Update dev-dependencies to v7.14.1
* *(deps)* Update dependency @sentry/vue to v8.12.0
* *(deps)* Update module github.com/yuin/goldmark to v1.7.4
* *(deps)* Update module golang.org/x/image to v0.18.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dependency caniuse-lite to v1.0.30001638
* *(deps)* Update module github.com/wneessen/go-mail to v0.4.2
* *(deps)* Update dependency vue to v3.4.31
* *(deps)* Update dependency @sentry/vue to v8.13.0
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
* *(deps)* Update dev-dependencies
### Documentation
* *(filter)* Add filter query explanation* Mention installation of rpm packages ([eec53e8](eec53e8a5451143eefc53c861a26e601aed3e636))
* Add missing traefik label ([99856b2](99856b2031b8811ac08acfc773e1df294465cd9e))
* Add desktop packages ([1255bdc](1255bdc4abc57aa2a30eb6ced138a70ea94fcd08))
* Add healthcheck to docker compose examples ([001268a](001268a33eefa7dd2b14f401d6fb7bfbee04c21c))
* Fix healthcheck and mariadb password ([18374c2](18374c2e52a78d48698945981fb59ea3a86eff12))
* Fix database healthcheck command ([89e349f](89e349f2fd3c57674b3645ac682582b52e5c398f))
* Fix postgres example healthcheck ([7ae38c5](7ae38c5ac1e3eaa845753cfcbd2d06fd83418070))
* Remove outdated information ([5ab720d](5ab720d7093d14f1b57bf7317e16131e8ec766c0))
* Clarify public url usage in installation ([e532979](e532979101287eda13a479382432129bba85bf43))
* Mention how to support the project in readme ([4d11dd0](4d11dd0383ef4e4e0dc78d01eb24febee7661f96))
* Update publiccode.yml [skip ci] ([2e5c193](2e5c19352ec5abdf0c7281637066e96243f413ff))
* Update config docs ([09d4467](09d446765d9bb287084322b8a22977fe4355aaca))
* Add missing front matter ([6db8728](6db8728420296f2c76320b3efe71c38e848cefc9))
* Improve OpenID documentation (#2151) ([92d9c31](92d9c31101e5d3bc0d9d726c5075f0ca6b99f2d2))
* Clarify what to use for authurl ([6e52db7](6e52db76dcc020f4492731f1823bf7a94b4cb951))
* Add migrations setup doc (#2183) ([1d5517b](1d5517b53a4649bbe2e6aec8ae07687b0288cfd4))
* Fix broken link in migration docs (#2185) ([4b4a7f3](4b4a7f3c0afa2344e72e695918fdad20d97ddb2d))
* Add details about supported and required OIDC claims (#2201) ([be54a36](be54a361fd680e7bd63309db5338980badea86de))
* Add Korganizer to supported caldav clients ([e0417c8](e0417c8bdaa398f718f1f16522ff512276753201))
* Fix build-from-sources docs mistake (#2251) ([1adaa73](1adaa7314172e6c8dfa239a328c5899d58a842cf))
* Clarify transitioning from unstable to release ([0557d4b](0557d4b5bba1a111ed70a484f88cec1636e29371))
* Clarify automatic openid team creation ([4e49ec9](4e49ec9e16ba5176ce8596e88f96d4a8983922f9))
* Clarify vikunja cli usage in docker ([75fd17c](75fd17c7503b6a1189a3ede1c45be03a69b1fd72))
* Clarify version checkout when building from source ([73bf119](73bf119409acdd474999fe9a513691da61bbe429))
* Fix typo in README.md (#2271) ([aceaccb](aceaccbf117216a5127d88f78add575cd6ed6dcd))
* Clarify where to file issues ([8d1fc08](8d1fc08de628d721234cb22a230e04e3d037fb44))
* Remove superfluous yaml code block (#2342) ([8bc23b3](8bc23b3a54068da2d3cdd1aa7ace0d9e21bb72b4))
* Remove docs files ([7a29011](7a290116e86f73149f22a1443d4867a363c96580))
### Features
* *(FilterInput)* Use expandable
* *(XButton)* Merge script blocks
* *(api)* All usable routes behind authentication now have permissions
* *(api)* Add bulk endpoints to api tokens
* *(api tokens)* Add task attachment to api scopes
* *(auth)* Update team name in Vikunja when it was changed in the openid provider
* *(backgrounds)* Resize images to a maximum of 4K
* *(ci)* Rename unstable desktop packages
* *(ci)* Automatically create a gitea release when tagging
* *(components)* Align component name casing datemath (#2405)
* *(components)* Align component name casing ContentAuth
* *(components)* Align component name casing multiselect
* *(components)* Align component name casing apiconfig
* *(components)* Align component name casing CreateEdit
* *(components)* Align component name casing password
* *(components)* Align component name casing card
* *(components)* Align component name casing color-bubble
* *(components)* Align component name casing Error
* *(components)* Align component name casing Pagination
* *(components)* Align component name casing Dropdown
* *(components)* Align component name casing ContentLinkShare
* *(components)* Align component name casing Navigation
* *(components)* Align component name casing fancycheckbox
* *(components)* Align component name casing Legal
* *(components)* Align component name casing Loading
* *(components)* Align component name casing Message
* *(components)* Align component name casing NoAuthWrapper
* *(components)* Align component name casing Nothing
* *(components)* Align component name casing Button
* *(components)* Align component name casing Modal
* *(components)* Align component name casing Notification
* *(components)* Align component name casing Popup
* *(components)* Align component name casing Ready
* *(components)* Align component name casing Shortcut
* *(components)* Align component name casing Subscription
* *(components)* Align component name casing User
* *(components)* Align component name casing Notifications
* *(components)* Align component name casing FilterPopup
* *(components)* Align component name casing Filter
* *(components)* Align component name casing ViewEditForm
* *(components)* Align component name casing ProjectSettingsDropdown
* *(components)* Align component name casing QuickActions
* *(components)* Align component name casing LinkSharing
* *(components)* Align component name casing UserTeam
* *(components)* Align component name casing AssigneeList
* *(components)* Align component name casing Attachments
* *(components)* Align component name casing ChecklistSummary
* *(components)* Align component name casing Comments
* *(components)* Align component name casing CreatedUpdated
* *(components)* Align component name casing DateTableCell
* *(components)* Align component name casing DeferTask
* *(components)* Align component name casing Description
* *(components)* Align component name casing EditAssignees
* *(components)* Align component name casing EditLabels
* *(components)* Align component name casing FilePreview
* *(components)* Align component name casing Heading
* *(components)* Align component name casing KanbanCard
* *(components)* Align component name casing Label
* *(components)* Align component name casing Labels
* *(components)* Align component name casing PercentDoneSelect
* *(components)* Align component name casing PriorityLabel
* *(components)* Align component name casing PrioritySelect
* *(components)* Align component name casing ProjectSearch
* *(components)* Align component name casing QuickAddMagic
* *(components)* Align component name casing RelatedTasks
* *(components)* Align component name casing ReminderDetail
* *(components)* Align component name casing ReminderPeriod
* *(components)* Align component name casing Reminders
* *(components)* Align component name casing RepeatAfter
* *(components)* Align component name casing SingleTaskInlineReadonly
* *(components)* Align component name casing SingleTaskInProject
* *(components)* Align component name casing AddTask
* *(components)* Align component name casing ProjectSettings
* *(docker)* Use scratch as base image
- **BREAKING**: use scratch as base image
* *(editor)* Checklist visual improvements (#2264)
* *(editor)* Add hotkeys to quickly edit and discard (#2265)
* *(filter)* More tests
* *(filter)* Nesting
* *(filter)* Migrate existing saved filters
* *(filter)* Add better error message when passing an invalid filter expression
* *(filter)* Add in keyword
* *(filter)* Add basic highlighting filter query component
* *(filter)* Add auto resize for filter query input
* *(filter)* Add autocompletion poc for labels
* *(filter)* Make the autocomplete look pretty
* *(filter)* Add actual label search when autocompleting
* *(filter)* Autocomplete for assignees
* *(filter)* Autocomplete for projects
* *(filter)* Emit filter query
* *(filter)* Remove now unused code
* *(filter)* Add button to show filter results
* *(filter)* Resolve labels and projects to ids before filtering
* *(filter)* Resolve label and project ids back to titles when loading a filter
* *(filter)* Fall back to simple search when filter query does not contain any filter inputs
* *(filter)* Make filter input label configurable
* *(filter)* Add unique id to filter input
* *(filters)* Very basic filter parsing
* *(filters)* Basic text filter works now
* *(filters)* Make new filter syntax work with Typesense
* *(filters)* Parse date properties to enable datepicker button
* *(filters)* Make date values in filter query editable
* *(filters)* Add date values
* *(filters)* Show user name and avatar for assignee filters
* *(filters)* Add basic autocomplete component
* *(filters)* Highlight label colors in filter
* *(filters)* Query-based filter logic (#2177)
* *(filters)* Pass timezone down when filtering with relative date math
* *(filters)* Make clear filters button less obvious
* *(i18n)* Add pt-br as selectable language in the frontend
* *(i18n)* Add Croatian to selectable languages
* *(i18n)* Add Ukrainian for language selection in UI
* *(kanban)* Debounce bucket limit setting
* *(kanban)* Do not remove focus from the input after creating a new bucket
* *(kanban)* Set task position to 0 (top) when it is moved into the done bucket automatically after marking it done
* *(migration)* Notify the user when a migration failed
* *(migration)* Trello organization based migration (#2211)
* *(migration)* Include non upload attachments from Trello (#2261)
* *(navigation)* Persist project open state in navigation
* *(registration)* Improve username and password validation
* *(subscription)* Use a recursive cte to fetch subscriptions of parent projects
* *(task)* Show attachment preview for image attachments (#2266)
* *(tasks)* Make done at column available for selection in table view
* *(tasks)* Expand subtasks (#2345)
* *(tasks)* Add tests for moving a task out of the done bucket
* *(teams)* Add public flags to teams to allow easier sharing with other teams (#2179)
* *(typesense)* Move partial reindex to a flag instead of a separate command
* *(views)* Add new model and migration
* *(views)* Add crud handlers and routes for views
* *(views)* Add new default views for filters
* *(views)* Return views with their projects
* *(views)* Create default 4 default view for projects
* *(views)* Return tasks in a view
* *(views)* Create default views when creating a filter
* *(views)* Do not override filters in view
* *(views)* Use project id when fetching views
* *(views)* Add bucket configuration mode
* *(views)* (un)marshal custom project view mode types
* *(views)* Return tasks in buckets by view
- **BREAKING**: tasks in their bucket are now only retrievable via their view. The /project/:id/buckets endpoint now only returns the buckets for that project, which is more in line with the other endpoints
* *(views)* Move task position handling to its own crud entity
- **BREAKING**: the position of tasks now can't be updated anymore via the task update endpoint. Instead, there is a new endpoint which takes the project view into account as well.
* *(views)* Sort tasks by their position relative to the view they're in