* Don't cache the GHC Core produced during compilation
In our experiments, this reduced the memory footprint by ca. 18% on a very
big code base.
* Adapt integration tests
* Fix integration tests
Instead of loading and deserializing the transaction, we store the
stakeholders in tables contract_signatories and contract_observers.
To avoid having to do an extra roundtrip for fetching the stakeholders,
we aggregate the parties at query time into a % separated string (% is
not a valid character for parties), which we then split again in the
application.
Fixes#2330.
* Shrink the docker image for the SDK by 57%
Wiping out the `/tmp` dir after installing the SDK does wonders.
@associahedron I wonder if we should do this in the assistant?
* Update release notes
- We now display `trace` messages so they can be used for debugging.
- I’ve removed the log message from the low-level API since it is
confusing as it is not exposed via the high-level API and somewhat
redundant since you can use `trace` for debugging. If there is a
demand for proper logging support we might want to add it back at
some point.
- We now display errors from speedy properly. This is mainly important
for calls to `error` since we previously lost the error message.
- Logging messages go through a proper logging library now and the
internal debugging stuff is only displayed at debug level so not by default.
- We log failed completions at warning level to ease debugging.
* Properly fill eventId for active contracts
This gets rid of the last remaining bit that assumes
contractId==eventId.
Fixes#65.
Contributes to #2068.
* Do not conflate eventId and contractId in the daml-lf interpreter
* Do not treat contractId as eventId in Ledger.scala
* Remember the transaction that divulged a contract.
* In this scope we can treat divulged contracts the same as disclosed ones
* revert a few more syntactical changes to make the overall diff smaller
* retain the same behavior on the scenario service api
* fix unreleased after rebase
* Add a first draft of documentation for DAML triggers
The API will still change in a bunch of ways but I’d rather get some
docs in place now and update them as we change things than not have
any docs at all.
* Fix path to daml.yaml
* s/bot/trigger/
* fix source code markers
* Fix tests
* Update docs/source/triggers/index.rst
Co-Authored-By: Andreas Herrmann <42969706+aherrmann-da@users.noreply.github.com>
* Package reload scheduler
* Cleanup
* Cleanup
* addressing code review comments, removing todo
* Actually has to be like this, reduced version caches `templateIdMap`
we don't want it cached.
* Load only new package IDs instead of reloading the entire store
Previously, we were installing the SDK as root which is probably not a
good idea. This PR adds a new `daml` user and fixes PATH (`$HOME` and
`~` both don’t work in this context).
* Fix automatic retry mechanism in scala bindings.
This fix only affects the usage of
com.digitalasset.ledger.client.binding.LedgerClientBinding#retryingConfirmedCommands
The retry mechanism didn't distinguish between submission failures and
final completion failures. Retrying completion failures with the same
commandId doesn't make sense, as the deduplication mechanism will kick
in.
The new mechanism now only retries commands with an updated LET and MRT
in case the server responds with a RESOURCE_EXHAUSTED status code (i.e.
backpressure).
Fixes#3057.
* Add UNAVAILABLE as retryable error code
* fix unreleased.rst
* hide unreferenced circe encoders
* derive an extractor-compatible lf-value-json codec
* replace circe bespoke LedgerValue enc with lf-value-json-based enc
* mixed up the encoder's string settings (boolean blindness)
* match tests to new labelless record encoding
* match tests to new Optional format, no Some/None tag
* match tests to new Map format, no Map tag
* make other extractor encoders coherent with lf-value-json formats
* remove unused circe encoders
* stray unused variable
* release note
* fix#3087's release note formatting; move SQL Extractor note down
* move SQL Extractor note down
* Add helper to Java Bindings to prepare transformator for Bot.wire. Fixes#3097
* Java bindings: rename to contractTransformer
Co-Authored-By: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Rename to transformer
Co-Authored-By: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Keep error info for invalid class
Co-Authored-By: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Add generic info to declaration
* Add test for contract tranformer
* Add license header
* Improve contractTransformer by storing reflection results
* Rename folder scala to java
* Add maven coordinates tag
* rename bazel goal back to bindings-java-tests
* integrate contract transformation test with codegen
* manual merge on unreleased.rst
* add daml model for integration testing
* Adding `domain.ArchivedContract`
* Adding `domain.Contract`
* Returning archived and active contracts from `/command/exercise`
Improving integration tests, asserting values in the response JSON
* Updating documentation
* Do not populate workflowId if it is not provided
set it to empty string (default), it is optional in the Ledger API