Skip to content

Latest commit

 

History

History
501 lines (275 loc) · 23.4 KB

CHANGELOG.md

File metadata and controls

501 lines (275 loc) · 23.4 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

5.5.0 (2024-09-30)

Features

  • add retrier to the topics (03fc7f9)

5.4.0 (2024-09-27)

Features

  • add idempotent option to tableClient session.executeQuery (89df57e)

5.3.5 (2024-09-26)

Bug Fixes

5.3.4 (2024-08-20)

Bug Fixes

  • initial version of topic service client (2db4f42)

5.3.3 (2024-07-04)

Bug Fixes

  • add DECLARE that is still required by YDB 24.1 (8920fee)
  • query service switched to new retryer (43ce40b)

5.3.2 (2024-03-28)

Bug Fixes

  • add opFinished in query service result (cf2959c)

5.3.1 (2024-03-26)

Bug Fixes

  • visibility of RowType type (c1f258d)

5.3.0 (2024-03-25)

Features

  • add YDB Query Service client (f7a5958)

5.2.0 (2024-02-27)

Features

5.1.1 (2023-09-04)

Bug Fixes

  • quick fix husky install problem arises during SDK update (03beecc)

5.1.0 (2023-08-31)

Features

  • a dummy feature to check the release action (268d427)

5.0.0 (2023-05-15)

⚠ BREAKING CHANGES

  • remove string type

Features

Bug Fixes

  • bugfix long type parsing (4bbecf7)
  • bugfix vaiant tuple parse (283be5d)

4.6.0 (2023-05-10)

Features

  • add logging to retryable decorator (dc747b0)
  • add retries to static and IAM credentials services (783d977)
  • update errors classes list (3d860b8)

Bug Fixes

  • fix withTimeout hanging when errored (83409c5)

4.5.0 (2023-04-19)

Features

  • add family option to Column constructor (06a955d)
  • add all defined options to createTable functions (feb2570)
  • add describeTableOptions function (b532c90)

4.4.0 (2023-04-19)

Features

4.3.0 (2023-04-04)

Features

  • add language_id support for slo workflow (f7fee49)

4.2.0 (2023-03-28)

Features

  • make variant type converting to YDB native working (2c0a9d9)
  • make variant type parsing working (5320024)

4.1.0 (2023-03-16)

Features

4.0.0 (2023-03-07)

⚠ BREAKING CHANGES

  • remove pino from deps, add setupLogger
  • move optional deps to peerDeps

Features

  • add backward compatibility for setDefaultLogger (bd637bc)
  • add custom logger examples (11273aa)
  • add slo-workload (a916f19)
  • lock engine>npm version (f35dc42)

Bug Fixes

  • import type from @yandex-cloud/nodejs-sdk (331074b)
  • move optional deps to peerDeps (701bb6c)
  • remove pino from deps, add setupLogger (fb77499)
  • update MetadataAuthService to load module async way (2d9be70)

3.9.0 (2023-02-09)

Features

  • add alter table async mode handling (9c18405)
  • add parameters to alterTable (648a6ca)

Bug Fixes

  • bugfix MissingStatus import (1835a85)

3.8.1 (2023-01-13)

Bug Fixes

  • tests: update timeouts to run tests correctly (82bc6b7)

3.8.0 (2023-01-13)

Features

  • update ydb-sdk-proto to 1.1.0 (8106921)

3.7.1 (2023-01-12)

Bug Fixes

  • deps: update luxon, jsonwebtoken and YC sdk (60ba72d)

3.7.0 (2022-12-05)

Features

  • add staticAuthService and examples (4592026)
  • update ydb-sdk-proto package (a0ff3ea)

3.6.1 (2022-11-28)

Bug Fixes

  • auth: new IAM auth grpc service per token update (341872a)

3.6.0 (2022-11-21)

Features

  • add data columns and sync/async index to TableIndex (7304dce)

3.5.0 (2022-11-15)

Features

Bug Fixes

  • deps: update logging packages to latest (ad8dbd2)

3.4.4 (2022-10-20)

