While the request body of a DELETE request *can* have data in it, it is not really supported and pretty much undocumented. As such, it doesn't work in all clients and probably broke with recent updates.
This fixes this by moving all parts of the task relation used to identify it in the url.
More Info: https://stackoverflow.com/a/299696/10924593
Fix lint
Fix lint
Fix loading tasks with search
Fix loading lists
Fix loading task
Fix loading lists and namespaces
Fix tests
Fix user commands
Fix upload
Fix migration handlers
Fix all manual root handlers
Fix session in avatar
Fix session in list duplication & routes
Use sessions in migration code
Make sure the openid stuff uses a session
Add alias for db type in db package
Use sessions for file
Use a session for everything in users
Use a session for everything in users
Make sure to use a session everywhere in models
Create new session from db
Add session handling for user list
Add session handling for unsplash
Add session handling for teams and related
Add session handling for tasks and related entities
Add session handling for task reminders
Add session handling for task relations
Add session handling for task comments
Add session handling for task collections
Add session handling for task attachments
Add session handling for task assignees
Add session handling for saved filters
Add session handling for namespace and related types
Add session handling for namespace and related types
Add session handling for list users
Add session handling for list tests
Add session handling to list teams and related entities
Add session handling for link shares and related entities
Add session handling for labels and related entities
Add session handling for kanban and related entities
Add session handling for bulk task and related entities
Add session handling for lists and related entities
Add session configuration for web handler
Update web handler
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/750
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add more tests for getting namespaces
Fix namespaces not found
Fix namespaces not found
Make like the default
Update docs & fix docs
Enable searching namespaces by their ids
Enable searching lists by their ids
Enable searching labels by their ids
Enable searching by user ids
Update docs
Add namespace filter
Add task filter for lists
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/748
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Fix tests
Expose email reminder setting through jwt
Set reminders on by default
Fix lint
Make user email configurable
Expose email reminder setting through /info
Don't try to send any reminders if none were found
More spacing for buttons
Fix db time format
Enable reminders by default
Make emails look more like the frontend
Add config to disable it
Add sending emaisl
Add getting all task users and reminding them
Add getting the next reminder in a cron
Move task reminder to separate file
Add cron
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/743
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Fix lint
Fix migration query for postgres
Fix migration statements
Add migration to make all int(11) fields bigint by default
Make all int(11) fields bigint by default
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/741
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add login via email
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/740
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Refactor adding more details to tasks
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/739
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add colors for caldav
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/738
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add more logs
Fix lint
Generate docs
Add swagger docs
Add microsoft todo parsing logic
go mod tidy
Add basic test structure
Add more fields to tasks
rename microsoft todo package
Add getting microsoft todo data
Add structs and helper methods
Add microsoft todo config and routes
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/737
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Fix tests for background images
Generate docs
Fix lint
Do the swag
Add more logging
Remove the default bucket if it was empty
Add launch.json
Make importing backgrounds work
Add comment
Fix getting task attachments
Fix getting trello token
Add trello migration routes and status
Add support for converting checklists
Add test for attachments
Add the actual conversion
Add Trello conversion test
Add migration function stubs
Add basic trello migration structure
Add trello migration config
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/734
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add config docs
Lint
Move provider-related stuff to separate file
Refactor getting auth providers
Fix tests
Fix user tests
Fix openid tests
Add swagger docs
Fix lint
Fix lint issues
Fix checking if the user already exists
Make sure to create a new namespace for new users
Docs
Add tests for openid
Remove unnessecary err check
Consistently return nil users if creating a new user failed
Move sending confirmation email to separate function
Better variable names
Move checks to separate functions
Refactor creating user into seperate file
Fix creating new local users
Test creating new users from different issuers
Generate a random username right away if no preferred username has been given
Add todo
Cache openid providers
Add getting int clientids
Fix migration
Move creating tokens to auth package
Add getting or creating a third party user
Add parsing claims
Add retreiving auth tokens
Add token callback from openid package
Add check for provider key
Add routes
Start adding openid auth handler
Add config for openid auth
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/713
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add tests for multiline descriptions and completed state
Fix caldav descriptions
Fix caldav task complete status for OpenTasks
Co-authored-by: Martin Giger <martin@humanoids.be>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/697
Co-Authored-By: freaktechnik <martin@humanoids.be>
Co-Committed-By: freaktechnik <martin@humanoids.be>
no need to export from there I think
parse absolute ical timestamps
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-authored-by: Martin Giger <martin@humanoids.be>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/691
Co-Authored-By: freaktechnik <martin@humanoids.be>
Co-Committed-By: freaktechnik <martin@humanoids.be>
Fix shadowed error
Panic if a TaskCollection.ReadAll does not return []*models.Task
Fetch tasks for caldav lists
Co-authored-by: kolaente <k@knt.li>
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-authored-by: Martin Giger <martin@humanoids.be>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/641
Co-Authored-By: freaktechnik <martin@humanoids.be>
Co-Committed-By: freaktechnik <martin@humanoids.be>
Increase golangci timeout
Fix installing golangci-lint in ci
Remove mage targets replaced by golangci
Run golint in ci
Add goheader linter
Enable & fix more linters
Fix lint issues
Add mage target to automagically fix issues found by golangci
golangci-lint run --fix
Add golangci config
Add golangci mage target
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/676
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Fix lint
Add docs for keyvalue config options
Use keyvalue store to cache unsplash photo results
Cleanup
Use keyvalue store for upload avatar
Use keyvalue store for initials avatar
Fix initializing metrics
Use keyvalue for metrics
Add IncryBy and DecrBy methods to increase or decrease a value
Fix lint
Return custom error if a key does not exist
Init keyvalue storage
Follow the keyvalue storage setting for things like cache and other
Add docs
Add configuration of the storage backend
Add redis keyvalue storage implementation
Add doc comments
Add methods to use storage through the package itself
Add memory implementation for keyvalue store
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/674
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Change method names to avoid doubling db
Assert team test exists
Assert team member test exists
Assert task test exists
Assert task relation test exists
Assert task comment test exists
Better tests for team namespaces
Assert exists in namespace users tests
Assert exists in namespace tests
Assert exists in user list tests
Assert exists in list tests
Better team list tests
Assert label tests exist in db
Assert label task tests exist in db
Assert label task tests exist in db
Assert kanban tests exist in db
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/666
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Fix updating saved filters
Fix filter not loadable because of missing param declaration
Add fancy special cases for postgres exists in db
Add special case for postgrs json
Add read one test
Add rights tests
Fix lint
Fixed getting a single saved filter from db
Add tests for the usual crud methods
Add test stubs and TODOs
Add test for converting saved filter ids to list ids and vice versa
Add test fixture for saved filters and fix existing tests
Fix exposed json variables of filters
Fix creating saved filters table for tests
Add getting saved filters as pseudo namespace
Cleanup
Refactor getting all namespaces to use a map for easier handling of pseudo namespaces
Add custom erros for saved filters
Swagger docs
Fix lint
Add routes for saved filters
Add alias for mage build
Add method to get a saved filter from the lists endpoint
Add getting tasks from a saved filter
Add create, update, delete, read one methods
Add rights methods for saved filters
Fix docs minLength
Add saved filters column
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/655
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
Add tests
Remove the favorites pseudo namespace if there are no lists or tasks favorited
Regenerate swagger docs
Fix favorite lists not being updated because of nonexisting users (the favorite list does not have one)
Make the pseudo favorites list always favorited
Add favorited lists to the favorites pseudo namespace
Add favorite field to list
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/654
Fixed namespace tests
Add test for favorite tasks
Fix favorite tasks not being updated
Fix integration tests
Fix lint
Return a pseudo namespace and list for favorites
Make sure users can only see their favorites
Add condition show tasks from the favorites list
Regenerate swagger docs
Add favorite field to task
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/653
Fix integration tests
Generate swagger docs
Add test for moving a task between buckets
Add check for bucket limit when updating a task
Add fixture to ensure a bucket with a high limit will never exceed the limit
Refactor bucket limit check into seperate function
Add test for creating and fix
Fix unexported field
Add error in case a task was added to a bucket which has its limit already exceeded
Add migration to add new task field
Add limit field to buckets
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/652
Add comment about magefile compile
Switch make to mage commands in drone
Fix misspell
Update docs
Add general release command
Add reprepro command
Make sure the filename contains the proper version
Add deb package building
Add zip command
Preserve file permissions when copying files
Fix release:os-package
Make sure to not create checksums of directories
Cleanup
Only compress what upx is able to compress
Add check command
Add release:os-package command
Add copy command
Add comments
Add compress step
Move releasing binaries to a more general function and add ones of linux + darwin
Add release:windows command
Add release:dir command
Add namespaces for commands
Reorder
Add command to run all checks at once
Add goconst-check
Add gosec-check
Add static-check
Add gocyclo-check
Add ineffasign-check
Add misspell-check
Add command to check for swagger docs regeneration
Add comments
Add command to generate swagger docs
Reorder
Add check for installing golint before running it
Add fmt check command
Add fmt command
Use runAndStreamOutput everywhere
Add aliases and comments
Add todo
Reorder
Add test coverage command
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/651
Add users cli commands to docs
Fix checking for changing username or user email
Add user status change command
Make sure only one user exists with a particular email when updating
Add password reset
Add user id to help
Remove user delete (too many possible side effects, postponed until later)
Make sure to fail on any errors
Fail if changing the username would result in duplicate users
Add user update command
Add user create command
Add command stubs for all commands
Render users in a beautiful table
Started adding user list command
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/632
Fix lint
Update docs
Fix loading all rights (list & namespace)
Add tests
Update web framework
Make tests run again
Update all calls to CanRead methods
Update task attachment & task comment & task rights to return the max right
Update team rights to return the max right
Update namespace rights to return the max right
Update list rights to return the max right
Update link share rights to return the max right
Update label rights to return the max right
Update web dependency
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/626