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 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>
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
Don't fail if the last avatar file does not exist when deleting it
Fix lint
Remove old global avatar setting and update docs
Generate docs
Invalidate the avatar cache when uploading a new one
Add debug logs
Add caching for upload avatars
Add cache locks
Fix encoding
Resize the uploaded image to a max of 1024 pixels
Remove the old uploaded avatar if one already exists
Add mimetype check for images
Set avatar provider to upload when uploading an avatar
Add upload avatar provider
Make font size smaller to let the initials still look good in smaller sizes
Add debug log
Add cache and resizing of initials avatars
Make font size depend on avatar size
Add drawing initials avatar
Add initials provider
Make the initials avatar provider the default
Add routes
Add user avatar settings handler methods
Add user avatar provider field
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/622
Fix buckets not being duplicated correctly
Fix list id param not working
Add api endpoint
Add swagger docs
Add comment about test
Make duplicating actually work
Add copying link shares
Add copying list backgrounds
Add copying task relations
Add copying task comments
Add copying assignees
Add copying task task label relations
Add copying task attachments
Add duplicating tasks
Add basic struct and methods
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/603
Fix query param name
Add option to include null results when filtering
Always set db time to gmt
Fix null filter
Fix timezone setting for todoist parsing
Fix timezone setting for wunderlist parsing
Fix import
Fix caldav reminder parsing
Use timezone from config
Add error and test for invalid filter values
Fix integration tests
Remove task collection date hack
Fix task filter
Fix lint
Fix tests and fixtures for date timezone stuff
Properly set timezone
Change fixtures time zone to gmt
Set db timezone
Set created and updated timestamps for all fixtures
Fix lint
Fix test fixtures
Fix misspell
Fix test fixtures
Partially fix tests
Remove timeutil package
Remove adding _unix suffix hack
Remove _unix suffix
Move all timeutil.TimeStamp to time.Time
Remove all Unix suffixes in field names
Add better error messages when running migrations
Make sure to not migrate 0 unix timestamps to 1970 iso dates
Add migration script for sqlite
Add converting sqlite values
Convert 0 unix timestamps to null in postgres
Convert 0 to null in timestamps
Automatically rename _unix suffix
Add all tables and columns for migration
Fix sql migration query for mysql
Fail with an error if trying to use an unsupported dbms
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/594
Fix integration tests
Add updating start and end date from current date
Add updating reminders from current date
Add updating reminders from current date
Add updating due date from current date
Add updating flag
Add tests
Add field to repeat a task after current date
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/587
Remove task text and namespace name in migration
Fix lint
Add migration for namespace title
Fix renaming namespace name to title
Rename namespace name field to title
Drop text column at the end of the migration
Add migration for task text to title
Rename task text to title
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/528
Add docs for error code
Add moving new tasks into the default bucket when none was provided
Add moving tasks in default bucket when deleting one
Fix tests again
Add test for removing a bucket
Fix tests
Prevent removing the last bucket
Remove the empty pseudo bucket
Add migration to create a new bucket for each list (and put all tasks in it
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/446
Fix misspell
Fix sorting tasks with null values
Fix sorting by priority for postgres
Merge branch 'master' into feature/position
Add community link
Update golang.org/x/crypto commit hash to 44a6062 (#429)
Update golang.org/x/crypto commit hash to 44a6062
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/429
Update module lib/pq to v1.4.0 (#428)
Update module lib/pq to v1.4.0
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/428
Fix updating position
Add ordering tasks in buckets by position
Make task sort by string
Merge branch 'master' into feature/position
Update golang.org/x/crypto commit hash to 3c4aac8 (#419)
Update golang.org/x/crypto commit hash to 3c4aac8
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/419
Merge branch 'master' into feature/position
Fix moving tasks back into the empty (ID: 0) bucket
Add adding a default position when creating new tasks
Update golang.org/x/crypto commit hash to a76a400 (#411)
Update golang.org/x/crypto commit hash to a76a400
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/411
Remove unused code
Fix tests
Add migration for position attribute
Add position attribute
Co-authored-by: kolaente <k@knt.li>
Co-authored-by: renovate <renovatebot@kolaente.de>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/412
Fix tests
Add error docs
Add swagger docs for bucket endpoints
Add integration tests
Fix tests
Fix err shadow
Make sure a bucket and a task belong to the same list when adding or updating a task
Add tests
Add getting users of a bucket
Fix log level when testing
Fix lint
Add migration for buckets
Cleanup/Comments/Reorganization
Add Kanban bucket handling
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/393
Fix limit for databases other than sqlite
go mod tidy && go mod vendor
Remove unneeded break statements
Make everything work with the new xorm version
Fix xorm logging
Fix lint
Fix redis init
Fix using id field
Fix database init for testing
Change default database log level
Add xorm logger
Use const for postgres
go mod tidy
Merge branch 'master' into update/xorm
# Conflicts:
# go.mod
# go.sum
# vendor/modules.txt
go mod vendor
Fix loading fixtures for postgres
Go mod vendor1
Update xorm to version 1
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/323
Fix not returning errors
Fix integration tests
Add more tests
Make task filtering actually work
Change tests
Fix using filter conditions
Fix test
Remove unused fields
Fix static check
Remove start and end date fields on task collection
Fix misspell
add filter logic when getting tasks
Add parsing filter query parameters into task filters
Start adding support for filters
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/243
Fix lint
Fix reminders not being updated
Fix updating dates when marking a task as done
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/145
Remove traces of unix timestamp
Revert renaming reminder table column
Fix staticcheck
Remove unused table call
Add migration for renaming reminders table
Fix issues with using TimeStamp
Fix lint
Updated all created / updated fields to use TimeStamps
Add comments
Convert all created / updated fields to datetime
Add time util package
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/130
fix copyright date
Add more user tests
More user tests
More user tests
Start refactoring user tests
Docs
Fix lint
Fix db fixtures init in tests
Fix models test
Fix loading fixtures
Fix ineffasign
Fix lint
Fix integration tests
Fix init of test engine creation
Fix user related tests
Better handling of creating test enging
Moved all fixtures to db package
Moved all fixtures to db package
Moved user related stuff to seperate package
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/123