Releases: ydb-platform/ydb-go-sdk
Releases · ydb-platform/ydb-go-sdk
v3.7.1
- Fixed panic on
result.Reset(nil)
v3.7.0
- Replaced
OptiontoCustomOptiononConnectioninterface methods - Implements
WithCustom[Token,Database]options for redefine database and token - Removed experimental
balancer.PreferEndpoints[WithFallback][RegEx]balancers - Supported connections
TTLwithOptionWithConnectionTTL - Remove unnecessary
WithFastDialoption (lazy connections are always fast inserts into cluster) - Added
Scriptingservice client with API methodsExecute(),StreamExecute()andExplain() - Added
String()method totable.types.Typeinterface - Added
With[Custom]UserAgent()OptionandCustomOptionconstructors - Refactored
log.Loggerinterface and internal implementation - Added
retry.RetryableError()for returns user-defined error which must be retryed - Renamed internal type
internal.errors.OperationCompletedtointernal.errors.OperationStatus - Added
String()method totable.KeyRangeandtable.Valuetypes - Replaced creation of goroutine on each stream call to explicit call stream.Recv() on NextResultSet()
v3.7.0-beta
- Replaced
OptiontoCustomOptiononConnectioninterface methods - Implements
WithCustom[Token,Database]options for redefine database and token - Removed experimental
balancer.PreferEndpoints[WithFallback][RegEx]balancers - Supported connections
TTLwithOptionWithConnectionTTL - Remove unnecessary
WithFastDialoption (lazy connections are always fast inserts into cluster) - Added
Scriptingservice client with API methodsExecute(),StreamExecute()andExplain() - Added
String()method totable.types.Typeinterface - Added
With[Custom]UserAgent()OptionandCustomOptionconstructors - Refactored
log.Loggerinterface and internal implementation - Added
retry.RetryableError()for returns user-defined error which must be retryed - Renamed internal type
internal.errors.OperationCompletedtointernal.errors.OperationStatus - Added
String()method totable.KeyRangeandtable.Valuetypes - Replaced creation of goroutine on each stream call to explicit call stream.Recv() on NextResultSet()
v3.7.0-alpha
- Replaced
OptiontoCustomOptiononConnectioninterface methods - Implements
WithCustom[Token,Database]options for redefine database and token - Removed experimental
balancer.PreferEndpoints[WithFallback][RegEx]balancers - Supported connections
TTLwithOptionWithConnectionTTL - Remove unnecessary
WithFastDialoption (lazy connections are always fast inserts into cluster) - Added
Scriptingservice client with API methodsExecute(),StreamExecute()andExplain() - Added
String()method totable.types.Typeinterface - Added
With[Custom]UserAgent()OptionandCustomOptionconstructors - Refactored
log.Loggerinterface and internal implementation - Added
retry.RetryableError()for returns user-defined error which must be retryed - Renamed internal type
internal.errors.OperationCompletedtointernal.errors.OperationStatus - Added
String()method totable.KeyRangeandtable.Valuetypes
v3.5.2: Merge pull request #68 from ydb-platform/race-result
- Fixed data race on closing table result
- Added custom dns-resolver to grpc options for use dns-balancing with round_robin balancing policy
- Wrapped with
recover()system panic on getting system certificates pool - Added linters and fixed issues from them
- Changed API of
sugarpackage
v3.5.0
- Added
ClosabelSessioninterface which extendsSessioninterface and provideClosemethod - Added
CreateSessionmethod intotable.Clientinterface - Added
Contextfield intotrace.Driver.Net{Dial,Read,Write,Close}StartInfostructs - Added
Addressfield intotrace.Driver.DiscoveryStartInfostruct - Improved logger options (provide err and out writers, provide external logger)
- Renamed package
table.resultsettotable.result - Added
trace.Driver.{OnInit,OnClose}events - Changed unit/integration tests running
- Fixed/added YDB error checkers
- Dropped
ydb.WithDriverConfigOptions(duplicate ofydb.With) - Fixed freeze on closing driver
- Fixed
CGOrace onDarwinsystem when driver tried to expand tilde on certificates path - Removed
EnsurePathExistsandCleanupDatabasefrom API ofscheme.Client - Added helpers
MakePathandCleanPathto root of packageydb-go-sdk - Removed call
types.Scanner.UnmarshalYDB()insidescanner.setDefaults() - Added
DoTx()API method intotable.Client - Added
String()method intoConnectParamsfor serialize params to connection string - Added early exit from Rollback for committed transaction
- Moved
HasNextResultSet()method fromResultinterface to commonresultinterface. It provides access toHasNextResultSet()on both result interfaces (unary and stream results) - Added public credentials constructors
credentials.NewAnonymousCredentials()andcredentials.NewAccessTokenCredentials(token)
v3.2.3
- Fixed bug of interpret tilda in path of certificates file
- Added chapter to
README.mdabout ecosystem of debug tools overydb-go-sdk - Fixed result type of
RawValue.String(ydb string compatible) - Fixed scans ydb types into string and slice byte receivers
- Added
WithEndpointandWithDatabaseOption constructors - added package
logwith interfacelog.Logger - implements
trace.Driverandtrace.Tablewithlog.Logger - added internal leveled logger which implement interface
log.Logger - supported environment variable
YDB_LOG_SEVERITY_LEVEL - changed name of the field
RetryAttemptstoAttemptsin the structuretrace.PoolGetDoneInfo.
This change reduces back compatibility, but there are no external uses of v3 sdk, so this change is
fine. We are sorry if this change broke your code
v3.1.0
- published scheme Client interface
v3.0.1
- refactored integration tests
- fixed table retry trace calls
v3.0.0
- Refactored sources for splitting public interfaces and internal
implementation for core changes in the future without change major version - Refactored of transport level of driver - now we use grpc code generation by stock
protoc-gen-goinstead internal protoc codegen. New API provide operate from codegen grpc-clients with driver as a single grpc client connection. But driver hide inside self a pool of grpc connections to different cluster endpoints YDB. All communications with YDB (base services includes to driver: table, discovery, coordiantion and ratelimiter) provides stock codegen grpc-clients now. - Much changed API of driver for easy usage.
- Dropped package
ydbsql(moved to external project) - Extracted yandex-cloud authentication to external project
- Extracted examples to external project
- Changed of traces API for next usage in jaeger и prometheus
- Dropped old APIs marked as
deprecated - Added integration tests with docker ydb container
- Changed table session and endpoint link type from string address to integer NodeID