* xunit unit tests
* most pass with formatting
* convert objects to xunit
* remove nunit
* format
* merge fixes
* switch objects to fluent assertions
* update to fluent assertions
* more FA
* convert all to FA
* Format
* Fix tests
* formatting
* hopefully made credential test better
* Catch more specific exception
* use another more specific exception
* Fix tests
* update to xunit
* update packages
* add ServerObjectManagerFactory
* add usage of a command pool
* add more disposal
* save saving increase
* fix tests
* fixes
* push out concurrency and disposablity
* Add a custom task scheduler
* Better usage, don't wait to enqueue to save to channels
* Completely pre-cal batch size to avoid spinning issues
* Try to fix cache counting
* properly dispose things
* format
* clean up
* adjust count and save on current thread
* move batch it's own file
* update a few packages
* fix build and add batch tests
* revert and format
* Revert "save saving increase"
This reverts commit 3b50c857fb.
* revert change
* adjust and add tests
* Dispose sqlite manager properly
* Make Batch a IMemoryOwner to allow for pooling
* Fix tests
* Upgrade some deps
* try to make tests more explicit
* remove return value
* Use named tuple for all objects
* Add a custom task scheduler
* Better usage, don't wait to enqueue to save to channels
* Completely pre-cal batch size to avoid spinning issues
* Try to fix cache counting
* properly dispose things
* format
* clean up
* adjust count and save on current thread
* move batch it's own file
* update a few packages
* fix build and add batch tests
* Can debug dependencies
* Different exceptions
* Uses root id only after we found it to signal the end
* DataChunks are created later and need to be accounted for
* format
* use app ids in tests and references
* check sqlite cache after serialize
* use dummy to go through channels to end
* fmt
* Extend channel lib to batch by size
* fmt
* build fix
* adjust limits
* FIx sending
* Optimize reference generation
* more
* remove tolist
* rework closures to be constant and serializer only deals with current....references bases are cached
* fix chunk creation
* another bug fix
* clean up with factories
* add deserializer factory
* Needed to reference interface
* add Id and Json types
* Fix tests
* remove optional
* add another missing id write
* fix merge
* Fix new code
* 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>
* 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
* 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
* progress intermediate commit
* add progress for download
* remove unused code
* remove batch sent callbacks
* multi-threaded deserialize works
* Progress for download and deserialization
* Fix tests
* Have less indeterminate deserialization
* fix deserialization
* make download faster with buffered stream
* put local receive back
* remove unused callback
* fmt
* Progress for serialization and upload
* fix uploading
* clean up from progress
* merge fixes and fmt
* compiles with relevant deletions
* Test fixes
* fix type loading
* type load for tests
* speckle objects renamespace
* rename Core to Sdk
* Fix test references
* tests renaming
* rename logging
* fmt
* start of adding an attribute to all base types
* convert all types and do basic test
* Fix most tests
* fix more tests
* fmt
* Build fix
* add changes and more tests
* Fix tests
* Fix integration tests