To make `--import` work we also need to expose the
packages. Otherwise, we end up with a ton of confusing errors as soon
as you try anything. Luckily, we can do this fairly cheaply by using
the fact that GHC can expose both unit ids as well as just package
names. Until I realized that I started working on a different approach
of reading the DALFs first to resolve unversioned packages but that
seemed much more messy.
changelog_begin
changelog_end
* Remove reference to release-notes.rst
https://github.com/digital-asset/daml/pull/7458 shuffled this
around. While we could update it, it doesn’t really make any sense. We
post our release notes to the blog now and not in the docs so this
whole checkout procedure is redundant. This is also true if we wanted
to make a bugfix release for a release < 1.5 where this file still
existed. The trigger_sha is always on master (following our current
release process) so the file would still not exist.
I did also remove it from the docs cronjob. We never reupload old docs
so this doesn’t make a difference.
changelog_begin
changelog_end
* Stupid whitespace change because windows is pissing me off
changelog_begin
changelog_end
* kvutils: Document the deterministic nature of commit strategies.
* kvutils: Run the commit strategies in as parallel a fashion as possible.
Trees are faster than lists.
CHANGELOG_BEGIN
CHANGELOG_END
* kvutils: Move `serializeStateKey` into its own class.
With this PR, the profiler nicely handles the new SDefinitionRef's added in #7472.
We add labels for:
'create'
'exerciseByKey'
'fetch'
'fetchByKey'
'lookupByKey'
CHANGELOG_BEGIN
CHANGELOG_END
* add parameter information to "fall back to limit-based query with consistent results" test
* run only one test in CI, and run it a lot more
* no changelog
CHANGELOG_BEGIN
CHANGELOG_END
* considering a grouped reporter
* never mind that
* clean up the error report
* link to #7521
* remove harder testing
* Some minor improvements to the DAML Intro docs
CHANGELOG_BEGIN
CHANGELOG_END
* Intro to DAML Chapter 8
CHANGELOG_BEGIN
CHANGELOG_END
* Incorporate feedback
* Update docs/source/daml/intro/8_Upgrading.rst
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Remove wrong statements about interface files
* Complete rework to focus on dependencies, not upgrades
* Intro to DAML Chapter 9
CHANGELOG_BEGIN
CHANGELOG_END
* Apply suggestions from code review
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Make the JS code actual JS
* Update Chapter 9 to incorporate Chapter 8 changes
* Copyright headers and feedback
* Update toctree
* Get rid of warnings
* Explain `when` short circuiting.
* Fix template
* Fix some literal-includes
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* concurrent: Tag DirectExecutionContext.
1. Tag `DirectExecutionContext` as `ExecutionContext[Nothing]`, thereby
stating that it works for any tagged `Future`.
2. Move `DirectExecutionContext` to the _libs-scala/concurrent_
library, as it requires it and it's tiny.
CHANGELOG_BEGIN
CHANGELOG_END
* concurrent: Fix the privacy of `DirectExecutionContextInternal`.
Co-authored-by: Stephen Compall <stephen.compall@daml.com>
Co-authored-by: Stephen Compall <stephen.compall@daml.com>
* kvutils: Always commit serially.
Committing in parallel will cause the set of writes to be emitted in a
random order.
CHANGELOG_BEGIN
- [Integration Kit] In kvutils, the ``BatchedSubmissionValidator`` no
longer has a parameter for commit parallelism. Commits are now always
written serially to preserve order.
CHANGELOG_END
* kvutils: Sort the output state before writing.
We previously wrote the output state in a random order, leading to
writes that could not be easily compared for integrity. Sorting them
allows us to validate not just the values, but the order.
This means that the exporter no longer sorts the write set, and the
integrity checker does not sort before checking.
CHANGELOG_BEGIN
- [Integration Kit] In kvutils, state is now sorted before committing.
This allows us to provide stronger guarantees with regards to the
serialized write sets.
If you have implemented your own ``CommitStrategy``, you should also
ensure the output state is sorted before committing.
CHANGELOG_END
* ledger-on-sql: Implement SQL typeclasses as values, not functions.
Let's pretend performance is important here.
* kvutils: Allow Iterables in batching ledger state operations.
A `Map[Key, Value]` is an `Iterable[(Key, Value)]`, but not a `Seq`.
This allows us to pass a `Map` straight from the committer.
* kvutils: Construct a `SortedMap` in the commit strategy.
This should be more performant than generating and then sorting a
`Vector`.
* kvutils: Sort state updates when committing after pre-execution.
* Some minor improvements to the DAML Intro docs
CHANGELOG_BEGIN
CHANGELOG_END
* Intro to DAML Chapter 8
CHANGELOG_BEGIN
CHANGELOG_END
* Incorporate feedback
* Update docs/source/daml/intro/8_Upgrading.rst
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Remove wrong statements about interface files
* Complete rework to focus on dependencies, not upgrades
* Copyright headers and feedback
* Update toctree
* Get rid of warnings
* Fix template
* Fix tests
changelog_begin
changelog_end
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Improve the user error message if the upload-dar command fails.
In particular we want to catch the case of a gRPC timeout exception which we know can occur if the DAR is too large. But it seems helpful to catch any exception, and shows what we caught along with the helpful message.
* use safe-exceptions
Recently we have been seeing lots of issues with the Bazel cache. It
does not seem like it would need to delete things, but the issues
cropped up about the same time we restricted the permissions, so it's
worth trying to revert that.
CHANGELOG_BEGIN
CHANGELOG_END
This includes:
* Create
* ExceciseByKey
* Fetch
* FetchByKey
* LookupByKey
This change allows us to reference the code used in a template definition from another package instead of having to inline it at the use-site
CHANGELOG_BEGIN
CHANGELOG_END
In order to introduce versioning of the ledger api we
first add a central container of the version for tracking
purposes.
CHANGELOG_BEGIN
CHANGELOG_END
* Fix Numeric encoding and decoding in Scala bindings
fixes#7474
There are a few issues here:
1. We used toString which produces an exponential notation in some
cases which is not supported by the ledger API.
2. On the other hand, we used BigDecimal.exact for decoding which
isn’t completely wrong but more lax than what the ledger API supports
1 and 2 are fixed by switching to the respective functions in
daml-lf/data
3. The tests in ValueSpec were never executed! The tests are split
into a scala_library and a scala_test_suite and ValueSpec ended up in
the library. I’ve split out the utilities from the actual code.
4. The generator for Numeric produced things that are not valid
numerics (e.g. 92233720368547758070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
showed up in one test) which now fails with the more strict requirements.
changelog_begin
changelog_end
* Apply suggestions from code review
Co-authored-by: Stephen Compall <stephen.compall@daml.com>
* Address review feedback
changelog_begin
changelog_end
Co-authored-by: Stephen Compall <stephen.compall@daml.com>
* Allow speedy execution without performing authorization checks. This is a temporary measure for canton.
This is controlled by a new Speedy machine member:
/* Controls if authorization checks are performed during evaluation */
val checkAuthorization: Boolean,
The default value for `Machine.checkAuthorization` is `true`, but can be set `false` when execution is called from `Engine.reinterpret`, by passing `checkAuthorization = false` to `reinterpret`.
changelog_begin
changelog_end
* CheckAuthorizationMode
* share duplicate code for computing machine contextActors and auth
With the introduction of the standalone JAR, we cannot rely on the
assistant anymore to pass the default logback config. Users can still
override the logback config with `-Dlogback.configurationFile` if they
need something else but this provides a more sensible default logging
config than seeing a ton of debug logs from netty.
changelog_begin
changelog_end
We deprecate specifying the template when calling `daml new` via a
positional argument, as in
```sh
daml new foo skeleton
```
The new syntax is
```sh
daml new foo --template skeleton
```
Whenever the former version is used, we now print a not that it is
deprecated and that the latter version is the recommended way.
CHANGELOG_BEGIN
[DAML Assistant]
- Deprecate specifying the template for `daml new` via a positional
argument.
CHANGELOG_END
* participant-integration-api: Inject health checks into the API server.
CHANGELOG_BEGIN
- [Integration Kit] The ``StandaloneApiServer`` now takes a
``healthChecks`` parameter, which should identify the health checks to
be exposed over the gRPC Health Checking Protocol. This will
typically look something like::
healthChecks = new HealthChecks("read" -> readService, "write" -> writeService)
Integrators may also wish to expose the health of more components.
All components wishing to report their health must implement the
``ReportsHealth`` trait.
CHANGELOG_END
* sandbox + kvutils: Add the "read" component back to the health checks.
* Added Functor instance for (,,) for completeness with fst3, curry3, etc
* added missing unit tests for DA.Tuple
* Reverted Functor instance on (,,)
* fix lint expectation line numbers
* Fix line numbers
changelog_begin
changelog_end
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
- Followup to #7338, adjusting release test instructions for changes to the Java
quickstart, mismatches found testing #7462. Compare to
docs/source/app-dev/bindings-java/quickstart/template-root/daml/Main.daml for line #
references.
CHANGELOG_BEGIN
CHANGELOG_END
@S11001001 is taking care of 1.6.0-snapshot.20200922.5258.0.cd4a06db (#7462), so they get pushed back to the end of the line.
Please do not merge this before #7462.
CHANGELOG_BEGIN
CHANGELOG_END
Co-authored-by: Azure Pipelines DAML Build <support@digitalasset.com>
* Add new tests to demonstrate that authorizing checking is interleaved with execution. This work is a follow up to PR #7400, and relates to issue #132
changelog_begin
changelog_end
* naming and other small review comments
This command will be deprecated as part of the 1.6 release.
`daml build` should be used instead to build DARs.
CHANGELOG_BEGIN
[damlc]
- Deprecate `daml damlc package` command.
CHANGELOG_END
* Fixes#7451 by telling users to use `$HOME/.daml/bin` instead of `~/.daml/bin` when setting up the PATH variable.
In addition, this PR streamlines the instructions a bit by not telling users to restart their computers (they only need to restart the terminal) and by verifying the variables only after setting them both up, so they only need to restart the terminal once (without jumping around the instructions).
changelog_begin
changelog_end
* reinstate some restarts
* Emphasize that it is the Terminal app from macOS