Daniel Gak Anagrov
e8c960fc30
fix(notifications): revert notifications except migration ( #5671 )
2025-10-06 13:48:10 +01:00
Daniel Gak Anagrov
3ca4a11ca3
feat(notifications): basic listener structure, notification record, delayed mechanism ( #5432 )
...
* feat: basic notification listener sturcuture
* feat: clean up generated gql
* chore: edited structure
* feat: added basic repo
* feat: ported comment email to job queue
* feat: ported stream access request accepted
* feat: added notification insertion
* fix: minor typings
* feat: delayed notifications
* updated types
* feat: fixed gql
* notifications are listed
* index on notifications
* feat: while loop skiping for update locked
* delayed notification for access request
* take into account user prefrences
* on comment view, notification is marked as read
* feat: added gql notifications
* feat: avoid raising errors
* fix: error added scopes
* fix: mr comments
* fix: cursor and service method
* feat: added stronger types to notifications and versioning logic
* minor: rows updated
2025-10-06 12:19:12 +01:00
Kristaps Fabians Geikins
99c26db777
feat: MVP manual view positioning ( #5500 )
...
* init migration
* WIP position calculations
* view retrieval sorting
* WIP specific position resolution
* position calc
* new positioning draft
* workz?
* improved error
* even better logging
* moar
* troubleshooting
* works??
* delete junk
* fixed rebalancing
* some tests
* lint fix
* test fix
* more fixes and tests
* more tests and fixes
* fix testsss
* more tests
* moaar
* fix group drop
* errorToString updates
2025-09-24 11:58:46 +02:00
Daniel Gak Anagrov
1f5003bd32
feat(multiregion): cron job to detect regions out of sync ( #5392 )
...
* feat: basic structure
* fix: detect regions out of sync
* feat: added sync logic
* fix: tests
* feat: merge all strategy
* fix: mr comments
* fix: updatedAt in updates
* feat: project updatedAt no longer is a hidden operation
* feat: project region sync
* feat: delete project on cross-region-move
* removal: unnecesary permisions
* fix: caching issue
* fix: saved views on project cross region move
2025-09-10 16:35:48 +01:00
Daniel Gak Anagrov
75aa5d9b2d
feat(ci): reinstate multiregion tests ( #5365 )
...
* feat(multiregion): replace user replication
* chore(multiregion): optimise replication
* maybe it's this
* postgres is fun
* once more
* chore(multiregion): only replicate test user creation during multiregion tests
* feat: improved replicate_query logic
* fix: minor
* fix: starting issue
* feat: included user create and delete specs to multiregion
* feat: removed console logs
* fix: user defaults
* fix: multiregion test helper
* fix: update scenarios for users
* refactor(multiregion): swap replicateQuery concept to asMultiregionOperation (#5301 )
feat(multiregion): introduced asMultregionOperator, refactor test to user builder classes
* chore: renamings
* fix: remove comments
* feat: remove user replication
* refactor: simplified spec usages
* chore: comments
* chore: branches and favs
* chore: more tests
* chore: more tests
* fix linting
* fix tests
* feat: dropping replication
* refactor: moved project delete to service
* fix: comment
* feat: updateStreamFactory and updateProjectFacotry
* deleteProjectFactory + replicateFactory
* deleteWorkspaceFactory
* fix: selector
* fix: tests
* fix tests, finished createStreamFactory
* feat: simplify changes
* fix: remove comment
* fix: minor strucutres
* fix: moveProjectToRegion
* fix: moved branch creation outside of multiregion scope
* fix: branch creation
* fix: tests
* fix: ci tests
* fix: removed log form test
* fix: on specs, no random regionKeys
* feat: simplify ci for postgres
* try: fix health check
* feat: fixed tests in ci
* try: entrypoint
* try: entrypoint
* try: entrypoint
* try: POSTGRES_INITDB_ARGS
* feat: apply POSTGRES_INITDB_ARGS to all server tests
* fix: broken test
* fix: reinstate max health attempts
* fix: after merge
* fix: after merge
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-09-04 14:49:02 +02:00
Daniel Gak Anagrov
399c998fd7
feat(multiregion): apply prepared transactions to projects ( #5322 )
...
* feat(multiregion): replace user replication
* chore(multiregion): optimise replication
* maybe it's this
* postgres is fun
* once more
* chore(multiregion): only replicate test user creation during multiregion tests
* feat: improved replicate_query logic
* fix: minor
* fix: starting issue
* feat: included user create and delete specs to multiregion
* feat: removed console logs
* fix: user defaults
* fix: multiregion test helper
* fix: update scenarios for users
* refactor(multiregion): swap replicateQuery concept to asMultiregionOperation (#5301 )
feat(multiregion): introduced asMultregionOperator, refactor test to user builder classes
* chore: renamings
* fix: remove comments
* feat: remove user replication
* refactor: simplified spec usages
* chore: comments
* chore: branches and favs
* chore: more tests
* chore: more tests
* fix linting
* fix tests
* feat: dropping replication
* refactor: moved project delete to service
* fix: comment
* feat: updateStreamFactory and updateProjectFacotry
* deleteProjectFactory + replicateFactory
* deleteWorkspaceFactory
* fix: selector
* fix: tests
* fix tests, finished createStreamFactory
* feat: simplify changes
* fix: remove comment
* fix: minor strucutres
* fix: moveProjectToRegion
* fix: moved branch creation outside of multiregion scope
* fix: branch creation
* fix: tests
* fix: ci tests
* fix: removed log form test
* fix: on specs, no random regionKeys
* review fixes
* fix: mr comments
* feat: removed test
---------
Co-authored-by: Charles Driesler <chuck@speckle.systems >
2025-09-04 13:07:19 +02:00
Daniel Gak Anagrov
8fbe1322e1
chore(multiregion): drop db defaults for project ( #5305 )
...
* feat: added migration
* chore: move defaults and other functions outside of repository fn
2025-08-26 16:40:22 +02:00
Kristaps Fabians Geikins
0c957ed9cc
feat: setting home views ( #5250 )
...
* frontend update works
* starting viewer resources saved view tests
* test fix
* viewerResources new resolver + adjustment for home views
* create/update view fixing up and tests
* sort of works?
* fixing more race conditions
* loading preview
* disable home view stuff when federated
* fixing up links
* tests and home view fix
2025-08-18 14:35:59 +03:00
Kristaps Fabians Geikins
0f5096fb2e
feat: copy link to view + load original version ( #5202 )
...
* frontend nearly there
* backend adjustment sort of there
* WIP url busted issue
* does it work?
* how about now
* loading seems to work now
2025-08-11 16:02:35 +03:00
Kristaps Fabians Geikins
a6287fc06d
feat(fe2 & server): saved views foundation (list & view) + bits n bobs ( #5163 )
...
* init db migration
* WIP store view
* create service call
* WIP insertion
* insert sort of works
* moving code arounmd
* creation tests
* avoid duplicate entries
* fixes from main
* basic group retrieval works
* group filtering works
* WIP view listing
* filter by acl
* fixes + WIP single group retrieval
* wip pivot
* more pivot query fixes
* tests fixed after pivot
* views list tests
* fixing test command
* business plan only checks
* more tests for coverage
* .dts import fix
* cli fix
* anutha one
* auth policy tests for business plan access
* WIP saved views panel base
* BE listing adjustments
* WIP group rendering
* group render done
* WIP post create cache updates
* listing fine?
* my vs theirs
* auto open
* minor fixes
* click load omg
* nicely loading views
* type fix
* less spammy loading
* another type fix:
* more lint fix
* test fix
* codecov disable
* moar coverage
* fix sidebar flashin
* more test coverage
* more test cvoverage
* minor adfjustments
* adj
* saved view wipe fixes
* CSR viewer
* more improvements
* extra feature flag checks
* lint fix
* feature flags fix
* more test fixes
2025-08-05 11:52:50 +03:00
Kristaps Fabians Geikins
3ff32d639d
feat(server): allow running migrations w/o having to build ( #5178 )
...
* feat(server): allow running migrations w/o having to build
* package.json fix
* avoid string mutation
* CLI for purging test DB
2025-08-04 13:40:28 +03:00
Kristaps Fabians Geikins
4b06f42db7
chore(server): run TS files directly (no compilation) ( #5134 )
...
* sort of works
* type fixes
* added option to run old way too
2025-07-23 11:20:40 +02:00
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
7de0229b76
fix: avoid workpaces to turn free when susbscription is present ( #5015 )
2025-07-01 13:08:24 +02:00
Daniel Gak Anagrov
a4ab20c938
feat(activity): add workspace billing events and seats to activity ( #4944 )
...
* feat: improved gatekeeper eventsfor workspace history
* feat: userId on seat assign
* feat: record workspace seat events
* feat: workspace removals as activity
* feat: emit role and seat events on create workspace
* fix: reordered events for workspace creation
2025-06-30 16:49:36 +02:00
Chuck Driesler
2f36e518a0
fix(multiregion): make move region job safe for replication ( #4907 )
...
* chore(multiregion): failing test for move project region
* fix(multiregion): unblock replication after regional move
* fix(regions): try-catch replication
* fix(regions): cache roles within job
* fix(regions): toggle region key in target db
2025-06-25 15:47:34 +01:00
Gergő Jedlicska
72ecb9197b
feat(gatekeeper): intoduce the enterprise plan ( #4882 )
...
* feat(gatekeeper): intoduce the enterprise plan
* chore(server): remove more "magic strings"
* test(shared): fix plan tests with enterprise case
* Small change to format plan name
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-06-05 11:07:59 +02:00
Daniel Gak Anagrov
0b04719834
feat: moved workspaces Create and Upgrade mixpanel events to backend ( #4816 )
2025-05-28 13:30:55 +02:00
Kristaps Fabians Geikins
9998ed2586
feat: personal project limits ( #4759 )
...
* base limits cleanup
* history limit tests
* canCreatePersonal & tests
* canInvite block
* WIP model check
* fix tests
* shared tests fix
* lodash import fix
* lint fix
* help update
* hopefully fixing test
* CR comment
2025-05-20 14:56:05 +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
Kristaps Fabians Geikins
b406d0e32d
chore(server): node16 & export maps support for server ( #4698 )
...
* chore(server): node16 & export maps support for server
* moar cleanup
* lint fixc
2025-05-12 14:27:34 +03:00
Gergő Jedlicska
2fdcf1bd1d
refactor(shared): unified queue handling ( #4691 )
...
* feat(shared): unified queue initialization in shared
* feat(queues): use the new queue creation everywhere
* chore(shared): move to redis module
* chore(shared): fix export maps
* chore(fileimport): add deps properly
* fix(shared): import fix
* fix(everything): moear imports
* fix(server): cjs imports
2025-05-08 16:58:43 +02:00
Kristaps Fabians Geikins
211922b6a6
chore: get rid of all old workspace plan code ( #4624 )
...
* first batch of changes
* tests fix
* FE fixed
* renaming constants
* test fixes
* moar test fixes
* another test fix
* reenable app rover check
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com >
2025-04-30 19:18:32 +02:00
Kristaps Fabians Geikins
f76a2c34d3
chore: add no floating promises lint rule ( #4249 )
...
* chore: add no floating promises lint rule
* minor cleanup
* fix test by only running if node 22 or greater
---------
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com >
2025-03-25 13:36:49 +02:00
Iain Sproat
ce08e5e02d
refactor(server): logging directory renamed to observability ( #4077 )
2025-02-28 08:43:54 +00:00
Kristaps Fabians Geikins
ec092fb042
chore: move common workspace plan/feature config to @speckle/shared ( #4064 )
...
fix: gqlgen regenerated
2025-02-27 11:18:30 +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
6c5da56650
Merge branch 'main' into fabians/web-2415-5
2025-02-17 14:56:51 +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
bf80347abf
gergo/web 2664 workspace backend powered metrics ( #3985 )
...
* feat(workspaces): delete workspace emit event
* feat(workspaces): move workspace group metrics to the backend
* Removed FE mixpanel group update
* Remove fragment
* test(gatekeeper): add unittest to new gatekeeper service
---------
Co-authored-by: Mike Tasset <mike.tasset@gmail.com >
2025-02-17 09:50:16 +01: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
c59e6043bb
fix(server/errors): derive errors from BaseError ( #3918 )
2025-01-30 18:15:56 +01:00
Kristaps Fabians Geikins
0b90dcf0df
chore(server): moving out comments sub reporting to separate listeners
2025-01-24 18:29:50 +02:00
Kristaps Fabians Geikins
b6871a61cc
chore(server): refactor activityStream invocations - batch #5 - comments
2025-01-24 17:54:16 +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
Kristaps Fabians Geikins
8ff0ae91ca
chore(server): refactor activityStream invocations - batch #3 - branches
2025-01-23 12:06:54 +02:00
Kristaps Fabians Geikins
b41a98d107
chore(server): getting rid of module-scoped eventBuses - batch #4 - comments ( #3812 )
2025-01-14 17:24:26 +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
7ce306569f
got rid of projects emitter + added tests
2025-01-06 17:42:24 +02: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
Gergő Jedlicska
1dd782e2ae
fix(cli): user proper plan name as choice ( #3611 )
2024-12-03 13:16:03 +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
Gergő Jedlicska
f381dc3d9d
gergo/workspaceDefaultPlan ( #3561 )
...
* feat(gatekeeper): create workspaces with trial plan by default
* feat(gatekeeper): default to starter trial plan
* fix(eventBus): fix tests
2024-11-27 09:51:32 +01:00
Gergő Jedlicska
be7be141e8
fix(gatekeeper): migrate plan rename ( #3552 )
...
* fix(gatekeeper): migrate plan rename
* fix(cli): fix yargs
2024-11-26 12:41:56 +01: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
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