Kristaps Fabians Geikins
140fde3871
fix(server): fix registration test email provider ( #4195 )
2025-03-14 15:33:27 +02: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
50fd05afe8
feat(fe2): more viewer debugging improvements ( #4193 )
2025-03-14 12:47:58 +02:00
Chuck Driesler
8dfbf24d91
feat(workspaces): enable move project region ( #4135 )
2025-03-13 19:39:59 +00:00
Alessandro Magionami
b96769b425
Merge pull request #4167 from specklesystems/alessandro/web-2741-subscriptions-to-upgrade-for-new-plan-types
...
Alessandro/web 2741 subscriptions to upgrade for new plan types
2025-03-13 13:20:59 +01:00
Alessandro Magionami
ab9ea4406e
chore(gatekeeper): fix tests
2025-03-13 11:00:59 +01:00
Alessandro Magionami
d829cac8b3
chore(gatekeeper): add specific error for unsupported workspace plan
2025-03-13 10:36:28 +01:00
Iain Sproat
6065a44890
Merge pull request #4162 from specklesystems/gergo/previewRenderMetrics
...
feat(preview-service): add load and render duration calculation to preview service
2025-03-12 09:20:50 +00:00
Alessandro Magionami
89519bc6b7
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2741-subscriptions-to-upgrade-for-new-plan-types
2025-03-12 10:01:02 +01:00
Chuck Driesler
9dba10db01
fix(sso): email capitalization again ( #4164 )
...
* fix(sso): more capitalization
* chore(sso): comment
* chore(sso): fix test
2025-03-11 17:35:38 +00:00
Alessandro Magionami
d20d3bf94a
feat(gatekeeper): implement new upgrade plan in resolver
2025-03-11 17:54:54 +01:00
Alessandro Magionami
39d133d46b
chore(gatekeeper): test new upgrade plan flow
2025-03-11 17:54:26 +01:00
Alessandro Magionami
f824cb793a
feat(gatekeeper): create new upgrade plan flow
2025-03-11 17:52:42 +01:00
Alessandro Magionami
c035387eec
chore(gatekeeper): update function to validate upgrade
2025-03-11 17:52:18 +01:00
Iain Sproat
d2067f7e48
fix(preview service): attempt to prevent duplicate jobs ( #4155 )
...
* fix(preview service): attempt to prevent duplicate jobs
* fix test
* Incorporate review comments
* add tests
2025-03-11 17:17:52 +01:00
Iain Sproat
e9a90717a4
Observe load and render times in metrics
...
- makes new durations optional (so requests in flight aren't dropped during deployment)
- Adds durations as a label to existing metric
- Attempt to produce durations in error cases (so we can see long load times etc..)
2025-03-11 12:56:21 +00:00
Kristaps Fabians Geikins
28b49107b7
feat(server): upgrade workspace seat type ( #4158 )
...
* feat(server): upgrade workspace seat type
* test/lint fixes
2025-03-11 12:41:18 +02:00
Iain Sproat
459751eba0
Merge pull request #4152 from specklesystems/iain/fix-prometheus-summary
...
fix(server): prometheus summary should be over rolling window
2025-03-11 08:37:13 +00:00
Iain Sproat
e795381bd2
fix(server): prometheus summary should be over rolling window
...
- currently it calculates based on all values from start, and should instead expire old buckets
https://github.com/siimon/prom-client?tab=readme-ov-file#configuration-2
2025-03-10 15:03:50 +00:00
Alessandro Magionami
c7fe1645b9
Merge pull request #4134 from specklesystems/alessandro/web-2802-missing-workspace-new-pricing-config-from-the-helm-chart
...
chore(gatekeeper): add missing helm values for new plans
2025-03-10 15:58:35 +01:00
Iain Sproat
cfef333a0c
feat(preview service): introduce /metrics endpoint for Prometheus ( #4127 )
2025-03-10 10:48:29 +00:00
Alessandro Magionami
e4dc3b7834
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2802-missing-workspace-new-pricing-config-from-the-helm-chart
2025-03-10 11:05:58 +01:00
Gergő Jedlicska
a900aa3c7b
fix(previews): logging and promise fixes ( #4137 )
2025-03-10 10:22:02 +01:00
Alessandro Magionami
61736f7ee3
chore(gatekeeper): remove console.log
2025-03-10 10:14:57 +01:00
Alessandro Magionami
dceedf512f
chore(gatekeeper): remove last references to year limit for team plan
2025-03-10 10:11:40 +01:00
Alessandro Magionami
adfa8f4776
chore(gatekeeper): fix lint
2025-03-07 16:50:09 +01:00
Alessandro Magionami
1eb7331733
chore(gatekeeper): fix test
2025-03-07 16:38:36 +01:00
andrewwallacespeckle
d1f040051d
refactor(server): Update system emails ( #4074 )
...
* Update email verification. And workspace invite emails.
* Footer logos
* Workspace requests
* Trial
* Misc emails
* New logo
* Updates to font, spacing and footer
* Remove space
* Update invite emails
* Correct classes
2025-03-07 15:30:03 +00:00
andrewwallacespeckle
45d7d4d02b
feat(fe): Tutorials page ( #4120 )
...
* Tutorials Page
* Add tutorials page
* Update Page.vue
* Changes from PR
* Updates from call
* Remove page added in error
* Update Page.vue
* Remove shallowref
* Update mixpanel name
2025-03-07 12:18:45 +00:00
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
Chuck Driesler
9f83d1f74e
feat(regions): trigger project move with job ( #4010 )
2025-03-07 09:18:12 +00:00
Alessandro Magionami
bfc48f21a0
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2774-upgrade-from-free-to-paid-plan
2025-03-06 15:26:34 +01:00
Alessandro Magionami
2e0d2f0dbb
chore(gatekeeper): fix another
2025-03-06 15:00:05 +01:00
Gergő Jedlicska
61609de97e
gergo/previews ( #3765 )
...
* feat(preview-generator): add new preview generator webapp
* wip(preview-service): reworking the preview service backend
* feat(previews): logging
* feat(preview-service): streamline payloads
* fix(preview-service): do not log the full payload
* feat(preview-service): build new preview service
* feat(preview-service): add separate response queue
* feat(previews): integrate preview queues with the server
* feat(previews): use module alias
* chore(previews): remove old preview service code
* feat(previews): log stuff on job statuses
* fix(previews): add missing deps and scripts
* fix(previews): package deps fix
* fix(server): moar typing fixes
* Metrics related to jobs: total count, request failures, response errors & durations
* duration should include unit.
- histogram metric should be summary
- error responses include duration in seconds
- attempt to remove metric before adding it (prevent errors with duplicate metrics)
* fix(server, frontend): some ts fixes
* fixes
* fix(frontend): remove unneeded ts-expect-error
* chore(preview-service): eslint
* TS fix
* feat(previews): more smoal fixes
* fix(preview-service): alias loading
* feat(helm): updates for new preview service queue setup
* feat(preview-service): launch new browser for each job
* feat(preview-service): add timeout, fix liveliness
* fix(helm): add access to new secret in service accounts
* tidy metrics into a separate file
* Remove broken preview service acceptance test
* fix broken import
* Add metrics to test
* feat(preview-service): handle preview service shutdown properly
* fix(previews): merge bork
---------
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com >
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com >
2025-03-06 14:26:56 +01: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
Alessandro Magionami
fd99914c8e
chore(gatekeeper): fix another test type
2025-03-06 11:26:41 +01:00
Alessandro Magionami
e10ffac30c
chore(gatekeeper): fix test type
2025-03-06 10:47:24 +01:00
Alessandro Magionami
ca2c43738c
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2774-upgrade-from-free-to-paid-plan
2025-03-06 10:29:49 +01:00
Alessandro Magionami
656614e9bc
chore(gatekeeper): fix build
2025-03-06 10:28:27 +01:00
Iain Sproat
5655b3e758
fix(metrics): pass registry in to modules ( #4113 )
...
- ensure metrics are added to the correct registry
2025-03-06 08:37:05 +00:00
Alessandro Magionami
66ddb1eb34
Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-2774-upgrade-from-free-to-paid-plan
2025-03-05 19:29:44 +01:00
Alessandro Magionami
bcdb5ed0b0
feat(gatekeeper): new checkout flow
2025-03-05 17:35:28 +01:00
Alessandro Magionami
f5a8ab7cbc
feat(gatekeeper): add new create checkout session function
2025-03-05 17:33:36 +01:00
Alessandro Magionami
1e3d06c121
feat(gatekeeper): add new plans in graphql
2025-03-05 17:31:06 +01:00
Kristaps Fabians Geikins
954b1a9f11
feat: plan prices accurately read from Stripe ( #4104 )
...
* WIP prices + new caching utils
* cached workspace plan prices
* GQL API done
* integrated in frontend
* fixed missing FF
* CR fixes
* integration tests
* removed non-existant team yearly env var
2025-03-05 12:23:38 +02:00
Iain Sproat
5dbbe7f78a
fix(server/types): GetUserActivity actionType is optional ( #4093 )
...
- https://github.com/specklesystems/speckle-server/blob/04f84c31f36da3d8eb828c7262a040e4c5ecee2e/packages/server/modules/activitystream/repositories/index.ts#L213
2025-03-04 21:13:43 +00:00
Mike
ad899a8fd7
Feat: Add isEmailsEnabled to serverInfo ( #4109 )
2025-03-04 15:54:06 +01:00
andrewwallacespeckle
c384996978
refactor(fe): New workspace actions route to avoid slug conflicts ( #4107 )
...
* Remove blockedSlugs
* Update workspace action routes to use /actions
* Re-add blockedWords
2025-03-04 14:43:07 +00:00
Iain Sproat
5e4a6c5635
fix(server/prometheus): ensure consistent Prometheus registry is used ( #4106 )
...
* fix(server/prometheus): ensure consistent Prometheus registry is used
- there was a conflicting dependency between Metrics initialization and Modules initialization; resolved by separating registry initialization from metrics initialization
- pass in the registry to prevent implicit dependency being broken
- when registering a metric, first attempt to remove any of existing metrics with same name to prevent errors
- to prevent sneaky uses of the implicit registry, replace default import with explicit import so it is clearer when prometheusClient.registry is used
* Add tests for registering metrics
2025-03-04 08:41:53 +00:00
Chuck Driesler
063750cac7
feat(workspaces): track last visited workspace and project ( #4086 )
...
* feat(workspaces): track last visited workspace and project
* fix(workspaces): some renaming
* fix(workspaces): appease ts
* fix(tests): repair meta tests
2025-03-03 22:35:01 +00:00