Commit Graph

128 Commits

Author SHA1 Message Date
Adam Hathcock ce3d610ac5 Add CancellationToken usage to Closure parsing (#103)
* Add CancellationToken usage to Closure parsing

* fmt
2024-09-05 16:53:26 +01:00
Adam Hathcock 1be044e442 Remove redundant Contains/GetHashCode (#102) 2024-09-05 15:12:58 +01:00
Adam Hathcock cc7d274f43 Add .NET 8 targets (#97)
* Add targets to csproj and fixed up logging

* Logging compiles

* SDK compiles

* Objects compiles

* fmt

* fix build naming

* remove net6.0

* more null fixes

* merge fixes
2024-09-05 15:12:22 +01:00
Adam Hathcock 0b1de566df Async GetObject and Async Deserialization (#95)
* 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
2024-09-04 13:45:56 +01:00
Jedd Morgan 5e0ea324c3 Re-introduced code analysers and fixed many violations (#92)
* Sdk

* Objects

* Supressed IDE warnings via editor config instead of nowarn

* Nullability and other warnings

* using

* Fixed warnings

* Important fix

* More fixes
2024-09-04 11:49:35 +00:00
Jedd Morgan b9180027c5 Detach Levels (#99) 2024-09-03 18:14:22 +01:00
Adam Hathcock 77a40a3af5 Merge pull request #98 from specklesystems/main
Main to dev
2024-09-03 16:39:07 +01:00
Adam Hathcock 22f4945d71 Json reader deserialize (#88)
* 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
2024-09-03 15:53:50 +01:00
Jedd Morgan c0f8949705 Jedd/cxpla 33 move performance test project (#87)
* Moved performance test project

* register types

* perf tests
2024-09-02 15:41:48 +00:00
Adam Hathcock 7883cd9d32 Don't use Serilog global static logger in v3 (#96)
* Don't use Serilog global static logger in v3

* make logger be internal only
2024-09-02 13:52:27 +01:00
Alan Rynne b7be9b6fb1 Merge pull request #94 from specklesystems/dev
dev -> main
2024-08-29 13:42:49 +02:00
Jedd Morgan 2b46792a82 Fixed issue with Km unit scalling (#93) 2024-08-28 13:27:42 +02:00
Adam Hathcock 4c3e572bfe clean up from progress (#78)
* 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
2024-08-22 11:18:16 +01:00
Adam Hathcock 0f116ad847 Base caching on TypeLoader (#82)
* Base caching on TypeLoader

* fmt

* add back types
2024-08-22 11:11:53 +01:00
Jedd Morgan 16b1b904af First pass for IBase (#81) 2024-08-21 17:57:33 +00:00
Jedd Morgan 9916048921 Long Send Resiliency (#89)
* LongSendTest

* Moved to separate project

* Server transport throws early

* raised timeouts

* Use poly for timeout

* Cleaned up some of the AsyncPolicy construction

* GraphQL Client back to 30 second timeout
2024-08-21 18:52:23 +01:00
Jedd Morgan 9bea79b3b2 Removed incorrect platform targets (#84)
Co-authored-by: Adam Hathcock <adamhathcock@users.noreply.github.com>
2024-08-19 21:32:23 +01:00
Adam Hathcock af1d7dfaf3 Check for TypeLoader.initialize correctly (#85) 2024-08-19 14:17:45 +01:00
Adam Hathcock 03a5706680 add initial log statement and fix log path (#80) 2024-08-19 12:45:01 +01:00
Adam Hathcock 42882cb71b Perf changes (#79)
* 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
2024-08-19 12:05:51 +01:00
Jedd Morgan b14c8db8d3 Required keyword on various types (#76)
* Made bounding boxes nullable

* Required keyword for Polyline

* Curve

* others

* Interval

* Breps!

* more changes

* removed resolved todo comment

* Fixed comment

* resolved alan's comments

* surfaces
2024-08-16 13:21:05 +01:00
Adam Hathcock 2fec0ea791 Cleanup and use concurrent dictionary (#77) 2024-08-15 09:55:08 +01:00
Adam Hathcock dc4da49078 Add Progress for transfers (#74)
* 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
2024-08-15 10:43:41 +02:00
Adam Hathcock ea5ed874a3 Remove extra SaveObject (#75)
* Remove extra SaveObject

* fmt
2024-08-15 09:30:24 +02:00
Claire Kuang 70729d5ddd feat(gis): CNX-285 new gis feature classes (#73)
* new gis feature classes with interface for attributes

* updates file names to correspond with classes and adds multipatch feature class

---------

Co-authored-by: Adam Hathcock <adamhathcock@users.noreply.github.com>
2024-08-14 15:57:15 +00:00
Adam Hathcock e443840acf Do snupkgs are for Objects and Sdk...not logging (#72) 2024-08-13 20:26:53 +01:00
Adam Hathcock d269ac73dd Disallow SpeckleType inheritance (#71)
* Disallow SpeckleType inheritance

* fmt

* more tests
2024-08-13 14:32:58 +00:00
Jedd Morgan 148a11f83e Fixed source link (#70)
* Fixed source link pdb

* add snupackage
2024-08-13 14:56:04 +01:00
Jedd Morgan 66b3c5e60c Added DUI3 Operations.Send changes to Sdk (#68)
* Added DUI3 Operations.Send changes to Sdk

* Tests

* more tests

---------

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-08-12 18:28:35 +01:00
Jedd Morgan cfc4018bd3 removed a bunch of obsolete (#65)
* removed a bunch of obsolete

* Accidental trailing char
2024-08-12 11:49:43 +01:00
Jedd Morgan 4b74ca8607 Some tweaks r.e. JsonIgnore (#64)
* Removed total children count

* Some random tweaks

* JsonIgnore tests

* Ignore base
2024-08-12 09:03:56 +00:00
Adam Hathcock 1c64a975c0 Add detail for OpenTelemetry (#67)
* Add detail for OpenTelemetry

* fmt

* review fixes

* more fixes
2024-08-08 16:04:24 +00:00
Jedd Morgan 78faa71592 Collection name space change (#66) 2024-08-08 12:32:41 +00:00
Adam Hathcock 6f5f044095 Adam/cxpla 6 kill remaining kit code in core (#59)
* 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
2024-08-08 10:52:19 +01:00
Jedd Morgan 0b240f0752 Removed total children count (#63) 2024-08-08 08:29:06 +01:00
Adam Hathcock 6d54be55db Use App and Version when doing otel service name (#61) 2024-08-07 12:54:07 +01:00
Adam Hathcock 7148aa0a6f Refining OTEL/Logging configuration (#57)
* More defined configuration

* more config changes and fmt

* fix usages of app versions

* add endpoints and remove seq

* forgot to commit

* Fixes around tracing

* use more strong typing

* add test
2024-08-06 16:24:55 +01:00
Adam Hathcock f8e4682670 Reduce thread usage by removing a possible unneeded Task.Run (#52)
* Reduce thread usage by removing a possible unneeded Task.Run

* fmt
2024-08-05 09:13:10 +01:00
Claire Kuang 9da1d791cc Restructures proxies, removes layer colors, and adds color proxy class (#58) 2024-08-02 18:24:58 +03:00
Adam Hathcock 77ffcead69 Speckle.Logging with ILRepack (#54)
* Revert SQLite to allow side by side

* Update Serilog to 3.1.1 and remove Sentry

* fmt

* Revert serilog change

* first pass

* downgrade to MELA 2.2 to avoid conflicts

* add otel

* Speckle.Logging proper

* move otel and logging to make core dependant

* readd configuration

* revert namespace and add console tracing

* fmt

* Remove extra usings

* readd serilog

* fix deps

* remove extras for build

* some reversions

* add more context

* Fix conversion

* More explicit

* Revert naming

* back to public loggerfactory

* Remove more obsolete things

* Drop ME.Logging dependency and expose logging interface

* restore integration test compose

* fmt

* remove the ME Logging dependency
2024-07-31 15:37:10 +01:00
Claire Kuang a9a9b6b525 Merge pull request #56 from specklesystems/curve-encoding-bug
fix(Curve): null display value on curves decoded in breps
2024-07-31 11:52:47 +01:00
Claire Kuang adcf81b5c8 Merge branch 'curve-encoding-bug' of https://github.com/specklesystems/speckle-sharp-sdk into curve-encoding-bug 2024-07-31 11:48:07 +01:00
Claire Kuang fc46610b5b Update RevitInstance.cs 2024-07-31 11:47:57 +01:00
Claire Kuang 69fceb4d09 Merge branch 'dev' into curve-encoding-bug 2024-07-31 11:42:15 +01:00
Claire Kuang 9671745fdb fixes null display value on curves decoded in breps 2024-07-31 11:36:27 +01:00
Adam Hathcock 787ad92ff2 Remove extra usings (#55)
* Remove extra usings

* readd serilog
2024-07-30 11:07:52 +01:00
Adam Hathcock e79716c5f0 Remove Sentry (#49)
* Revert SQLite to allow side by side

* Update Serilog to 3.1.1 and remove Sentry

* fmt

* Revert serilog change
2024-07-29 16:10:26 +01:00
Jedd Morgan 1f92335d6d retry policy for server api (#53) 2024-07-26 13:37:28 +01:00
Adam Hathcock 02f75c717c Add NotNull Empty and tests (#51) 2024-07-24 15:05:44 +01:00
Claire Kuang ce3e591a47 feat: CNX-19 adds render material proxy class (#50)
* adds render material proxy class

* Update RenderMaterial.cs

* Update RenderMaterial.cs

* refactors IProxyCollection interface

* Update RenderMaterial.cs
2024-07-24 11:43:39 +00:00