Releases: specklesystems/speckle-server
Releases · specklesystems/speckle-server
2.21.0 Workspaces
Workspaces soft launch
What's Changed
- fix(fe2): Update sidebar styles based on Michal's feedback by @andrewwallacespeckle in #2807
- feat(workspaces): add discount and total fields by @alemagio in #2811
- fix(fe2): Update HR and borders in Settings Dialog by @andrewwallacespeckle in #2809
- feat(fe2): Add workspace info to viewer breadcrumbs by @andrewwallacespeckle in #2808
- fix(fe2): Updates to settings from Michal's testing by @andrewwallacespeckle in #2813
- Feat: Show noncompliant warning in members tables by @Mikehrn in #2812
- fix(fe2): Update WorkspaceProtectedError by @andrewwallacespeckle in #2810
- fix(fe2): Add border color to missed HR in settings by @andrewwallacespeckle in #2815
- Feat: Add billing tab to workspace settings by @Mikehrn in #2817
- Fix: Role input conditional by @Mikehrn in #2818
- fix(workspaces): add pagination to workspace team members by @cdriesler in #2644
- fix(workspaces): dont leak guests by @gjedlicska in #2819
- Chuck/web 1614 unify workspaceproject role creation by @cdriesler in #2795
- fix(helm chart): the objects service account should match server serv… by @iainsproat in #2822
- fix(server): fixed validation in regards to workspaces, when they're secondary resource targets by @fabis94 in #2814
- Feat: Add role label, version count, and update styling of project header by @Mikehrn in #2820
- fix(fe2): post workspace create cache update by @fabis94 in #2827
- Feat: Add user to group, add invited and dialog event mixpanel by @Mikehrn in #2828
- fix(fe2): sidebar flashing in post page load by @fabis94 in #2829
- fix(fe2): Update HorizontalDirection for model card by @andrewwallacespeckle in #2832
- Fix: Allow members to view collaborators by @Mikehrn in #2792
- fix(fe2): Don't trigger shortcuts while typing comments by @andrewwallacespeckle in #2830
- chore(workspaces): update workspaces pricing strategy by @alemagio in #2825
- fix(fe2): Actions menu on Version Card by @andrewwallacespeckle in #2837
- fix(server): auto-verify on invited server registration by @fabis94 in #2824
- fix: support accepting invites even if a workspace member already by @fabis94 in #2826
- Fix: Workspace and project header styling by @Mikehrn in #2839
- chore(workspaces): update discoverability message by @alemagio in #2841
- fix(fe2): workspace header hydration mismatch by @fabis94 in #2842
- fix(workspaceInvites): fix error message by @gjedlicska in #2840
- feat(fe2): Workspace members table. Update Role by @andrewwallacespeckle in #2823
- Fix: Dont allow non domain policy matching members to be invited to workspace by @Mikehrn in #2838
- feat(fe2): Add Remove User to guests table by @andrewwallacespeckle in #2843
- Fix: Check for domain policy on projects invites by @Mikehrn in #2846
- feat(workspaces): do not allow discoverablity if no verified domains by @gjedlicska in #2847
- Fix: drop workspace domains permission to member by @Mikehrn in #2849
- fix(workspaces): safer billing query for guests by @cdriesler in #2844
- gergo/web 1779 prevent enabling domain protection if workspace has no by @gjedlicska in #2848
- feat(workspaces): disable domain protection and discoverability on la… by @alemagio in #2850
- feat(fe2): Frontend should show a pre-filtered list of users for workspace members by @andrewwallacespeckle in #2845
- fix(fe2): Remove check for admin in workspace page create workspace button by @andrewwallacespeckle in #2852
- chore(workspaces): fix build by @alemagio in #2853
Full Changelog: 2.20.6...2.21.0
2.20.6
What's Changed
- feat(fe2): workspace project list by @andrewwallacespeckle in #2616
- fix(server/api/getobjects): handle closing of client stream by @iainsproat in #2669
- chore(server): move workspace leave resolver by @fabis94 in #2670
- fix(logging): premature stream close should be info by @iainsproat in #2673
- ci(workflow): run deployment test without waiting for other tests by @iainsproat in #2674
- Feat: Add empty state to dashboard by @Mikehrn in #2667
- Alessandro/web 957 refactor webhooks module by @alemagio in #2664
- Fix: dont allow clicking on disabled links in settings by @Mikehrn in #2678
- feat(multiEmails): add multi email module with feature flag by @gjedlicska in #2676
- fix(automate): move automate status circle on project model card by @cdriesler in #2677
- feat: accept & decline workspace invite as a registered member by @fabis94 in #2675
- fix(workspaces): workspace description character limit by @cdriesler in #2592
- fix(fe2): remove offending scope from workspaceInvites field by @fabis94 in #2684
- ci(resources): increase resources to speed up critical path by @iainsproat in #2682
- fix(tailwind-theme) Update primary focus hex value by @andrewwallacespeckle in #2683
- fix(fe2): not firing workspace invites queries if FF is off by @fabis94 in #2685
- Feat: Add guest table to members settings page by @Mikehrn in #2656
- feat(fe2): proper unregistered accept/decline support by @fabis94 in #2687
- Feat: Add projects page to settings by @Mikehrn in #2666
- fix(fe2): workspace invite sign out cta fix by @fabis94 in #2689
- chore(webhooks): get webhook function refactor by @alemagio in #2680
- Viewer Color Proxies by @AlexandruPopovici in #2672
- Instances Gradient Index Buffer Fix by @AlexandruPopovici in #2681
- Poor Man's Mesh Colors Switch by @AlexandruPopovici in #2688
- feat(gatekeeper): allow license bypass in testing envs by @gjedlicska in #2663
- fix(helm chart): Increase max object size default to 100Mb for helm chart by @iainsproat in #2692
- feat(fe2): workspace invite cancel/resend + Invite dialog CTA in workspace home by @fabis94 in #2691
- Fix: validation for user profile details by @Mikehrn in #2693
- fix(fe2): missing tooltips for invite resend/delete by @fabis94 in #2696
- Feat: add edit workspace avatar by @Mikehrn in #2695
- Fix: Dropdown z-index by @Mikehrn in #2698
- Andrew/web 1338 implement new navigation by @andrewwallacespeckle in #2668
- fix(fe2): Use NuxtLink instead of onclick for List Cards by @andrewwallacespeckle in #2699
- fix(fe2): Revert NuxtLink change by @andrewwallacespeckle in #2701
- feat(fe2): workspace role select in project invite dialog by @fabis94 in #2700
- fix(/api/diff): fix debug log pollution by @iainsproat in #2704
- fix(workspaces): add email to existing account workflow bugfix by @fabis94 in #2703
- fix(fe2): Use NuxtLink. Move nested button to relatively positioned div by @andrewwallacespeckle in #2702
- feat(ui-components): Add hover icon for external links in Sidebar by @andrewwallacespeckle in #2706
- Fix: Minor workspace related styling tweaks by @Mikehrn in #2705
- fix(helm chart): remove confusing duplicate max_object_size_mb property by @iainsproat in #2707
- feat(fe2): error reporting when invite (middleware level) auto-accept doesn't work by @fabis94 in #2711
- fix(automate): fix on model version create error log by @gjedlicska in #2713
- fix(fe2): Re-add ProjectDashboardHeader by @andrewwallacespeckle in #2709
- fix(workspaces): await authorization by @gjedlicska in #2714
- fix(fe2): Revert changes to structureitem by @andrewwallacespeckle in #2715
- refactor(ui-components): Update Sidebar to Designs by @andrewwallacespeckle in #2710
- feature(ui-components): Add menuPosition prop to LayoutMenu by @andrewwallacespeckle in #2716
- Color material
undead-patch
by @AlexandruPopovici in #2718 - Fix: dashboard model count by @Mikehrn in #2719
- refactor(fe2): Replace IconConnectors with new version by @andrewwallacespeckle in #2721
- chore(comments): update comments module to typescript by @cdriesler in #2513
- refactor(fe2): Update StructureItem click events by @andrewwallacespeckle in #2722
- feat(workspaces): add default logo index by @cdriesler in #2708
- fix(graphql websocket): keep alive websocket connections if idle by @iainsproat in #2720
- Fix: Dont show sidebar when logged out by @Mikehrn in #2730
- Fix: Dont show workspace projects empty state during search by @Mikehrn in #2729
- chore(diff download): close stream as recommended by knex by @iainsproat in #2723
- feat(scene explorer): filters out noise from scene explorer (CNX-326) by @didimitrie in #2728
- Feat: Added delete user from workspace button by @Mikehrn in #2726
- feat(workspaces): create workspace button by @cdriesler in #2645
- fix(server/auth): database errors result in 500 status code by @iainsproat in #2731
- chore(gqlgen): update output of gqlgen by @iainsproat in #2736
- feat(fe2) Implement workspaces explainer page by @andrewwallacespeckle in #2735
- feat(graphql/serverinfo): provide maximum object size in bytes by @iainsproat in #2734
- chore(server): convert some files to typescript with minimal changes by @iainsproat in #2738
- local OIDC provider for testing by @fabis94 in #2608
- fix(logging): knex should use pino logger and not compile sql on error in production by @iainsproat in #2743
- fix(fe2): Various bugfixes from testing by @andrewwallacespeckle in #2744
- Feat: Add link to settings to workspace dashboard by @Mikehrn in #2745
- Fix: Permissions on workspace dashboard by @Mikehrn in #2746
- chore(server): remove sentry and only apply mixpanel middleware if enabled by @iainsproat in #2732
- Fix: Add permissions checks for settings by @Mikehrn in #2748
- Fix: z-index on project card by @Mikehrn in #2754
- fix(server): database connection pool timeouts reduced by @iainsproat in #2646
- Fix: Change label color for disabled state in MenuGroupItem by @Mikehrn in https:/...
2.20.5
What's Changed
- chore(server): addn'l observability around db connections by @iainsproat in #2628
- fix(fe2): ensuring fatal SSR errors get logged to datadog properly by @fabis94 in #2638
- Feat: Add feature flag for multiple emails by @Mikehrn in #2639
- Alessandro/web 1585 fix setprimaryemail to avoid setting as primany a non by @alemagio in #2630
- fix(useremails): avoid creating same email twice by @alemagio in #2640
- fix(logging): redact detail in database error message by @iainsproat in #2642
- fix(server/authcode): guard against null challenges by @iainsproat in #2643
- Gatekeeper by @gjedlicska in #2572
- fix(helm): only expect license token if workspace feature is enabled by @iainsproat in #2649
- Revert "fix(server): revert 55cad96 (#2633)" by @iainsproat in #2650
- Feat: Add general workspace settings page by @Mikehrn in #2635
- Fix: Add close event to settings modal by @Mikehrn in #2651
- chore(liveness): fail liveness if db conns saturated for 10min by @iainsproat in #2648
- fix(workspaces): allow users to create workspaces by @gjedlicska in #2655
- fix(fe2): viewer comments not docking to bottom properly by @fabis94 in #2659
- fix(workspaces): guests do not get workspace-wide project access by @cdriesler in #2622
getTotalObjectCount
implementation for object-loader by @AlexandruPopovici in #2647- fix(helm chart): server service account should have access to license… by @iainsproat in #2661
- fix(helm chart): indentation typo by @iainsproat in #2662
Full Changelog: 2.20.4...2.20.5
2.20.4
What's Changed
- Feat: Allow users to manage emails by @Mikehrn in #2613
- Fix: Remove multiple emails nav link by @Mikehrn in #2627
- feat(fe2): invite + list workspace invites by @fabis94 in #2629
- fix(fe2): fixes for too early viewer state init by @fabis94 in #2634
- fix(server): revert 55cad96 by @iainsproat in #2633
- fix(objectloader): prevent cache read/write for broken data by @fabis94 in #2637
Full Changelog: 2.20.3...2.20.4 .
2.20.2
What's Changed
- Fix: Adjust sizes in invite dialog by @Mikehrn in #2507
- Fix: Changed date formatting to be clearer by @Mikehrn in #2506
- sRGB Vertex Colors by @AlexandruPopovici in #2476
- Fix: Updated formatting of text throughout the app by @Mikehrn in #2509
- fix(viewer): dev command not working by @fabis94 in #2511
- fix(fe1): yarn dev command not working by @fabis94 in #2512
- Dynamic AO Disabled by @AlexandruPopovici in #2482
- Alessandro/web 1171 change the users repository to update the verified field in by @alemagio in #2489
- WEB-1261 by @AlexandruPopovici in #2478
- docs(README): update contribution instructions to advise pre-commit i… by @iainsproat in #2516
- chore(automate): track run duration in ms too by @cdriesler in #2518
- chore(core): eslint rule to avoid relative imports by @alemagio in #2517
- feat(workspaces): stencil gql resolvers by @cdriesler in #2508
- feat(workspaces): assign project roles to new users in a workspace by @cdriesler in #2499
- Feat: Move settings from individual pages into one settings modal by @Mikehrn in #2502
- feat(helm): startup probe & faster responding readiness probe by @iainsproat in #2523
- DUI3 Viewer Instancing by @AlexandruPopovici in #2522
- Fix: Change server settings and discussion to usePaginatedQuery by @Mikehrn in #2527
- Fix: Add 'day' to dateFormatter check by @Mikehrn in #2528
- feat(workspaces): cru(d) resolvers by @cdriesler in #2521
- feat(server): adds content-security-policy header to server endpoints by @iainsproat in #2500
- feat(server): modularized mocks + workspace mocks for Mike by @fabis94 in #2534
- feat(server): serverInvites refactor + workspace invites CRUD & GQL API by @fabis94 in #2530
- Feat: Add option to show modal not fullscreen on mobile by @Mikehrn in #2535
- fix(server): fixed post-invites mock borkages + setter helper created by @fabis94 in #2536
- DUI3 render materials implementation by @AlexandruPopovici in #2533
- fix(server): some serverinvites regressions by @fabis94 in #2538
- Feat: Add distinct/user ID by @Mikehrn in #2539
- refactor(ui-components): define and use new font styles by @andrewwallacespeckle in #2524
- DO NOT MERGE - refactor: new design system implementation by @andrewwallacespeckle in #2537
- hotfix(fe2): Add truncation to prevent long names overflowing by @andrewwallacespeckle in #2544
- Fix: fullscreen modal height incorrect by @Mikehrn in #2545
- Fix: Adjust SSO button styling by @Mikehrn in #2546
- fix(fe2): no click on empty model by @andrewwallacespeckle in #2547
- Fix: Control panel resizer styling by @Mikehrn in #2548
- fix(server): commit query not returning author id as expected by reso… by @fabis94 in #2549
- chore(workspaces): tests for workspace project creation by @cdriesler in #2541
- fix: update create function dialog to match design system by @andrewwallacespeckle in #2555
- feat(workspaces): workspace member role resolvers by @cdriesler in #2540
- refactor(ui-components): Improve chromium compatability by @andrewwallacespeckle in #2557
- chore(CI): temporarily disable docker compose deployment test & other fixes for race condition in docker compose deployment test by @iainsproat in #2553
- feat(server/logs): add request ID to objects retrieval log messages by @iainsproat in #2550
- Alessandro/web 1172 change the users repository to abstract the email field in by @alemagio in #2519
- fix(workspaces): match workspaces and workspacesCore resolvers by @cdriesler in #2560
- Feat: Add base for rendering workspaces items in the settings sidebar by @Mikehrn in #2558
- refactor(server): use env helper to consistently find max connections by @iainsproat in #2563
- chore(helm chart): reduce readiness period and timeout by @iainsproat in #2551
- Revert "chore(helm chart): reduce readiness period and timeout" by @iainsproat in #2564
- ci(feature flags): test workspaces by @iainsproat in #2559
- feat(fe2): show reqId in error pages by @fabis94 in #2565
- chore(seed): fix seed using library to generate unique values by @alemagio in #2562
- fix(workspaces): support workspace logos as base64 strings by @cdriesler in #2556
- feat(helm): expose workspace module feature flag by @gjedlicska in #2566
- fix(workspaces): better logic in workspace project pagination test by @cdriesler in #2570
- feat(server): registration (w/ and w/o invites) tests by @fabis94 in #2567
- fix(workspaces): expect correct format for workspace image strings by @cdriesler in #2568
- Alessandro/web 1388 mutation create new email by @alemagio in #2561
- Feat: Add member settings page by @Mikehrn in #2574
- feat(viewer): handles missing instance components gracefully by @didimitrie in #2573
- fix(workspaces): backend validation on workspace settings fields by @cdriesler in #2584
- Alessandro/web 1169 create app validation to enforce only one primary email per by @alemagio in #2576
- fix(server): manual workspace role assignment on project invite create + more bugfixes by @fabis94 in #2581
- refactor(fe2): Update viewer page title to include model name by @andrewwallacespeckle in #2587
- Feat: Add new dashboard by @Mikehrn in #2580
- fix(helm): remove whitespace instruction for ghost api key env var by @iainsproat in #2588
- feat(workspaces): leave workspace by @gjedlicska in #2585
- feat(workspaces): support workspace deletion by @cdriesler in #2569
- chore(server): typescriptified auth strategies by @fabis94 in #2589
- feat: auth issue troubleshooting related improvements by @fabis94 in #2591
- Feat: Add coming soon settings pages by @Mikehrn in #2590
- chore(readiness): server pods are not ready if no free db connections by @iainsproat in #2552
- feat(health probes): use kubernetes native get instead of exec node fetch by @iainsproat in #2445
- chore(logging): improve logging around passportjs strategies by @iainsproat in #2593
- fix(server): fixed various email lookups/updates being case sensitive by @fabis94 in #2595
- feat(emailVerification): add email verification mutation for all emails by @gj...
2.20.1
What's Changed
- fix: disable broken codecov from blocking our releases (for now) by @fabis94 in #2505
- fix(workspaces): correctly initialize and import workspaces core module by @cdriesler in #2486
Full Changelog: 2.20.0...2.20.1
2.20.0
2.19.6
2.19.5
What's Changed
- feat(metrics): collect metrics at a higher frequency then prometheus scrapes by @iainsproat in #2479
- refactor(fe2): remove certain revit elements from SceneExplorer by @andrewwallacespeckle in #2481
- WEB-1140 manage user workspace membership services by @cdriesler in #2460
- feat: add missing FE1 fields to the FE2 GQL schema by @fabis94 in #2471
- fix(fe2): keyboard shortcuts in viewer don't work by @andrewwallacespeckle in #2389
- fix(logging): metrics endpoint should be logged as debug level, not info by @iainsproat in #2490
- Feat: Added Content-Security-Policy for non-embedable routes by @Mikehrn in #2480
- WEB-1147 project creation emit domain event by @cdriesler in #2467
- fix(fe2): accept invite before onboarding after sign up by @fabis94 in #2491
- fix(fe2): preview 360 images occasionally not displayed (by Easoncan) by @fabis94 in #2494
- fix(fe2): mixpanel not initializing due to apollo client being inacce… by @fabis94 in #2495
- Fix: Change quote type for header by @Mikehrn in #2496
- feat(fe2): proper utm collection + idempotent Route Visited tracking by @fabis94 in #2497
Full Changelog: 2.19.4...2.19.5
2.19.4
What's Changed
- feat(fe2): redirects for legacy/fe1 embed routes by @fabis94 in #2432
- Fix: change ServerManagementTable to LayoutTable by @Mikehrn in #2447
- Dynamic Near Camera Plane by @AlexandruPopovici in #2434
- Fixed sandbox lint error by @AlexandruPopovici in #2450
- chore(circleci): do not publish ingress image if tests failed by @iainsproat in #2454
- gergo/web 1146 workspace creation service by @gjedlicska in #2438
- fix: various invite flow fixes & improvements by @fabis94 in #2451
- Oboarding undead-patch by @AlexandruPopovici in #2456
- fix(fe2): panoramic previews not triggering on hover by @fabis94 in #2457
- feat(workspacesCore): initial module migration by @gjedlicska in #2455
- feat(preview-service): allow chromium exec path & puppeteer user data… by @iainsproat in #2462
- fix(server): unexpected INTERNAL_SERVER_ERROR error codes for expected error cases by @fabis94 in #2461
- Soft Pipeline Reset by @AlexandruPopovici in #2452
- Intersection bounds tolerance increase by @AlexandruPopovici in #2448
- fix(server): 401, 403, 429 & 500 status codes for GQL error responses by @fabis94 in #2463
- fix(workspaces): construct acl query based on table name by @cdriesler in #2464
- fix(server): only changing gql http status code on rate limiting by @fabis94 in #2466
- Change web app font by @Mikehrn in #2437
- feature(ui-components): New sidebar and related components by @andrewwallacespeckle in #2472
- gergo/web 1178 add repository function implementations by @gjedlicska in #2453
- Threads Undead Patch by @AlexandruPopovici in #2475
- feat(db monitor): adds a new metric speckle_db_tablesize with db table sizes by @iainsproat in #2474
- chore(server): marking all old (non-FE2) GQL schema fields as deprecated by @fabis94 in #2435
- feat(user-emails): create user emails table and type by @alemagio in #2470
- Object Sender: Adds @Detach and @Chunkable decorators by @vwnd in #2468
New Contributors
Full Changelog: 2.19.1...2.19.4