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
* ledger-api-test-tool: Rename "ParticipantFeature" to "Features".
* ledger-api-test-tool: Govern ContractIdIT test runs through a feature.
Rather than making it optional, we can expose a feature that instructs
whether we support certain kinds of contract IDs.
This accidentally works for Canton too as it defaults to "false" for
both options, which holds for Canton.
CHANGELOG_BEGIN
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
using ledger feature flags to determine which test cases are run. You
will need to configure the ``StandaloneApiService`` accordingly.
CHANGELOG_END
* ledger-api: Add some documentation to `ContractIdFeatures`.
* compatibility: Update for ContractIdIT.
run-full-compat: true
* ledger-api: Clarify the contract ID features and remove v0 support.
We also remove the tests for v0 contract IDs from ContractIdIT.
* ledger-api-test-tool: Re-introduce tests for v0 contract IDs.
* ledger-api-test-tool: Case class with named parameters in ContractIdIT.
* ledger-api: All ledgers must support suffixed contract IDs.
* compatibilty: Add a start for ContractIdIT.
We can't exclude a test until it exists.
run-full-compat: true
* Remove reset service from grpc and documentation [DPP-804]
CHANGELOG_BEGIN
Remove reset service from the ledger api protocol and the documentation
CHANGELOG_END
* remove reset service from two left-over places
* remove reset service from the protobuf structure test
* Add report metering protobuf definition
changelog_begin
Added experimental GRPC endpoint for the reporting of metering
changelog_end
* Update with review comments
* add changes from joint review by Simon and Simon :D
* Update with review comments
* Update with review comments
Co-authored-by: Simon Meier <simon@digitalasset.com>
* ledger api: support Auth0 user names in user management
See the `IdString.UserId` and `IdString.ApplicationId` comments wrt the
character classes being introduced.
Many thanks to @cocreature for helping with deciding on the exact
restrictions of user-ids.
CHANGELOG_BEGIN
CHANGELOG_END
New year, new copyright, new expected unknown issues with various files
that won't be covered by the script and/or will be but shouldn't change.
I'll do the details on Jan 1, but would appreciate this being
preapproved so I can actually get it merged by then.
CHANGELOG_BEGIN
CHANGELOG_END
* Get rid of deprecated components
Removes:
- mentions of the Node.js bindings
- mentions of the Scala bindings
- usage of the Scala codegen as an SDK tool
- Java bindings "reactive components"
changelog_begin
The Node.js bindings are no longer supported as part of the Daml SDK
The Scala bindings are no longer supported as part of the Daml SDK
The Java bindings reactive components are no longer supported as part of the Daml SDK
The `daml codegen` command has dropped support for Scala
changelog_end
* Fix typo noticed by @cocreature
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Address https://github.com/digital-asset/daml/pull/12167#issuecomment-995714093
* Remove quickstart-scala from the SDK tarballs
* Fix failing codegen test
* Address https://github.com/digital-asset/daml/pull/12167#pullrequestreview-833991243
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
user management: add defaulting for the application_id field of requests
CHANGELOG_BEGIN
- [Ledger API]: as a convenience when using JWT authentication, a
request's application_id field can be left empty to ask the server to
set the field to the id of the authenticated user or the application-id
in the custom token. There are three services that currently specify
application_id's in the request: CommandService,
CommandSubmissionService, and CommandCompletionService.
CHANGELOG_END
* Add Ledger API feature descriptor for user management.
Includes:
- enabling the UserManagementServiceIT tests by default; and skipping them for ledgers that do not support user management. The correct working of this is tested by the cross-version compatibility checks between the ledger-api-test-tool
- some refactoring wrt the parsing and representation of features the the ledger-api-test tool.
CHANGELOG_BEGIN
- [Ledger API]: introduce a feature descriptor for whether the ledger supports user management
CHANGELOG_END
CHANGELOG_BEGIN
- [User Management]: add support for managing participant node users and authenticating
requests as these users using standard JWT tokens.
CHANGELOG_END
Co-authored-by: Marton Nagy <marton.nagy@digitalasset.com>
Co-authored-by: Adriaan Moors <90182053+adriaanm-da@users.noreply.github.com>
* concurrent: Replace `DirectExecutionContextInternal` with `parasitic`.
* concurrent: Rename `DirectExecutionContext` `parasitic`.
* Use `ExecutionContext.parasitic` instead of `DirectExecutionContext`.
We no longer need the latter.
CHANGELOG_BEGIN
CHANGELOG_END
* Fix formatting.