Commit Graph

74 Commits

Author SHA1 Message Date
Kristaps Fabians Geikins bde148f286 chore(server): migrating fully to ESM (#5042)
* wip

* some extra fixes

* stuff kinda works?

* need to figure out mocks

* need to figure out mocks

* fix db listener

* gqlgen fix

* minor gqlgen watch adjustment

* lint fixes

* delete old codegen file

* converting migrations to ESM

* getModuleDIrectory

* vitest sort of works

* added back ts-vitest

* resolve gql double load

* fixing test timeout configs

* TSC lint fix

* fix automate tests

* moar debugging

* debugging

* more debugging

* codegen update

* server works

* yargs migrated

* chore(server): getting rid of global mocks for Server ESM (#5046)

* got rid of email mock

* got rid of comment mocks

* got rid of multi region mocks

* got rid of stripe mock

* admin override mock updated

* removed final mock

* fixing import.meta.resolve calls

* another import.meta.resolve fix

* added requested test

* nyc ESM fix

* removed unneeded deps + linting

* yarn lock forgot to commit

* tryna fix flakyness

* email capture util fix

* sendEmail fix

* fix TSX check

* sender transporter fix + CR comments

* merge main fix

* test fixx

* circleci fix

* gqlgen bigint fix

* error formatter fix

* more error formatting improvements

* esmloader added to Dockerfile

* more dockerfile fixes

* bg jobs fix
2025-07-14 10:26:19 +03:00
Daniel Gak Anagrov ba3d9ade22 feat(activity): moved project roles to activity (#5019)
* feat: moved project roles to activity
* fix: added previous project role filed on activity
* fix: remvoke does not get logged as an actvity for every project in a workspace when removed from workspace
* fix: on delete user account, emit also seat and project event

Co-authored-by: Charles Driesler <chuck@speckle.systems>
2025-07-10 11:44:54 +02:00
Kristaps Fabians Geikins cfa0b249d1 feat: seat type selection in invite flows (#4908)
* backend seems to work

* bigger menu support

* FE nearly done

* merge fix

* ui changes

* workspace invite disclaimer

* project disclaimer

* project invite viewer -> editor flow

* extra minor fixes

* Change project role input label

* extra test assertions

---------

Co-authored-by: Benjamin Ottensten <benjamin.ottensten@gmail.com>
2025-06-13 09:45:58 +03:00
Kristaps Fabians Geikins 4db1531064 feat: "workspace" project visibility (#4704)
* WIP new visi

* test fixes

* visibility seems to work

* authz policies & authorizeResolver updated

* various test fixes

* users tests

* frontend changes

* minor adjustments

* shared test fix

* test fixes

* force rerun CI
2025-05-14 15:20:26 +03:00
Iain Sproat ef290baff1 fix(server): throw stream not found error if stream not found 2025-05-13 14:41:32 +01:00
Kristaps Fabians Geikins c6dcf18bdb feat(server): workspace project invite auto-accept (for existing wp members) (#4622)
* WIP ts

* DI fix & tests moved to TS

* auto-accept seems to work

* CR comments
2025-04-30 17:39:07 +03:00
Kristaps Fabians Geikins 10832655d4 fix(server): all project created subs firing for workspace guests + req ctx cache fix for subs (#4453)
* WIP sub fix

* fix sub resolver caching issue
2025-04-16 11:21:17 +03:00
Chuck Driesler c6e0714bc4 chore(authz): hoist authorizeresolver (#4253)
* chore(authz): hoist deleteStreamAndNotify

* chore(authz): hoist updateStreamAndNotify

* chore(authz): comment
2025-03-24 16:51:19 +00:00
Kristaps Fabians Geikins d903e8ffc4 feat(server): support editor -> viewer seat downgrades (#4181)
* new seat based project role checks implemented

* everything done

* minor bugfix
2025-03-14 14:21:25 +02:00
Kristaps Fabians Geikins fb6dc448ca feat(server): prevent viewer seat from becoming project contributor/owner + extra fixes (#4117)
* unrelated fixes that i noticed

* tests for fix

* tests & working restrictions

* test fix

* test fixx
2025-03-06 13:26:16 +02:00
Kristaps Fabians Geikins 6051917b59 chore(server): refactor activityStream invocations - batch #7 - streams (#4014)
* chore(server): refactor activityStream invocations - batch #7 - streams

* test fix

* more test fixes

* CR comment fix
2025-02-24 12:34:56 +02:00
Kristaps Fabians Geikins 4b7740eb17 Merge branch 'main' into fabians/web-2415-6 2025-02-17 15:15:52 +02:00
Iain Sproat 0ce23be6f3 chore(logging): log messages related to a request should include request ID (#3945)
- this requires passing the request logger through to the method invoking the logger
2025-02-06 16:04:51 +00:00
Kristaps Fabians Geikins 9b46747815 chore(server): refactor activityStream invocations - batch #6 - project invites 2025-01-24 18:35:21 +02:00
Kristaps Fabians Geikins aee14edc5b chore(server): getting rid of module-scoped event emitters - batch #1 (#3766)
* got rid of models emitter + added tests

* got rid of projects emitter + added tests

* replaced user event bus

* test migrate
2025-01-13 11:39:46 +02:00
Alessandro Magionami f227a9b91d fix(activitystream): move activity creation after transaction commimt 2024-12-02 12:14:57 +01:00
Kristaps Fabians Geikins 1800dbbdbd feat(server): improved subscription testing DX + tests for common subs + new subs (#3554)
* userProjectsUpdated.added test

* multi region support

* userStreamAdded

* commit subs tested

* fix for proj workspace assignment

* undo commitHelper main changes

* disable all ffs mode

* createTestWorkspace support when workspaces arent enabled

* project create fix

* workspace projects updated subscription

* WIP new workspace sub

* updated workspaceCreated

* updated workspaceUpdated

* BE for workspace updated sub

* workspace updated sub

* ts err fix
2024-11-27 15:41:04 +02:00
Kristaps Fabians Geikins a9a313ee63 feat(server): cli and cross-server-sync multiregion support (#3527)
* feat(server): cross-server-sync multiregion ready

* fixed various db commands

* db cli works

* final changes
2024-11-22 19:52:58 +01:00
Gergő Jedlicska 73cc7e67d3 gergo/webhookRegions (#3459)
* feat(webhooks): multi region webhook resolver

* feat(webhooks): multi region webhook cleanup

* fix(webhooks): DI fixes

* feat(activitystream): region aware save activity

* feat(accessrequests): multi region

* feat(cli): allow multi region project and commit download

* feat(postgres): make docker postgres 0 day multi region ready

* feat(cli): allow multi region project and commit download properly

* fix(cross-server-sync): di fix

* feat(activitystream): non region aware activities, they are not project data

* fix(webhooks): triggers need to be included

* feat(stream/projectCreate): activity save is not needed any more, its all event based

* feat(multiRegion): get all registered db clients

* fix(regions): test equal in any order

* fix(projectDownload): need to await
2024-11-08 10:45:39 +01:00
Gergő Jedlicska f210d9b749 gergo/web 2109 project region based db connection selector (#3434)
* feat(projects): add project regions, default to null

* feat(multiregion): add projectRegion Db client lookup logic

* feat(multiregion): add project region repositories and caching

* feat(multiRegion): db initialization and get project db client

* feat(docker-compose): add second db for regions testing

* feat(multiRegion): initialize region with pubs and subs working

* fix(multiRegion): get region client even if it was registered in another pod

* feat(workspaces): create workspace resolver split

* feat: update server region metadata

* feat(projects): rewrite project creation

* feat(multiRegion): getRegionDb

* fix(workspaces): get projects now can retur null

* feat(multiRegion): make local multi region DB-s work

* feat: set d efault workspace region

* CR changes

* tests

* feat(multiRegion): bind region properly

* fe update

* test fixes

* feat(multiRegion): automatically create aiven extras plugin

* ci(postgres): use published postgres with aiven extras

* fix(multiRegion): roll back the aiven extras migration, there is a better way

* tests fix

* fix(billing): we do not need to add a seat, if the workspace is on a plan, but has no sub

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-11-06 17:29:08 +01:00
Kristaps Fabians Geikins 284d94f8ca chore(server): core IoC #104 - validatePermissionsWriteStreamFactory 2024-10-22 12:22:36 +03:00
Kristaps Fabians Geikins b128d13dbe chore(server): core IoC #103 - validatePermissionsReadStream 2024-10-22 12:16:04 +03:00
Kristaps Fabians Geikins 766a189465 chore(server): core IoC #62 - deleteUserFactory 2024-10-15 14:22:06 +03:00
Kristaps Fabians Geikins 1cb27e6fdd chore(server): core IoC #51 - getUser(s)Factory 2024-10-14 17:24:11 +03:00
Kristaps Fabians Geikins adc7abe63d chore(server): core IoC #40 - favoriteStreamFactory (#3252) 2024-10-14 10:44:45 +02:00
Alessandro Magionami 7f4df2dfdd chore(activitystream): addStreamUpdatedActivity refactor multi region (#3222) 2024-10-10 12:06:11 +02:00
Kristaps Fabians Geikins 7fa3b22366 chore(server): core IoC 39 - getFavoriteStreamsCollectionFactory (#3220) 2024-10-10 10:27:20 +02:00
Kristaps Fabians Geikins 82162963ee chore(server): core IoC 37 - getDiscoverableStreamsFactory 2024-10-10 10:59:37 +03:00
Kristaps Fabians Geikins 491f837ff1 chore(server): IoC 36 - createOnboardingStreamFactory 2024-10-10 10:58:51 +03:00
Kristaps Fabians Geikins f58b83870d Merge branch 'main' into fabians/core-ioc-35-1 2024-10-10 10:57:38 +03:00
Alessandro Magionami 394b25c3c9 chore(activitystream): addStreamDeletedActivity refactor multi region (#3213) 2024-10-10 09:52:19 +03:00
Kristaps Fabians Geikins 6cb5022ac4 chore(server): IoC 35 - updateStreamRoleAndNotify 2024-10-09 16:31:20 +03:00
Kristaps Fabians Geikins a3252f88f3 chore(server): IoC 34 - updateStreamAndNotifyFactory 2024-10-09 12:54:10 +03:00
Kristaps Fabians Geikins ad9cb3aafd chore(server): IoC 33 - deleteStreamAndNotifyFactory 2024-10-09 12:37:57 +03:00
Kristaps Fabians Geikins aa4f319277 chore(server): IoC 32 - createStreamFactory (#3204) 2024-10-09 11:10:20 +03:00
Kristaps Fabians Geikins 5b5dd201e2 chore(server): IoC 29 - getStream(s)Factory 2024-10-09 10:39:00 +03:00
Kristaps Fabians Geikins 17c5cbfe42 Merge branch 'main' into fabians/core-ioc-28 2024-10-09 10:38:11 +03:00
Alessandro Magionami a3fb0d7c0e Activitystream IoC 2 addStreamClonedActivity (#3207)
* chore(activitystream): addStreamPermissionsAddedActivity refactor multi region

* chore(activitystream): addStreamCreatedActivity refactor multi region

* chore(activitystream): addStreamClonedActivity refactor multi region
2024-10-09 10:29:24 +03:00
Alessandro Magionami c2c95d20c2 Activitystream IoC 1 addStreamCreatedActivity (#3206)
* chore(activitystream): addStreamPermissionsAddedActivity refactor multi region

* chore(activitystream): addStreamCreatedActivity refactor multi region
2024-10-09 10:28:17 +03:00
Kristaps Fabians Geikins 6cfee3e6d4 Merge branch 'main' into fabians/core-ioc-28 2024-10-08 14:01:07 +03:00
Alessandro Magionami f52bafc7e2 chore(activitystream): addStreamPermissionsAddedActivity refactor multi region (#3198) 2024-10-08 14:00:17 +03:00
Kristaps Fabians Geikins 55fe69ce13 chore(server): core IoC 28 - cloning object repo fns 2024-10-08 12:26:28 +03:00
Alessandro Magionami d8e789ef6a chore(activitystream): addStreamInviteAcceptedActivity refactor multi region 2024-10-08 10:43:16 +02:00
Alessandro Magionami 9476db0b09 Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-943-add-stream-permissions-revoked-activity 2024-10-08 09:52:01 +02:00
Alessandro Magionami 68dc836e7f chore(activitystream): addStreamPermissionsRevokedActivity refactor multiregion 2024-10-08 09:51:47 +02:00
Fabis a4bb99ec45 chore(server): core IoC 22 - cloning related commit repo fns 2024-10-07 16:15:59 +03:00
Fabis b2b8386bca import fix 2024-10-01 14:51:11 +01:00
Kristaps Fabians Geikins f92b6b37d4 chore(server): core IoC 9 - createBranchAndNotifyFactory 2024-09-26 16:36:41 +03:00
Kristaps Fabians Geikins 0412deeda3 chore(server): comments IoC 1 - createComment 2024-09-23 15:03:45 +03:00
Kristaps Fabians Geikins aab9bdcd66 chore(server): cross-server-sync IoC Part 3 (#2909) 2024-09-09 18:36:54 +03:00