* Extract Ledger API error definitions in //ledger/error-definitions
changelog_begin
SERVICE_INTERNAL_ERROR error code is created in CommonErrors and replaces the usage of LEDGER_API_INTERNAL_ERROR in ledger-api-client (as a fix).
changelog_end
* Tests in //ledger/error do not depend on //ledger/ledger-api-errors
* Remove unused dependency from //ledger/error
changelog_begin
changelog_end
* Address Martino's comment
* InMemUserMngtImpl: Introducece custom in-mem user repr to better handle resource versions. Fix not updating isDeactivated property
* Generalize concurrent change control tests for users and party records
* Move backend files such that related localstore files are separated from other files
* Remove unneeded nesting in ParticipantParty object
* Document rights in revoke/grant requests as optional. More conformance tests for users rights
changelog_begin
changelog_end
* On Dispatcher cancel, fail sources with distinct throwables
changelog_begin
Fixes an issue where failing multiple sources with the same StatusRuntimException
leads to an unhandled error in the gRPC serialization layer. This issue was
caused by serialization actually mutating the non-thread-safe io.grpc.Metadata
contained in the StatusRuntimeException.
changelog_end
* Fix ApiVersionService internalError
* Log error on ServerCall.close() errors
* Address Sergey's review comments
* Addressed more review comments
* Accessor method for call.close to bypass IllegalAccessErrors
* Use unique kill switches per stream in generated Akka Grpc streaming services
This change has two benefits:
- The error is logged only on an actual stream termination
- The throwable is not shared between streams, avoiding concurrent Metadata access errors
* Addressed Marton's review comments
* Contract argument blob [DPP-1161].
CHANGELOG_BEGIN
[Ledger API]: Introduce an ability to expose contract arguments as blob if matched by the interface filter using `include_create_arguments_blob` flag in the ``InterfaceFilter``.
Introduce an ability to provide `DisclosedContract.arguments` as a blob instead of a typed `Record`.
CHANGELOG_END
Breaks-protobuf: true
Co-authored-by: Simon Meier <meiersi-da@users.noreply.github.com>
Co-authored-by: atriantafyllos-da <andreas.triantafyllos@digitalasset.com>
changelog_begin
[Ledger API Specification]:
1. Add 'is_deactivated' attribute to participant users.
2. Introduce participant server's local metadata for parties and participant users consisting of:
- a resource version for optional concurrent change control,
- modifiable key-value based annotations.
3. Add experimental update RPCs for parties and participant users:
- participant user's modifiable fields are: 'primary_party', 'is_deactivated', 'metadata.annotations',
- party's modifiable fields are 'local_metadata.annotations'.
4. Discourage use of 'party_details.display_name' in favor of using party's metadata annotations.
changelog_end
Other notes:
- no-op updates are allowed,
- update paths are resource relative,
- as annotation deletion is by providing an key with the empty string value,
- as a corollary, only non-empty strings are valid annotation values.
changelog_begin
The `CreatedEvent.metadata` field is populated for `created_at` and `contract_key_hash` (where applicable)
for active contracts and transactions payloads in Ledger API streams
changelog_end
Fixes Index DB insertion order for childEventId.
Adds backwards compatibility treatment: recovering childEventId
order from the order of events at API stream rendering.
Extends TransactionServiceVisibilityIT with the ordering criterion.
Fixes compatibility tests with exclusion.
Adds documentation to event.proto.
CHANGELOG_BEGIN
Fixing Ledger API Bug: Exercise nodes in transaction trees
have child_event_ids out of order.
CHANGELOG_END
changelog_begin
Ledger API Specification: Streaming endpoints will use error code 'SERVER_IS_SHUTTING_DOWN' when the server
is being shut down, whereas before an exception without an error code was used.
Grpc status code in use remains 'UNAVAILABLE'.
changelog_end
* Remove the possibility to turn on legacy error codes
CHANGELOG_BEGIN
- Switching to the legacy error codes is not possible.
CHANGELOG_END
* Revert breaking experimental features proto definitions
* Deprecate legacy error codes in proto definitions
* Proper todo naming
* Adjust compatibility tests
* Fix unintentional paste
changelog_begin
Ledger API Specification: CreateUser and GetUser endpoints of UserManagementService now return the CreateUserResponse or GetUserResponse messages, whereas previously they were returning the User message).
changelog_end
CHANGELOG_BEGIN
Ledger API Specification: Maximum number of user rights per user is now limited to 1000 and is added to UserManagementFeature in VersionService. getLedgerApiVersion endpoint.
CHANGELOG_END
Since Scala 2.13.2, Scala introduced built-in support to
manage warnings in a more granular fashion, thus making
the silencer plugin we are currently using no longer
strictly useful. Removing compiler plugins also removes
friction from migrating to Scala 3 in the future. As a
cherry on top, the built-in warning configuration also
allows to check whether a `@nowarn` actually does
anything, allowing us to proactively remove unused
warnings should the need arise.
[Here][1] is s a blog post by the Scala team about it.
Warnings have been either solved or preserved if useful,
trying to minimize the scope (keeping it at the single
expression scope if possible). In particular, all
remaining usages of the Scala Collection API compatibility
module have been removed.
Using the silencer plugin also apparently hid a few
remaining usages of compatibility libraries that were used
as part of the transition from Scala 2.12 to Scala 2.13
that are no longer needed. Removing those warnings
highlighted those.
changelog_begin
changelog_end
[1]: https://www.scala-lang.org/2021/01/12/configuring-and-suppressing-warnings.html
* With mock metering service
* Reformat
changelog_begin
changelog_end
* Include nanos in generation time
* Update with review comments
* Update service count
I’ve kept it on the same test infrastructure that we used before that
can test both ways since it seems nicer to keep this consistent with v1.
changelog_begin
changelog_end
Breaks-protobuf: true