* Add resolution via artifactory, handle HTTP errors
* Replace origin with wrapErr in resolveReleaseVersionUnsafe
* Handle broken connections (e.g. no internet)
* drop comment, fix foldMap id to fold
* remove debugging writeFile calls
run-all-tests: true
* Rename partial field damlPath to damlPathUnsafe and add safe function
* support multiple possible installation locations
* update alternatives
* Wrap CouldNotResolveReleaseVersion into AssistantError in unsafe resolve
* update canton to 20240122.12366.0.v932e06e9/3.0.0-snapshot.20240122.12366.0.v932e06e9
tell-slack: canton
* fix canton/BUILD.bazel
* fix the bootstrap scripts of the integration tests
---------
Co-authored-by: Azure Pipelines Daml Build <support@digitalasset.com>
Co-authored-by: Paul Brauner <paul.brauner@digitalasset.com>
* Rename canton-3x to canton
* fix build
* fix BuildInfo for canton 3
* add reference drivers as a runtime dep to community_domain
* target 2.1 in interface-choices-valid
* run damlc integration tests with LF2
* fix the repl tests
* fix repl-functests
* fix package manager test
* disable V1 scala integration tests
* port the scala canton fixture to canton3
* fix JsonApiIt, using sleeps :/
* fix test-daml-packages and test-daml-ledger under //daml-assistant/daml-helper
* fix integration tests
* fix QuickstartTest.hs
* fix //daml-script/export/integration-tests/reproduces-transactions:test
* fix //daml-script/runner:tests
* fix Daml3ScriptDevIT
* fix Daml2ScriptTestRunner
* remove sleeps in functests now that a delay has been added to daml3-script's allocateParty
* fix //language-support/java/codegen:ledger-tests
* fix ScalaCodeGenIT
* remove useless sleep
* fix //language-support/ts/codegen/tests:build-and-lint-test
* remove redundant sleep and fix daml script
* fix //daml-assistant/daml-helper:test-tls
* fix CommandClientIT
* fix //daml-assistant/daml-helper:test-deployment
* Remove duplicate contract key test: not supported by canton 3.
run-all-tests: true
* fix //language-support/hs/bindings:test
run-all-tests: true
* small cleanups
run-all-tests: true
* clean up and fix compat tests
* fix build after rebase
run-full-compat: true
run-all-tests: true
* Remove //:sdk-version-hs-lib
* Add //sdk-version/hs:sdk-version-{class-,}lib
* Use //sdk-version/hs:sdk-version-{class-,}lib instead of //:sdk-version-hs-lib
* Fix //daml-assistant/daml-helper:test-deployment
* Fix da-hs-base.cabal
* Fix daml-project-config.cabal
* Move DA.Service.Logger.Impl.GCP out of da-hs-base
This means that da-hs-base no longer depends on sdk-version-class-lib, so users of the cabal file don't need to make any changes
* Move version data types out of daml-project-config
* Now //sdk-version/hs:sdk-version-class-lib depends on //libs-haskell/da-version-types
* back to the past (fmt.sh)
* yarn.lock changes to appease fmt.sh
* Also test LF v2 in //compiler/damlc/tests:script-service
* move setEnv TASTY_NUM_THREADS outside of defaultMain
* Track end of cleanup in withResourceCps
* add an lf-major-version flag to the repl service and pass it from the haskell client
* test LF2 in the daml-repl tests
* formatting
* formatting
* remove obsolete TODO
* fix //compiler/damlc/tests:repl
* port repl-functests to LF v2
* do not assume that LFV2 => dev
* address Moises' comments
* Add warnings to Gamma
* Warn instead of error for changed template expressions
* lint
* Errors and warnings for key types
* add context to warnings where relevant
* Add warning logic to DamlcUpgrades, fix errors that are now warnings
* Add tests for key errors and warnings (signatories, expression, type)
* Refactor expression extraction, fix extract key expression/maintainers
* satisfy lint, trigger test restart
* Test error for dropped key and warning for added key
* Warn for extraction issue instead of erroring out
* Change `cannot change` error-wording with `has changed` warning-wording
* comments for extractors
* replace community canton snapshot with our bazel-built canton deploy jar
* add VERSION to the resources of the jar
* fix canton-test-runner-with-dependencies-script
* add resources to community_common
* Update test-common/canton/it-lib/src/main/com/daml/CantonFixture.scala
Co-authored-by: Remy <remy.haemmerle@daml.com>
---------
Co-authored-by: Remy <remy.haemmerle@daml.com>
* first example
* remove reliance on NameMap in del/existing/new logic
* Add testing for upgrades typechecking in `daml damlc build`
* lint
* add typecheck-upgrades flag
* rename Foo to MyLib
* Add missing field to PackageConfigFields
* Add reasonable context location for upgrade errors
Staging last changes before I leave for CX for some time.
* fix quoting for windows paths
* Check template choices specifically
* Refactor to have signatory etc. checks, improve choice/template check
* Check return types of choices
* Update DamlcUpgrades for new versions
* Check for deleted top level datatypes, add TODO for type check
Also add type signatures to some helpers
* Add tests for templates as input and outputs of choices
* lint
* Move upgrading error variants into own UpgradeError type
* Improve comment for choice input type invariant
* Replace TemplateChoiceOutput with shouldCheck
* Set 'optDetailLevel = PrettyLevel (-1)' in integration tests
This means we don't need to postprocess the damlc output to remove package ids
* Move stable type constructors to DA.Daml.StablePackages
* Don't use 'rewriteStableQualified' for Tuples in LFConversion
* Don't use 'rewriteStableQualified' for DA.Internal.Erased.Erased in LFConversion
* Don't use 'rewriteStableQualified' for DA.Internal.PromotedText.PromotedText in LFConversion
* update StablePackages comment
* Future-proof renderFeatureVersionReq
* initial commit
* split gen-stable-packages-v_i into two targets
* rename compatibleWith to canDependOn
* update damlc integration tests annotation to allow for 2.x
* use the right package ID for preconditionFailed when compiling to V2
* fuse stable-packages-v1 and stable-packages-v2 into one single filegroup
* Fix DA.Daml.LF.Ast.Tests
* remove leftover 'undefined' in Version.hs
* progress on fixing DataDependencies.hs
* fix Cross-SDK typeclasses test for 2.dev
* Fix the 'Typeclasses and instances' data dependency test
* Update comment
* fix //compiler/damlc/tests:packaging
* Add TODO
* parameterize the machine by the langage version, hardcode v1 in script v2, v2 in script v2, v1 in exports
* get EngineTests to pass
* fix more tests
* fix canton integration tests
* formatting
* fix more tests
* fix transactionversiontest
* fix exceptiontest
* Fix ValueEnricherSpec
* Fix EngineInfoTest
* fix PartialTransactionSpec
* fix upgragetest
* fix TransactionSnapshot
* Fix ContractKeySpec
* Fix ReinterpretTest
* fix InterfaceViewSpec
* fix InterfacesTest
* fix stable package v1 names
* fix validate.sh tests
* formatting
* Fix ChoiceAuthorityTest
* fix explicit disclosure test
* Fix SpeedyTest
* formatting
* Fix integration test
* fix data dependency tests
* fix package vetting count, increased due to metadata being added
* Redact stable package IDs in error messages in order for the ExceptionSemantics test to work for both v1 and v2
* cleanup
* fix Daml2ScriptTestRunner
* fix JsonApiIT and daml-script golden tests
* fix daml3-script runner test
* enable v2 for all integration tests
* formatting
* fix NodeSeedsTest
* fix since-lf annotations
* add comments, improve consistency
* stop hardcoding V1 in runPureExpr and runPureSExpr
* formatting
* remove harcoding of LFv1 in ConcurrentCompiledPackages.apply
* Parameterize Compiler.Config.Default with major language version
* remove global parser implicit and default package ID and language version
* Implement FreePort for Linux
* Refactor FreePort a little, add withCantonSandbox, convert tests
* Implement dynamic port range for windows
* Import readProcess
* Log macOS info
* Switch to locateRunfiles
* Add sysctl for macos
* Bracket correctly
* Change dir to mainworkspace
* Implement MacOS dynamic port range
* Improve regex matches
* Define DA.Bazel.Runfiles.locateResource as an alternative to locateRunfiles
* Use locateResource to get default dlint rules file
Fixes#15443
* Use locateResource to get scenario-service.jar
* Use locateResource to get ghc-pkg executable
* Use locateResource to get stable-packages directory
* Use locateResource to get ghcversion.h
* Use locateResource to get hpp executable
* Use locateResource to get builtin package dbs
* Drop unused function DA.Daml.Options.Types.getBaseDir
* Use locateResource to get d3{,plus}.min.js
* Use locateResource to get repl-service.jar
* data Resource now takes a runfilesPathPrefix instead of a runfilesPath
* Add hlint warning 'locateRunfiles/package_app'
* Let locateRunfiles crash when used outside of bazel target
* typo
* Remove reliance on implict party allocation in the authorization tests of the sandbox-on-x
CHANGELOG_BEGIN
CHANGELOG_END
* Remove the HOCON and cli config parameters
* Remove implicit party allocation from the Submission Service
* Remove support for implicit parties from the bridge
* Fix codegen reliance on implicit party allocation
* Fix daml script tests
* Fix trigger tests
* format security-evidence.md post rebase
* Fix json-api tests
* One more json-api test
* Fix haskell tests
* Corrections post-review
* Cosmetic improvements
* Fix race condition in party allocation handling
* Make damlc options fail if used more than once
* Fix import issues with optparse-applicative
* Undo `optionOnce` conversion for arguments that should occur many times
* satisfy changelog check
CHANGELOG_BEGIN
CHANGELOG_END
* Improve comments
* Add tests for optionOnce behaviour
* lint
* Add 'damlc validate-dar' test case for interface definition
* Add failing 'damlc validate-dar' test cases for interface instances
* Remove instance MonoTraversable e (NameMap a) from Data.NameMap
* Add (orphan) instance MonoTraversable ModuleRef (NameMap a) in DA.Daml.LF.Ast.Optics
* Data.NameMap: remove runtime check on HOF name changes
changelog_begin
changelog_end
* Removal of Sandbox Classic in Haskell code.
CHANGELOG_BEGIN
CHANGELOG_END
* Further sandbox-classic removals
* Upload dar files when withSandbox is used.
* fix formatting
* Moved upload of dars in createSandbox.
* Fixed test by passing the token before the token file is created.
* Added implicit party allocation argument for haskell tests.
* DPP-1073 Infer sandbox token from the shared secret.
* Different slicing of runLedgerUploadDar
Co-authored-by: Andreas Triantafyllos <andreas.triantafyllos@digitalasset.com>
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Migrate Haskell tests to Sandbox on X
The diff here looks extremely confusing. sandbox-classic is now
sandbox on x not sandbox classic so this isn’t a typo. It is really
moving to sandbox on x.
changelog_begin
changelog_end
* .
changelog_begin
changelog_end
* Add timeouts to polling funcs in daml start.
This PR adds timeouts to some polling functions used in daml start and
the assistant integration tests, and also early exits based on a process
exit status. E.g. waitForHttpServer will make sure some process is
still running, instead of waiting to timeout.
The effect of this is that now whenever there is some error in a
subprocess, daml start and the integration tests will finish early
instead of running forever (or timing out in bazel).
changelog_begin
changelog_end
* missing a readPortFile instance
New year, new copyright, new expected unknown issues with various files
that won't be covered by the script and/or will be but shouldn't change.
I'll do the details on Jan 1, but would appreciate this being
preapproved so I can actually get it merged by then.
CHANGELOG_BEGIN
CHANGELOG_END
* Refactor daml start & add true/false to yesNoAuto.
- Refactor the way we pass arguments to daml start. We were relying on
positional arguments with newtypes, but this is super cumbersome. I
changed it to a RecordWildCards-style approach, where we don't need
quite so many newtypes, and no more positional arguments.
- "--start-navigator" flag had some custom logic to accept "true" and
"false". I don't see why we can't just accept "true" and "false"
anywhere we use the "yes/no/auto" flags, so I just changed that and
got rid of the custom logic.
- The way "auto" was handled for this flag was incorrect, since "auto"
is supposed to be equivalent the default, i.e. not passing any
flag. I changed it so auto is equivalent to not passing an argument.
(I.e. it looks in daml.yaml for the start-navigator option).
changelog_begin
changelog_end
* dont pass in shutdownStdinClose to runStart
Also drops the weird Base module and the always empty tags (yet
another reason why I want to burn our own logging lib with fire).
changelog_begin
changelog_end
* Port file was not written to... where?
Adds the information on where the port file could not be written.
From the current phrasing it appears the intention was to add the
information but ultimately wasn't.
changelog_begin
changelog_end
* Address https://github.com/digital-asset/daml/pull/11108#pullrequestreview-770115835
* interface methods: Haskell AST for methods
Part of #11006. This leaves typechecker and LF conversion for later, on
the haskell side.
changelog_begin
changelog_end
* Forgot ECallInterface in DecodeV1
* fix a test
* Use the token from incoming requests to update the package list
changelog_begin
changelog_end
* Lazily initialize the ledger client
* Fix ee integration tests
* Fix package reloading behaviour by using a semaphore to check for ongoing updates
* Refactor out the semaphore code into a concurrency utility class
* Use correct locking for the updateTask so every thread always uses an up to date task
* Remove unused imports in utils.Concurrent & remove packages from the tests
* Hide & mark the token file cli option deprecated because we dont need it anymore and only keep it so client deployment code doesn't break
* Fix scala 2.12 build by adding more type annotations
* Update ledger-service/http-json-cli/src/main/scala/com/daml/http/OptionParser.scala
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Update ledger-service/http-json/src/main/scala/com/digitalasset/http/PackageService.scala
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Readd pgkManagementClient after it was removed accidentally (but now it's lazy)
* Remove concurrent object & use atomic boolean instead of a mutex because it makes more sense
* Replace semaphore with countdownlatch
* Refactor the caching into a separate class
* Use Instant instead of LocalDateTime
* Remove that ** of bad synchonization and do stupid simple synchronization because it JUST WORKS, besides adapt when we want to reload
* Remove await in tests because it can result in buggy tests
* remove unused code in WebSocketService.scala
* Unhide the access-token-file option as per request of Stefano
* Less implicit jwts per request of Stefano
* Try making some code more readable as by request of Akshay
* Use more shark because it expresses better than flatMaps if I don't need the arg
* Move defs in predicate in WebsocketService.scala around
* Try to minimize diff further in WebsocketService.scala
* Fix build and minimize diff in WebSocketService.scala further
* Minimize diff of function getTransactionSourceForParty in WebSocketService.scala
* Share the ec in WebSocketService.scala to minimize the diff
* Minimize in function predicate in WebSocketService.scala
* Further minimize in function predicate in WebSocketService.scala
* Change some case classes to be normal classes but with apply method
* Update ledger-service/http-json/src/main/scala/com/digitalasset/http/PackageService.scala
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Update ledger-service/http-json/src/main/scala/com/digitalasset/http/Endpoints.scala
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
* Get rid of implicit jwt tokens, the world is already confusing and full of implicits enough
* Improve readability
* Integrate the new LedgerClient which does not depend on a leder id
* Fix tests
* Apply suggestions from code review
thanks to @S11001001
Co-authored-by: Stephen Compall <stephen.compall@daml.com>
* Apply further review comments
* Remove outcommented code
* Deprecate access token file option in the description too
changelog_begin
- [JSON API] The cli option `--access-token-file` is now deprecated. It
is not needed anymore and you can safely remove it. Reason is that
the operations which prior required a token at startup are now done
on demand using the token of the incoming request.
changelog_end
Co-authored-by: Stefano Baghino <43749967+stefanobaghino-da@users.noreply.github.com>
Co-authored-by: Stephen Compall <stephen.compall@daml.com>