1
0
Commit Graph

50 Commits

Author SHA1 Message Date
fe27dd59ad feat(subscription): use a recursive cte to fetch subscriptions of parent projects
Testing this locally resulted in improved response times from ~50ms to ~20ms when creating a project. It looks like even though the code running these sql queries uses different go routines, they affect each other (caused by IO or context switching?)
2024-03-03 15:34:18 +01:00
22933dac4a fix(project): typo in table name 2024-03-03 12:47:00 +01:00
fe02f4da2c fix(project): check for project nesting cycles with a single recursive cte instead of a loop 2024-03-03 11:40:43 +01:00
10ff864e0c fix(projects): load projects only one when fetching subscriptions for a bunch of projects at once
This change ensures already loaded projects are passed down when fetching their subscription  instead of re-loading each project with a single sql statement. When loading all projects, this meant all projects were loaded twice, which was highly inefficient. This roughly added 25ms to each request, assuming the per page limit was maxed out at 50 projects.

Empirical testing shows this change reduces load times by ~20ms. Because the request is already pretty fast, this is ~30% of the overall request time, making the loading of projects now even faster
2024-03-02 14:27:11 +01:00
a3932a0a19 fix(projects): return correct project pagination count 2024-03-02 13:30:34 +01:00
5b70609ba7 fix: usage of limit and order by usage in recursive cte 2024-02-28 14:35:09 +01:00
6b1e67485b feat: fetch all projects with a recursive cte instead of recursive query
This change modifies the fetching of all projects to use a recursive common table expression instead of recursively calling the method.
2024-02-28 13:42:45 +01:00
96b4f2d1db fix(projects): don't remove parent project id if the parent project is available in the same run
Resolves https://github.com/go-vikunja/frontend/issues/139
2024-01-28 15:28:08 +01:00
66b44da85b fix(projects): delete child projects when deleting a project 2023-12-01 17:27:40 +01:00
df1f95871a fix(projects): correctly set project's archived state if their parent was archived
Resolves https://kolaente.dev/vikunja/frontend/issues/3795
2023-11-17 20:00:08 +01:00
61bce2b349 fix(projects): don't return child projects multiple times 2023-11-15 12:56:36 +01:00
a1ea77f751 feat: accept hex values which start with a # 2023-10-24 16:12:22 +02:00
66cf7ab50a feat(reminders): include project in reminder notification 2023-10-20 13:56:14 +02:00
1ee243f2bd fix(project background): add more checks for whether a background file exists when duplicating or deleting a project
Related discussion: https://community.vikunja.io/t/500-internal-server-error-when-selecting-unsplash-background-image/778/18
2023-09-13 11:20:59 +02:00
68d4dcd7e6 fix(projects): don't limit results to top-level projects when searching
Resolves https://github.com/go-vikunja/api/issues/82
2023-09-07 10:56:59 +02:00
0e32d478d1 fix(projects): save done and default bucket when updating project 2023-09-03 15:50:47 +02:00
bbbb45d224 feat: move done bucket setting to project 2023-09-03 15:01:35 +02:00
e518fb1191 chore: remove year from copyright headers
Resolves https://kolaente.dev/vikunja/api/pulls/1483
2023-09-01 08:32:28 +02:00
010b4ce783 feat(tasks): add searching via typesense 2023-08-28 12:14:50 +02:00
5e8084c194 fix(project): duplicating a project should not create two backlog buckets
Resolves https://community.vikunja.io/t/when-duplicating-a-project-the-resulting-project-has-an-extra-bucket/1524
2023-08-23 16:19:42 +02:00
acb03c430e fix(user): allow deleting a user if they have a default project
Resolves https://github.com/go-vikunja/api/issues/78
2023-08-23 16:10:51 +02:00
117c569721 fix(projects): return subprojects which were shared from another user 2023-07-03 11:45:29 +02:00
ef94e0cf86 feat(projects): don't allow deleting or archiving the default project 2023-06-07 21:29:46 +02:00
ebfb3f9aaa fix(filter): don't try to get the real subscription for a saved filter project 2023-06-07 20:41:59 +02:00
7755b9cd49 fix(projects): delete project in the correct order 2023-06-07 20:28:36 +02:00
67825425a4 fix(filters): return all filters with all projects, not grouped under a pseudo project 2023-06-07 18:55:36 +02:00
e3842b6df7 fix(projects): reset pagination limit when fetching subprojects 2023-06-06 17:24:27 +02:00
db3c7aa8b0 fix: make sure projects are correctly sorted 2023-05-24 15:52:33 +02:00
9011894a29 feat: check for cycles when creating or updating a project's parent 2023-05-24 15:52:33 +02:00
edcb806421 feat: remove ChildProjects project property 2023-05-24 15:52:33 +02:00
35964ce4a6 fix(projects): recalculate project's position after dragging when position would be 0 2023-05-24 15:52:33 +02:00
53b2ade5bb feat(projects): return a favorites pseudo project when the user has favorite tasks 2023-05-24 15:52:32 +02:00
b482664d82 fix(projects): don't allow making a project child of itself 2023-05-24 15:52:32 +02:00
aafcb0bac4 fix(projects): don't return child projects twice 2023-05-24 15:52:32 +02:00
0110f93313 feat: make the new inbox project the default 2023-05-24 15:52:32 +02:00
f1cbe50605 fix: rename project receiver variable 2023-05-24 15:52:32 +02:00
a21bff3ffb fix: compile errors 2023-05-24 15:52:32 +02:00
537ba60f2d fix(tasks): get all tasks from parent projects 2023-05-24 15:51:55 +02:00
ceaa9c0e03 feat(subscriptions): make sure all subscriptions are inherited properly 2023-05-24 15:51:55 +02:00
438f5c8e12 fix(projects): don't check if new projects are archived 2023-05-24 15:51:55 +02:00
3e8d1b3667 chore(projects) use a slice again 2023-05-24 15:51:55 +02:00
18b9ff8512 feat(projects): check parent project when checking archived status 2023-05-24 15:51:55 +02:00
d799915e78 feat(projects): get all projects recursively 2023-05-24 15:51:55 +02:00
8cff813e9f fix(project): remove namespaces from creating projects 2023-05-24 15:51:54 +02:00
2dcd6451a4 fix(project): remove namespaces from getting projects 2023-05-24 15:51:54 +02:00
386e218b95 feat(migration): use new structure for migration 2023-05-24 15:51:54 +02:00
fef253312c feat(projects): cleanup namespace leftovers 2023-05-24 15:51:54 +02:00
16de7cd591 feat(projects): remove namespaces 2023-05-24 15:51:54 +02:00
0795828a9f feat(projects): add parent project, migrate namespaces 2023-05-24 15:51:54 +02:00
6aadaaaffc chore: rename files (fix typo) 2023-03-21 19:02:05 +00:00