Commit Graph

305 Commits

Author SHA1 Message Date
Leonid Shlyapnikov
c982478c6e Fixing quickstart-scala example and doc (#2901)
* Fixing quickstart-scala example

* Updating docs

* Adding Scala codegen config

* Minor cleanup

* Apply suggestions from code review

Applying doc changes, thanks @bame-da!

Co-Authored-By: Bernhard Elsner <40762178+bame-da@users.noreply.github.com>
2019-09-16 12:44:04 +00:00
Leonid Shlyapnikov
4a9fb1ccff
DAML assistant codegen command (#2800)
* DAML assistant codegen command, codegen config reader and docs
2019-09-12 14:23:49 -04:00
Robin Krom
41aa03c711
language: fix: missing template instances in package (#2884)
The package compiled via daml migrate was missing the actual
Upgrade/Rollback templates. This is because we used `type` instead of
`template instance` to define those templates. Also, apparently we need
to export UpgradeInstance/RollbackInstance from DA.Upgrade in the
standard library.
2019-09-11 16:05:46 +02:00
Moritz Kiefer
a58cf857d4 Release 0.13.23 (#2875)
Given how many people want the HTTP JSON API, let’s make a release
that contains the integration with the assistant.
2019-09-11 08:55:25 +00:00
Brian Healey
7131b65d8a Add QLDB to deploy docs (#2874) 2019-09-11 07:20:09 +02:00
Gary Verhaegen
5234236639
add build-options to daml.yaml (#2772) 2019-09-10 18:16:33 +02:00
Bernhard Elsner
2ae3331ba4 Roadmap update (#2866)
* Roadmap update

* Better links
2019-09-10 16:06:31 +00:00
Robin Krom
07d1930fdc
language: update of migrate docu (#2863)
The number of arguments to the migrate command changed since we don't
need a project main file anymore.
2019-09-10 16:25:15 +02:00
Martin Huschenbett
0fdf85442f
Improve UX of generic templates over Ledger API (#2779)
* Improve UX of generic templates over Ledger API

Currently, if you write
```
template Template t => Proposal t with
    receiver: Party
    asset: t
  where ...
template Iou with ...
template instance ProposalIou = Proposal Iou
```
you'll get the following DAML-LF types:
```
record Proposal t = { receiver : Party, asset : t }
record Iou = ...
record ProposalIou = { unpack : Proposal Iou }
```
The definition of `ProposalIou` is not particularly user friendly when used
over the Ledger API.

This PR changes the definition of `ProposalIou` to
```
record ProposalIou = { receiver : Party, asset : Iou }
```
Basically, the definition of `Proposal` is copied and `t` is instantiated
with `Iou`. This should make a much nicer UX.

* Update documentation

* Add test

* Fix docs examples

* Fix release notes
2019-09-10 14:38:25 +02:00
Bernhard Elsner
e6646ec8e1
Docs improvements (#2763)
* Add some disclaimers about scenarios is Sandbox

* Something on errors

* Individual let bindings per line

* Update docs/source/daml/intro/5_Restrictions.rst

Co-Authored-By: Martin Huschenbett <martin.huschenbett@posteo.me>
2019-09-10 10:15:47 +02:00
Leonid Shlyapnikov
d237040822 DAML Assistant json-api logback configuration (#2797)
* filter out exception stack traces logged at debug

* Adding logback.xml for DAML Assistant release

* Fixing readme

* Fixing readme

* Use the config file in the assistant
2019-09-09 11:13:50 +02:00
Moritz Kiefer
2e29d3c0d9
Integrate the HTTP JSON API with the assistant (#2792) 2019-09-06 15:48:15 +02:00
Moritz Kiefer
1bd2a34877
Update instructions for publishing documentation (#2757) 2019-09-05 11:57:52 +02:00
Rohan Jacob-Rao
e364375ce6
Initiate release (#2745) 2019-09-04 15:39:46 -04:00
Rohan Jacob-Rao
a8100d4d3a Basic docs for generic templates (#2731)
* Fix error in generic template example

* First cut at documenting generic templates

* Change proposal to single receiver

* Address Moritz' feedback
2019-09-03 20:55:24 +00:00
Stefano Baghino
785e41eb2c
Enable multi-node conformance testing (#2735) 2019-09-03 15:57:23 +02:00
Gerolf Seitz
4dbbdaaf52
Use (submitter, command_id, application_id) for command deduplication (#2724) 2019-09-03 10:09:01 +02:00
Robin Krom
7fca591df0
replace main file with a pointer to the source root (#2687)
* language: compile everything in the source directory

This removes the need to specify a 'main'. Instead we 'source' in
daml.yaml should point to the source root directory.
2019-08-29 13:42:33 +02:00
Martin Huschenbett
c3f394e94f
Release DAML SDK 0.13.21 (#2693) 2019-08-29 10:56:44 +02:00
Robin Krom
c1e7f0ad61
language: use generic templates for upgrades (#2605)
* language: use generic templates for upgrades

Instead of generating templates we now have generic upgrade/rollback
templates in the standart library and we just create instances of in the
migration project. I will update the documentation in a follow up PR.
2019-08-26 15:30:47 +02:00
Moritz Kiefer
dda583c659 Release 0.13.20 (#2633) 2019-08-22 14:07:33 +00:00
Robin Krom
f05c0d7e9b
langauge: leave the source argument in the docu (#2602)
Let's have the correct help text in the docu until we know what we do
about MANIFEST and know whether we can drop the SOURCE argument from the
command.
2019-08-20 15:14:40 +02:00
Ognjen Maric
c71237b4c1
Identity and package management (#2532)
* Identity and package management

* Apply suggestions from code review

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

* Bernhard's comments

* Simon's comments

* Update license

* Oh noes - I broked teh linkz!
2019-08-19 19:09:29 +02:00
Robin Krom
47238a5508
language: docu: documentation for the migrate command of damlc (#2579)
* language: docu: documentation for the migrate command of damlc

This adds a section on how to migrate between two different versions of
two packages.

* addressing martin's comments

* addressing bernhard's comments
2019-08-19 16:58:52 +02:00
Ognjen Maric
b3cf9df3c1
Ledger topologies (#2476)
* Ledger topologies: first draft

* Participant node definition

* Regroup headings

* Marcin's comments

* Second attempt after discussion with Brian H

* Change the topic order in the navigation sidebar

* Apply suggestions from code review

Co-Authored-By: Shaul Kfir <shaul-da@users.noreply.github.com>

* Shaul's/Bernhard's comments

* Clarify the interoperability statement

* Bernhard's comments
2019-08-16 10:57:23 +02:00
Robin Krom
f209950f0b
language: append the version to the output dar name by default. (#2559)
* language: append the version to the output dar name by default.

We now by default output foo-1.0.0.dar instead just foo.dar. Also the
maven coordinate default naming got removed.

* fixing integration tests and quickstart.dar occurences
2019-08-15 18:07:52 +02:00
Moritz Kiefer
3554596f9a Wait for all gRPC requests to finish before shutting down gRPC (#2551)
This fixes all flakiness in `damlc test` that I was able to
reproduce. Previously, I got it to fail in about 10% of the cases
whereas now I have successfully run tests 200 times under load without
issues.

There were two issues at play here:

1. We run scenarios in separate threads to be able to kill the running
Shake session quickly even if a scenario has an infinite loop or
something like that (there is a timeout but it’s quite long). This
could result in one of those left-over threads trying to issue a
request while we are already trying to shut down.

To fix that, we wait for the concurrency semaphore to be empty before
shutting down.

2. Just waiting for scenario executions is not quite sufficient as
`runAction` does not wait for all rules to finish (we could just use
runActionSync in `damlc test` but I’d rather make this work
properly). While we do wait for all scenario executions to finish
there is one gRPC request in offInterest that we do not wait for:
gcCtxs.

To fix this, I’ve now routed all gRPC requests through the semaphore
which means that we will also wait for these requests to finish (or
prevent them from spawning).

This makes more sense anyway as scenario executions are mostly fairly
cheap requests while things like setting up the context are expensive
so we want to limit their concurrency.

We should make the concurrency limit configurable but I’ll leave that
for a separate PR.
2019-08-15 09:39:30 +00:00
Stefano Baghino
23ba870896
Testing tips (#2505)
* Remove commented-out (and outdated) reference to the Node.js bindings

* Add tips for testing

* Update unreleased.rst

* Update docs/source/app-dev/app-arch.rst

Co-Authored-By: Gerolf Seitz <gerolf.seitz@digitalasset.com>

* Update docs/source/app-dev/app-arch.rst

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

* Update docs/source/app-dev/app-arch.rst

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

* Address https://github.com/digital-asset/daml/pull/2505#discussion_r313312041

* Address https://github.com/digital-asset/daml/pull/2505#discussion_r313312708

* Address https://github.com/digital-asset/daml/pull/2505#discussion_r313338384

* Address https://github.com/digital-asset/daml/pull/2505#discussion_r313340110
2019-08-14 18:43:49 +02:00
Richard Kapolnai
4e596362fd Fix typo in intro screenshot for archived contract (#2533)
* fix title in intro screenshot

* fix title in intro screenshot for archived contract
2019-08-14 13:59:57 +02:00
Robin Krom
caa4193810
language: docs: added package import documentation (#2518)
* language: docs: added package import documentation

This adds a chapter on DAML archives and how to import them into other
projects to the documentation.

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

Co-Authored-By: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>

* addressing comments

* removed random include in integration kit docu
2019-08-14 13:57:29 +02:00
Richard Kapolnai
4c04155a1a fix title in intro screenshot (#2526) 2019-08-14 12:52:05 +02:00
Moritz Kiefer
7f09d87933 Release 0.13.19 (#2525) 2019-08-14 08:53:04 +00:00
jordan-mittleman
bb69daa231 Update damlpatterns.tar.gz (#2403)
Code here doesn't match with what's explained/shown in documentation
2019-08-14 09:39:10 +02:00
Moritz Kiefer
ef635ea301
Mark tests that use Haskell gRPC bindings as flaky (#2521)
I’m hoping to investigate this soon but for now this should hopefully
result in less time spend restarting tests.
2019-08-13 20:38:51 +02:00
Gary Verhaegen
99ea93168d
update copyright notices (#2499) 2019-08-13 17:23:03 +01:00
Richard Kapolnai
b4a9ee914f Fix URL to daml code (#2513) 2019-08-13 13:31:04 +00:00
Remy
c2e2e007e7 Fix release notes about improper freeze of 1.6 (#2489)
* daml-lf: clean up a bit how verion are handle

* fix releases not about imporper release of #1866

* address Gerolf's comments
2019-08-13 08:10:24 +00:00
Moritz Kiefer
0c7cb171b7 Release 0.13.18 (#2447) 2019-08-07 17:13:13 +00:00
associahedron
476181e9b8 Deliver additional detail in daml deploy documentation. (#2439)
* More detail about upload-dar and allocate-parties.

* Put the two steps in the right order.
2019-08-07 11:14:46 +00:00
Moritz Kiefer
8b171e50fb Release SDK 0.13.17 (#2437) 2019-08-07 10:40:41 +00:00
associahedron
8916edef18
Adding some docs for daml deploy and daml ledger. (#2438)
* Some docs for daml deploy and daml ledger.

* Adding none in code blocks.

* Substitute*
2019-08-07 10:45:00 +01:00
Gary Verhaegen
f4fd715b44
docs typo (#2412) 2019-08-06 12:31:31 +01:00
jordan-mittleman
e056fc3e88 Update templates.rst (#2397)
It doesn't suffice for a maintainer to just be an observer
2019-08-05 16:55:01 +02:00
Remy
2d1d5fc5af daml-lf: update release notes with archive protobuf change (#2334) 2019-08-02 19:40:37 +00:00
Gary Verhaegen
6e4280fe75
correct 0.13.16 date (#2376) 2019-08-02 18:30:42 +01:00
Gary Verhaegen
ab654b621a release 0.13.16 (#2353) 2019-08-01 17:08:38 +00:00
Leonid Shlyapnikov
b940951a76
HTTP JSON API first version (#1994)
* Cleanup

* WIP

* first integration test + fixture

* minor cleanup

* Implementing ContractService.lookup

* Reverting back to endpoints.all (all2 did not work)

* Cleanup

* replace ApiValue ADT with aliases to daml-lf/transaction Value ADT

* porting rest of navigator to LF Value ADT

* Command Service WIP

* CommandService WIP

* porting more of navigator to LF Value ADT

* last error, not first

* rename ApiValueImplicits file

* special conversion features for ImmArray and FrontStack

- just .to[ImmArray] or .to[FrontStack] any random collection

* finish porting most of navigator main code

* use numeric indices for record field name fallback when pretty-printing

* tuples are not serializable

* use numeric indices for label fallback in JSON verbose encoding

* make traverseEitherStrictly more likely to preserve the seq's class

* to shortcut for ImmArraySeq .to[ImmArraySeq]

* compiling, passing navigator backend tests

* test traverseEitherStrictly more, er, strictly

* pass scalacopts through to scaladoc

* deal with unused warning

* remove unneeded function

* simpler error reporting, more private functions in ApiCodecCompressed

* move slowApply to FrontStack, test it so it actually works

* remove unneeded toStrings; better error from impossible ValueTuple case

* scalafmt FrontStackSpec

* support alternative, label-free record JSON encoding

* Adding domain.CreateCommand + corresponding json formats and dummy json format for lav1.value.Record

* CommandService.create should be done... need to test it

* TODO added

* Cleanup

* move ApiCodecCompressed, ApiValueImplicits, and some aliases to new lf-value-json package

* Using tagged TemplateId type instead of Identifier + exercise command WIP

* adapt navigator to moved pieces

* start defining scalacheck extension to ApiCodecCompressedSpec

* CommandService.exercise + introducing CommandMeta

* Adding command endpoints, can't test them yet, need lf value json formats

* fuse some list operations

- suggested by @stefanobaghino-da; thanks

* blue error message

* Minor fixes after merging librify-navigator-json-compressed, #2136

* experiment with an inductive case in TypedValueGenerators

* finish a List case for TypedValueGenerators; it's revealing

* Introducing API value to LF value converter,

CommandsValidator takes IdentifierResolverLike instead of IdentifierResolver

* cleanup

* remove accidentally readded duplicate aliases

* start tying knots in TypedValueGenerators

* verbatim copy ApiCodecCompressedSpec to lf-value-json

* shift some tests from navigator to lf-value-json

* test Optional and Map for ApiCodecCompressed

* heavier random testing of ApiCodecCompressed

* remove unused dependencies from lf-value-json

* adding value json writer

* cleanup

* Revert "cleanup"

This reverts commit 2e4d153f

* fixing the build

* cleanup

* cleaning up imports

* JsValue to API value is done, needs a test

* cleanup

* use scalac -Ypartial-unification in http-json

* simplify some Traverse instances

* factor CreateCommand and ExerciseCommand traverse instances

* Command create integration test WIP

* Command create integration test WIP, got rid of the JsonReader and JsonWriter for the values, converting values explicitly

* Extracting DomainJsonDecoder and DomainJsonEncoder

* LfV refactoring

* Create command serialize/deserialize test works

* cleanup

* resolving conflicts

* More json encode/decode tests

* logging

* command/create passes integration test now

* Adding readme

* grammar

* TODO added

* GetActiveContractsResponse encoding

* ideintifier conversion renaming

* PackageService resolveTemplateId returns domain.TemplateId now

* Resolving LF Identifier instead of Template ID, this should also work for Exercise command decoding

* cleaning up a bit

* daml-lf: show type in TypedValueGenerators-driven errors

* exercise command json encoding/decoding works

* command/exercise IOU_Transfer integration test passes now

* avoid filter for Gens; makes many contract ID gens not fail

* test ApiCodecCompressed against 100 random types, 20 random values each

* Updating README instructions

* improving error handling, failed futures, get logged and reported to the user now as 500

* [ROUTING DSL] Removing routing DSL, it did not work

* getting rid of HttpEntity.Strict match + cleanup

* fixing the merge conflict

* updating README

* use Show.shows instead of new Show

* List(_) isn't checked, but Seq(_) is slightly safer

* improving test assertions

* Adding /contracts/lookup implementation

* http-json: use ImmArraySeq instead of List; use toRightDisjuction

* http-json: .toList.toSet is shorter than fold

* http-json: replace .leftMap.map with .bimap

* http-json: use subst instead of reimplementing JsonFormat

* http-json: remove unused ExceptionHandler

* http-json: safer == comparison

* Adding two test cases for expected errors

* Adding BazelRunfiles.rlocation magic that supposed to handle windows path for bazel dependencies

* http-json: import, not extend
2019-07-29 16:49:57 -04:00
Moritz Kiefer
58bd210bcb Fix typo in quickstart docs (#2310) 2019-07-29 07:27:53 +00:00
Darko Pilav
1a84c007e5
Minor Docs fixes (#2277)
* Fix typo in README.md and stale link in CONTRIBUTING.md

* Fix minor typos in quickstart

* Fix various minor typos/mistakes in DAML Intro

* Make DAML code in quickstart-java example cleaner

Also update module hash as well as screenshots in docs
2019-07-25 16:02:42 +02:00
Robert Autenrieth
59e581ef3f
Release SDK 0.13.15 (#2286) 2019-07-25 14:52:19 +02:00