Commit Graph

4432 Commits

Author SHA1 Message Date
Stefano Baghino
2fc2237989
Add migration test for contract key transfers (#6298)
* Add migration test for contract key transfers

Fixes #6238

changelog_begin
changelog_end

* Complete transaction verification

* Remove unnecessary bits

* Address https://github.com/digital-asset/daml/pull/6298#discussion_r439242912

* Address https://github.com/digital-asset/daml/pull/6298#discussion_r439244897

* Address https://github.com/digital-asset/daml/pull/6298#discussion_r439246799

* Address https://github.com/digital-asset/daml/pull/6298#discussion_r438779291

* Address https://github.com/digital-asset/daml/pull/6298#discussion_r438784947

* shut up buildifier

changelog_begin
changelog_end

Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
2020-06-12 12:29:27 +00:00
Remy
969b0ff2c4
LF: typo in contract ID specification (#6316)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-12 11:00:57 +00:00
Andreas Herrmann
f2cd820f42
Add data-dependencies compatibility tests (#6313)
CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Andreas Herrmann <andreas.herrmann@tweag.io>
2020-06-12 09:48:53 +02:00
Shayne Fletcher
0f47b8d1bf
Simplify findCredentials logic (#6301)
changelog_begin
changelog_end
2020-06-11 23:04:14 +00:00
Shayne Fletcher
b8126ee75c
Add --no-secret-key (#6309)
changelog_begin
changelog_end
2020-06-11 18:41:26 -04:00
Moritz Kiefer
4f486623f1
Upgrade sphinx-autobuild dependencies (#6318)
This PR upgrades the dependencies of sphinx-autobuild to address
security vulnerabilities. I tested on Linux that the docs preview
script which is the only user of sphinx-autobuild still works
correctly.

I’ve renamed default.nix to requirements.nix to match the name used by
pypi2nix (otherwise you just have to rename it ant the end which is a
bit stupid). I’ve also added a brief readme.

I would appreciate if somebody could test the docs preview script on
macos.

fixes #6317

changelog_begin
changelog_end
2020-06-11 20:56:41 +02:00
Brian Healey
f903ba70a6
Upgrade auth0 jwks-rsa version to 0.11.0 (#6218)
CHANGELOG_BEGIN
Upgrade auth0 jwks-rsa version to 0.11.0
CHANGELOG_END
2020-06-11 13:59:30 -04:00
dependabot[bot]
79837875e0
Bump pyyaml from 3.12 to 5.1 in /nix/tools/sphinx-autobuild (#3216)
Bumps [pyyaml](https://github.com/yaml/pyyaml) from 3.12 to 5.1.
- [Release notes](https://github.com/yaml/pyyaml/releases)
- [Changelog](https://github.com/yaml/pyyaml/blob/master/CHANGES)
- [Commits](https://github.com/yaml/pyyaml/compare/3.12...5.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-06-11 17:39:45 +00:00
Brian Healey
d0304fb7aa
Upgrade yarn dependencies (#6300)
* upgrade npm libraries to address security vulnerabilities

CHANGELOG_BEGIN
Address npm library versions to address potential security
vulnerabilities
CHANGELOG_END
Signed-off-by: Brian Healey <brian.healey@digitalasset.com>

* format bazel
2020-06-11 13:36:40 -04:00
Remy
5051383aca
Ledger: remove optionality of submissionSeed in TransactionMeta (#6307)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-11 17:49:59 +02:00
Moritz Kiefer
93eac7400d
Add release checklist to release instructions (#6308)
* Add release checklist to release instructions

This includes a couple of checks that internal projects have been
tested on the release candidate.

changelog_begin
changelog_end

* Update release/RELEASE.md

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

Co-authored-by: Samir Talwar <samir.talwar@digitalasset.com>
2020-06-11 16:33:43 +02:00
Moritz Kiefer
7717574d00
Bump Windows cache (#6310)
We are seeing

ERROR: D:/a/2/s/compiler/scenario-service/protos/BUILD.bazel:67:1:
output
'compiler/scenario-service/protos/_obj/scenario_service_haskell_proto/ScenarioService.o'
was not created

again so following our experiments, let’s reset the cache to see if it
fixes anything.

changelog_begin
changelog_end
2020-06-11 16:26:31 +02:00
Remy
f487b051f9
Ledger: use standard transactions in the indexer (#6297)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-11 16:12:21 +02:00
Remy
da48be2be5
LF: Make VersionedTransaction a CidContainer (#6304)
plus some minor cleanup in CidContainer

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-11 14:49:33 +02:00
Remy
b4488b7099
LF: fix contract ID length in specification (#6303)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-11 10:27:29 +02:00
Remy
cb23eb2c29
Ledger: use EventId instead of LedgerString (#6278)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-11 09:49:12 +02:00
Rohan Jacob-Rao
4b7bcc21df
Release 1.3.0 snapshot (#6294)
changelog_begin
changelog_end
2020-06-11 09:00:50 +02:00
Shayne Fletcher
07f24c0d93
Encrypt credentials (#6296)
* Encrypt credentials

changelog_begin
changelog_end

* Move key aquisition and write a big fat warning

* Only write encrypted token to DB.
2020-06-10 17:14:29 -04:00
Robert Autenrieth
ad16f563b4
Add CLI option for ledger time skew (#6287)
* Add CLI option for ledger time skew

CHANGELOG_BEGIN
- [sandbox] Added a CLI option for specifying the initial ledger time model
CHANGELOG_END

* scalafmt
2020-06-10 20:49:24 +02:00
Gary Verhaegen
9c8c1fa909
lightly safer docs cron: fail instead of error (#6288)
See @cocreature's comment on #6285.

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-10 19:18:14 +02:00
Andreas Herrmann
0544323dfc
upgrade rules_haskell (#6284)
* upgrade rules_haskell

CHANGELOG_BEGIN
CHANGELOG_END

* Use autogenerated stack_snapshot tools

* ghcide import-dirs flags

Co-authored-by: Andreas Herrmann <andreas.herrmann@tweag.io>
2020-06-10 17:21:31 +02:00
Rohan Jacob-Rao
68ff2de123
GSG: update outdated text and add a link (#6281)
* Update MessageList explanation

* Update MessageEdit description

* Link to testing guide at the end of first feature

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-10 09:49:07 -04:00
Shayne Fletcher
033c58bc60
Switch to basic auth in readiness for auth service integration (#6279)
* Switch to basic auth in readiness for auth service integration

changelog_begin
changelog_end

* Newtype for user credentials
2020-06-10 09:48:33 -04:00
Gary Verhaegen
485069f017
fix docs cron for releae notes (#6285)
Thinking about the upcoming release, I realized our current docs cron
has somehow lost the step of taking the release notes from the
triggering commit, probably in all the back-and-forth about which
release notes version to use to overwrite all the other ones.

This restores that, and adapts the algorithm for the new, multi-line
LATEST file format.

This _should_ work for all the current history, including releases made
on `release/*` branches and the unifying commit that turned the LATEST
file multiline (it adds more than one line so won't be matched as a
trigger commit).

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-10 14:43:23 +02:00
Moritz Kiefer
b8a69399e1
Release SDK 1.2.0 (#6282)
* Release SDK 1.2.0

changelog_begin
changelog_end

* Remove what’s coming section

changelog_begin
changelog_end
2020-06-10 10:36:31 +00:00
Samir Talwar
9147b33d65
release: Faster release process locally. (#6283)
* release: Compute missing deps by using one Bazel query, not many.

* release: Publish all JARs to the local Maven repository at once.

This is way, way faster than running `mvn install:install-file` in a
loop.

It works by creating a POM that instructs the `install:install-file`
plugin command to install the JARs in roughly the same way as before,
and then running `mvn initialize` once.

CHANGELOG_BEGIN
CHANGELOG_END

* release: Make the `Maven` file easier to read with less nesting.

And also more nesting.

* release: Always validate the Maven artifacts, as before.

* release: Explain `maybeMissingDeps` a little better.

* release: Delete the comment on excluding scenario and script services.

* release: Use `withCreateProcess` when calling `mvn initialize`.

* release: Build the TypeScript packages in one `bazel` call.

* release: Remove an unncessary `liftIO`.
2020-06-10 09:43:36 +00:00
Martin Huschenbett
e975730dec
damlc inspect: Add output modes with less details (#6280)
* damlc inspect: Add output modes with less details

This PR adds two new detail levels to `damlc inspect`:

* `--detail=-1` omits all package ids from the pretty printed output.
* `--detail=-2` omits all package ids, type information and kind
  annotations from the output.

We also slightly change the existing detail level `--detail=0`, which
is the default when the `--detail` flag is omitted, to make the output
more consistent:

* Kind annotations are no longer omitted when the kind is `*` (star).
* All location information is now omitted. To get location information,
  use `--detail=1`.

This is part of https://github.com/digital-asset/daml/issues/5756.

CHANGELOG_BEGIN
CHANGELOG_END

* Improve explanatory comment

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-10 08:12:07 +00:00
Moritz Kiefer
90246ded32
Remove clean --expunge again (#6275)
We manually reset all Windows nodes so this is no longer necessary.

changelog_begin
changelog_end
2020-06-10 01:23:25 +02:00
Martin Huschenbett
d75afebb8a
damlc: Avoid immediately invoked closures (#6274)
* damlc: Avoid immediately invoked closures

We add rules to the simplifier which rewrite expressions of the form
```
(\x1 ... xn -> E) A1 ... An
```
into
```
let x1 = A1 in ... let xn = An in E
```
provided that `xi` is not free in `Aj` for any `i < j`.

In cases where `E` is _not_ a lambda, this rewriting is beneficial
since it removes a costly closure allocation and the immediate entering
of the closure. If `E` is a closure itself, this rewriting is not
detrimental since the only difference it makes is that the values for
`A1, ..., An` end up in the list of captured variables rather than in
the list of already applied variables.

Even though users might not write expressions like the one we're
simplifying here themselves, various desugarings produce them
nevertheless. A common pattern is to define multiple auxiliary
functions that a only used once in a where cluase. For instance, with
the help these new rewriting rules the function
```haskell
f: Int -> Int -> Int
f x y = g (h x) y
  where
    g x y = x+y
    h x = 2*x
```
gets translated to
```
def f : Int64 -> Int64 -> Int64 =
  \(x : Int64) (y : Int64).
    let x2 : Int64 =
          let x2 : Int64 = x
          in MUL_INT64 2 x2
        y2 : Int64 = y
    in ADD_INT64 x2 y2
```
Without the simplification, `g` and `h` would each allocate a closure:
```
def f : Int64 -> Int64 -> Int64 =
  \(x : Int64) (y : Int64).
    (\(x2 : Int64) (y2 : Int64). ADD_INT64 x2 y2)
      ((\(x2 : Int64). MUL_INT64 2 x2) x)
      y
```

The `collect-authority` benchmarck is sped up by 1.03x by this change.
This is not a huge improvement but the change is simple enough to
merge it nevertheless.

CHANGELOG_BEGIN
CHANGELOG_END

* Let code speak not comments

CHANGELOG_BEGIN
CHANGELOG_END

* Improve explanations

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-09 18:07:33 +00:00
Martin Huschenbett
9f165b2196
damlc inspect: Clean up the DAML-LF pretty printer (#6277)
Clean up the DAML-LF pretty printer used by `damlc inspect` (and
others).

Most of the changes are around using `pPrintPrec` or `pPrint` instead
of `pretty` and fixing some naming inconsistencies. In many places we
now use `pPrintPrec` because I'd like to support multiple levels of
details in a follow-up PR. This requires passing the `PrettyLevel` down
the AST.

We also remove 4 leading spaces from almost every line since they cost
precious screen space and don't add any value.

This is part of https://github.com/digital-asset/daml/issues/5756.

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-09 17:51:03 +00:00
Moritz Kiefer
20d26394e1
Modify the cache URL instead of relying on platform_suffix (#6273)
For some reason, platform_suffix doesn’t seem to provide enough
isolation to fix the “undeclared inclusion” errors even though it does
fix the issues for me locally.

This PR tries to address the problem by switching from
`platform_suffix` to modifying the actual URL of the cache.

To avoid leaking stuff from the local cache, I’ve added a clean
--expunge for now. We should be able to remove this once nodes have
been reset tomorrow. It will slow down nodes but that is clearly
better than having everything fail.

changelog_begin
changelog_end
2020-06-09 17:05:19 +02:00
Remy
acdca6533a
Indexer: Fix function newRoots in TransactionConversion. (#6272)
* reduce complexity from quadratic to linear
* output node in creating order
* avoid useless allocation of GenTransaction
* make it clearer

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-09 13:41:14 +02:00
Moritz Kiefer
aac1e16794
Fix caching on Linux and MacOS (#6270)
When bumping the cache url on Windows, I accidentally also changed the
URL we push to on Linux and MacOS. This is obviously a bad idea so
this PR fixes it.

changelog_begin
changelog_end
2020-06-09 08:08:06 +00:00
Leonid Rozenberg
8bdcfec0cb
JSON API documentation fixe and clarifications. (#6179)
* Reorder sentence to clarify meaning

* Fix word ordering

* Add articles to clarify sentence.

* Fix italicize formatting

* Clarify pasting command

* A few more propositions for clarification

* Spelling and clarification nit

* More propositions for clarity

* Remove redundant words

* Fix word ordering

* More propositions

* Specification for clarity

* Remove weird transition

* Extend stars in header to match text.

Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>

* Better English

Co-authored-by: Martin Huschenbett <martin.huschenbett@posteo.me>

Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
Co-authored-by: Martin Huschenbett <martin.huschenbett@posteo.me>
2020-06-09 09:29:16 +02:00
Remy
5ff15a8ef5
DAML-LF: discriminate submitted and committed transactions (#6143)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-09 09:05:15 +02:00
Gary Verhaegen
664df64e13
fix daily perf Slack notification (#6267)
This PR fixes the Slack notification on daily perf runs. It also updates
the perf sha.

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-09 06:45:58 +00:00
Rohan Jacob-Rao
e7017e6943
Trigger service: delete from database in stop trigger (#6249)
Includes a fair amount of refactoring to smooth the logic with/without a database. All tests now run with and without a database.

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-08 16:19:35 -04:00
Shayne Fletcher
ecad4ff7c3
Fix test descriptions (#6269)
changelog_begin
changelog_end
2020-06-08 19:11:59 +00:00
Shayne Fletcher
0b7989a715
Adjust status code response for unauthorized (#6268)
changelog_begin
changelog_end
2020-06-08 18:56:43 +00:00
Remy
00972f38b5
DAML-LF: split com.daml.lf.types.Ledger (#6264)
We split the object  com.daml.lf.types.ledger in three:
- one part in `com.daml.lf.ledger.` (in //daml-lf/transaction) for the part relative to EventId (shares between scenario service and sandbox)
- one part in `com.daml.lf.ledger.` (in //daml-lf/interpreter) for the part common to Blinding and Scenario
- one part in `com.daml.lf.scenario.` (in //daml-lf/interpreter) for the part specific to Scenario

fixes #6260

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-08 17:29:10 +02:00
Moritz Kiefer
f9f216ed86
Make runner for migration tests more generic (#6266)
This factors out the parts of the migration runner that are specific
to the current test so we can easily add new tests.

Currently the postgres instance and the model DAR are shared. It’s
easy to separate that and have them be per test. I don’t have strong
feelings on what the right approach here.

changelog_begin
changelog_end
2020-06-08 17:15:33 +02:00
Moritz Kiefer
1d3c8f3390
Bump cache suffix (#6265)
* Bump cache suffix

As discussed, we are going to bump this every time we feel like
resetting the cache might help. This is a temporary measure to get
some metrics on how often things break and if resetting the cache
helps.

changelog_begin
changelog_end

* Update configure-bazel as well

changelog_begin
changelog_end
2020-06-08 17:15:12 +02:00
Gary Verhaegen
7735acb833
add sha256sums to releases (#6263)
Based on discussion on #6258.

CHANGELOG_BEGIN
CHANGELOG_END
2020-06-08 14:19:04 +00:00
Moritz Kiefer
20e299816e
Set quiet=True for z3_nix (#6259)
changelog_begin
changelog_end
2020-06-08 16:06:01 +02:00
Remy
d064ea485f
DAML-LF: factorize ScenarioNodeId and EventId (#6256)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-08 16:00:42 +02:00
Robert Autenrieth
2a4e9dcaf3
Add metric for SQL commits (#6222)
CHANGELOG_BEGIN
CHANGELOG_END
2020-06-08 13:13:37 +02:00
Andreas Herrmann
921266a926
Enable profiling builds of Cabal packages (#6240)
* Upgrade rules_haskell to latest master

changelog_begin
changelog_end

* Update rules_haskell

* Cabal: Track _p.a and .a outputs

CHANGELOG_BEGIN
CHANGELOG_END

Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
Co-authored-by: Andreas Herrmann <andreas.herrmann@tweag.io>
2020-06-08 10:03:05 +00:00
Flash Sheridan
18369053b3
Clarify signatory usage (#6204)
* Clarify signatory usage

* Address review comments

* Double backticks per review

Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>

* Update docs/source/daml/reference/templates.rst

Co-authored-by: Gerolf Seitz <gerolf.seitz@daml.com>

Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
Co-authored-by: Gerolf Seitz <gerolf.seitz@daml.com>
2020-06-08 11:34:20 +02:00
dependabot[bot]
f2d0679542
Bump websocket-extensions from 0.1.3 to 0.1.4 in /navigator/frontend (#6250)
Bumps [websocket-extensions](https://github.com/faye/websocket-extensions-node) from 0.1.3 to 0.1.4.
- [Release notes](https://github.com/faye/websocket-extensions-node/releases)
- [Changelog](https://github.com/faye/websocket-extensions-node/blob/master/CHANGELOG.md)
- [Commits](https://github.com/faye/websocket-extensions-node/compare/0.1.3...0.1.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-06-08 11:27:43 +02:00
Moritz Kiefer
5feab1b84b
Fix waitForSelector calls in create-daml-app-tests (#6253)
`waitForSelector` returns immediately if the selector is already
present (which is documented). This means that the waitForSelector
after the second follow isn’t doing anything since we already waited
for after the first follow. `waitForFunction` seemed like the simplest
solution and doesn’t require patching the HTML which is a bit finnicky
in the compat tests.

changelog_begin
changelog_end
2020-06-08 11:26:03 +02:00