Commit Graph

995 Commits

Author SHA1 Message Date
Kristaps Fabians Geikins ee5ae8af62 fix(fe2): accept invite before onboarding after sign up (#2491)
* explicitly ordering global middlewares

* various subscription fixes & WIP project invite middleware

* SSR invite accept & toast notifs seem to work

* backend support for mixpanel

* mixpanel be logic -> shared

* minor fix

* finissh

* lint fix

* minor comment adjustments

* better adblock handling
2024-07-11 11:45:11 +03:00
Chuck Driesler 790d97383c feat(workspaces): project creation emit domain event
* feat(workspaces): drop createdByUserId from the dataschema

* feat(workspaces): repositories WIP

* merge

* protect against removing last admin in workspace

* quick impl and stub tests

* add tests

* services

* unit tests for role services

* feat(workspaces): authorize project creation if workspace specified

* feat(workspaces): emit project created event

* fix(workspaces): protect against adding a project to a workspace if module not enabled

* fix(workspaces): oops broke tests during merge

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-07-10 16:13:41 +01:00
Iain Sproat 1d2bc481c8 feat(logging): metrics endpoint is logged as debug level, not info (#2490) 2024-07-10 13:25:52 +01:00
Kristaps Fabians Geikins 0b2ca9a515 feat: add missing FE1 fields to the FE2 GQL schema (#2471)
* WIP version create

* commitCreate migrated

* minor cleanup

* commitReceived migrated

* added Project.object

* Project.comment introduced

* moving away old API usages in FE1

* ProjectMutations.batchDelete

* project pending access requests

* WIP project access req tests

* project access req tests done

* ModelByName test

* version mutation tests

* project.object tests

* batch delete tests

* minor improvements to redirect logging
2024-07-10 11:33:53 +02:00
Chuck Driesler e703bb7415 WEB-1140 manage user workspace membership services (#2460)
* feat(workspaces): drop createdByUserId from the dataschema

* feat(workspaces): repositories WIP

* merge

* protect against removing last admin in workspace

* quick impl and stub tests

* add tests

* services

* unit tests for role services

* fix(workspaces): maybe tests work like this

* fix(workspaces): dry

* fix(workspaces): initialize tests better

* fix(workspaces): so true

* fix(workspaces): right

* fix(workspaces): self nit

* fix(workspaces): better repository structure

* fix(workspaces): repair tests, use `example.org`

* fix(workspaces): add tests for new repo functions, repair other tests

* fix(workspaces): better distinction between service-level guarantees and repo-level guarantees

* fix(workspaces): review comments and stencil tests

* fix(workspaces): add tests

* fix(workspaces): tests work

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-07-09 18:26:59 +02:00
Iain Sproat b119f2ee83 feat(metrics): collect metrics at a higher frequency then prometheus scrapes (#2479)
* feat(metrics): collect metrics at a higher frequency then prometheus scrapes
* metrics presented as histograms
* Metric for self monitoring time taken to collect the high frequency metrics
* Initiate high frequency metrics alongside default metrics
* Collect metrics every 100ms
2024-07-09 14:57:06 +01:00
Alessandro Magionami a9e6dc5834 feat(user-emails): create user emails table and type (#2470)
* feat(user-emails): create user emails table and type

* chore(user-emails): add delete cascade

* chore(user-emails): fix tests

* chore(user-emails): add unique constraint for email and userId

* chore(user-emails): use random email in tests

* chore(user-emails): add todo to remove user-email in test

* chore(user-emails): code review changes

* chore(user-emails): use random passwords for tests

* chore(user-emails): fix test and code review changes
2024-07-08 17:27:59 +02:00
Kristaps Fabians Geikins 95184b6883 chore(server): marking all old (non-FE2) GQL schema fields as deprecated (#2435)
* some fe2 copy changes + everything upp to automate deprecated

* blobstorage & comments & branches/commits

* all core assets reviewed

* server invites

* webhooks

* minor copy update

* updating copy
2024-07-08 14:09:55 +02:00
Gergő Jedlicska 28ce7c757c feat(workspaces): add repository function implementations
Co-authored-by: Charles Driesler <chuck@speckle.systems>
2024-07-04 13:46:48 +01:00
Kristaps Fabians Geikins 74c17cd099 fix(server): only changing gql http status code on rate limiting (#2466) 2024-07-02 17:44:22 +03:00
Chuck Driesler 7b3f1d20ec fix(workspaces): construct acl query based on table name (#2464) 2024-07-02 14:58:27 +01:00
Kristaps Fabians Geikins 7d79c056db fix(server): 401, 403, 429 & 500 status codes for GQL error responses (#2463) 2024-07-02 16:54:25 +03:00
Kristaps Fabians Geikins d944b99172 fix(server): unexpected INTERNAL_SERVER_ERROR error codes for expected error cases (#2461) 2024-07-02 12:44:36 +03:00
Gergő Jedlicska 307983c94c feat(workspacesCore): initial module migration 2024-06-28 20:14:40 +02:00
Kristaps Fabians Geikins 6bfffca0a9 fix: various invite flow fixes & improvements (#2451)
* fix(fe2): show signup CTA for non-registered invitees [web-1144]

* fix: server invite signup error

* WIP project error access block

* feat(fe2): better 'no project access' error screens

* CR fix
2024-06-28 17:26:11 +02:00
Chuck Driesler 0bae93fbf0 Merge pull request #2438 from specklesystems/gergo/web-1146-workspace-creation-service
gergo/web 1146 workspace creation service
2024-06-28 15:46:13 +01:00
Charles Driesler a4c9fbab16 ugh 2024-06-28 14:30:51 +01:00
Charles Driesler fc69e26905 event emitter test 2024-06-28 12:41:49 +01:00
Charles Driesler b0344b1eae workspace repo fct and emitter 2024-06-28 12:31:37 +01:00
Gergő Jedlicska c046979640 test(workspaces): fix tests 2024-06-28 07:50:14 +02:00
Iain Sproat e55a94028d fix(metrics): include num pending validations in knex metrics (#2444) 2024-06-27 14:05:02 +01:00
Iain Sproat d851cecc02 feat(metrics): calculate remaining capacity in pg connection pool (#2443)
* feat(metrics): calculate remaining capacity in pg connection pool

* Apply metric to all relevant services
2024-06-26 21:23:56 +01:00
Gergő Jedlicska d4ef3e97df feat(workspaces): add blob store as workspace create deps 2024-06-26 21:47:16 +02:00
Gergő Jedlicska ddf5480d71 Merge branch 'main' of github.com:specklesystems/speckle-server into gergo/web-1146-workspace-creation-service 2024-06-26 21:30:42 +02:00
Gergő Jedlicska 7c16abc8eb feat(workspace): 1119 define workspaces dataschema (#2431)
* feat(workspaces): add workspaces module with roles and scopes

* feat(workspaces): add domain, graphql and persistent storage dataschema

* fix(workspaces): correct db injections

* chore(workspaces): add EE license

* chore(license): mentions workspaces separately in license file

* fix(core): roles import in migration

* fix(workspaces): drop workspace_acl on down migration

* fix(workspaces): roles constants

* fix(workspaces): coding standards

---------

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-06-26 17:00:56 +02:00
Iain Sproat c23557050d Healthchecks should only be debug level of log (#2440) 2024-06-26 11:26:44 +01:00
Gergő Jedlicska ff0cd77483 feat(workspaces): wip workspace creation 2024-06-25 17:07:38 +02:00
Gergő Jedlicska b59c24c844 fix(workspaces): roles constants 2024-06-25 15:40:41 +02:00
Gergő Jedlicska 8696a73d44 fix(workspaces): drop workspace_acl on down migration 2024-06-25 15:31:28 +02:00
Gergő Jedlicska 70552f1e5a fix(core): roles import in migration 2024-06-25 15:19:05 +02:00
Dimitrie Stefanescu c4bd9f73df Dim/closures patches (#2428)
* fix(server): advanced query route fix

* fix(server): fixes getObjectsChildrenStream

* fix(server): fixes getObjectChildrenStream in preview service copy pasted code@
2024-06-25 14:31:15 +02:00
Gergő Jedlicska 4d848eff04 Merge branch 'main' of github.com:specklesystems/speckle-server into gergo/web-1119-define-workspaces-dataschema 2024-06-25 13:26:37 +02:00
Gergő Jedlicska c6cd4c311d feat(serverinvites): create domain module in server invites (#2401)
* chore(serverinvites): repository refactor for multiregion

* chore(serverinvites): remove migrated functions from old repository

* chore(serverinvites): refactor serverInviteForToken resolver for multiregion

* chore(serverinvites): invite processing service refactor for multiregion

* chore(serverinvites): subscription refactor for multiregion

* chore(serverinvites): move buildEmailContents to dedicated file

* chore(serverinvites): deleteAllStreamInvites function multiregion refactor

* chore(serverinvites): refactor deleteServerOnlyInvites multiregion repository

* chore(serverinvites): complete repository refactor for multiregion

* feat(serverinvites): create domain module in server invites

* fix(serverinvites): no relative imports

* feat(serverinvites): extract individual types from repository

* feat(serverinvites): move interfaces to operations

* fix(serverinvites): update imports referencing old interfaces file

* fix(serverinvites): type mismatch for insert invite and delete old

* chore(serverinvites): refactor to single repo function

* test(serverinvites): fix tests

* fix(serverinvites): use domain types in all places

* feat(serverinvites): WIP unity

* feat(serverinvites): move to new facory names and types

* feat(serverinvites): fix tests

* fix(serverinvites): use factory name

---------

Co-authored-by: Alessandro Magionami <alessandro.magionami@gmail.com>
2024-06-25 13:24:37 +02:00
Gergő Jedlicska 7714cc87a8 chore(workspaces): add EE license 2024-06-25 13:23:19 +02:00
Gergő Jedlicska 7c30115a11 fix(workspaces): correct db injections 2024-06-22 12:34:59 +02:00
Gergő Jedlicska 549a38dd53 feat(workspaces): add domain, graphql and persistent storage dataschema 2024-06-22 11:32:54 +02:00
Gergő Jedlicska 0b98278d86 feat(workspaces): add workspaces module with roles and scopes 2024-06-21 18:40:46 +02:00
Kristaps Fabians Geikins ff55476cbc chore: removing unnecessary automate fix (#2417) 2024-06-21 14:44:35 +03:00
Kristaps Fabians Geikins 423e02be6f fix(server): startup crash if automate not enable due to missing scope for app (#2415) 2024-06-20 17:52:47 +03:00
Kristaps Fabians Geikins d4f90a83e8 chore: cleaning up betaAutomations (#2413) 2024-06-20 15:35:39 +03:00
Gergő Jedlicska 4ab1afc190 fix(objects): proper log templating (#2398) 2024-06-20 11:41:52 +02:00
Kristaps Fabians Geikins 689bb4e941 feat: function update flow re-introduced (#2410) 2024-06-20 12:24:15 +03:00
Dimitrie Stefanescu 77d49a1d91 Merge branch 'main' into dim/objs-fixes 2024-06-19 15:50:33 +01:00
Dimitrie Stefanescu 6d08aba068 fix(objects): cleanup 2024-06-19 15:40:06 +01:00
Iain Sproat fb242025c2 fix(modules/auth): correct imports (#2405)
* fix(modules/auth): correct imports

* identify type imports
2024-06-19 15:30:19 +01:00
Kristaps Fabians Geikins a9266333b4 fix(fe2): preview images being cached for too long (#2399)
* fix(fe2): preview images being cached for too long

* allowing caching of error previews

* updating cachebust value earlier
2024-06-19 16:26:35 +02:00
Dimitrie Stefanescu d24e95c046 fix(objects): wip fix on getObjectChildren in post closure world 2024-06-19 15:22:54 +01:00
Alessandro Magionami c797609f7c chore(auth): use absolute import 2024-06-19 14:45:15 +02:00
Alessandro Magionami e64eda22a0 fix(auth): use name to populate user name if provided in oidc 2024-06-19 12:24:55 +02:00
Iain Sproat c10ec8708d fix(healthcheck): close redis client after request is complete (#2394) 2024-06-18 16:37:19 +01:00