* Add a prototype for DAML Script dumps
This is still fairly rough unfortunately but it does at least have
some tests and it doesn’t interact with anything else, so hopefully we
can land this and then parallelize the work from there on.
changelog_begin
changelog_end
* Update daml-script/dump/src/main/scala/com/daml/script/dump/Encode.scala
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* view all the things
changelog_begin
changelog_end
* Update daml-script/dump/src/main/scala/com/daml/script/dump/Dependencies.scala
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Fixup the switch to exists
changelog_begin
changelog_end
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* ledger-on-memory: Rename `PreExecutingOwner` to just `Owner`.
* ledger-on-memory: Push the committer execution context up a little.
* ledger-on-memory: Use pre-execution in tests, not batching.
* ledger-on-memory: Remove support for batching submissions.
Pre-execution is pretty much always faster; let's use it.
CHANGELOG_BEGIN
CHANGELOG_END
* ledger-on-memory: Simplify construction.
Now we only support pre-execution, we can be less general.
We update ghcide, which enables cached goto definitions that keep
working when the document doesn't compile anymore. This also adds a test
to lsp-tests for this feature.
CHANGELOG_BEGIN
CHANGELOG_END
* kvutils: Extract out a `WriteSetSelector`.
We want to replace this with one that's always successful in the
integrity checker.
* integrity-checker: Better logging when the write sets are different.
* integrity-checker: Switch to pre-execution.
The batching support is still there for now, just unused.
Tests are now run using pre-execution exports.
CHANGELOG_BEGIN
CHANGELOG_END
* integrity-checker: Attempt to fix the Scala 2.13 build.
* integrity-checker: Improve comments.
Co-authored-by: Fabio Tudone <fabio.tudone@digitalasset.com>
* kvutils: Rename a couple of parameters.
* integrity-checker: Pull out write set comparison functions into a class.
And move all the tests to its test class.
* integrity-checker: Fix logging output.
We don't need all those DEBUG logs.
* integrity-checker: Add tests for pre-execution committing.
* integrity-checker: Be friendly towards Windows newlines in tests.
Co-authored-by: Fabio Tudone <fabio.tudone@digitalasset.com>
This is spun off from #7934 for ease of review.
For now, all of this is hidden (and for extra caution also marked as
early access). I expect we’ll tweak the API in a bunch of ways before
marking it stable but this at least is sufficient for the prototype.
At this point, we cannot support this over the JSON API. Not too
worried about that at least for now.
fixes#7847
changelog_begin
changelog_end
At the very least this should produce better error messages and at
least on my machine it does reduce flakiness significantly by bumping
the timeout and increasing Bazel’s resource allocation (and thereby
reducing parallel runs).
Unfortunately, a proper fix here is much more involved than I have
time for right now.
changelog_begin
changelog_end
It relies on a Bintray URL, which is likely to break soon as Bintray
sunsets.
It's also not been referenced by anything in this repo since at least
open-sourcing, so the value it provides seems low. There's no
documentation of why it's here and what its planned usage was, but based
on the [project page](https://github.com/jeremylong/DependencyCheck) I
imagine it's been supplanted by BlackDuck now.
CHANGELOG_BEGIN
CHANGELOG_END
* integrity-checker: Actually log the error, and fail.
Previously, we were just logging "FAIL" and exiting with a status code
of 0, which is not great.
* integrity-checker: Move the commit logic into the support class.
CHANGELOG_BEGIN
CHANGELOG_END
* integrity-checker: Run with `exec` to get rid of a bash instance.
* integrity-checker: Throw away the write set instead of clearing it.
Adds a timestamp when a payload signature has been verified.
This ensures that multiple commands sharing the same identifier can still be
told apart thanks to the signature.
changelog_begin
changelog_end
For various reasons, my attempts at improving the cache cleanup process
have been delayed. There are, however, two simple, non-controversial
changes I can "backport" without having to wait for consensus on the
whole thing:
1. Increase the threshold. At least for the compat jobs, we have seen
builds failing after starting with ~32GB free.
2. Kill dangling Bazel processes, which keep some files open and
sometimes cause the clean-up process to crash.
CHANGELOG_BEGIN
CHANGELOG_END
The report currently chokes on quotes in the commit message (see
550aa48fc5). Rather than trying to
correctly excape things in Bash, this PR delegates the quote handling to
jq, because having to deal with Bash embedded in YAML is hard enough.
CHANGELOG_BEGIN
CHANGELOG_END
* kvutils: Trust the pre-execution output with the state.
If we're out of bounds, the state will be empty; we don't need to force
it in the finalizer.
* kvutils: Move pre-execution write set selection into the committer.
There's really only one way to do it.
* kvutils: Split `LedgerStateOperations` into read and write sides.
* kvutils: Write pre-executed write sets to an export on demand.
CHANGELOG_BEGIN
CHANGELOG_END
* DLint: Disable "Redundant pure" lint by default
When using `ApplicativeDo`, e.g. in Daml Scripts, a final pure might be
necessary although it would be redundant in a monadic context. This
leads to spurious warnings from the linter which I found quite
confusing.
CHANGELOG_BEGIN
CHANGELOG_END
* Adjust tests
CHANGELOG_BEGIN
CHANGELOG_END
@hurryabit is taking care of 1.10.0-snapshot.20210202.6218.0.c0573678 (#8724), so they get pushed back to the end of the line.
Please do not merge this before #8724.
CHANGELOG_BEGIN
CHANGELOG_END
Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
When run with --diff, fmt.sh now only checks for the .java files that have been
changed since the fork point. This makes local git pre-push hooks more quiet
while preserving the safe CI behavior (which doesn't use --diff).
changelog_begin
changelog_end
We’ve seen a number of "resource vanished (connection reset by peer)"
errors. Slapping some retries on that should hopefully make the CI job
a bit more robust.
changelog_begin
changelog_end
The jdkLogHandler provided by Doobie exists purely as an example and the library
itself does not recommend using it in production.
Note that this slightly changes the runtime behavior, logging successful queries
at debug level rather then info. The message itself is preserved from the original
MIT-licensed example.
This uses Slf4j as most of our components, instead of java.util.logging.
changelog_begin
[HTTP JSON API] The server now logs successful queries at debug level
instead of info
[Trigger Service] The server now logs successful queries at debug level
instead of info
changelog_end
This PR has been created by a script, which is not very smart and does not have all the context. Please do double-check that the version prefix is correct before merging.
@hurryabit is in charge of this release.
CHANGELOG_BEGIN
CHANGELOG_END
Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
This doesn't seem to improve performance much (probably because the
real bottleneck is elsewhere), but at the very least it's not necessary.
CHANGELOG_BEGIN
CHANGELOG_END
changelog_begin
changelog_end
The current behavior is that of creating a new preload executor at every call,
which is a very complex way of simply spawning a thread and defeats the purpose
of having a shared executor, sequencing the pre-loading of packages to maximize
the usage of cache (among other things).
This updates the daml-ghcide dependency and also adds a test to check
that we are not showing any internal symbols and dependencies in the
outline in daml studio.
CHANGELOG_BEGIN
CHANGELOG_END
* Review signed payload repository
A few improvements made as part of https://github.com/digital-asset/daml/issues/8634.
- revised signed payload repository to hold more relevant data on the signed payload
- more specific types when handling bytes and strings
changelog_begin
changelog_end
* Limit access of proxy to signed payload repository
* Address https://github.com/digital-asset/daml/pull/8709#discussion_r568395864
* Remove unused type parameter from NonRepudiationProxy.owner method
* [DPP-142] Explicitly deflate/inflate data outside of the index
* [DPP-142] Explicitly deflate/inflate data outside of the index - review fixes - exposing prepare update parallelism as param
changelog_begin
[Integration Kit] Compression and decompression of stored DAML-LF values
is now executed outside of the index database, allowing to make more
efficient use of the participant resources when indexing.
changelog_end
We can’t upgrade to the latest version 1.35.0 since it depends on a
newer version of Bazel but we can at least go to 1.34.1. We also have
to patch absl and grpc itself to fix mingw support and some undeclared
inclusions on Windows. Both patches are taken from upstream PRs (the
mingw one has not been merged yet).
There is also a small patch to grpc-haskell-core. I’ve started working
on upstreaming that but the nix build system is a mess and I haven’t
quite managed to get it working there.
changelog_begin
changelog_end
CHANGELOG_BEGIN
- Changed index method type back to B-Tree from Hash for: participant_events_template_id_idx, participant_events_contract_id_idx indices of participant_events table
CHANGELOG_END
Details are in the comments but this seems to workaround the annoying
tls issues we have been dealing with for the past few days.
changelog_begin
changelog_end
* participant-integration-api: Fix a RecoveringIndexerSpec flake.
Sometimes the log lines don't come in quite the same order, and that's
OK.
* participant-integration-api: Use the Akka EC to recover the indexer.
Using the DirectExecutionContext opens us up to abusing a random EC,
sometimes with big delays. Using the Akka EC is not quite ideal, but
still means that we know that we're not hogging an entire pool by
accident.
CHANGELOG_BEGIN
CHANGELOG_END
* participant-integration-api: Fix the RecoveringIndexerSpec for good.
We can fix it by filtering out the floating log line, instead of
guessing where it will end up.
We add a test to check that there are no internal imports returned by
the `getDocumentSymbols` endpoint for an empty module.
CHANGELOG_BEGIN
CHANGELOG_END