* 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>
* 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
* remove stackchannel
* remove console writeline
* add cache check shortcut for root object
* recevie2 benchmark
---------
Co-authored-by: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com>
* feat: adds wip classes for brep/subd/extrusion-x
* Get rid of dub code on ExtrusionX SubDX BrepX
* fix: Run format
* chore: formatting
* chore: more formatting
help dis annoying
---------
Co-authored-by: oguzhankoral <oguzhankoral@gmail.com>
Co-authored-by: Alan Rynne <alan@speckle.systems>
Co-authored-by: Adam Hathcock <adamhathcock@users.noreply.github.com>
* initial burn
* fix: Minor fixes, some pending
* fix: Minor fix + DeepClean target
* setup things to be injected
* things compile and activites are instanced
* compiles except tests
* tests compile
* fmt
* fix merge
* Activities are now an interface
* fmt
* fully remove logging DLL
* clean up
* fix tests
* more cleanup
* Fix integration tests
* clean up hash tests
* clean up path provider
* more cleanup for path
* merge fixes
* Merge fixes
* remove some extra classes
---------
Co-authored-by: Alan Rynne <alan@speckle.systems>
* Sdk
* Objects
* Supressed IDE warnings via editor config instead of nowarn
* Nullability and other warnings
* using
* Required keyword on lines and meshes
* Fixed test project
* fixed tests
* Proxies
* Fixed equality of Point
* IEquatable
* Fixed issue with serialization of detached lists
* Added tests for jsonIgnore affecting id calc
* removed comments
* Fixed issue with fallback to double on large values
* Fixed undocumented large number support
* Fixed issue with serialization of detached lists
* Added tests for jsonIgnore affecting id calc
* use extra writer and pass tests
* avoid returning extra object
* fix tests
* Add span overload back
* fmt
---------
Co-authored-by: Jedd Morgan <45512892+JR-Morgan@users.noreply.github.com>
* Sha256 hash with spans
* HashData
* NumericFormat
* Tests
* md5 test
* xml
* use utf16 encoding rather than utf8
---------
Co-authored-by: Alan Rynne <alan@rynne.es>
* Use Concurrent Dictionaries and ignore case on them to avoid ToLower
* remove single array allocation
* allocate GetClosures differently
* Use JsonReader for closures
* add comment
* use isdefined
* more readonly with less allocations
* sorts
* fmt
* use element type when making an array
* first pass
* Fix reading for object and array
* serialization works?
* Fix closure parsing
* things are way faster
* Deserialize is async
* fmt
* renames
* remove deserialize threads
* fmt
* faster to use ordinal compare
* serialization looks okay
* fix closure writing
* fixes
* use possibly different values for compute id
* use closure parser on download
* memory test for blobs
* decompose serialization
* fmt
* fmt
* for decomposing, values should be used instead of original
* set id after computing it
* redo more closure parsing
* fix memory test
* don't throw on try get deserialized
* fmt
* fix integration tests
* fix tests
* disable memory blob storage by default
* put back ?
* merge fixes and delete worker threads
* fmt
* serialization of old floats pass
* serialization of old floats pass
* rename class
* Use async/await on GetObject
* await deserialization
* fmt
* uncomment and fix tests
* don't allow things to exist in the closure table that doesn't exist
* detach blob tests
* rename serializer
* async more correct
* revert
* fix merge
* fix blob tests again
* more fixes
* Fix building
* async fixes
* more async fixes
* fix tests?
* rename GetId to GetIdAsync
* clean up
* more cleanup
* fmt
* fix test
* fix analyzer errors
* use ConcurrentDictionary to be thread safe
* Sdk
* Objects
* Supressed IDE warnings via editor config instead of nowarn
* Nullability and other warnings
* using
* Fixed warnings
* Important fix
* More fixes
* Use Concurrent Dictionaries and ignore case on them to avoid ToLower
* remove single array allocation
* allocate GetClosures differently
* Use JsonReader for closures
* add comment
* use isdefined
* more readonly with less allocations
* sorts
* fmt
* use element type when making an array
* first pass
* Fix reading for object and array
* serialization works?
* Fix closure parsing
* things are way faster
* Deserialize is async
* fmt
* renames
* remove deserialize threads
* fmt
* faster to use ordinal compare
* serialization looks okay
* fix closure writing
* fixes
* use possibly different values for compute id
* use closure parser on download
* memory test for blobs
* decompose serialization
* fmt
* fmt
* for decomposing, values should be used instead of original
* set id after computing it
* redo more closure parsing
* fix memory test
* don't throw on try get deserialized
* fmt
* fix integration tests
* fix tests
* disable memory blob storage by default
* put back ?
* merge fixes and delete worker threads
* fmt
* serialization of old floats pass
* serialization of old floats pass
* rename class
* uncomment and fix tests
* don't allow things to exist in the closure table that doesn't exist
* detach blob tests
* rename serializer
* revert
* fix blob tests again