Kristaps Fabians Geikins
ebade45d43
feat: remove project discoverability concept from UI ( #4125 )
...
* feat: remove project discoverability concept from UI
* test fix
2025-03-07 13:09:03 +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
Iain Sproat
47556d68c7
chore(server/scheduled tasks): should log task name and unique task Id ( #4094 )
2025-03-03 15:12:11 +00:00
Iain Sproat
ce08e5e02d
refactor(server): logging directory renamed to observability ( #4077 )
2025-02-28 08:43:54 +00:00
Mike
2ecb98146a
Feat: prevent non work emails ( #3993 )
2025-02-26 10:55:02 +01: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
1d2a594f0a
chore: upgrade TS 5.2 -> 5.7.3 & ESLint to 9.20.1 ( #4032 )
...
* chore: upgrade TS 5.2 -> 5.7.3
* vite dts fix
* lint fix
* resolutions fix
* ui comp build fix
* precommit fix?
* latest eslint version
* autoloader fix
* undo unnecessary viewer change
* eslint fixes fe2 + trying disabled type linting
* lint fixes
2025-02-20 14:18:18 +02:00
Iain Sproat
1fcfdcedc3
fix(server/ratelimiter): handle response already sent ( #4004 )
2025-02-17 17:05:34 +01:00
Kristaps Fabians Geikins
4b7740eb17
Merge branch 'main' into fabians/web-2415-6
2025-02-17 15:15:52 +02:00
Kristaps Fabians Geikins
f51d632ef7
Merge branch 'main' into fabians/web-2415-4
2025-02-17 14:23:33 +02:00
Kristaps Fabians Geikins
4dcfbb251b
chore(server): moving out branch sub reporting to separate listeners
2025-02-17 13:56:02 +02:00
Kristaps Fabians Geikins
4278e20467
chore(server): refactor activityStream invocations - batch #3 - branches
2025-02-17 13:55:43 +02:00
Gergő Jedlicska
c4a6da410b
feat(core): drop the closure table pls ( #3900 )
...
* feat(core): drop the closure table pls
* feat(core): remove closures feature flag
* feat(core): remove more closure stuff
* feat(core): only drop closure table if it exists
2025-02-07 14:06:53 +01: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
Iain Sproat
c59e6043bb
fix(server/errors): derive errors from BaseError ( #3918 )
2025-01-30 18:15:56 +01:00
Gergő Jedlicska
188c333921
fix(workspaces): non region enabled workspace project creation ( #3847 )
...
* fix(workspaces): non region enabled workspace project creation
* fix(projects): remove duplicate getProject repo function
This was the cause of the default project region switch bug, we had two
almost identical implementations...
2025-01-27 17:45:55 +01: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
9775c488a1
chore(server): moving out version sub reporting to separate listeners
2025-01-24 17:52:34 +02:00
Kristaps Fabians Geikins
ac88c503e3
chore(server): refactor activityStream invocations - batch #4 - commits
2025-01-24 16:57:15 +02:00
Kristaps Fabians Geikins
d9bdc54599
chore(server): moving out branch sub reporting to separate listeners
2025-01-24 16:49:55 +02:00
Alessandro Magionami
384cd116a4
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2488-create-email-verification-mutation
2025-01-24 14:34:47 +01:00
Iain Sproat
71b82f2cb2
fix(server/rate limiting): Rate limit by IP or token ID ( #3879 )
2025-01-23 16:08:23 +00:00
Kristaps Fabians Geikins
8ff0ae91ca
chore(server): refactor activityStream invocations - batch #3 - branches
2025-01-23 12:06:54 +02:00
Alessandro Magionami
7fbd32dd43
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2488-create-email-verification-mutation
2025-01-23 10:51:30 +01:00
Alessandro Magionami
cea2da2987
chore(emails): new email verification flow
2025-01-21 16:08:18 +01:00
Kristaps Fabians Geikins
a2bc9ffbcb
chore(server): refactor activityStream invocations - batch #1 - user ( #3845 )
...
* chore(server): refactor activityStream invocations - batch #1 - user
* minor cleanup
* test fix + swap to TS
* move listeners to new loc
2025-01-21 09:48:02 +01:00
Kristaps Fabians Geikins
dab0a23c33
chore(server): event bus refactor - version emitter - batch #2
2025-01-13 11:03:34 +02:00
Kristaps Fabians Geikins
f403d51330
replaced user event bus
2025-01-07 11:24:07 +02:00
Kristaps Fabians Geikins
7ce306569f
got rid of projects emitter + added tests
2025-01-06 17:42:24 +02:00
Kristaps Fabians Geikins
13e75a98f0
got rid of models emitter + added tests
2025-01-06 15:55:50 +02:00
Kristaps Fabians Geikins
ab9e8bbb00
feat(server): ProjectVersionsUpdatedMessage.modelId always filled ( #3754 )
2025-01-06 10:37:54 +02:00
Iain Sproat
457c532b2b
feat(server): allow ratelimiting to be explicitly disabled ( #3757 )
...
* feat(server): allow ratelimiting to be explicitly disabled
- allows rate limiter to be enabled or disabled explicitly
- example .env file for testing now explicitly disables it
- disables rate limiter in CI tests, except where explicitly testing the rate limiter
2025-01-03 08:24:28 +00: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
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
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
Kristaps Fabians Geikins
9b5873e4f5
feat(server): SmartTextEditorValue.attachments multiregion support ( #3513 )
2024-11-19 15:58:40 +02:00
Gergő Jedlicska
153b1c3802
feat(version): require project id in version mutations
2024-11-11 09:57:22 +01:00
Alessandro Magionami
23445f91e2
chore(multiregion): add streamId to versions
2024-11-08 17:40:50 +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
Gergő Jedlicska
da7f0dda0e
gergo/web 2047 user joins the workspace event ( #3412 )
...
* feat(gatekeeper): add gatekeeper module feature flag
* feat(gatekeeper): add workspace pricing table domain
* feat(gatekeeper): add checkout session creation
* feat(gatekeeper): verify stripe signature
* wip(gatekeeper): checkout callbacks
* feat(gatekeeper): add unlimited and academia plan types
* refactor(envHelper): getStringFromEnv helper
* chore(gatekeeper): add future todos
* feat(gatekeeper): add productId to the subscription domain
* feat(gatekeeper): add in memory repositories
* feat(gatekeeper): add more errors
* feat(gatekeeper): complete checkout session service
* feat(gatekeeper): add stripe client implementation
* feat(gatekeeper): add checkout session completion webhook callback path
* feat(gendo): fix not needing env vars if gendo module is not enabled
* feat(gatekeeper): require a license for billing
* chore(gatekeeper): cleanup before testing
* feat(gatekeeper): subscriptionData parsing model
* ci: add billing integration and gatekeeper modules to test config
* test(gatekeeper): add checkout service tests
* feat(gatekeeper): make completeCheckout callback idempotent properly
* feat(gatekeeper): move to knex based repositories
* test(gatekeeper): billing repository tests
* feat(gatekeeper): add yearly billing cycle toggle
* feat(ci): add stripe integration context to test job
* feat(billingPage): conditionally render the checkout CTAs
* fix(gatekeeper): remove flaky test condition
* feat(helm): add billing integration feature flag
* WIP billing gql api
* feat(gatekeeper): cancel checkout session api
* feat(gatekeeper): handle existing checkout sessions, when trying to create a new one
* feat(gatekeeper): add workspace plans gql api
* feat(gatekeeper): handle cancelation and subscription updates
* fix(gatekeeper): scope initialization
* fix(gatekeeper): eliminate stripe client import sideeffect
* fix(gatekeeper): eliminate stripe client import sideeffect 2
* feat(gatekeeper): upsize subscription on workspace role change
* feat(shared): add command pattern implementation
* refactor(eventBus): remove return capabilities from the event bus
* refactor(workspaces): use new commandFactory in workspace resolver
* feat(core): facelift taskLock
* feat(gatekeeper): shedule subscription downscale
* feat(gatekeeper): manage subscription downscale
* feat(gatekeeper): get workspace subscriptions, that are about to expire
* feat(gatekeeper): manage subscription downscale
* fix(gatekeeper): do not update subscription to canceled subs
* ci: bump postgres and max connections
* feat(workspaces): fix command factory event bugs
2024-10-30 15:51:40 +01:00
Kristaps Fabians Geikins
5c30d4a5ab
Merge pull request #3351 from specklesystems/fabians/sign-up-event-improvements
...
fix(server): more resilient sign up tracking
2024-10-23 10:16:26 +01:00
Alessandro Magionami
f6a87a4898
Merge pull request #3372 from specklesystems/fabians/core-ioc-104
...
chore(server): core IoC #104 - validatePermissionsWriteStreamFactory
2024-10-23 09:58:42 +02:00
Alessandro Magionami
9b5d935ccc
Merge pull request #3371 from specklesystems/fabians/core-ioc-103
...
chore(server): core IoC #103 - validatePermissionsReadStream
2024-10-23 09:58:14 +02:00
Alessandro Magionami
f073faf7b0
Merge pull request #3370 from specklesystems/fabians/core-ioc-102
...
chore(server): core IoC #102 - adminProjectListFactory
2024-10-23 09:34:31 +02:00
Alessandro Magionami
2cf9bee7e4
Merge pull request #3366 from specklesystems/alessandro/web-943-add-branch-deleted-activity
...
Activitystream IoC 4 addBranchDeletedActivity
2024-10-23 09:33:30 +02:00
Kristaps Fabians Geikins
284d94f8ca
chore(server): core IoC #104 - validatePermissionsWriteStreamFactory
2024-10-22 12:22:36 +03:00