Bug Fixes

  • certs: regenerate certs.json (b876431)
  • inline certificates content (7791a93)

3.4.3 (2022-10-18)

Bug Fixes

  • build: bugfix npm package (4db3425)

3.4.2 (2022-10-18)

Bug Fixes

  • build: fix es module build (8d4715b)

3.4.1 (2022-09-13)

Bug Fixes

  • certificates path for bundling compilation (ebc10ad), closes #173

3.4.0 (2022-08-12)

Features

  • introduce new type aliases: Types.BYTES & Types.TEXT (61c17dc)

Bug Fixes

  • the expected type of TypedData.yson() arg should be Buffer (cd327de)

3.3.2 (2022-05-27)

Bug Fixes

  • correctly access internal certs from compiled sources (f7e520d), closes #163

3.3.1 (2022-05-26)

Bug Fixes

  • correctly access package.json (5bba0d9)

3.3.0 (2022-05-20)

Features

  • add esnext target to support using library via ES modules (09deade), closes #145

3.2.0 (2022-05-20)

Features

  • process 'session-close' server hint from trailing metadata (d9c15ba)

Bug Fixes

  • acquire new session once free slot becomes available in pool (4500226)

3.1.1 (2022-05-13)

Bug Fixes

  • add muteNonExistingTableErrors to DropTableSettings class (c2f6037), closes #141

3.1.0 (2022-05-12)

Features

  • use newer @yandex-cloud/nodejs-sdk package based on grpc-js (2d37272), closes #146

3.0.0 (2022-03-02)

