Commit Graph

5757 Commits

Author SHA1 Message Date
Andreas Herrmann
6ea3007e31
upgrade rules_nixpkgs (#8078)
changelog_begin
changelog_end

Co-authored-by: Andreas Herrmann <andreas.herrmann@tweag.io>
2020-11-30 14:36:46 +00:00
Remy
17bed0fd3b
LF: clean spec from deprecated version (#8108)
* LF: clean the spec from deprecated versions

This advances the state of #7155.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-30 15:32:57 +01:00
Kamil Bożek
012ae55d65
Engine API - multi-party submissions [KVL-703] (#8081)
* Multiple submitters field for Command

* Multiple submitters field for Engine API

* Tests for multi-party submissions in Engine

* Make use of multi-party Engine capabilities in the engine benchmark

* Enable multi-party submission in Engine's API
CHANGELOG_BEGIN
CHANGELOG_END

* Separate unit tests for multi-party engine

* Unit tests for multi-party submission transaction replay
2020-11-30 15:04:30 +01:00
Gary Verhaegen
0a1feb75ef
ts/ledger: party management API (#8104)
This PR adds TS bindings coverage for the party management methods of
the JSON API.

CHANGELOG_BEGIN

- [JavaScript Client Libraries] The Ledger object (returned by
  `useLedger` through the React bindings) has three new methods covering
  the Party management API: `getParties` allows users to, based on a
  party id (or party ids, as the name suggests) fetch more information
  about the party or check for its existence; `listKnownParties` will
  return a list of all known parties, and `allocateParty` will allocate
  a new party.

CHANGELOG_END
2020-11-30 14:42:35 +01:00
Gary Verhaegen
fe191f21ae
ts/ledger: log JSON API warnings (#8107)
CHANGELOG_BEGIN

- [JavaScript Client Libraries] Ledger interactions will now log
  warnings received from the JSON API.

CHANGELOG_END
2020-11-30 13:53:41 +01:00
Moritz Kiefer
a3f8caae28
Cleanup DAML Script over JSON API (#8105)
* Cleanup DAML Script over JSON API

changelog_begin
changelog_end

* Update daml-script/runner/src/main/scala/com/digitalasset/daml/lf/engine/script/LedgerInteraction.scala

Co-authored-by: Stephen Compall <stephen.compall@daml.com>

* Update daml-script/runner/src/main/scala/com/digitalasset/daml/lf/engine/script/LedgerInteraction.scala

Co-authored-by: Stephen Compall <stephen.compall@daml.com>

Co-authored-by: Stephen Compall <stephen.compall@daml.com>
2020-11-30 13:36:50 +01:00
Moritz Kiefer
96f58a3db1
Discover parties in navigator automatically (#8079)
This turned out to be a bit more messy than I thought it would be
unfortunately but it doesn’t seem too bad. If anyone has a better
suggestion for how to approach this, I’m all ears.

I added an integration test that checks that newly allocated parties
are picked up.

changelog_begin

- [Navigator] If no parties are in the Navigator config or daml.yaml,
  Navigator will now pick up parties from the party management
  service. Those parties are periodically refreshed.

changelog_end

Update navigator/backend/src/main/scala/com/digitalasset/navigator/Session.scala

Co-authored-by: Stephen Compall <stephen.compall@daml.com>

Co-authored-by: Stephen Compall <stephen.compall@daml.com>
2020-11-30 12:53:40 +01:00
Gerolf Seitz
74f5ecd082
kvutils: use a type ascription instead of asInstanceOf (#8103)
This doesn't override the compiler completely, but lets it tell us if
types become incompatible as part of a refactoring.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-30 12:25:47 +01:00
Sofia Faro
72e2f7d967
Update protobuf for exceptions. (#8087)
* Update proto file for exceptions

* s/CONS/MAKE

* typo

* DefException

* var is interned

* fix DefException numbers

* adjust decoding slightly

* lint

* Update scala decoder.

changelog_begin
changelog_end

* update simplifier tests

* move the MAKE up front

* suggestions

* fix pretty

* add placeholder builtin infos on scala side

* add exceptions feature on scala side

* fix typos

* forgot THROW
2020-11-30 10:42:17 +00:00
Moritz Kiefer
f4c530abc1
Exclude tests relying on 1.dev (#8100)
follow-up to #8099. If we don’t load the 1.dev dar in sandbox which is
totally sensible, we obviously also cannot run tests against it. In
newer test tool versions that’s not an issue but for older versions we
still need to exclude that one test.

changelog_begin
changelog_end
2020-11-30 09:53:59 +00:00
Moritz Kiefer
81f965fb5f
Exclude dev-dar in sandbox compatiblity tests (#8099)
By definition, dev doesn’t guarantee any kind of compatibility so
trying to load it into Sandbox can fail. somewhat surprisingly it only
started failing now which I guess shows that we haven’t changed LF too
much recently.

changelog_begin
changelog_end
2020-11-28 21:50:16 +01:00
Remy
e4869083fe
LF: drop support from deprecated LF versions. (#8083)
CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 21:33:45 +01:00
Samir Talwar
40d6fc09e3
release: Remove "plain" JARs from the release application. (#8097)
We don't use them, and they are broken anyway, because Maven demands
Javadoc JARs and our "plain" jars don't provide them.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 19:31:45 +00:00
Samir Talwar
bdc9679cf4
ledger-api: Remove unused imports from the Proto files. (#8095)
CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 17:17:21 +00:00
Samir Talwar
052f69cde9
ledger-api: Use proto_jars, and publish Protobuf sources separately from the Scala classes. [KVL-714] (#8091)
* ledger-api: Use `proto_jars`.

CHANGELOG_BEGIN
- [Ledger API] The Scala JARs containing the gRPC definitions no longer
  contain the *.proto files used to generate the ScalaPB-based classes.
CHANGELOG_END

* Create a source JAR for *.proto files in `proto_jars`.

* ledger-api: Publish the protobuf sources as "ledger-api-proto".

CHANGELOG_BEGIN
- [Ledger API] The *.proto files containing the gRPC definitions are now
  provided by a new Maven Central artifact, with the group "com.daml"
  and the artifact name "ledger-api-proto".
CHANGELOG_END

* release: We don't need the "main-jar" option.

* Bazel: Proto JARs will always have a Maven artifact suffix.

* Bazel: Simplify Protobuf source file TAR and JAR targets.

* Bazel: Extract out Protobuf functions.
2020-11-27 17:14:48 +00:00
Remy
10e360942b
LF: Optimize string validators (#8086)
String validators from com.daml.lf.data.IdString are use extensively.
This PR optimize the implementation of some of those.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 17:43:25 +01:00
Remy
cd3ace0ece
Java Codegen: refactor integration tests (#8094)
This advances the state of #7155.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 17:33:05 +01:00
Martin Huschenbett
da823c2c35
First batch of formal exception semantics (#8068)
* WIP Draft of formal exception semantics

CHANGELOG_BEGIN
CHANGELOG_END

* Make throw take an AnyException

* Don't allow templates as exceptions

* Make throw a builtin

* Pass the textual error message to to_any_exception

* Rename builtin exceptions to errors

* Rename to_any_exception in make_any_exception

* Fix typing rules for make/from_any_exception

* Add availability notes

* Fix typo
2020-11-27 16:12:32 +00:00
Robin Krom
36c267f422
added a section on extending daml models (#8093)
CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 16:03:22 +01:00
Remy
0c793790c9
LF: require type interning for 1.dev (#8069)
CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 13:20:54 +01:00
nickchapman-da
6afe9fff25
Refactor continuations for speedy machine (#8063)
* simplify interface to construct speedy continuations

move code from caller to definition

* relocate comment to the relocated code it refers to!

changelog_begin
changelog_end

* rename var: m -> machine

* relocate instrumentation print() from where KFinished is thrown, to where it is handled in run()

* revert KFinished back to an object (instead of a class taking machne); and revert back to use initialKontStack()
2020-11-27 11:56:46 +00:00
Samir Talwar
68459e60e9
Fix the paths of the files in protobufs.zip. (#8088)
Turns out the `package_dir` is not what we're looking for. Omitting it
fixes the path.

_Before:_

```
     1766  2010-01-01 00:00   protos-0.0.0/com/digitalasset/daml_lf_1_8/com/digitalasset/daml_lf_1_8/daml_lf.proto
```

_After:_

```
     1766  2010-01-01 00:00   protos-0.0.0/com/digitalasset/daml_lf_1_8/daml_lf.proto
```

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-27 11:51:22 +00:00
Samir Talwar
9976b4cd50
Bazel: Factor out logic around Protobuf JARs. [KVL-714] (#8084)
* kvutils: Use ScalaPB to generate a Scala JAR for daml_kvutils.proto.

* Bazel: Delete the unused `da_java_binary` rule, and inline `_wrap_rule`.

* Bazel: Factor out Java/Scala protobuf class generation into a helper.

CHANGELOG_BEGIN
CHANGELOG_END

* daml-lf/archive: Use `proto_jars`.

* Bazel: Remove the visibility modifier from `proto_jars`.

It's too confusing. Just make everything public.

* daml-lf/archive: Push protobuf source tarballs into `proto_jars`.

* Bazel: Add comments to the various parts of `proto_jars`.

* daml-assistant: Do unpleasant things with `location` in Bazel.
2020-11-27 08:34:53 +00:00
Remy
2b67c74d9a
LF: clean scala Decoder test. (#8077)
As requested by Martin in #8069, we extract most of the changes from
DecodeV1Spec in a separate PR.
This advances the state of #7155

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-26 16:16:27 +01:00
Remy
174ba1de30
Compiler: Clean compiler from from Exercise's actors (#8076)
This is the Haskell counterpart of #8071.
This advances the state of #7155.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-26 15:38:30 +01:00
Richard Kapolnai
de498e4b0c
Add party management service to the services page, targeting #8027. (#8075)
* Add party management service to the services page, targeting #8027.
CHANGELOG_BEGIN
CHANGELOG_END

* rephrase to make it more compact

Co-authored-by: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>

* remove unnecessary note

Co-authored-by: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>

* remove unnecessary note

Co-authored-by: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>

* remove blank line

Co-authored-by: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>
2020-11-26 14:51:08 +01:00
Oliver Seeliger
8cfe6c3744
Remove ParticipantPruningIT from compatibility exceptions (#8072)
As ParticipantPruningIT is not included by default on any ledger.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-26 14:41:19 +01:00
Remy
41543ad161
LF: drop support for Exercise's actors (#8071)
This is a first set toward dropping support of deprecated LF version
(#7155).

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-26 14:38:16 +01:00
tudor-da
0447910aa3
Increase precision for benchmarking results in integrity-checker (#8054)
* Increase precision for benchmarking results in integrity-checker

CHANGELOG_BEGIN
CHANGELOG_END

* Update ledger/participant-state/kvutils/tools/src/main/scala/ledger/participant/state/kvutils/tools/integritycheck/IntegrityChecker.scala

Co-authored-by: Samir Talwar <samir.talwar@digitalasset.com>

Co-authored-by: Samir Talwar <samir.talwar@digitalasset.com>
2020-11-26 14:21:16 +01:00
Gary Verhaegen
8dba45a478
minor docs edits (#8073)
A question on discuss prompted me to read this page, and I spotted a
couple typos.

As a side note, I find references to DAML-LF versions unhelpful. I don't
think it's fair to expect our users to know the mapping between DAML
versions and DAML-LF versions.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-26 10:57:53 +00:00
Samir Talwar
47b68bc554
participant-integration-api: Add unit tests for LedgerConfigProvider. (#8057)
* Use `WriteConfigService` in LedgerConfigProvider.

* Write unit tests for LedgerConfigProvider.

CHANGELOG_BEGIN
CHANGELOG_END

* Use explicit configurations in LedgerConfigProviderSpec.
2020-11-26 10:03:29 +00:00
Samir Talwar
7948ca36c8
Bazel: Document attaching the Java sources in IntelliJ. (#8070)
CHANGELOG_BEGIN
CHANGELOG_END
2020-11-26 09:33:18 +00:00
Robert Autenrieth
8bec837560
Support multiple submitters in kvutils protobuf [KVL-704] (#8043)
* Support multiple submitters in kvutils protobuf

CHANGELOG_BEGIN
CHANGELOG_END

* Sort submitters for the deduplication key

* Apply suggestions (style)

* Add test for command deduplication keys
2020-11-26 09:45:49 +01:00
Gary Verhaegen
3cef53135c
ci/cron: do not push artifacts to gcs bucket (#8067)
Having the cron push artifacts to GCP was really only meant to happen
once. I got distracted and worked on other things. This PR closes that
work loop such that the current state and expectations are:

- Every new release pushes to GCP as part of the release process.
- The cron only checks that the GCP backup exists and matches, but does
  not push if it doesn't.

The reason for this is we want the cron job to fail if there are
additional, unexpected files in a release, rather than automatically
commit those files for the long term.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-25 19:12:03 +01:00
Moritz Kiefer
06bec6a591
Upgrade highlight.js (#8065)
Addresses security advisory. I upgraded typedoc as well since that
pulls in the older version of highlight.js and I dont like breaking bounds.

changelog_begin
changelog_end
2020-11-25 17:23:09 +01:00
Richard Kapolnai
239f4df945
Link concepts "gRPC Ledger API" and "Ledger API" in glossary for #8029. (#8051)
* Link concepts "gRPC Ledger API" and "Ledger API" in glossary for #8029.
CHANGELOG_BEGIN
CHANGELOG_END

* remove gRPC Ledger API which was in the wrong place

* rephrase alternative names

Co-authored-by: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>

Co-authored-by: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>
2020-11-25 16:28:33 +01:00
nickchapman-da
654f5e33b6
Fix tail-calls to execute in constant space by doing early pop of temporaries stack. (#8036)
changelog_begin
changelog_end
2020-11-25 15:12:21 +00:00
Moritz Kiefer
4e39e6163b
Get lsof from dev-env (#8064)
On MacOS we don’t seem to have lsof by default which disables our
sandbox cleanup for stray instances.

changelog_begin
changelog_end
2020-11-25 14:43:37 +00:00
Gary Verhaegen
b23304c691
add default capability to macos (#5915)
This is the macOS part of #5912, which I have separated because our
macOS nodes have a different deployment process so it seemed easier to
track the deployment of the change separately.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-25 15:34:33 +01:00
Robin Krom
a0ccfdb80e
docs: improve upgrade docs (#8047)
This addresses feedback on the upgrade documentation. We switch the
example from coins to carbon certificates and add a section for the
centralized database case to make the base case clear.

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-25 15:24:57 +01:00
Kamil Bożek
ef6fdc2306
Certificate revocation checks using the OCSP [KVL-713] (#7965)
Adds TLS certificates revocation checking in the LedgerApiServer using the OCSP.

The feature is implemented by setting global JVM properties.
Integration tests for the new feature include spinning up a local OCSP responder using the openssl command.

CHANGELOG_BEGIN

- new CLI option --cert-revocation-checking for enabling the TLS certificate revocation checking in the LedgerApiServer
- documentation about the new feature

CHANGELOG_END
2020-11-25 14:28:32 +01:00
azure-pipelines[bot]
2094786ac0
rotate release duty after 1.8.0-snapshot.20201124.5709.0.dabd55d0 (#8056)
@cocreature is taking care of 1.8.0-snapshot.20201124.5709.0.dabd55d0 (#8055), so they get pushed back to the end of the line.

Please do not merge this before #8055.

CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2020-11-25 13:44:32 +01:00
Moritz Kiefer
2d3820ac14
Upgrade akka-http to 10.2 (#8058)
* Upgrade akka-http to 10.2

Follow up to #8048, I left out this upgrade to reduce noise and since
I wasn’t quite sure how involved it was going to be.

changelog_begin
changelog_end

* Reenable transparent HEAD requests

Apparently no longer on by default but we depend on this in waitForHttpServer

changelog_begin
changelog_end
2020-11-25 13:39:25 +01:00
Andreas Lochbihler
2156f946d1
kvutils reports lookupByKey inconsistencies as Inconsistent (#7914)
CHANGELOG_BEGIN
kvutils reports LookupByKey node mismatches during validation as Inconsistent
instead of Disputed if they can be due to contention on the contract key
CHANGELOG_END
2020-11-25 13:36:26 +01:00
Moritz Kiefer
037ff64e96
Bump timeout in integration tests (#8059)
changelog_begin
changelog_end
2020-11-25 10:47:01 +00:00
azure-pipelines[bot]
d8a5a0e516
release 1.8.0-snapshot.20201124.5709.0.dabd55d0 (#8055)
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.

@cocreature is in charge of this release.

CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
2020-11-25 10:24:35 +01:00
Moritz Kiefer
d83cbdb475
Upgrade akka and akka-http (#8048)
* Upgrade akka and akka-http

Was chasing an issue somewhere and thought this might affect it in
some way. It didn’t but I might as well turn the upgrade into a PR.

changelog_begin
changelog_end

* Fix trigger service tests

changelog_begin
changelog_end

* Downgrade akka-http again

changelog_begin
changelog_end

* Upgrade akka-http again and fix tests

changelog_begin
changelog_end

* Cleanup trigger service

changelog_begin
changelog_end
2020-11-25 10:13:51 +01:00
Miklos
6664794600
[kvutils] Add config key to read set [KVL-746] (#8052) 2020-11-25 10:07:21 +01:00
Robin Krom
dabd55d0b0
assistant integratin tests: speed and cleanup. (#8032)
CHANGELOG_BEGIN
CHANGELOG_END
2020-11-24 19:05:02 +01:00
Gary Verhaegen
1aadbb1d6f
ts: support GenMaps (#8040)
ts: support GenMaps

CHANGELOG_BEGIN
CHANGELOG_END
2020-11-24 17:11:53 +01:00