Commit Graph

859 Commits

Author SHA1 Message Date
Alessandro Magionami a363f0e81a feat(workspaces): expose graphql field readonly for workspace type (#3659)
* feat(workspaces): add readOnly field to workspace gql type

* feat(workspaces): add readOnly logic for workspace

* refactor(gatekeeper): use exhaustive switch pattern

* chore(billing): fix test

* feat(gatekeeper): fix tests

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-12-18 13:47:27 +00:00
Gergő Jedlicska 68938bab94 feat(gatekeeper): show subscription seats (#3679)
* feat(gatekeeper): show subscription seats

* Enabled summary on billing page

* Made interval dynamic

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-12-11 22:19:22 +01:00
Gergő Jedlicska 229a19c981 gergo/workspaceAdmin (#3677)
* feat(workspaces): add unified paginated items service

* feat(workspaces): admin update workspace plan
2024-12-11 18:54:24 +01:00
Iain Sproat 27a0600dcd feat(server): multi-region aware liveness and readiness checks (#3468)
* chore(healthchecks): refactor out of modules
* feat(server): multi-region aware liveness and readiness checks
* Add tests for redis & postgres healthchecks
* do not close Redis client after checking it is healthy, we now use a shared client
2024-12-11 09:29:53 +00:00
Kristaps Fabians Geikins 8d0cbad8b6 feat(server): multi region blob support (#3653)
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
2024-12-10 09:05:18 +00:00
Chuck Driesler 02be49f71f fix(automate): redirect github auth flow to workspace if possible (#3632)
* fix(automate): redirect to workspace after auth if possible

* fix(automate): include session in github auth flow

* chore(automate): update props after merge

* fix(automate): pick => fragment

* fix(automate): use fragments correctly
2024-12-06 08:24:23 +00:00
Benjamin Ottensten 2f44ae2a7e Trigger mention dialog after a single character (#3644)
* Limit mentions to a single character

* Adjust test
2024-12-05 15:46:47 +01:00
Iain Sproat 083999da46 chore(server/logging): use message template instead of runtime formatting (#3638)
- reduce the cardinality of messages, to allow filtering by message template
2024-12-05 12:02:48 +00:00
Kristaps Fabians Geikins 4b6e7af19d feat(fe2): scope comment mentions to parent project collaborators (#3635)
* backend done

* get rid of email mention

* project scoped mentions work

* lint fix

* better user sanitization safety

* tests fix
2024-12-05 13:33:05 +02:00
Mike 8f4593e606 Feat: Workspace creation wizard (#3625) 2024-12-04 14:19:52 +01:00
Kristaps Fabians Geikins 16897b86cb feat(fe2): show custom data residency restriction disclaimer (#3605)
* move to workspace disclaimer

* disclaimer added everywhere

* cleanup

* copy update

* Update copy

---------

Co-authored-by: Benjamin Ottensten <benjamin.ottensten@gmail.com>
2024-12-03 11:58:14 +01:00
Gergő Jedlicska c68090a041 feat(projects): filter projects, that are not available under sso (#3585)
* feat(projects): filter projects, that are not available under sso

* feat(fe2): add SSO authentication warning banner

* Use specific fragment types

* fix(streams): stream load behavior should match old implementation

* Add user id to ProjectsHiddenProjectWarning_User fragment

* GQL gen

* Copy update

* fix(streams): admin override logic

* chore: gqlcodegen

* Update fragment name

---------

Co-authored-by: andrewwallacespeckle <andrew@speckle.systems>
2024-12-03 11:51:27 +01:00
Mike 2d41213229 Fix: Billing switch (#3596) 2024-12-02 15:40:23 +01:00
Alessandro Magionami 22cdd33325 Merge pull request #3592 from specklesystems/alessandro/web-2233-onboarding-project-create-fails
Alessandro/web 2233 onboarding project create fails
2024-12-02 14:49:21 +01:00
Kristaps Fabians Geikins 51579b76ef fix(server): various fixes related to subs + further improved utils + way quicker tests (#3573)
* fixed test util throwing + added new tests

* more tests

* more tests

* various model tests

* version tests

* removed shitty old tests

* lint fix

* workspaceProjectsUpdated test

* workspace updated on invite

* workspace subs support team changes

* tests fix

* test fix hopefully?
2024-12-02 13:30:24 +02:00
Alessandro Magionami f227a9b91d fix(activitystream): move activity creation after transaction commimt 2024-12-02 12:14:57 +01:00
Alessandro Magionami 450ad95afc fix(multiregion): add join for stream_commits 2024-12-02 12:14:24 +01:00
Iain Sproat 54085d1dd5 fix(logging): taskScheduler should use pino parameters (#3586)
- log messages were being interpolated at runtime and not using structured logging
2024-11-29 16:46:14 +00:00
Chuck Driesler e312110933 Automate Public Beta (#3472)
* feat(automate): query active user functions

* fix(automate): show automations to non-stream-owners

* feat(automate): associate function with workspace

* fix(automate): split functions page between user and example functions

* fix(automate): ugh

* fix(functions): use correct query type in different places

* fix(automate): workspace functions page

* feat(automate): query specific categories of functions

* fix(automate): checkpoint

* fix(workspaces): successful queries w local env

* fix(automate): createFunctionWithoutVersion

* fix(automate): successful associate function with workspace

* fix(automate): query and return workspaces on functions

* fix(automate): show current function workspace

* fix(automate): query functions in automation create dialog

* fix(automate): audit non-owner automation access

* refactor(automate): logs api can get the projectId from the path

* fix(automate): multiregion gql resolvers

* fix(automate): multiregion event listeners

* fix(automate): drop automationCount

* fix(automate): multiregion run status

* fix(automate): correctness

* fix(automate): successful usage of multiregion results

* fix(automate): actually finish event listeners

* chore(automate): fix tests fix tests

* fix(automate): fix tests but make it multiregion flavor

* fix(automate): logs endpoint

* fix(automate): inject projectid correctly

* fix(automate): drop user-source functions

* fix(automate): owners edit, others can view

* fix(automate): simplify queries, auto workspace association

* chore(automate): appease

* chore(automate): fix function types

* fix(automate): get to workspace functions from empty state

* chore(automate): death to all slugs

* fix(automate): no create automation from function

* fix(automate): hide workspace change, tweak role access

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-11-29 17:33:14 +01:00
Gergő Jedlicska ec27e394d9 feat(workspaces): add workspace creation state (#3578) 2024-11-28 20:50:53 +01:00
Mike b2cebea7eb Fix: Various billing fixes (#3569) 2024-11-28 20:24:05 +01:00
Gergő Jedlicska ec02e63707 feat(gatekeeper): upgrade workspace plan (#3572) 2024-11-28 11:15:32 +01:00
Chuck Driesler fd5f316af0 fix(automate): automate module multi region (#3531)
* refactor(automate): logs api can get the projectId from the path

* fix(automate): multiregion gql resolvers

* fix(automate): multiregion event listeners

* fix(automate): drop automationCount

* fix(automate): multiregion run status

* fix(automate): correctness

* fix(automate): actually finish event listeners

* chore(automate): fix tests fix tests

* fix(automate): fix tests but make it multiregion flavor

* fix(automate): logs endpoint

* chore(automate): globalDb to db

* fix(automate): inject projectid correctly

* fix(automate): debug log fetch failure

* chore(automate): fix tests for new message

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-11-27 15:26:09 +00: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 01b222ced8 gergo/web 2155 gendo module multi region (#3528)
* fix(workspaces): allow workspace delete for paid workspaces

* feat(gendo): multi region gendo with new api integration and limits

* feat(gendo): user credits

* feat: adds limits to gendo panel, and terms and conditions link

* fix: reworks setting back camera view

* feat(gendo): webhook signature verification

* fix(gendo): nullability

* test(blobstorage): fix test dependency injection

---------

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-11-22 16:43:31 +01:00
Alessandro Magionami 60e724eb4d Merge pull request #3535 from specklesystems/alessandro/web-2189-review-core-resolvers
Alessandro/web 2189 review core resolvers
2024-11-22 09:38:58 +01:00
Gergő Jedlicska 83a991bfac feat(gatekeeper): rename workspace plans (#3533)
* feat(gatekeeper): rename workspace plans

* Updated plans in FE

* feat(gatekeeper): stripe redirect to workspace dashboard

* test(gatekeeper): fix tests

---------

Co-authored-by: Mike Tasset <mike.tasset@gmail.com>
2024-11-22 05:50:16 +01:00
Alessandro Magionami a91f73d6cc chore(multiregion): scan regions for commits resolvers 2024-11-21 12:20:25 +01:00
Alessandro Magionami 7cb51dc0e4 chore(multiregion): small fixes to resolvers 2024-11-21 12:20:03 +01:00
Mike 065644b31d Fix: Remove remaining billing query (#3517)
* Fix: Remove remaining billing query

* fix types
2024-11-19 18:42:18 +01:00
Alessandro Magionami 146060355f Alessandro/web 2161 commits (#3511)
* chore(multiregion): commits resolvers multiregion

* chore(multiregion): fix tests
2024-11-19 16:00:45 +01:00
Gergő Jedlicska e30b8c83b9 gergo/workspacesMultiRegion (#3477)
* feat(webhook-service): learn to speak multi region

* feat(fileimport-service): talk multi region to me

* feat(fileuploads, blobs): multi region

* feat(workspaces): update delet workspace with billing and regions

* fix typo

* feat(workspaces): remove old billing resolvers

* test(workspaces): fix tests

* fix(workspaces): remove unused schema
2024-11-19 15:45:03 +01:00
Gergő Jedlicska 381c4e2a85 feat(gatekeeper): feature access resolver (#3514) 2024-11-19 15:44:43 +01:00
Kristaps Fabians Geikins 9b5873e4f5 feat(server): SmartTextEditorValue.attachments multiregion support (#3513) 2024-11-19 15:58:40 +02:00
Kristaps Fabians Geikins 42db2f6b82 feat(server): comments module multiregion support (#3493)
* prepwork

* more prep for testing

* tests/linting seems fine

* a couple of query fixes

* fix up notifications for multiregion

* test fixes?

* wal_level issue fix?

* fileupload test fix

* anotha test fix

* undo unnecessary changes

* streamActivity -> main DB
2024-11-19 12:15:43 +02:00
Iain Sproat a1ee8a89a7 chore(server): graceful shutdown (#3125)
* chore(server): graceful shutdown
- stop() on the apollo server should be called

* chore(server): gracefully drain apollo server

* Allow grace period to be configured

* Terminus manages the readiness and liveness endpoints

* terminus is responsible for stopping the graphql server

* remove logging on shutdown

* Remove redundant parameter

* move healthchecks out of business modules to top-level directory
- terminus can only handle readiness check, not liveness
- app needs to return readiness handler, so that server terminus can use it

* fix tests

* Fix broken merge

* fix broken merge

* incorporate review comments

* fix invalid merge

* fix readinesscheck not being passed as parameter
2024-11-19 11:08:38 +01:00
Gergő Jedlicska c23da67313 fix(commits): add streamId to legacyCommitsQuery (#3512) 2024-11-19 10:46:07 +01:00
Chuck Driesler 566bec59a5 Revert "fix(automate): drop specklecon function templates (#3503)" (#3504)
This reverts commit adeb529826.
2024-11-16 19:57:04 +00:00
Chuck Driesler adeb529826 fix(automate): drop specklecon function templates (#3503) 2024-11-16 13:06:51 +00:00
Kristaps Fabians Geikins f961a6da81 chore(server): various useful multiregion changes from comments pr (#3499)
* chore(server): various useful multiregion changes from comments pr

* hopefully fixing CI?

* test fix

* more test fixes??

* more test fixes..

* plz work ;((((

* revert multiregion on by default
2024-11-15 15:49:34 +02:00
Chuck Driesler be08246d4d SpeckleCon Templates (#3497)
* fix(specklecon): add specklecon function templates

* fix(specklecon): more templates

* Update executionEngine.ts

* Update functionManagement.ts
2024-11-14 14:47:51 +00:00
Chuck Driesler 4159a2277a fix(specklecon): add specklecon function templates (#3491) 2024-11-13 16:13:02 +01:00
Gergő Jedlicska 68b8341945 gergo/multiRegionFileImport (#3474)
* feat(webhook-service): learn to speak multi region

* feat(fileimport-service): talk multi region to me

* feat(fileuploads, blobs): multi region

* feat(fileimport-service): multi region fixes

* feat(branchesAndCommits): multi region resolvers

* fix(fileimports): no need for ts ignore

* fix(fileimports): fix pr comments
2024-11-13 14:20:25 +01:00
Alessandro Magionami 992c9579ad chore(multiregion): branches resolvers multiregion (#3483) 2024-11-12 10:35:43 +01:00
Chuck Driesler 22167d215f feat(sso): delete sso (#3452)
* feat(sso): delete sso

* fix(sso): simplify delete
2024-11-12 09:17:48 +00:00
Gergő Jedlicska 76367c30c2 feat(commits): proper dep initialization 2024-11-11 10:23:35 +01:00
Gergő Jedlicska 153b1c3802 feat(version): require project id in version mutations 2024-11-11 09:57:22 +01:00
Gergő Jedlicska 50a76315ef Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2138-models-resolvers 2024-11-11 06:15:31 +01:00
Gergő Jedlicska 1c19f67dd2 feat(models): support streamId, branchId in models 2024-11-11 06:09:53 +01:00