Releases: digital-asset/daml
Releases · digital-asset/daml
v0.13.24
Java codegen
- If the DAR source cannot be read, the application crashes and prints an error report.
DAML Assistant
- Java and Scala codegen is now integrated with the
assistant and distributed with the SDK. It can be run viadaml codegen
.
You can find more information in the `DAML Assistant documentation https://docs.daml.com/tools/assistant.html.
DAML Compiler
- Fix bug with qualified imports of generic templates.
Ledger
- Upgraded ledger-api server H2 Database version to 1.4.199 with stability fixes including one to the
merge
statement.
DAML Integration Kit
- One more test case added. Transaction service tests are not multi-node aware.
- Semantic tests now ensure synchronization across participants when running in a multi-node setup.
v0.13.23: Release 0.13.23 (#2875)
DAML Integration Kit
- The reference implementation can now spin up multiple nodes, either scaling
a single participant horizontally or adding new participants. Check the CLI--help
option. - The test tool now runs the double spend test on a shared contract in a
multi-node setup (as well as single-node). - The test tool can now run all semantic test in a multi-node setup.
DAML Standard Library
- BREAKING CHANGE The
(/)
operator was moved out of theFractional
typeclass into a separateDivisible
typeclass, which is now the parent class ofFractional
. TheInt
instance ofFractional
is discontinued, but there is anInt
instance ofDivisible
. This change will break projects that rely on theFractional Int
instance. To fix that, change the code to rely onDivisible Int
instead. This change will also break projects where aFractional
instance is defined. To fix that, add aDivisible
instance and move the definition of(/)
there.
DAML Assistant
- The HTTP JSON API is now integrated with the
assistant and distributed with the SDK. It can either be launched
viadaml json-api
or viadaml start
. You can find more information in the
README. - The
daml.yaml
file now supports an additional field
build-options
, which you can use to list cli options you want added to
invocations ofdaml build
anddaml ide
.
JSON API
- BREAKING CHANGE The
/contracts/search
request payload must use
"%templates"
in place of"templateIds"
to select which templates' contracts are
returned. See issue #2777.
DAML Compiler
- BREAKING CHANGE Move the DAML-LF produced by generic template instantiations closer to the surface syntax. See the documentation on How DAML types are translated to DAML-LF for details.
v0.13.22
DAML Assistant
- BREAKING CHANGE Changed the meaning of the
source
field in the daml.yaml
file to be a pointer to the source directory of the DAML code contained in a project relative to
the project root. This is breaking projects, where thesource
field of the project is pointing
to a non-toplevel location in the source code directory structure.
DAML Integration Kit
- Introduced initial support for multi-node testing. Note that for the time
being no test actually uses more than one node. - BREAKING CHANGE The
-p
/--target-port
and-h
/--host
flags have been discontinued. Pass one (or more) endpoints to test as command line arguments in the
<host>:<port>
form.
Documentation
- Basic explanation of generic templates.
Ledger API
- BREAKING CHANGE In Protobuf
Value
message, renamedecimal
field tonumeric
.
Sandbox
- Updated the PostgreSQL JDBC driver to version 42.2.6.
- Added TRACE level debugging for database operations.
- Fixed a bug that could lead to an inconsistent snapshot of active contracts being served
by the ActiveContractsService under high load. - Commands are now deduplicated based on
(submitter, application_id, command_id)
.
v0.13.21
DAML Compiler
- Enable the language extension
FlexibleContexts
by default. - BREAKING CHANGE Enable the language extension
MonoLocalBinds
by default.let
andwhere
bindings introducing polymorphic functions that are used at different types now need an explicit type annotation. Without the type annotation the type of the first use site will be inferred and use sites at different types will fail with a type mismatch error.
Java Codegen
- Fix bug that caused the generation of duplicate methods that affected sources with data constructors with type parameters that are either non-unique or not presented in the same order as in the corresponding data type declaration. See #2367.
Ledger
- H2 Database support in the Ledger API Server.
Sandbox
- The sandbox now properly sets the connection pool properties
minimumIdle
,maximumPoolSize
, andconnectionTimeout
.
v0.13.20
Documentation
- Added platform-independent tips for testing
DAML Compiler
- Some issues that caused
damlc test
to crash on shutdown have been fixed. - The DAML compiler was accidentally compiled without
optimizations on Windows. This has been fixed which should improve
the performance ofdamlc
anddaml studio
on Windows. damlc build
should no longer leak file handles so
ulimit
workarounds should no longer be necessary.- Allow more contexts in generic templates. Specifically, template constraints can
have arguments besides type variables, if the FlexibleContexts extension is enabled.
DAML-LF
- Breaking Rename
NUMERIC
back toDECIMAL
in Protobuf definition.
DAML Studio
damlc ide
now also accepts--ghc-option
arguments likedamlc build
sodamlc ide --ghc-option -W
launches the IDE with more warnings.- The VSCode extension now has a configuration field for
passing extra arguments todamlc ide
.
DAML Integration Kit
- Participant State API and kvutils was extended with support for
changing the ledger configuration. See changelog in respectivepackage.scala
files.
Sandbox
- Fixed a bug that caused the reset service to hang for 10
seconds. See issue
#2549.
Java Bindings
- The Java Codegen now supports parametrized ContractIds. See
#2258.
DAML Standard Library
- Add
stripInfix
function toDA.List
.
v0.13.19
Sandbox
- Fixed a bug that prevented the ledger from loading transactions with empty workflow ids.
- Fixed internal shutdown order to avoid dead letter warnings when
stopping Sandbox/Ledger API Server. See issue
#1886.
DAML Studio
- Added a new command for visualizing a project in the IDE.
- Print stack trace when a scenario fails.
- Various memory leaks have been fixed so long-running sessions should
no longer show a significant increase in memory usage.
DAML Compiler
- The
--project-root
option now works properly with relative paths
indaml build
. - Support generic template declarations and instances. Documentation
for generic templates is still being worked on. - The
--dump-pom
flag fromdamlc package
has been removed as
packaging has not relied on POM files for a while.
Navigator
{"None": {}}
and{"Some": value}
, where previously accepted, are no longer supported or used for DAMLOptional
values.
Instead, for simple cases, use the plain value forSome
, andnull
forNone
.
See issue #2361 for other cases.
HTTP JSON API
- A new, more intuitive JSON format for DAML values is supported.
See issue #2361.
v0.13.18
DAML Docs
- For
damlc docs
, the--template
argument now takes the path
to a Mustache template when generating Markdown, Rst, and HTML
output. The template can usetitle
andbody
variables to
control the appearance of the docs.
DAML Assistant
- Spaces in user names or other parts of file names should now be handled correctly.
- The
daml deploy
anddaml ledger
experimental commands were
added. Usedaml deploy --help
anddaml ledger --help
to find
out more about them. - Fix a bug where
daml studio
did not launch VSCode on Windows.
v0.13.16
DAML Compiler
- BREAKING CHANGE Handwritten instances of
Template
andChoice
typeclasses
are no longer supported. All template constructs must be defined using declarations
insidetemplate
syntax.
DAML Docs
- The
damlc docs
command now produces docs to a folder by default. Use the
new--combine
flag to output a single file instead. - The
damlc docs
flag--prefix
has been replaced with a--template
flag which allows for a more flexible template. - The
damlc docs
flag--json
has been dropped in favor of--format=json
.
Extractor
- BREAKING CHANGE Changed schema to accomodate removed field
ExercisedEvent#contract_creating_event_id
. Existing database schemas are
not compatible anymore with the newer version. The extractor needs to be run
on an empty schema from Ledger Begin.
Java Bindings
- Add all packages of java bindings to the javadocs. See #2280.
- BREAKING CHANGE Removed field
ExercisedEvent#contract_creating_event_id
. See #2068.
Ledger API
- BREAKING CHANGE Removed field
ExercisedEvent#contract_creating_event_id
. See #2068.
Sandbox
- The active contract service correctly serves stakeholders. See #2070.
- Added the
--maxInboundMessageSize
CLI parameter to set the maximux size
of messages received through the Ledger API. If the value is not set the
current default is preserved (4 MB). - Makes package uploads idempotent and tolerate partial duplicates. See #2130.
v0.13.15
DAML Studio
- Scenario links no longer disappear if the current file does not compile. The location is adjusted but this is done one a best effort basis and can fail if the scenario itself is modified.
DAML Compiler
- Support reading of DAML-LF 1.5 again.
Ledger API
- BREAKING: Drop support for legacy identifier. The previously deprecated field
name
inIdentifier
message is not supported anymore. Usemodule_name
andentity_name
instead.
Navigator
- Fixed an issue when Navigator console did not see any contracts.
See #2271.
Documentation
- Improved the Maven pom.xml file for
quickstart-java
to better integrate with VS Code.
See #887.
Releases
- Releases should now be announced on the releases blog.
v0.13.14
DAML Compiler
- Support reading of DAML-LF 1.5 again.
DAML Studio
VSCode scenario view improvements. Add a note in the IDE if:
- there is an open scenario view for a scenario that does no longer exist,
- there is an open scenario view for a scenario in a file that does no longer compile.