* Use a stack channel for deserialization * multi-threaded * add object dictionary pool * more pooling * adjust sqlite transport * format * Optimize IsPropNameValid * object loader first pass * save test * add cache pre check * save better deserialize * mostly works * uses tasks but slower at end * rework to make more sense * add check to avoid multi-deserialize * modify max parallelism * async enqueuing of tasks * switch to more asyncenumerable * fmt * fmt * cleanup sqlite * make ServerObjectManager * revert change * add ability to skip cache check * cache json to know what is loaded * testing * clean up usage * clean up and added new op * Fix exception handling * fixing progress * remove codejam * Hides ObjectPool dependency * fmt * Use the 1.0 BCL async to try to be more compatible * rename to dependencies * Move Polly to internal dependencies * format * remove more old references * remove stackchannel * fixes for registration * remove console writeline * add cache check shortcut for root object * recevie2 benchmark * add test for deserialize new * Use same asyncinterfaces as Dynamo. Merge fixes * clean up * fix download object progress --------- Co-authored-by: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com>
Core
Disclaimer
This is an early alpha release, not meant for use in production! We're working to stabilise the 3.0 API, and until then there will be breaking changes. You have been warned!
Introduction
Core
Core is the .NET SDK for Speckle 3.0. It uses .NET Standard 2.0 and has been tested on Windows and MacOS.
Documentation
Comprehensive developer and user documentation can be found in our:
📚 Speckle Docs website
Developing & Debugging
Building
Make sure you clone this repository together with its submodules: git clone https://github.com/specklesystems/speckle-sharp-sdk.git -recursive.
Afterwards, just restore all the NuGet packages and hit Build!
Developing
This project is evolving fast, to better understand how to use Core we suggest checking out the Unit and Integration tests. Running the integration tests locally requires a local server running on your computer.
We'll be also adding preliminary documentation on our forum.
Tests
There are two test projects, one for unit tests and one for integration tests. The latter needs a server running locally in order to run.
Contributing
Before embarking on submitting a patch, please make sure you read:
Community
The Speckle Community hangs out on the forum, do join and introduce yourself & feel free to ask us questions!
License
Unless otherwise described, the code in this repository is licensed under the Apache-2.0 license.