Commit Graph

45 Commits

Author SHA1 Message Date
92f0a50996
feat(projects): cleanup namespace leftovers 2023-01-12 15:10:27 +01:00
6e36332361
feat: rename lists to projects 2023-01-12 15:03:24 +01:00
b8769c746c
feat: allow a user to remove themselves from a team
All checks were successful
continuous-integration/drone/push Build is passing
2022-10-09 16:39:40 +02:00
4c5f457313 Ensure case insensitive search on postgres (#927)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: vikunja/api#927
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-01 21:40:25 +00:00
e23014dbe4
Fix swagger docs for create requests
All checks were successful
continuous-integration/drone/push Build is passing
2021-05-26 21:56:31 +02:00
0ab9ce9ec4 Add events (#777)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#777
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-02 22:48:37 +00:00
c4a71016b8
Update copyright year
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-02 20:19:13 +01:00
9baf6d39bd
Change license to AGPLv3
Some checks failed
continuous-integration/drone/push Build is failing
2020-12-23 16:41:52 +01:00
8d1a09b5a2 Use db sessions everywere (#750)
Some checks failed
continuous-integration/drone/push Build is failing
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: vikunja/api#750
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-23 15:32:28 +00:00
b0d4902406 Make sure all int64 db fields are using bigint when actually storing the data (#741)
Some checks reported errors
continuous-integration/drone/push Build was killed
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: vikunja/api#741
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-18 16:51:22 +00:00
699d3d6060 Add Golangci Lint (#676)
All checks were successful
continuous-integration/drone/push Build is passing
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: vikunja/api#676
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-10-11 20:10:03 +00:00
0fb2edf051 Saved filters (#655)
All checks were successful
continuous-integration/drone/push Build is passing
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: vikunja/api#655
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-09-26 21:02:17 +00:00
3b2289c8fa
Fix swagger docs
All checks were successful
continuous-integration/drone/push Build is passing
2020-06-28 16:25:46 +02:00
08205008e7 Migrate all timestamps to real iso dates (#594)
All checks were successful
continuous-integration/drone/push Build is passing
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: vikunja/api#594
2020-06-27 17:04:01 +00:00
525a547500
Remove min length for labels, lists, namespaces, tasks and teams
Some checks failed
continuous-integration/drone/push Build is failing
2020-06-17 18:52:23 +02:00
fb8ac92abf
Change all json fields to snake_case
Some checks failed
continuous-integration/drone/push Build is failing
2020-04-12 22:48:46 +02:00
d28f005552 Update xorm to v1 (#323)
Some checks failed
continuous-integration/drone/push Build is failing
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: vikunja/api#323
2020-04-12 17:29:24 +00:00
ce5be947b4 Add postgres support (#135)
All checks were successful
continuous-integration/drone/push Build is passing
Revert fixture fixes for postgres

Use postgres connection string with spaces instead of url

Fix label order

Make postgres tests in ci less verbose

Add sequence update script

Skip resets in postgres

Remove option to skip resets in postgres

Make postgres tests in ci verboseq

Update test fixtures database

Fix file tests on postgres

Add postgres options to sample config

Make sure tests init test fixtures before running the actual tests

Fix issues with IDs too big to fit in an int

Fix duplicate auto incremented IDs

Refactor / Fix team tests

Refactor team member tests

Fix team member create

Fix label test

Fix getting labels

Fix test fixtures for postgresql

Fix connection string params

Disable ssl mode on postgres integration tests

Disable ssl mode on postgres tests

Use sprintf to create the connection string for postgresql

fixup! Add postgres support

Add postgres support

Added generate as a make dependency for make build

Clarify docs on building

Co-authored-by: kolaente <k@knt.li>
Co-authored-by: Jan Tojnar <jtojnar@gmail.com>
Reviewed-on: vikunja/api#135
2020-02-16 21:42:04 +00:00
caf91d1904 Update xorm to use the new import path (#133)
All checks were successful
continuous-integration/drone/push Build is passing
Fix ineffassign

Fix getting all labels including the ones not associated to a task

Signed-off-by: kolaente <k@knt.li>

Fix logging sql queries

Signed-off-by: kolaente <k@knt.li>

Start fixing getting all labels

Update xormigrate

Update xorm to use the new import path

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#133
2020-02-14 16:34:25 +00:00
db2d868eed Return iso dates for everything date related from the api (#130)
All checks were successful
continuous-integration/drone/push Build is passing
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: vikunja/api#130
2020-02-08 12:48:49 +00:00
1f99238019
Update copyright header
All checks were successful
continuous-integration/drone/push Build is passing
2020-02-07 17:27:45 +01:00
f603b41d99 Better efficency for loading teams (#128)
All checks were successful
continuous-integration/drone/push Build is passing
Fix staticcheck

Better performance for getting teams on a namespace

Better performance for getting teams on a list

Fix lint

Fix swagger

Signed-off-by: kolaente <k@knt.li>

Make loading a single full team more efficent

Signed-off-by: kolaente <k@knt.li>

Make loading teams more efficent

Signed-off-by: kolaente <k@knt.li>

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#128
2020-01-27 17:28:17 +00:00
7e9446ea07 Refactor User and DB handling (#123)
All checks were successful
continuous-integration/drone/push Build is passing
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: vikunja/api#123
2020-01-26 17:08:06 +00:00
a0c5e4e985 Update copyright year (#118)
All checks were successful
continuous-integration/drone/push Build is passing
2020-01-09 17:33:22 +00:00
e890001ee1 Consistent copyright text in file headers (#112)
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-04 19:39:56 +00:00
8948a5f219 Improve pagination (#105)
All checks were successful
continuous-integration/drone/push Build is passing
2019-10-23 21:11:40 +00:00
8d57923a7d Sharing of lists via public links (#94)
All checks were successful
continuous-integration/drone/push Build is passing
2019-08-31 20:56:41 +00:00
be14634e1e GetUser now returns a pointer (#93)
All checks were successful
continuous-integration/drone/push Build is passing
2019-08-14 19:59:31 +00:00
208eb4e68c
Fixed swaggerdocs of description fields
All checks were successful
continuous-integration/drone/push Build is passing
2019-07-21 23:57:19 +02:00
ef0e7c9769 Use longtext instead of varchar(1000) on description fields (#88)
All checks were successful
continuous-integration/drone/push Build is passing
2019-07-18 19:56:34 +00:00
b63928850a Simplify structure by having less files (#86)
All checks were successful
continuous-integration/drone/push Build is passing
2019-07-16 14:15:40 +00:00
f1d21ea52b
Use the auth methods to get IDs to avoid unneeded casts
All checks were successful
continuous-integration/drone/push Build is passing
2019-06-28 10:21:48 +02:00
50d1f29125 Use the username instead of a user when adding a user to a team or giving it rights (#76)
All checks were successful
continuous-integration/drone/push Build is passing
2019-05-25 09:47:16 +00:00
be5a17e993 DB Migrations (#67)
All checks were successful
continuous-integration/drone/push Build is passing
2019-03-29 17:54:35 +00:00
19218b28a2 Refactor {List|Namespace}{User|Team} to not expose unneded values via json (#52)
Some checks are pending
continuous-integration/drone/push Build is passing
2019-01-14 22:32:56 +00:00
607dbd6ae8 API Docs improvements (#46)
All checks were successful
the build was successful
2019-01-03 22:22:06 +00:00
007d8ec375 Fixed generation of swagger docs (#29)
All checks were successful
the build was successful
2018-12-01 01:59:17 +00:00
ce2cae9430 Move the crudhandler to own repo (#27)
All checks were successful
the build was successful
2018-11-30 23:26:56 +00:00
3f44e3b83e Change License to GPLv3 (#26)
All checks were successful
the build was successful
2018-11-26 20:17:33 +00:00
d51ed8defd make validation less verbose (#23)
Some checks failed
the build failed
2018-11-24 12:44:40 +00:00
0c544fe355 Added validation for structs (#19)
All checks were successful
the build was successful
2018-11-16 23:17:37 +00:00
373bbd2202 Migrate to new swagger docs generation (#18)
All checks were successful
the build was successful
2018-11-12 15:46:35 +00:00
d3de658882 Implemented search for everything (#17)
All checks were successful
the build was successful
2018-11-09 17:33:06 +00:00
d232836423 Added pagination (#16)
All checks were successful
the build was successful
2018-11-09 10:30:17 +00:00
301a4eedda New structure (#7)
All checks were successful
the build was successful
2018-10-31 12:42:38 +00:00