All Versions
31
Latest Version
Avg Release Cycle
15 days
Latest Release
645 days ago

Changelog History
Page 3

  • v0.13.41 Changes

    December 19, 2019

    DAML Ledger Integration Kit

    • ๐Ÿ‘€ Move to asynchronous package management service. ResponseMatcher is not needed and uploadPackages now returns SubmissionResult See #3806
    • ๐Ÿ›  Fix indexer crash on duplicate submission. See #3847
    • Standardize and cleanup metric names to use underscores that are compatible with Prometheus
    • StandaloneAPiServer rather than StandaloneIndexServer
    • Config class needs to be defined in ledger implementation and is no longer available from platform
    • โž• Add FailingCommandsIT and CommandSubmissionCompletion to Ledger test tool suite. Some of the tests previously part of the CommandService Ledger API Test Tool suite have been moved to a new home in CommandSubmissionCompletion to reflect the fact that those use the submission/completion workflow instead of leveraging the submit-and-wait alternatives.

    DAML Triggers - Experimental

    • ๐Ÿ”ฆ Expose timestamp in triggers.
      See #3612 <https://github.com/digital-asset/daml/issues/3612>__.

    JSON API - Experimental

    • ๐Ÿ›  Fix and document /contracts/lookup endpoint. See #3755.
    • ๐Ÿ”ฆ Expose exercise result. Changed the output
      of the /command/exercise. Note exerciseResult and contracts
      in {"status":200,"result":{"exerciseResult": ...,"contracts":[...]}.
      ๐Ÿ‘€ See #3314.

    Sandbox

    • โช Restore 0.13.38 logging behaviour.

    Navigator

    • โช Restore 0.13.38 logging behaviour.

    Extractor

    • โช Restore 0.13.38 logging behaviour.

    Internals

    • ๐Ÿ”€ As of 0.13.39, we merged a number of internal JAR files in
      the SDK tarball to reduce its size. These jars used to be standalone
      JARs you could invoke as e.g. java -jar sandbox.jar <args>. As a
      ๐Ÿ”€ result of merging the jars, they lost their individual logback.xml
      ๐Ÿ”ง configuration file. Although running the jars directly was (and is
      ๐Ÿ‘ still) not supported, note that you can now achieve the same behaviour
      ๐Ÿ”ง with e.g. java -Dlogback.configurationFile=sandbox-logback.xml -jar daml-sdk.jar sandbox <args>.

    DAML Standard Library

    • โž• Add Eq instances for AnyTemplate, AnyChoice and AnyContractKey.

    DAML Compiler

    • ๐Ÿ›  Fix an issue where transitive package dependencies
      ๐Ÿ“ฆ resulted in packages not being found, if the DAR name was changed with
      -o.

    ๐Ÿ“š Documentation

    • โž• Added documentation for authorization claims
  • v0.13.40 Changes

    December 10, 2019

    DAML Compiler

    • The modules DA.Types and GHC.Tuple from daml-prim have been
      ๐Ÿ“ฆ moved to separate DALF packages.
    • ๐Ÿ›  Fixed an issue where packages produced by damlc resulted in type
      errors during validation by DAML engine.

    Sandbox

    • The sandbox JWT authentication now respects the ledgerId and
      ๐Ÿ›ฐ participantId fields of the token payload.
    • ๐Ÿ‘Œ Improve loading of active contracts for the Sandbox SQL backend.
    • AuthService implementations can now restrict the validity of access
      tokens to a single ledger or participant.

    Java Client

    • ๐Ÿ—„ Ensure the access token is initialized when using a deprecated
      constructor.

    RxJava Bindings

    • โž• Added a method to the Bot class allowing users to specify a
      โฑ Scheduler to use for running the bot. See issue #2356.

    Java Bindings

    • โœ‚ Removed warnings in code emitted by the Java Codegen.
  • v0.13.39 Changes

    December 05, 2019

    0.13.39 - 2019-12-05

    Java Bindings

    • โž• Added authentication support. See issue #3626

    DAML Compiler

    ๐Ÿ“ฆ The modules GHC.Prim and GHC.Types from daml-prim have been moved to separate packages.

    0๏ธโƒฃ Don't make UndecidableSuperClasses a default language extension for DAML anymore. If you really need this feature for a module, you can reenable it using a LANGUAGE pragma at the top.

    DAML SDK

    โฌ‡๏ธ Reduced the size of the DAML SDK by about 60% uncompressed, 70% compressed, by deduplicating Scala dependencies.

    ๐Ÿ— daml damlc docs now takes into account the project's build-options from daml.yaml.

    daml ledger navigator now loads frontend-config.js properly.

    Navigator

    • Explicit config files passed via -c are preferred over daml.yaml.

    Ledger API Server

    โž• Add a health check endpoint conforming to the GRPC Health Checking Protocol.

    โž• Add health checks for index database connectivity.

    Participant State API / DAML Ledger Integration Kit

    • โž• Add a mandatory currentHealth() method to IndexService, ReadService and WriteService
    • allocateParty writeService implementation must return SubmissionResult

    DAML Triggers - Experimental

    • DAML triggers can now be run against an authenticated ledger.

    DAML Script - Experimental

    • โž• Add createAndExerciseCmd matching the Ledger API command of the same name.
  • v0.13.38 Changes

    November 29, 2019

    Ledger API

    • ๐Ÿ‘ Allow non-alphanumeric characters in Ledger API server participant
      ids (space, colon, hash, slash, dot). Proper fix for change
      ๐Ÿ‘€ originally attempted in v0.13.36. See issue issue
      #3327
      .
    • โž• Add healthcheck endpoints, conforming to the GRPC Health Checking
      Protocol
      .
      It is always SERVING for now.

    Ledger API Server

    • Ledger API Server and Indexer now accept an instance of
      MetricRegistry as parameters. This gives implementors of ledger
      integrations the most flexibility to set up metrics reporting that
      works best for them.
    • โž• Add various metrics to track gRPC requests, command submissions, and
      โšก๏ธ state update processing. See
      #3513.

    DAML Ledger Integration Kit

    • โž• Add conformance test coverage for the grpc.health.v1.Health
      service.
    • โž• Add Ledger API Test Tool [--load-scale-factor]{.title-ref} option
      โœ… that allows dialing up or down the workload applied by scale tests
      (such as the TransactionScaleIT suite). This allows improving the
      ๐ŸŽ performance of different ledger over time.
    • โœ… The Ledger API Test Tool no longer shows individual test duration
      colored based on how long they lasted.

    Sandbox

    • โž• Add support for JWT tokens that only authorize to read data, but not
      to act on the ledger.
    • โž• Add CLI options to start the sandbox with JWT based authentication
      ๐Ÿ‘€ with RSA signed tokens. See issue
      #3155
      .
    • The --auth-jwt-hs256 CLI option is renamed to
      --auth-jwt-hs256-unsafe: you are advised to _not use this JWT
      token signing way in a production environment.

    Navigator

    • ๐Ÿ›  Fixed a bug where the --access-token-file option did not work
      correctly.

    DAML Compiler

    • ๐Ÿ›  Bugfix: The Sdk-Version field in a DAR manifest file now matches
      the SDK version of the compiler, not the sdk-version field from
      daml.yaml. These are usually the same, but they could be different
      if you set the DAML_SDK_VERSION environment variable before
      ๐Ÿ— running daml init or daml build.
    • ๐Ÿ‘‰ Make the experimental feature "generic templates" unavailable. The
      current implementation is at odds with other, more important
      language features still under development.

    DAML Studio

    • ๐Ÿ”” Notify users about new DAML Driven blog posts.

    Java Bindings

    • ๐Ÿ—„ Deprecated existing constructors for DamlLedgerClient, please use
      ๐Ÿ— the static newBuilder method to instantiate a builder and use it
      to create the client, starting from either a NettyChannelBuilder
      or a plain host/port pair.
    • ๐Ÿ“‡ Rename DamlMap to DamlTextMap.
    • ๐Ÿ— DamlCollectors class provides Collectors to build more easily
      DamlList and DamlTextMap.
    • ๐Ÿ”„ Change the recommended method to convert DamlValue containers
      ๐Ÿ‘€ from/to Java Bindings containers. See https://docs.daml.com/0.13.38/app-dev/bindings-java/codegen.html for more details the new methodology.

    DAML-LF Interface Reader

    • ๐Ÿ“‡ Rename PrimTypeMap to PrimTypeTextMap and PrimType.Map to
      PrimType.TextMap

    JSON API - Experimental

    • ๐Ÿ“ฆ Accept a path to a file containing a token at startup for package
      ๐Ÿ‘€ retrieval. See issue
      #3627
      .

    DAML Triggers - Experimental

    • DAML Triggers now allow you to specify which templates you want to
      ๐ŸŽ listen for. This can improve performance.

    DAML Script - Experimental

    • DAML Script can now run be used in distributed topologies.
    • ๐Ÿ”ฆ Expose the Ledger API exerciseByKey command
  • v0.13.37 Changes

    November 20, 2019

    DAML Stdlib

    • โž• Added the NumericScale typeclass, which improves the type inference for Numeric literals, and helps catch the creation of out-of-bound Numerics earlier in the compilation process.
    • fromAnyChoice and fromAnyContractKey now take
      the template type into account.

    Navigator

    • ๐Ÿ›  Fixed a bug where Navigator becomes unresponsive if the ledger does not contain any DAML packages.

    Ledger-API

    • โž• Add field gen_map in Protobuf definition for ledger
      ๐Ÿ‘ api values. This field is used to support generic maps, an new
      ๐Ÿ”‹ feature currently in development. See issue #2256 for more details
      about generic maps.
      The Ledger API will send no messages where this field is set, when
      using a stable version of DAML-LF. However the addition of this
      โš  field may cause pattern-matching exhaustive warnings in the code of
      โš  ledger API clients. Those warnings can be safely ignored until
      GenMap is made stable in an upcoming version of DAML-LF.

    Extractor

    • The app can now work against a Ledger API server that requires client authentication.
      ๐Ÿ‘€ See issue #3157.

    DAML Compiler

    • ๐Ÿ’ฅ Breaking The default DAML-LF version is now 1.7. You can still
      ๐Ÿ— produce DAML-LF 1.6 by passing --target=1.6 to daml build. This removes the Decimal type in favor of a Numeric s type with a flexible scale. Decimal is now a synonym for
      Numeric 10. If you get errors about ambigous literals, you might
      need to add a type annotation, e.g., replace 1.0 by (1.0 : Decimal).

    JSON API - Experimental

    • ๐Ÿ”ง CLI configuration to enable serving static content as part of the JSON API daemon:
      --static-content "directory=/full/path,prefix=static"
      ๐Ÿš€ This configuration is NOT recommended for production deployment. See issue #2782.
    • The database schema has changed; if using
      --query-store-jdbc-config, you must rebuild the database by adding
      ,createSchema=true.
      ๐Ÿ‘€ See issue #3461.
    • ๐Ÿ‘€ Terminate process immediately after creating schema. See issue #3386.

    DAML Triggers - Experimental

    • emitCommands now accepts an additional argument
      that allows you to mark contracts as pending. Those contracts will
      be automatically filtered from the result of getContracts until
      we receive the corresponding completion/transaction.

    DAML Script - Experimental

    • ๐Ÿš€ This release contains a first version of an experimental DAML script
      ๐Ÿ”‹ feature that provides a scenario-like API that is run against an actual ledger.
  • v0.13.36 Changes

    November 14, 2019

    DAML Compiler

    • ๐Ÿ‘Œ Support for incremental builds in daml build using the --incremental=yes flag.
      0๏ธโƒฃ This is still experimental and disabled by default but will become enabled by default in the future.
      On large codebases, this can significantly improve compile times and reduce memory usage.
    • ๐Ÿ‘Œ Support for data dependencies on packages compiled with an older SDK
      ๐Ÿ“ฆ (experimental). To import data dependencies, list the packages under the data-dependencies
      stanza in the project's daml.yaml file.

    DAML Stdlib

    • maintainer function that will give you the list of maintainers of a contract key.

    Sandbox

    • โž• Add the option to start the sandbox with JWT based authentication. See issue #3363.
    • ๐Ÿ›  Fixed a bug in the SQL backend that caused the database to be flooded with requests when streaming out transactions.
    • ๐Ÿ›  Fix divulged contract visibility in multi-participant environments. See issue #3351.
    • ๐Ÿ”ง Enable the ability to configure ledger api servers with a time service (for test purposes only).
    • ๐Ÿ‘ Allow a ledger api server to share the DAML engine with the DAML-on-X participant node for performance. See issue #2975.
    • ๐Ÿ‘ Allow non-alphanumeric characters in ledger api server participant ids (space, colon, hash, slash, dot).
    • ๐ŸŒฒ Include SQL statement type in ledger api server logging of SQL errors.

    DAML Triggers

    • โž• Added exerciseByKeyCmd and dedupExerciseByKey to exercise a choice given the contract key instead of the contract id.
    • getTemplates has been renamed to getContracts to describe its behavior more accurately.
      ๐Ÿš€ getTemplates still exists as a compatiblity helper but it is deprecated and will be removed in a future SDK release.
    • ๐Ÿ›  Fix a bug where the use of Numeric caused triggers to crash with an assertion error.

    JSON API - Experimental

    • ๐Ÿ›  Fix to support Archive choice. See issue #3219
    • ๐Ÿ‘€ Implement replay on database consistency violation, See issue #3387.
    • ๐Ÿ‘€ Comparison/range queries supported. See issue #2780.

    Extractor - Experimental

    • ๐Ÿ›  Fix bug in reading TLS parameters.
  • v0.13.34 Changes

    November 07, 2019

    DAML-LF - Internal

    ๐Ÿ‘€ Freeze DAML-LF 1.7. Summary of changes (See DAML-LF specification for more details.):

    • Add support for parametrically scaled Numeric type.
    • Drop support of Decimal in favor or Numerics.
    • Add interning of strings and names. This reduces drastically dar file size.
    • Add support for 'Any' type.

    - Add support for type representation values.

    โž• Add immutable bintray/maven packages for handling DAML-LF archive up to version 1.7:

    com.digitalasset.daml-lf-1.7-archive-proto

    ๐Ÿ“ฆ This package contains the archive protobuf definitions as they
    were introduced when 1.7 was frozen. These definitions can be
    ๐Ÿ‘‰ used to read DAML-LF archives up to version 1.7.

    DAML Triggers

    • ๐Ÿ— Triggers must now be compiled with daml build --target 1.7 instead of 1.dev.
  • v0.13.33 Changes

    November 07, 2019

    Navigator

    • ๐Ÿ›  Fixed regression in Navigator to properly respect the CLI option --ledger-api-inbound-message-size-max again. See issue #3301.

    DAML Compiler

    • โฌ‡๏ธ Reduce the memory footprint of the IDE and the command line tools (ca. 18% in our experiments).
    • ๐Ÿ›  Fix compile error caused by instantiating generic templates at Numeric n.
    • The compiler now accepts single-constructor enum types. For example data A = A or data Foo = Bar.

    DAML Triggers

    • โž• Add dedupCreate and dedupExercise helpers that will only send
      commands if they are not already in flight.
    • โœ‚ Remove the custom AbsoluteContractId type in favor of the regular ContractId type used in DAML templates.

    Sandbox

    • ๐Ÿ›  Fixed a bug a database migration script for Sandbox on Postgres introduced in SDK 0.13.32. See issue #3284.
    • ๐Ÿ”Š Timing about database operations are now exposed over JMX as well as via the logs.
    • โž• Added a missing index to the SQL schema for the Postgres Ledger.

    DAML Integration Kit

    • ๐Ÿ“š Re-add :doc:integration kit documentation </daml-integration-kit/index> that got accidentally deleted.

    Ledger API

    • ๐Ÿ‘€ Disallow empty commands. See issue #592.

    DAML Stdlib

    • โž• Add DA.TextMap.filter and DA.Next.Map.filter.
    • โž• Add assertEq and assertNotEq to DA.Assert as synonyms for === and =/=.
    • Add DA.Foldable.mapA_, DA.Foldable.forA_, DA.Foldable.sequence_ and DA.Action.replicateA_. These functions match the behavior of corresponding functions without the underscore suffix but ignore the result which can be more convenient and efficient.

    Extractor - Experimental

    • ๐Ÿ‘€ Extractor now stores exercise events in the single table data format. See issue #3274.

    JSON API - Experimental

    • workflowId no longer included in any responses.
    • /contracts/search endpoint can optionally store searched
      contracts in a Postgres-based cache, by passing the new --query-store-jdbc-config option.
      ๐Ÿ‘€ See issue #2781.

    DAML SDK

    • ๐Ÿš€ Display release notes in the IDE when the DAML extension is upgraded.
  • v0.13.32 Changes

    October 29, 2019

    DAML Triggers

    • ๐Ÿ‘ The trigger runner now supports triggers using the high-level API directly. These no longer need to be converted to low-level Triggers using runTrigger. Triggers using the low-level API are still supported.
    • The trigger runner has a new command that just lists the triggers in
      a dar using daml trigger list --dar path/to/dar.

    DAML Compiler

    • ๐Ÿ“ฆ The package database is now be cleaned automatically on initialization.
      โฌ†๏ธ This means that you should no longer have to run daml clean on SDK upgrades
      if you use DAR dependencies (e.g. with DAML triggers).

    Sandbox

    • ๐Ÿ‘Œ Improve performance of looking up contracts from postgres. See issue #2330.
  • v0.13.31 Changes

    October 18, 2019

    Sandbox

    • ๐Ÿ‘€ Party management fix, see issue #3177.
    • ๐Ÿ”ง The maximum allowed TTL for commands is now configurable via the --max-ttl-seconds parameter, for example: daml sandbox --max-ttl-seconds 300.
    • ๐Ÿ›  Fixed a bug where CreatedEvent#event_id field is not properly filled by ActiveContractsService.
      ๐Ÿ‘€ See issue #65.

    DAML SDK

    • ๐Ÿณ Shrink docker image containing the full DAML SDK from 2.8 GB to 1.2 GB.

    Navigator

    • ๐Ÿ‘€ Accept and use an access token to be used against Ledger API servers that require authentication, see issue #3156.
    • ๐Ÿšš Demo-oriented password workflow has been removed.

    Scala Bindings

    • ๐Ÿ”ฆ Expose new method to construct channels for more granular control over the client creation process.

    JSON API - Experimental

    • โž• Add /parties endpoint.

    DAML Triggers - Experimental

    • ๐Ÿ”Š The trigger runner now logs output from trace, error and
      failed command completions and hides internal debugging output.

    DAML-LF - Internal

    • ๐Ÿ”„ Changed the name of the bintray/maven package from com.digitalasset.daml-lf-archive-scala to com.digitalasset.daml-lf-archive-reader