226 Commits

Author SHA1 Message Date
Jedd Morgan d134638a70 test: Run objects tests against both net10 and net8 (#471)
PR Test / build (push) Has been cancelled
PR Test / integration-test-internal (push) Has been cancelled
PR Test / integration-test-public (push) Has been cancelled
* Run objects tests against both net10 and net8

* Update README.md

* Update README.md
2026-04-15 18:00:25 +01:00
Jedd Morgan a143553a09 feat(netcore): Add Net10 target to SDK and drop sln (#442)
.NET Build and Publish / build (push) Has been cancelled
* .net10 attempt 2

* bump csharpier

* drop sln

* supress stream analyers for test projects

* readme

* fix package locks post merge

* Microsoft.Extensions.DependencyInjection

* Simplify the dependency structure

* don't bump graphql client for netstandard and net8 targets

* Fix test
2026-04-15 17:48:32 +01:00
Jedd Morgan 06ef3e67e2 chore(deps): Correctly pin versions that need to be pinned and bump those that don't (#461)
* Correctly pin versions that need to be pinned and bump those that don't

* .NET logging alignment

* Fix test project dependencies

* recommended verify settings

* don't ask me why it needs this to work
2026-04-15 15:37:43 +01:00
Jedd Morgan 7042cdb06a feat(auth): Add new authflow functions (#462)
.NET Build and Publish / build (push) Has been cancelled
* Auth functions

* Avoid Microsoft.BCL.Memory polyfil

* refactor updating accounts

* fix tests

* Fix tests

* better auth messages

* Remote changes

* Fix tests

* Fix tests

* ditto

* typo

* More tests

* fix exception types

* revert temp change to test url

* use new endpoint

* new endpoint

* Revert temp change to server url

* Fix mistakes in tests

* using

* extra tests

* test server url

* no need to repack bcl memory since it's not a dependencgy

* Avoid parallelising account manager tests

* potential fix

* disable parallelisation for authflow tests
2026-03-24 17:17:25 +00:00
Jedd Morgan 70acc06f37 feat(otel): Change sig for remote (#460)
.NET Build and Publish / build (push) Has been cancelled
* Remote changes

* Fix tests

* Fix tests

* ditto
2026-03-16 15:32:33 +00:00
Jedd Morgan a2c99a537a feat(otel): Add proper support for remote spans (#458)
.NET Build and Publish / build (push) Has been cancelled
* Add proper support for remote spans

* Fix tests
2026-03-12 12:52:10 +00:00
Jedd Morgan 906ff9c3ff test: duck tests (#455)
.NET Build and Publish / build (push) Has been cancelled
* lets get some testing action!

* revert url

* we'll try these fixes

* we'll try this, if it doesn't work I'm deleting the test

* try this

* Add optional parent id to traces

* how about now

* and as zero

* Fix build

* fix code cov

* FML subscription tests are so flaky
2026-03-11 16:30:24 +00:00
Jedd Morgan c4e956cdb4 fix(build): Option 2 - "keep channels il-repacked" (#453)
* Repacked channel

* transitive for sdk

* restore solution

* comment tweaks

* Fix print line
2026-03-05 12:47:56 +00:00
Oğuzhan Koral a662fb54c2 fix: channels reference only for net standard (#450)
.NET Build and Publish / build (push) Has been cancelled
2026-02-27 10:32:16 +00:00
Jedd Morgan 9a74195b24 feat(api): Add versionId to ModelIngestion (#448)
.NET Build and Publish / build (push) Has been cancelled
* Add version id to ingestion query

* and the sub

* Add project & user ids

* test
2026-02-26 17:10:54 +00:00
Jedd Morgan 7652cd385d Merge remote-tracking branch 'origin/main' into duckdev 2026-02-20 13:40:29 +00:00
Jedd Morgan a81aaca8fe Updated tests for recent server changes (#445) 2026-02-20 12:02:34 +00:00
Jedd Morgan bf6ae0f6af Duck: Cleanup dependencies (#441)
* Remove unused dependencies

* remove unused package references

* how's this

* missed a bit
2026-02-10 16:29:27 +00:00
Jedd Morgan 12df19e431 fix(test): Ensure InitializeWebsocket runs async (#437)
* Force InitializeWebsocket

* experiment with lower values

* let's play it safe
2026-02-10 09:52:19 +00:00
Jedd Morgan c186d98ea7 feat(api): Add CanCreateModelIngestion model permission check (#436)
.NET Build and Publish / build (push) Has been cancelled
* CanCreateModelIngestion check

* assert this way

* correct exception type
2026-01-29 14:41:57 +00:00
Jedd Morgan 00a6619cbe feat(api)!: Add model permission checks and deprecate canPublish (#434)
.NET Build and Publish / build (push) Has been cancelled
* Add permission checks and deprecate canPublish

* Fix tests

* How's this

* make tests more reliable

* lets test this first

* test

* This should speed up unit tests

* skip slow tests

* I HATE flaky tests
2026-01-27 16:35:48 +00:00
Jedd Morgan 49ef9917c4 Model Ingestion Version message (#427)
.NET Build and Publish / build (push) Has been cancelled
2026-01-26 16:03:16 +00:00
Jedd Morgan c75538e1c7 feat(api): Model Ingestion Get (#426)
.NET Build and Publish / build (push) Has been cancelled
* model ingeston get

* reinstate localhost:3000
2025-12-11 10:35:20 +00:00
Jedd Morgan 82dca56fbd feat(api): Model Ingestion api (#420)
* First pass

* format

* subscriptions

* Fixes

* fake a release

* fix tests

* subscription tests

* tests(sdk): fix model ingestion sub test'

* tests(integration): fix model ingestion test expectations

* todos

* revert this too

* Filter Integration-Internal tests

* use a different trait

* capitalize

* codecov tweaks

* fix

* add requeue and start processing

* requeue

---------

Co-authored-by: Gergo Jedlicska <gergo@jedlicska.com>
2025-12-10 13:18:31 +03:00
Jedd Morgan b0da4510bf Merge pull request #410 from specklesystems/jrm/subscription-tests
test(subscriptions): Make subscription tests a bit more reliable
2025-11-05 11:28:23 +00:00
Jedd Morgan 96392d0d2f chore(ci): Reliable integration Tests (#418)
* remove bad tests

* add pack to PR workflow
2025-11-05 11:22:07 +00:00
Jedd Morgan 0e98e1cccd refactor(ci): Refactor CI to run integration tests as separate workflow (#413)
* Refactor CI to run integration tests as separate workflow

* Tool restore

* correct cache path

* conditionally use container registry

* use sln because net8

* fix typo

* Correct trait filter

* Correct mistake again

* fix again

* fml

* clarify names

* hopefully we're properly filtering test categories now

* maybe this?

* What does this do?

* revert is test project changes

* IsTestProject fix

* Correct test setup for automate

* maybe fix unit tests

* docker-compose-file alighment

* remove debug

* Ok tests should now pass
2025-10-29 10:00:51 +00:00
Jedd Morgan 07713b41e1 Fix(gql)!: Treat UNAUTHORIZED_ACCESS_ERROR as an SpeckleGraphQLForbiddenException (#411)
* Respect UNAUTHORIZED_ACCESS_ERROR

* Correct test setup for automate

* dumb dumb typo
2025-10-28 15:48:37 +00:00
Jedd Morgan a0eae88479 Merge branch 'dev' into jrm/attribute-mask-revert 2025-10-28 13:20:52 +00:00
Jedd Morgan 8785e49f73 Add send/receive integration tests (#412) 2025-10-28 14:12:12 +01:00
Jedd Morgan 6e35d6af6d Unexpose attribute mask 2025-10-28 10:33:47 +00:00
Jedd Morgan 08f702794a skip some slow tests (#403) 2025-10-15 09:25:07 +00:00
Dogukan Karatas 1046e2aafc removes the extra serializer (#402)
.NET Build and Publish / build (push) Has been cancelled
2025-10-14 16:20:30 +01:00
Adam Hathcock 37358570ec Use new endpoint with attribute mask support (#392)
* Use new endpoint with attribute mask support

* fix test
2025-09-24 11:00:44 +02:00
Adam Hathcock 530387b87c Remove the cache that avoids recalculating IDs from JSON (#384)
Co-authored-by: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com>
Co-authored-by: Claire Kuang <kuang.claire@gmail.com>
2025-09-12 10:47:53 +00:00
Adam Hathcock b16e32d1ff fix: Correctly pass options to object saver (#387)
* Correctly pass options to object saver

* formatting
2025-09-12 10:30:47 +00:00
Adam Hathcock 10d283a9f7 Report increment rather than total position (#377)
* Report increment rather than total position

* Report progress before saving SQLite
2025-08-26 16:45:53 +01:00
Jedd Morgan d6f6254a92 feat(file-import): Added file import resource and blob api functions (#367)
.NET Build and Publish / build (push) Has been cancelled
* add file import resource

* disabled health check

* re-enable healthcheck

* git ignore volumes

* disabled importer

* start_period

* Skipped broken tests

* Verify tests

* Fixed tests

* reverted volumes path

* Update docker-compose.yml
2025-07-29 14:52:12 +00:00
Adam Hathcock 4dd6db886f insert or replace always...don't use ignore or insert (#363)
* SaveObject is always insert or replace.  Never use insert or ignore

* add/fix tests

* always replace even for bulk
2025-07-23 12:16:08 +00:00
Adam Hathcock 9e7f26f7a6 Add ModelCacheManager class and use it (#356)
* Introduce ModelCacheManager to manage cache and sizes and deletions

* move and abstract

* add tests and format

* Update src/Speckle.Sdk/Caching/ModelCacheManager.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Clean up

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-23 10:07:57 +01:00
Adam Hathcock 507ded7d4a Fix shallow copy allocations and perf (#357)
* add more DynamicBase Tests

* Move ShallowCopy to dynamic and try to be faster with copy

* Correct tests for macOS

* use cache obsolete attribute

* Update src/Speckle.Sdk/Models/DynamicBase.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update tests/Speckle.Sdk.Tests.Unit/Models/DynamicBaseTests.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update tests/Speckle.Sdk.Tests.Unit/Models/DynamicBaseTests.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix AI

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-21 11:01:00 +01:00
Adam Hathcock a8dc93e22b Adds detail to message so that user isn't going WTF SDK (#351)
* Adds detail to message so that user isn't going WTF SDK

* update exception tests
2025-07-03 09:39:53 +00:00
Adam Hathcock 33c2e6e1a4 Better handle graphql commit errors (#343)
* Better handle graphql commit errors

* add graphql error test
2025-06-30 10:54:44 +00:00
Adam Hathcock 05f7353925 Revert "Merge pull request #335 from specklesystems/adam/cnx-1786-allow-multiple-sends-to-access-sqlite-in-a-non-locking-2" (#339)
This reverts commit 59019bf846, reversing
changes made to 3afaf61a1a.

Co-authored-by: Adam Hathcock <adam@Adams-Mac-mini.localdomain>
2025-06-11 15:32:06 +00:00
Adam Hathcock 424609fad0 fix tests 2025-06-10 13:18:34 +01:00
Adam Hathcock 46c067308e Fix DI dependency and tests 2025-06-10 11:39:42 +01:00
Adam Hathcock 0e33e8df8f add tests 2025-06-10 11:33:17 +01:00
Adam Hathcock 7f8b59d348 Pool object savers instead of sqlite 2025-06-10 11:15:01 +01:00
Adam Hathcock 44ba61e4a5 Adjustments to avoid sqlite "database is locked" errors (#333)
* add new exception test

* Make memory tests and file path tests be explicit

* set the default write parallelism to 1

* set to single reader for caching channel

* format

* Try to have consistent DB locked error test

* always a single reader of the channel

* Remove extra snapshot

* Revert "Try to have consistent DB locked error test"

This reverts commit 93669c57a3.

* remove extra test that doesn't do anything
2025-06-09 16:24:39 +00:00
Adam Hathcock 58a0326060 Receive should sort the root closures to see a speed improvement (#311)
* Maybe really fixes closures

* fornat

* add ai generated tests

* fix tests

* fix tests

* added test with correct number of closures?

* closures are self contained.  don't increment on attached properties

* format

* MergeClosure should reuse if exists, not just set

* Add generated tests and sort the parser correctly when using get closures

* add extra options to not sort and make sorting default for receive

* hide private method
2025-06-04 13:54:26 +00:00
Adam Hathcock 55f83919d1 Don't log aggregate exceptions that only contain cancelled exceptions (#326)
* Don't log aggregate exceptions that only contain cancelled exceptions

* check if all are not cancelled
2025-06-04 12:59:51 +00:00
Adam Hathcock 46c57b18be Cancel before kicking off tasks to ensure they throw (#328) 2025-06-04 13:49:03 +01:00
Adam Hathcock e29b27bcd3 Add some debugging stats about the sent or received payloads to add debugging when things are massive (#319) 2025-06-03 14:15:37 +00:00
Jedd Morgan ff1b688321 refactor(accountmanager): Refactor account manager for automate (#320)
* First pass refactor account manager

* Use GraphQLClient factory in account manager also

* update account references

* cleanup

* Added test + comments

* more docstrings

* More tests
2025-06-03 12:54:44 +00:00
Adam Hathcock 0be143d391 Make nulls appear as soon as possible (#324) 2025-06-03 12:09:55 +00:00