⚠ BREAKING CHANGES

  • all signatures of SchemeClient's methods now have optional settings parameter instead of operationParams.
    • Before: makeDirectory(path, operationParams?) After: makeDirectory(path, {operationParams: ...}?)
    • Before: removeDirectory(path, operationParams?) After: removeDirectory(path, {operationParams: ...}?)
    • Before: listDirectory(path, operationParams?) After: listDirectory(path, {operationParams: ...}?)
    • Before: describePath(path, operationParams?) After: describePath(path, {operationParams: ...}?)
    • Before: modifyPermissions(path, ..., ..., operationParams?) After: modifyPermissions(path, ..., ..., {operationParams: ...}?)
  • TypedData fields have identity conversion to YDB column names instead of camelCase to snake_case. Use @withTypeOptions({namesConversion:snakeToCamelCaseConversion}) for backward compatibility.
  • several types have changed their representation, namely
    • struct value is present as object instead of array
    • decimal value is present as string instead of bigint (it wasn't working for float values before)
    • fix uuid and tz-date types conversion (it wasn't working before)
  • signatures of most methods in TableSession are changed:
    • executeQuery Before: (query, params, txControl, operationParams?, settings?, collectStats?) After: (query, params, txControl, settings?)
    • describeTable Before: (tablePath: string, operationParams?)|(tablePath, describeTableParams?) After: (tablePath, settings?)
    • commitTransaction Before: (txControl, operationParams?) After: (txControl, settings?) (and collectStats support)
    • createTable, alterTable, dropTable, beginTransaction, rollbackTransaction, prepareQuery, bulkUpsert Before: (<required params>, operationParams?) After: (<required params>, settings?)
  • tablePath in bulkUpsert and readTable methods must be without database prefix
  • Primitive class is renamed to TypedValues
  • signatures of Driver, getCredentialsFromEnv and *AuthService classes are changed:
    • Driver: Before: new Driver(entryPoint, dbName, authService, ...) After: new Driver({connectionString: "...", authService: ..., ...}) or new Driver({endpoint: "...", database: "...", authService: ..., ...})
    • *AuthService - database and sslCredentials are no longer needed in *AuthService constructors (ssl credentials option is now initialized in the driver if it's necessary) Before: const authService = new MetadataAuthService(dbName, sslCredentials); After: const authService = new MetadataAuthService();
    • getCredentialsFromEnv: Before: const authService = getCredentialsFromEnv(endpoint, database, logger); After: const authService = getCredentialsFromEnv(); (logger is optional)
  • old environment variables are no longer supported. Use YDB_ACCESS_TOKEN_CREDENTIALS instead of YDB_TOKEN, YDB_SERVICE_ACCOUNT_KEY_FILE_CREDENTIALS instead of SA_ID, SA_PRIVATE_KEY_FILE, SA_ACCESS_KEY_ID and SA_JSON_FILE.

Features

  • add more methods and fields to type helper classes (82f26ea)
  • implement Types and TypedValues helper classes (029db0e)
  • implement new type conversions and fix existing type conversions (0edbcdd)
  • reorganize Driver and credentials to simplify SDK usage (6526378)
  • replace grpc with @grpc/grpc-js (1bd8d06)

Bug Fixes

  • don't use database in tablePath for bulkUpsert and readTable methods (d416d59)
  • error message in test-utils (af39fd1)
  • little fixes in examples (9c19b95)

Miscellaneous

  • drop support of old environment variables (963819a)
  • reorganize signature of SchemeClient's methods (734d57a)
  • reorganize signatures of TableSession's methods (431f149)
  • use identity names conversion in TypedData (275598a)

2.9.2 (2022-02-09)

Bug Fixes

  • MetadataAuthService: remove ssl defaults for grpc scheme (40523f7)

2.9.1 (2022-01-21)

Bug Fixes

  • package.json: move pino-pretty to dependencies (bf739d2)

2.9.0 (2021-12-29)

Features

  • describeTable: add new function signature (4e2106d)
  • executeQuery: add collectStats parameter (bae40fa)

Bug Fixes

  • examples: remove package-lock.json from examples repo (b80de4e)

2.8.1 (2021-12-14)

2.8.0 (2021-12-09)

Features

  • tableClient: implement bulkUpsert method (a4b63f6)

2.7.0 (2021-12-03)

Features

  • tableClient: implement streamReadTable call (1809215)

2.6.3 (2021-12-02)

Bug Fixes

  • ssl: no more SSL connection attempts for grpc:// endpoints (7c517aa)

2.6.0

  • YDB definitions bundle and generating bundle from protobuf files have been moved to ydb-sdk-proto dependency package

2.5.0

  • All authentication helper classes are now exported from top-level and ready to be used in client code.
  • Added authentication code snippets to /examples

2.4.0

  • Support new unified environment variables: YDB_ACCESS_TOKEN_CREDENTIALS, YDB_ANONYMOUS_CREDENTIALS, YDB_METADATA_CREDENTIALS, YDB_SERVICE_ACCOUNT_KEY_FILE_CREDENTIALS
  • Deprecate old credentials environment variables: YDB_TOKEN, SA_ID, SA_PRIVATE_KEY_FILE, SA_ACCESS_KEY_ID, SA_JSON_FILE
  • Put back embedded certificate file, now certificates for YDB dedicated instances are concatenated with system certificates, which should allow to use embedded certificate for both dedicated and serverless databases.

2.3.0

  • Provide Primitive helper class for easy creation of primitive values, see how it's used in in /scan-query example.

2.2.0

  • Support streamExecuteScanQuery() method in tableClient
  • Provide means to alter default snake_case - camelCase field names conversion when moving data between YDB and JS side, via @withTypeOptions decorator (with an example)

2.1.0

  • Allow passing gRPC client options under clientOptions key to Driver constructor. This enables changing different gRPC settings in tableClient and schemaClient calls.

2.0.0

  • BREAKING CHANGE: StorageSettings class exported at toplevel has changed its structure: the only public storageKind field has been renamed to media, type is the same. This was done due to underlying protobufs change, where StorageSettings message has been completely changed and the old StorageSettings is now known as StoragePool (with media field).
  • Added JSON_DOCUMENT YDB primitive support.
  • ExecuteStreamQuery -> StreamExecuteScanQuery in protobufs
  • and many other changes in protobufs.

1.10.0

  • Add alterTable method to TableSession class
  • Put compiled protobufs to a separate 'ydb-sdk' namespace

1.9.0

  • Pass 'x-ydb-sdk-build-info' header with library name/version to every GRPC request.