Граф коммитов

3121 Коммитов

Автор SHA1 Сообщение Дата
Iain Sproat c461397aa2
fix(helm): schema.json now matches values file (#1445)
- small typo fix to values.yaml documentation
2023-03-10 10:39:26 +00:00
Iain Sproat 0652af4033
fix(server): preview REST endpoint shall return 403 not 500 if no permissions (#1443) 2023-03-09 12:11:40 +00:00
Dimitrie Stefanescu c05f39556a
Merge pull request #1441 from specklesystems/alex/instances
Alex/instances
2023-03-08 13:54:44 +00:00
AlexandruPopovici f187510467 Merged 2023-03-08 14:34:37 +02:00
Gergő Jedlicska 560d544daf
fix(server emails): outlook doesnt support linear gradients in css (#1439)
* fix(server emails): outlook doesnt support linear gradients in css

* using the same bg color in the default eamil template
2023-03-07 18:26:09 +01:00
dependabot[bot] a647f72969
chore(deps): bump dns-packet from 5.3.1 to 5.4.0 (#1435)
Bumps [dns-packet](https://github.com/mafintosh/dns-packet) from 5.3.1 to 5.4.0.
- [Release notes](https://github.com/mafintosh/dns-packet/releases)
- [Changelog](https://github.com/mafintosh/dns-packet/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mafintosh/dns-packet/compare/v5.3.1...5.4.0)

---
updated-dependencies:
- dependency-name: dns-packet
  dependency-type: indirect
...

I checked as to what depends on it, it's a part of preview-service that we shouldn't be using at all:
```
yarn why dns-packet -R
└─ @speckle/preview-service@workspace:packages/preview-service
   └─ webpack-dev-server@npm:4.9.0 [1ebc8] (via npm:^4.6.0 [1ebc8])
      └─ bonjour-service@npm:1.0.12 (via npm:^1.0.11)
         └─ multicast-dns@npm:7.2.4 (via npm:^7.2.4)
            └─ dns-packet@npm:5.3.1 (via npm:^5.2.2)
```

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-07 12:13:03 +00:00
AlexandruPopovici b2e1737617 Fixed compile error 2023-03-06 17:46:40 +02:00
Alexandru Popovici 3932a4bb93
Occlusion queries no longer report the ocluding speckle object, only it's id. This avoids walking the tree to fetch the object itself, which is unused in 99% of uses cases for occlusion testing. If the users need the object itself, they can still fetch it via the viewer API using it's id. This improves total occlusion query speed by 30-100x (#1438) 2023-03-06 17:33:34 +02:00
Gergő Jedlicska 7d8ff2048a
fix(test): make sure users are created sequentially (#1437) 2023-03-06 14:40:35 +01:00
Alexandru Popovici 7bac769180
Fixed the issue with polycurve elements being conveted twice. Added the concept of nesteNodes in NodeData interface, but I'm wary of using it extensively (#1436) 2023-03-03 16:17:23 +02:00
AlexandruPopovici 06fc06adf5 Implemented hosted revit instances not stacking their host's transformation 2023-03-02 17:00:34 +02:00
AlexandruPopovici e037b310e5 Disabled tonemapping for point and point cloud materials 2023-03-02 13:13:57 +02:00
Iain Sproat cdd1a771ac
fix(fileimport): should not fail if filetype is upper or mixed case (#1427) 2023-03-01 16:32:57 +00:00
Iain Sproat d8b7123ed0
chore(deps): bump node from 18.14.0 to 18.14.2 (#1426) 2023-03-01 12:16:55 +00:00
AlexandruPopovici cc2a68f6ea RevitInstances now always stack transforms 2023-03-01 11:52:39 +02:00
AlexandruPopovici 38d81c2d06 Merged 2023-02-28 15:20:37 +02:00
Alexandru Popovici 6b7dbc5d70
Reduced Viewer Memory Footprint (#1406)
* The ObjectLoader and ViewerObjectsLoaders are disposed upon loading complete.

* Added viewer parameter for keeping or discarding original geometry data. Defaults to discarding it. WIP on mesh and point cloud implementation for actual discarding it

* Geometry data from raw nodes is now disposed after building their reder views

* Removed raw geometry data from points and lines

* Removed the float64 array which was persisted pointlessly by the section plane outlines feature. Also fixed a bug for this feature regarding resizing the point buffer and RTE

* Implemented BVHs in local space, relative to world origin. This cuts down on it's redundant memory footprint by half

* Implemented SpeckleMeshBVH which completely hides the RTE-related transformations that we're making to reduce memory footprint.

* Added some clarifications to the SpeckleMeshBVH class
2023-02-28 13:07:33 +02:00
Iain Sproat 7e89950358
feat(logging): log all http requests and responses (#1416)
- feat(logging): log all http requests and responses
- the auto logger does not log the body, to ensure sensitive payloads are not logged. Unfortunately this means that error messages are not logged either, so need to be manually logged.
- fix(logging): 400 errors should be info not error severity logging
2023-02-27 15:14:56 +00:00
Alexandru Popovici b9d68efc55
#1408 - Separate Object Layers by Geometry Type (#1422)
* Extended the ObjectLayers on a per geometry type basis. We can now restrict intersections and rendering based on geometry type (mesh, line, point)

* Disabled geometry type based filtering of opaque/transparent/stencil objects in the batcher, since we're using separate object layers for the geometry types now

* Fixed and issue with OR-ing layers
2023-02-27 16:20:42 +02:00
Gergő Jedlicska f2803432b4
gergo/fix flaky admin override tests (#1420)
* fix(server authz tests): force wait until env vars are reloaded in authz tests

* test(server): fix flaky admin override tests with mocking
2023-02-27 13:59:16 +01:00
AlexandruPopovici b231204d24 WIP on instances transformation 2023-02-27 11:10:18 +02:00
AlexandruPopovici 0c5303e8e7 Implemented instance and revit instance conversion. First draft 2023-02-24 16:59:41 +02:00
Iain Sproat 4b1969c804
chore(server): improve logging of REST API endpoints (#1414)
- chore(server): adds endpoint parameter to some log messages
- and any other relevant parameters we have to hand (streamId, userId etc..)
- logging severity is info for `400` status codes, error for `500` status codes or equivalent.
2023-02-24 11:22:21 +00:00
Iain Sproat 6403a3fddd
fix(webhook): should not duplicate logging of error (#1413)
- the caller should be responsible for logging an error response
2023-02-23 20:29:44 +00:00
Iain Sproat 3c2e866117
chore(fileimport): log more parameters (#1412) 2023-02-23 17:56:06 +00:00
Gergő Jedlicska c80c2a2602
fix(server authz tests): force wait until env vars are reloaded in authz tests (#1403) 2023-02-22 14:05:56 +01:00
Iain Sproat f9c2787f6d
chore(deps): bump @aws-sdk/client-s3 to 3.276.0 due to vulnerability in earlier versions (#1402) 2023-02-22 12:00:53 +00:00
Gergő Jedlicska f1ec3f47c1
feat(server): add admin override to otheruser steams query (#1401) 2023-02-22 12:39:28 +01:00
Snyk bot 031980a3d2
fix: packages/server/Dockerfile to reduce vulnerabilities (#1399)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326666
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326668
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326685
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326686
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326688

Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
2023-02-22 10:07:16 +00:00
Iain Sproat d3b4310672
docs(helm): schematic diagram in mermaid format (#1358)
* docs(helm): schematic diagram in mermaid format
* Clarifies that dependencies can be external or internal to cluster
* Explicitly show namespace containing secrets
2023-02-22 09:40:30 +00:00
Snyk bot 8895eb2321
fix: packages/preview-service/Dockerfile to reduce vulnerabilities (#1400)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326666
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326668
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326685
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326686
- https://snyk.io/vuln/SNYK-UPSTREAM-NODE-3326688
2023-02-22 09:35:27 +00:00
Iain Sproat 9ed1656541
fix(redis): Redis errors should be logged in a structured manner (#1389)
- errors should be logged to stdout in a structured format
- currently still throws errors which are ultimately unhandled, this matches existing behaviour
- Consolidate redis creation and error handling in a shared module
* remove unused 'redis' module, in favour of 'ioredis'
2023-02-22 09:13:05 +00:00
Iain Sproat af98e9bfd9
fix(webhook): do not log problems connecting to external webhook environment as error severity (#1397)
* fix(webhook): do not log problems connecting to external webhook environment as error severity
- these are user controlled variables and do not necessarily indicate problems with our system
2023-02-21 09:37:24 +00:00
Alexandru Popovici 5a17271afe
Ignoring curves with no display values (#1398)
* Empty curves are now ignored and warned about instead of crashing the viewer

* Fixed typo
2023-02-21 11:26:34 +02:00
Gergő Jedlicska a0a44d8f17
fix(server auth): fix oidc stategy (#1394)
make sure the passport authentication works on the same request scope for auth and callback

fix #1374
2023-02-20 16:31:48 +01:00
Iain Sproat 787e85605c
fix(security): prevent potential prototype pollution via request body filter (#1388)
* fix(security): prevent potential pollution of request body being executed

* An array is expected
2023-02-20 15:03:02 +00:00
Iain Sproat 5880356396
chore(deps): bump @aws-sdk/client-s3 to ^3.272.0 (#1393)
- address prototype pollution in fast-xml-parser
2023-02-20 13:55:48 +00:00
Iain Sproat c265ece433
feat(ratelimiting): allow auth endpoints to have custom rate limit (#1387) 2023-02-20 11:02:48 +00:00
Iain Sproat 06ab4078ae
fix(logging): user login attempt without invite to an invite-only server should be logged for information (#1386)
* fix(logging): user login attempt without invite to invite-only server is info severity, not error severity

* fix(logging): a prompt for user to verify should be logged as information, not error severity
2023-02-20 11:01:13 +00:00
Gergő Jedlicska 40a6701799
feat(server): add switchable admin authz override (#1378)
* feat(server): add switchable admin authz override

* fix(server): make sure tests work with the new admin override

* feat(server authz): make sure to add all requested roles to server admins in admin override mode
2023-02-17 16:31:06 +01:00
Iain Sproat ae79a48eb0
chore(deps): bump numpy-stl to 3.0.0 (#1381)
- Snyk reported vulnerabilities in 2.17.1
2023-02-17 12:04:47 +00:00
Alexandru Popovici 1c78607942
Alex/#1347 Async Loading and Load cancelling (#1367)
* Implemented async walk for the world tree. Implemented asyn render tree building and async batch building. Implemented progressive loading

* WIP tree walk async that actually works using a generator

* Async walking now properly works and can be interrupted

* Properly working async walk

* Added loadObjectAsync function in the API which should be used if stream loading needs to be cancelled and for 'progressive' loading. Added a priority argument to the loadObjectAsync and to walkAsync functions which makes the async-iness so to speak configurable.

* Refactored the sync and async subtree batch building to remove duplicate code. Changed some logs for better clarity

* Fixed an issue with point clouds and material creation
2023-02-17 13:45:22 +02:00
dependabot[bot] eebaca1de9
chore(deps): bump node-jose from 2.1.1 to 2.2.0 (#1379)
Bumps [node-jose](https://github.com/cisco/node-jose) from 2.1.1 to 2.2.0.
- [Release notes](https://github.com/cisco/node-jose/releases)
- [Changelog](https://github.com/cisco/node-jose/blob/master/CHANGELOG.md)
- [Commits](https://github.com/cisco/node-jose/compare/v2.1.1...v2.2.0)

---
updated-dependencies:
- dependency-name: node-jose
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-17 10:03:36 +00:00
dependabot[bot] 1975f45164
chore(deps): bump undici from 5.15.0 to 5.19.1 (#1380)
Bumps [undici](https://github.com/nodejs/undici) from 5.15.0 to 5.19.1.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.15.0...v5.19.1)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-17 10:03:10 +00:00
Alexandru Popovici 5f53558abe
Added displayable geometry validation instead of testing it's aabb, which is 0 for points (#1373) 2023-02-15 16:18:05 +02:00
Iain Sproat e1eba7b333
fix(logging): user input errors should be logged as info severity (#1370)
* fix(logging): user input errors should be logged as info severity
* Tidy the code to use a constant and a specific error type
* Attempting to remove the last admin user is invalid user input and should not be logged as error severity
* Missing passwords are user input errors
2023-02-15 12:50:35 +00:00
Iain Sproat e3ba2cc9c3
fix(log): auth endpoint should not log app secrets (#1372)
- logs are now warn severity, as they are not necessarily system errors and may be user errors or incorrectly configured application errors.
- improved the error messages, as we should not have multiple errors with the same message as this makes debugging difficult.
2023-02-15 12:40:32 +00:00
Iain Sproat 6bc6446170
fix(logs): previews not found is a warning, not an error (#1371)
- the preview service may not yet have generated the preview as this takes some time
2023-02-15 12:21:28 +00:00
Alexandru Popovici 234c403430
Fixed a viewer issue related to having meshes with no vertex data and IBO shufling. We're now ignoring any render view which lacks vertex data and we're also displaying a warning when such objects are converted (#1369) 2023-02-14 12:43:44 +02:00
Iain Sproat a6fba9ebd3
chore(node): bump node version to 18.14.0 (#1365) 2023-02-10 11:44:44 +00:00