Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Experimental daml assistant support for metering report [DPP-816] #12485

Merged
merged 3 commits into from
Jan 24, 2022

Conversation

simonmaxen-da
Copy link
Contributor

changelog_begin
Enable experimental GRPC endpoint for metering report.
changelog_end

Pull Request Checklist

  • Read and understand the contribution guidelines
  • Include appropriate tests
  • Set a descriptive title and thorough description
  • Add a reference to the issue this PR will solve, if appropriate
  • Include changelog additions in one or more commit message bodies between the CHANGELOG_BEGIN and CHANGELOG_END tags
  • Normal production system change, include purpose of change in description
  • If you mean to change the status of a component, please make sure you keep the Component Status page up to date.

NOTE: CI is not automatically run on non-members pull-requests for security
reasons. The reviewer will have to comment with /AzurePipelines run to
trigger the build.

@simonmaxen-da
Copy link
Contributor Author

simonmaxen-da commented Jan 19, 2022

> daml-helper ledger metering-report --help
Usage: daml ledger metering-report ...  [--from FROM] [--to TO] [--application APP]

Available options:
    :

  --from FROM              From date of report (inclusive).
  --to TO                  To date of report (exclusive).
  --application APP        Report application identifier.

@simonmaxen-da
Copy link
Contributor Author

> grpcurl -plaintext -d '{"from": "2022-01-19T14:00:00Z"}'  localhost:6865 com.daml.ledger.api.v1.admin.MeteringReportService.GetMeteringReport | jq
{
  "request": {
    "from": "2022-01-19T14:00:00Z"
  },
  "participantReport": {
    "participantId": "participant1",
    "toActual": "2022-01-19T14:27:01Z",
    "applicationReports": [
      {
        "applicationId": "app  1",
        "eventCount": "100"
      },
      {
        "applicationId": "app2",
        "eventCount": "200"
      }
    ]
  },
  "reportGenerationTime": "2022-01-19T14:27:01Z"
}

@simonmaxen-da
Copy link
Contributor Author

> daml-helper ledger metering-report  --host localhost --port 6865 --from "2022-01-19T14:00:00Z" | jq
{
  "to-actual": "2022-01-19T14:27:45Z",
  "from": "2022-01-19T14:00:00Z",
  "participant": "participant1",
  "applications": [
    {
      "application": "app  1",
      "events": 100
    },
    {
      "application": "app2",
      "events": 200
    }
  ]
}

Copy link
Contributor

@cocreature cocreature left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like it goes in the right direction, thanks!

daml-assistant/daml-helper/src/DA/Daml/Helper/Ledger.hs Outdated Show resolved Hide resolved
@@ -644,3 +648,25 @@ sanitizeToken :: String -> String
sanitizeToken tok
| "Bearer " `isPrefixOf` tok = tok
| otherwise = "Bearer " <> tok

-- | Report on Ledger Use.
runLedgerMeteringReport :: LedgerFlags -> (Maybe String) -> (Maybe String) -> (Maybe String) -> IO ()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let’s move the parsing to the CLI parser instead of passing strings here

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

args <- getDefaultArgs flags
from <- traverse L.iso8601ToTimestamp fromIso
to <- traverse L.iso8601ToTimestamp toIso
let app = fmap (ApplicationId . TL.pack) application
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’d also prefer to wrap this in the CLI parser and not pass a string in here.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@@ -331,6 +334,12 @@ commandParser = subparser $ fold
<$> ledgerFlags (ShowJsonApi False)
<*> many (argument str (metavar "ARG" <> help "Extra arguments to navigator."))

ledgerMeteringReportCmd = LedgerMeteringReport
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other flags default to a human readable output and then have a --json flag. i think it would be nice to keep that here.

Copy link
Contributor Author

@simonmaxen-da simonmaxen-da Jan 19, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would say this is a special case as the purpose of this helper is to output a report in json format as per the "Design: Ledger Metering" spec. By default the json is not pretty printed. I could add a --pretty flag to output the JSON in a more human readable format (or make pretty output the default and add a --nopretty flag) ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about pretty print by default and add --compact-output (matching jq’s flag name) to not pretty print?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done:

DAML> daml-helper ledger metering-report --host localhost --port 6865 --from "2022-01-22T00:00:00Z" --compact-output
{"from":"2022-01-22T00:00:00Z","participant":"participant1","toActual":"2022-01-24T11:27:01.308061Z","applications":[{"application":"app1","events":100},{"application":"app2","events":200}]}

DAML> daml-helper ledger metering-report --host localhost --port 6865 --from "2022-01-22T00:00:00Z"
{
    "from": "2022-01-22T00:00:00Z",
    "participant": "participant1",
    "toActual": "2022-01-24T11:27:05.718135Z",
    "applications": [
        {
            "application": "app1",
            "events": 100
        },
        {
            "application": "app2",
            "events": 200
        }
    ]
}

@simonmaxen-da simonmaxen-da force-pushed the metering-assistant branch 5 times, most recently from 32e12a2 to 48db0e7 Compare January 21, 2022 16:53
@simonmaxen-da simonmaxen-da marked this pull request as ready for review January 21, 2022 16:55
@simonmaxen-da simonmaxen-da changed the title Experimental daml assistant support for metering report. Experimental daml assistant support for metering report [DPP-816] Jan 24, 2022
Copy link
Contributor

@cocreature cocreature left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! I suggest to address the pretty printing in this PR but apart from that looks ready to land.

@@ -331,6 +334,12 @@ commandParser = subparser $ fold
<$> ledgerFlags (ShowJsonApi False)
<*> many (argument str (metavar "ARG" <> help "Extra arguments to navigator."))

ledgerMeteringReportCmd = LedgerMeteringReport
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about pretty print by default and add --compact-output (matching jq’s flag name) to not pretty print?

case api args of
Grpc -> runWithLedgerArgs args $ do L.getMeteringReport from to application
HttpJson -> do
hPutStrLn stderr "Error: daml ledger metering can only be run via gRPC atm"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
hPutStrLn stderr "Error: daml ledger metering can only be run via gRPC atm"
hPutStrLn stderr "Error: daml ledger metering can only be run via gRPC at the moment"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

object (
[ "participant" .= unParticipantId participant
, "from" .= timestampToIso8601 from
, "to-actual" .= timestampToIso8601 toActual
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
, "to-actual" .= timestampToIso8601 toActual
, "to_actual" .= timestampToIso8601 toActual

Not sure if there is a specific reason for the hyphen but ime underscores are far more common in JSON encodings so I’d suggest to use that for ledger metering as well.

Copy link
Contributor Author

@simonmaxen-da simonmaxen-da Jan 24, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will update to camel case provided all are happy with the spec change.

, "to-actual" .= timestampToIso8601 toActual
, "applications" .= applications
]
++ maybeToList (fmap (("to-requested" .=) . timestampToIso8601) toRequested)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
++ maybeToList (fmap (("to-requested" .=) . timestampToIso8601) toRequested)
++ maybeToList (fmap (("to_requested" .=) . timestampToIso8601) toRequested)

Copy link
Contributor Author

@simonmaxen-da simonmaxen-da Jan 24, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will update to camel case provided all are happy with the spec change.

@@ -272,6 +277,11 @@ newtype DaysSinceEpoch = DaysSinceEpoch { unDaysSinceEpoch :: Int}
newtype TemplateId = TemplateId Identifier deriving (Eq,Ord,Show)

newtype ApplicationId = ApplicationId { unApplicationId :: Text } deriving (Eq,Ord,Show)

instance Read ApplicationId where
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not a huge fan of this Read instance, can we just wrap it in the ApplicationId constructor at the call site?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is wrong with it ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Read isn’t really great for general purpose parsing in general and more often than not you are better off writing parser functions. In this particular case it just accepts literally every string and wraps in in the constructor. That just seems like it’s asking for bugs. I’m not asking for validation but applying the constructor explicitly at least makes it clearer what is happening.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

CHANGELOG_BEGIN
Add experimental Daml assistant support for ledger metering
CHANGELOG_END
@simonmaxen-da simonmaxen-da merged commit 8fa54c6 into main Jan 24, 2022
@simonmaxen-da simonmaxen-da deleted the metering-assistant branch January 24, 2022 16:12
azure-pipelines bot pushed a commit that referenced this pull request Jan 26, 2022
This PR has been created by a script, which is not very smart
and does not have all the context. Please do double-check that
the version prefix is correct before merging.

@adriaanm-da is in charge of this release.

Commit log:
```
54339ad Safeguard Oracle CI tests with lockIdSeed [DPP-802] (#12573)
5cccec2 release: use-devenv (#12583)
90aacea split-release (#12577)
cc19df4 Persist transaction metering info [DPP-814,DPP-821] (#12274)
cb77c84 damlc: Don't rely on worker for zero argument polymorphic type constructors (#12581)
ed33c0d split: flat(ter) files in Artifactory (#12575)
e355832 split: do not push exe (#12574)
0afc4a5 split: do not tag (#12569)
ebf7908 LF: check contracts are consumed when found them in the cache (#12527)
ce06eb0 Add serializability check for interface payloads in Haskell (#12560)
aced78f Drop dadew uninstall (#12566)
ac3ca1d ledger-api-test-tool: Enable command deduplication tests by default [KVL-1261] (#12541)
5f58698 [JSON-API] Add list-specific-users-rights, grant & revoke user rights endpoints (#12352)
42aadec Cleanup Haskell serializability check (#12565)
5d93eb9 Engine stacktraces are disabled by default (#12562)
42d86ac [User management] Disabling user management in auth when user management feature is disabled [DPP-827] (#12503)
13153de update NOTICES file (#12564)
5bfe4ed Wait for server process in client_server_test (#12551)
f1cd4b1 Remove dependencies on compatibility libraries (#12548)
dcd721d Drop scenarios (#12484)
170d839 Fix es (#12554)
8fa54c6 Experimental daml assistant support for metering report [DPP-816] (#12485)
9802028 Cut a new split release (#12547)
aec3390 Replace silencer plugin with built-in warning configuration (#12543)
93cfe04 Remove from the Java bindings constructors that were deprecated since 0.x (#12536)
8d65aa3 Remove Sandbox classic stores and related unit tests (#12532)
24b2325 Bump node-fetch to address dependabot alerts (#12553)
fdb034c split-release: Canton dependencies to public GCS (#12552)
3f8ec07 Upgrade to the latest Canton snapshot (#12544)
8692d80 Fix trigger compat test for canton sandbox (#12549)
3ea8ade LF: Test evaluation order of exercise and exercise_by_key (#12519)
36f8d67 Upgrade `css-loader` to 5.2.7 (#12550)
a150737 Upgrade msys2 (#12545)
01447fd docs: typos and minor clarification for authz docs (#12534)
fbf244e alert on invalid users in create-daml-app (#12518)
f2b4abe update NOTICES file (#12542)
bd0ae02 Startup initialization header for runners [DPP-860] (#12525)
15c0ad7 Migration DB unit testing for PostgreSQL v111 to v116 [DPP-756] (#12517)
7218e6f ledger-api-test-tool: Remove retired tests. (#12535)
cbb4986 Add Empty GRPC Metering Report Service [DPP-856] (#12515)
4d26f08 ledger-api-test-tool: Enable ParticipantPruningIT for everyone. [KVL-1261] (#12529)
3044958 ledger-api-test-tool: Remove deprecated options. (#12533)
5ab9eae Make mutable-contract-state-cache the default and only option (#12528)
89d95e6 user management: allow ':' in user ids (#12531)
f5d7821 compatibility: Disable MultiParticipantIT for old versions. (#12526)
2deeabf [User management] Add feature flag to enable user management [DPP-827] (#12420)
b843117 Drop feature flag for v0 cid support (#12522)
73277f4 Upgrade to oracle 19.14 image for ci (#12523)
cdde8df ledger-api-test-tool: Add assertions and a test case for successful completions when converting deduplication durations to offsets [KVL-1220] (#12462)
2267d1a sandbox-classic uses Sandbox-on-X internals [DPP-860] (#12466)
20cda01 specify that deduplication offsets are exclusive (#12488)
e9e1b06 ledger-api-test-tool: Enable `MultiPartySubmissionIT` for everyone. [KVL-1261] (#12500)
a5f56e0 Use canton sandbox in script+trigger compat tests (#12514)
9c03e79 Build create-daml-app with -Werror (#12513)
688f1e1 Drop v0 contract ids (#12464)
c35d34d Remove ResetService from the grpc documentation (#12512)
eb61893 resources: Remove ResettableResourceOwner. (#12499)
7880d54 Add --port-file and --dar flags in daml sandbox (#12505)
3c8a646 Tell users to use --install-assistant=yes (#12507)
36536fa LF: Test evaluation order of lookup_by_key (#12494)
ad7ce54 participant-integration-api: Factor out feature flags into a class. (#12496)
4d698c1 Update windows testing instructions (#12504)
0f8e40c user management: add reference docs (#12398)
96b8651 Drop orphaned vim syntax files (#12502)
a644406 Avoid stale DAML_SDK_VERSION_LATEST in assistant (#12493)
7a1b37c [User management] Nullable primary_party and for_party (#12419)
cd30f01 update NOTICES file (#12498)
b11f11b Drop support for no seeding in sandbox-classic (#12495)
5d2be1e ledger-api-test-tool-on-canton: Use `join` to clean up exclusions. (#12497)
072d57a DPP-553 Consistently use anorm string interpolation (#12266)
f03fa6a ledger-api-test-tool: Govern ContractIdIT test runs through a feature. (#12454)
dd4fc1f split release (#12492)
de2a8c0 ci: use service account for Windows nodes (#12489)
644efd1 Lower log level to warn (#12490)
ebd3827 Make UserId properly opaque by defining it as a variant (#12476)
3159d60 LF: more tests for evaluation order of fetch (#12471)
96f454a update compat versions for 1.18.1 (#12430)
82639a1 Fix get-daml.sh installation script (#12487)
e222c35 Enhance conformance test: ACS coverage [DPP-672] (#11334)
2443891 Remove /user/delete GET endpoint (#12486)
681f8fc Add missing serializability checks for interfaces (#12483)
7c59728 Remove reset service support from the storage backend [DPP-804] (#12477)
f7e2faf [User management] Addressing outstanding code review comments from #12344 (#12479)
350fe5c Update RELEASE.md (#12481)
82534f9 Remove the reset service from the ledger api and the documentation [DPP-804] (#12472)
4885e61 rotate release duty after 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12468)
9518f15 Fix sandbox on x compat test switch (#12478)
66494a2 [User management] created_at and granted_at in Oracle (#12417)
6fbaac4 Remove user-management error cases from scenario-service proto. (#12460)
1f1e8bf [DPP-829] Make ledger-id field optional in requests (#12243)
74e9efc release 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12467)
d0cbccb Explicitly name coalesced columns (#12377)
954bc5e Remove the reset service from sandbox-classic and sandbox [DPP-804] (#12448)
e40c221 Fix compatibility tests. (#12465)
```
Changelog:
```
Transaction Metering now persisted to database
- [Ledger API Test Tool] More command deduplication tests have been
  enabled by default. This should not affect testing a fully functioning
  ledger. If any tests fail, they can be temporarily excluded.

- [HTTP-JSON] Added endpoint /user/rights that if called with POST will return user rights of the user specified via the payload

- [HTTP-JSON] Added endpoints user/rights/grant & user/rights/revoke which allow granting & revoking user rights for a specific user

Add experimental Daml assistant support for ledger metering
[Java bindings] `DamlLedgerClient.forLedgerIdAndHost` and `DamlLedgerClient.forHostWithLedgerIdDiscovery` static methods
and the constructor taking a `ManagedChannel`, which were all deprecated since 0.13.38, have been removed.
- [Ledger API Test Tool] The retired test suites, ``LotsOfPartiesIT``
  and ``TransactionScaleIT``, have been removed in favor of more
  targeted benchmarking tests. If you are actively including these tests
  in your test run, you will need to remove them. These tests are
  disabled by default so it is likely that no change will be needed.
- [Ledger API Test Tool] The ``ParticipantPruningIT`` test case has
  been enabled by default. You may need to disable specific test cases
  accordingly.
Sandbox: Participant server now supports '--feature-user-management' flag to turn on or off user management feature.
- [Ledger API Test Tool] The ``MultiPartySubmissionIT`` test case has
  been enabled by default. You will most likely not need to change
  anything.
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
  using ledger feature flags to determine which test cases are run. You
  will need to configure the ``StandaloneApiService`` accordingly.

- [HTTP-JSON] Removed the /user/delete GET endpoint. Please use the /user/delete POST endpoint with the own user ID if you need to delete the user associated with the current token

Remove reset service from the ledger api protocol and the documentation
The field "ledger_id" in all request to Participant API is now optional (was required).
Reset service has been removed from the sandbox-classic, sandbox and daml-on-sql
```

CHANGELOG_BEGIN
CHANGELOG_END
cocreature added a commit that referenced this pull request Jan 26, 2022
* release 2.0.0-snapshot.20220126.9013.0.54339ada

This PR has been created by a script, which is not very smart
and does not have all the context. Please do double-check that
the version prefix is correct before merging.

@adriaanm-da is in charge of this release.

Commit log:
```
54339ad Safeguard Oracle CI tests with lockIdSeed [DPP-802] (#12573)
5cccec2 release: use-devenv (#12583)
90aacea split-release (#12577)
cc19df4 Persist transaction metering info [DPP-814,DPP-821] (#12274)
cb77c84 damlc: Don't rely on worker for zero argument polymorphic type constructors (#12581)
ed33c0d split: flat(ter) files in Artifactory (#12575)
e355832 split: do not push exe (#12574)
0afc4a5 split: do not tag (#12569)
ebf7908 LF: check contracts are consumed when found them in the cache (#12527)
ce06eb0 Add serializability check for interface payloads in Haskell (#12560)
aced78f Drop dadew uninstall (#12566)
ac3ca1d ledger-api-test-tool: Enable command deduplication tests by default [KVL-1261] (#12541)
5f58698 [JSON-API] Add list-specific-users-rights, grant & revoke user rights endpoints (#12352)
42aadec Cleanup Haskell serializability check (#12565)
5d93eb9 Engine stacktraces are disabled by default (#12562)
42d86ac [User management] Disabling user management in auth when user management feature is disabled [DPP-827] (#12503)
13153de update NOTICES file (#12564)
5bfe4ed Wait for server process in client_server_test (#12551)
f1cd4b1 Remove dependencies on compatibility libraries (#12548)
dcd721d Drop scenarios (#12484)
170d839 Fix es (#12554)
8fa54c6 Experimental daml assistant support for metering report [DPP-816] (#12485)
9802028 Cut a new split release (#12547)
aec3390 Replace silencer plugin with built-in warning configuration (#12543)
93cfe04 Remove from the Java bindings constructors that were deprecated since 0.x (#12536)
8d65aa3 Remove Sandbox classic stores and related unit tests (#12532)
24b2325 Bump node-fetch to address dependabot alerts (#12553)
fdb034c split-release: Canton dependencies to public GCS (#12552)
3f8ec07 Upgrade to the latest Canton snapshot (#12544)
8692d80 Fix trigger compat test for canton sandbox (#12549)
3ea8ade LF: Test evaluation order of exercise and exercise_by_key (#12519)
36f8d67 Upgrade `css-loader` to 5.2.7 (#12550)
a150737 Upgrade msys2 (#12545)
01447fd docs: typos and minor clarification for authz docs (#12534)
fbf244e alert on invalid users in create-daml-app (#12518)
f2b4abe update NOTICES file (#12542)
bd0ae02 Startup initialization header for runners [DPP-860] (#12525)
15c0ad7 Migration DB unit testing for PostgreSQL v111 to v116 [DPP-756] (#12517)
7218e6f ledger-api-test-tool: Remove retired tests. (#12535)
cbb4986 Add Empty GRPC Metering Report Service [DPP-856] (#12515)
4d26f08 ledger-api-test-tool: Enable ParticipantPruningIT for everyone. [KVL-1261] (#12529)
3044958 ledger-api-test-tool: Remove deprecated options. (#12533)
5ab9eae Make mutable-contract-state-cache the default and only option (#12528)
89d95e6 user management: allow ':' in user ids (#12531)
f5d7821 compatibility: Disable MultiParticipantIT for old versions. (#12526)
2deeabf [User management] Add feature flag to enable user management [DPP-827] (#12420)
b843117 Drop feature flag for v0 cid support (#12522)
73277f4 Upgrade to oracle 19.14 image for ci (#12523)
cdde8df ledger-api-test-tool: Add assertions and a test case for successful completions when converting deduplication durations to offsets [KVL-1220] (#12462)
2267d1a sandbox-classic uses Sandbox-on-X internals [DPP-860] (#12466)
20cda01 specify that deduplication offsets are exclusive (#12488)
e9e1b06 ledger-api-test-tool: Enable `MultiPartySubmissionIT` for everyone. [KVL-1261] (#12500)
a5f56e0 Use canton sandbox in script+trigger compat tests (#12514)
9c03e79 Build create-daml-app with -Werror (#12513)
688f1e1 Drop v0 contract ids (#12464)
c35d34d Remove ResetService from the grpc documentation (#12512)
eb61893 resources: Remove ResettableResourceOwner. (#12499)
7880d54 Add --port-file and --dar flags in daml sandbox (#12505)
3c8a646 Tell users to use --install-assistant=yes (#12507)
36536fa LF: Test evaluation order of lookup_by_key (#12494)
ad7ce54 participant-integration-api: Factor out feature flags into a class. (#12496)
4d698c1 Update windows testing instructions (#12504)
0f8e40c user management: add reference docs (#12398)
96b8651 Drop orphaned vim syntax files (#12502)
a644406 Avoid stale DAML_SDK_VERSION_LATEST in assistant (#12493)
7a1b37c [User management] Nullable primary_party and for_party (#12419)
cd30f01 update NOTICES file (#12498)
b11f11b Drop support for no seeding in sandbox-classic (#12495)
5d2be1e ledger-api-test-tool-on-canton: Use `join` to clean up exclusions. (#12497)
072d57a DPP-553 Consistently use anorm string interpolation (#12266)
f03fa6a ledger-api-test-tool: Govern ContractIdIT test runs through a feature. (#12454)
dd4fc1f split release (#12492)
de2a8c0 ci: use service account for Windows nodes (#12489)
644efd1 Lower log level to warn (#12490)
ebd3827 Make UserId properly opaque by defining it as a variant (#12476)
3159d60 LF: more tests for evaluation order of fetch (#12471)
96f454a update compat versions for 1.18.1 (#12430)
82639a1 Fix get-daml.sh installation script (#12487)
e222c35 Enhance conformance test: ACS coverage [DPP-672] (#11334)
2443891 Remove /user/delete GET endpoint (#12486)
681f8fc Add missing serializability checks for interfaces (#12483)
7c59728 Remove reset service support from the storage backend [DPP-804] (#12477)
f7e2faf [User management] Addressing outstanding code review comments from #12344 (#12479)
350fe5c Update RELEASE.md (#12481)
82534f9 Remove the reset service from the ledger api and the documentation [DPP-804] (#12472)
4885e61 rotate release duty after 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12468)
9518f15 Fix sandbox on x compat test switch (#12478)
66494a2 [User management] created_at and granted_at in Oracle (#12417)
6fbaac4 Remove user-management error cases from scenario-service proto. (#12460)
1f1e8bf [DPP-829] Make ledger-id field optional in requests (#12243)
74e9efc release 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12467)
d0cbccb Explicitly name coalesced columns (#12377)
954bc5e Remove the reset service from sandbox-classic and sandbox [DPP-804] (#12448)
e40c221 Fix compatibility tests. (#12465)
```
Changelog:
```
Transaction Metering now persisted to database
- [Ledger API Test Tool] More command deduplication tests have been
  enabled by default. This should not affect testing a fully functioning
  ledger. If any tests fail, they can be temporarily excluded.

- [HTTP-JSON] Added endpoint /user/rights that if called with POST will return user rights of the user specified via the payload

- [HTTP-JSON] Added endpoints user/rights/grant & user/rights/revoke which allow granting & revoking user rights for a specific user

Add experimental Daml assistant support for ledger metering
[Java bindings] `DamlLedgerClient.forLedgerIdAndHost` and `DamlLedgerClient.forHostWithLedgerIdDiscovery` static methods
and the constructor taking a `ManagedChannel`, which were all deprecated since 0.13.38, have been removed.
- [Ledger API Test Tool] The retired test suites, ``LotsOfPartiesIT``
  and ``TransactionScaleIT``, have been removed in favor of more
  targeted benchmarking tests. If you are actively including these tests
  in your test run, you will need to remove them. These tests are
  disabled by default so it is likely that no change will be needed.
- [Ledger API Test Tool] The ``ParticipantPruningIT`` test case has
  been enabled by default. You may need to disable specific test cases
  accordingly.
Sandbox: Participant server now supports '--feature-user-management' flag to turn on or off user management feature.
- [Ledger API Test Tool] The ``MultiPartySubmissionIT`` test case has
  been enabled by default. You will most likely not need to change
  anything.
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
  using ledger feature flags to determine which test cases are run. You
  will need to configure the ``StandaloneApiService`` accordingly.

- [HTTP-JSON] Removed the /user/delete GET endpoint. Please use the /user/delete POST endpoint with the own user ID if you need to delete the user associated with the current token

Remove reset service from the ledger api protocol and the documentation
The field "ledger_id" in all request to Participant API is now optional (was required).
Reset service has been removed from the sandbox-classic, sandbox and daml-on-sql
```

CHANGELOG_BEGIN
CHANGELOG_END

* bump release commit

changelog_begin
changelog_end

Co-authored-by: Azure Pipelines Daml Build <[email protected]>
Co-authored-by: Moritz Kiefer <[email protected]>
stefanobaghino-da added a commit that referenced this pull request Jan 26, 2022
This PR has been created by a script, which is not very smart
and does not have all the context. Please do double-check that
the version prefix is correct before merging.

@stefanobaghino-da is in charge of this release.

Commit log:
```
42cf70b ci: try to fix release process (#12600)
0579ebd Mark the `withExpectedLedgerId` method in `DamlLedgerClient.Builder` as deprecated (#12537)
deb7f3a Move some trigger compat tests to sandbox-on-x (#12598)
5cdf9b9 Remove some unecessary `implictly` with `Factory` (#12559)
9c3f1ce Drop dummy token from JSON API check (#12593)
3366c6f compatibility: Exclude another command deduplication test. (#12592)
54339ad Safeguard Oracle CI tests with lockIdSeed [DPP-802] (#12573)
5cccec2 release: use-devenv (#12583)
90aacea split-release (#12577)
cc19df4 Persist transaction metering info [DPP-814,DPP-821] (#12274)
cb77c84 damlc: Don't rely on worker for zero argument polymorphic type constructors (#12581)
ed33c0d split: flat(ter) files in Artifactory (#12575)
e355832 split: do not push exe (#12574)
0afc4a5 split: do not tag (#12569)
ebf7908 LF: check contracts are consumed when found them in the cache (#12527)
ce06eb0 Add serializability check for interface payloads in Haskell (#12560)
aced78f Drop dadew uninstall (#12566)
ac3ca1d ledger-api-test-tool: Enable command deduplication tests by default [KVL-1261] (#12541)
5f58698 [JSON-API] Add list-specific-users-rights, grant & revoke user rights endpoints (#12352)
42aadec Cleanup Haskell serializability check (#12565)
5d93eb9 Engine stacktraces are disabled by default (#12562)
42d86ac [User management] Disabling user management in auth when user management feature is disabled [DPP-827] (#12503)
13153de update NOTICES file (#12564)
5bfe4ed Wait for server process in client_server_test (#12551)
f1cd4b1 Remove dependencies on compatibility libraries (#12548)
dcd721d Drop scenarios (#12484)
170d839 Fix es (#12554)
8fa54c6 Experimental daml assistant support for metering report [DPP-816] (#12485)
9802028 Cut a new split release (#12547)
aec3390 Replace silencer plugin with built-in warning configuration (#12543)
93cfe04 Remove from the Java bindings constructors that were deprecated since 0.x (#12536)
8d65aa3 Remove Sandbox classic stores and related unit tests (#12532)
24b2325 Bump node-fetch to address dependabot alerts (#12553)
fdb034c split-release: Canton dependencies to public GCS (#12552)
3f8ec07 Upgrade to the latest Canton snapshot (#12544)
8692d80 Fix trigger compat test for canton sandbox (#12549)
3ea8ade LF: Test evaluation order of exercise and exercise_by_key (#12519)
36f8d67 Upgrade `css-loader` to 5.2.7 (#12550)
a150737 Upgrade msys2 (#12545)
01447fd docs: typos and minor clarification for authz docs (#12534)
fbf244e alert on invalid users in create-daml-app (#12518)
f2b4abe update NOTICES file (#12542)
bd0ae02 Startup initialization header for runners [DPP-860] (#12525)
15c0ad7 Migration DB unit testing for PostgreSQL v111 to v116 [DPP-756] (#12517)
7218e6f ledger-api-test-tool: Remove retired tests. (#12535)
cbb4986 Add Empty GRPC Metering Report Service [DPP-856] (#12515)
4d26f08 ledger-api-test-tool: Enable ParticipantPruningIT for everyone. [KVL-1261] (#12529)
3044958 ledger-api-test-tool: Remove deprecated options. (#12533)
5ab9eae Make mutable-contract-state-cache the default and only option (#12528)
89d95e6 user management: allow ':' in user ids (#12531)
f5d7821 compatibility: Disable MultiParticipantIT for old versions. (#12526)
2deeabf [User management] Add feature flag to enable user management [DPP-827] (#12420)
b843117 Drop feature flag for v0 cid support (#12522)
73277f4 Upgrade to oracle 19.14 image for ci (#12523)
cdde8df ledger-api-test-tool: Add assertions and a test case for successful completions when converting deduplication durations to offsets [KVL-1220] (#12462)
2267d1a sandbox-classic uses Sandbox-on-X internals [DPP-860] (#12466)
20cda01 specify that deduplication offsets are exclusive (#12488)
e9e1b06 ledger-api-test-tool: Enable `MultiPartySubmissionIT` for everyone. [KVL-1261] (#12500)
a5f56e0 Use canton sandbox in script+trigger compat tests (#12514)
9c03e79 Build create-daml-app with -Werror (#12513)
688f1e1 Drop v0 contract ids (#12464)
c35d34d Remove ResetService from the grpc documentation (#12512)
eb61893 resources: Remove ResettableResourceOwner. (#12499)
7880d54 Add --port-file and --dar flags in daml sandbox (#12505)
3c8a646 Tell users to use --install-assistant=yes (#12507)
36536fa LF: Test evaluation order of lookup_by_key (#12494)
ad7ce54 participant-integration-api: Factor out feature flags into a class. (#12496)
4d698c1 Update windows testing instructions (#12504)
0f8e40c user management: add reference docs (#12398)
96b8651 Drop orphaned vim syntax files (#12502)
a644406 Avoid stale DAML_SDK_VERSION_LATEST in assistant (#12493)
7a1b37c [User management] Nullable primary_party and for_party (#12419)
cd30f01 update NOTICES file (#12498)
b11f11b Drop support for no seeding in sandbox-classic (#12495)
5d2be1e ledger-api-test-tool-on-canton: Use `join` to clean up exclusions. (#12497)
072d57a DPP-553 Consistently use anorm string interpolation (#12266)
f03fa6a ledger-api-test-tool: Govern ContractIdIT test runs through a feature. (#12454)
dd4fc1f split release (#12492)
de2a8c0 ci: use service account for Windows nodes (#12489)
644efd1 Lower log level to warn (#12490)
ebd3827 Make UserId properly opaque by defining it as a variant (#12476)
3159d60 LF: more tests for evaluation order of fetch (#12471)
96f454a update compat versions for 1.18.1 (#12430)
82639a1 Fix get-daml.sh installation script (#12487)
e222c35 Enhance conformance test: ACS coverage [DPP-672] (#11334)
2443891 Remove /user/delete GET endpoint (#12486)
681f8fc Add missing serializability checks for interfaces (#12483)
7c59728 Remove reset service support from the storage backend [DPP-804] (#12477)
f7e2faf [User management] Addressing outstanding code review comments from #12344 (#12479)
350fe5c Update RELEASE.md (#12481)
82534f9 Remove the reset service from the ledger api and the documentation [DPP-804] (#12472)
4885e61 rotate release duty after 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12468)
9518f15 Fix sandbox on x compat test switch (#12478)
66494a2 [User management] created_at and granted_at in Oracle (#12417)
6fbaac4 Remove user-management error cases from scenario-service proto. (#12460)
1f1e8bf [DPP-829] Make ledger-id field optional in requests (#12243)
74e9efc release 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12467)
d0cbccb Explicitly name coalesced columns (#12377)
954bc5e Remove the reset service from sandbox-classic and sandbox [DPP-804] (#12448)
e40c221 Fix compatibility tests. (#12465)
```
Changelog:
```
[Java bindings] Deprecate `DamlLedgerClient.Builder.withExpectedLedgerId`
Transaction Metering now persisted to database
- [Ledger API Test Tool] More command deduplication tests have been
  enabled by default. This should not affect testing a fully functioning
  ledger. If any tests fail, they can be temporarily excluded.

- [HTTP-JSON] Added endpoint /user/rights that if called with POST will return user rights of the user specified via the payload

- [HTTP-JSON] Added endpoints user/rights/grant & user/rights/revoke which allow granting & revoking user rights for a specific user

Add experimental Daml assistant support for ledger metering
[Java bindings] `DamlLedgerClient.forLedgerIdAndHost` and `DamlLedgerClient.forHostWithLedgerIdDiscovery` static methods
and the constructor taking a `ManagedChannel`, which were all deprecated since 0.13.38, have been removed.
- [Ledger API Test Tool] The retired test suites, ``LotsOfPartiesIT``
  and ``TransactionScaleIT``, have been removed in favor of more
  targeted benchmarking tests. If you are actively including these tests
  in your test run, you will need to remove them. These tests are
  disabled by default so it is likely that no change will be needed.
- [Ledger API Test Tool] The ``ParticipantPruningIT`` test case has
  been enabled by default. You may need to disable specific test cases
  accordingly.
Sandbox: Participant server now supports '--feature-user-management' flag to turn on or off user management feature.
- [Ledger API Test Tool] The ``MultiPartySubmissionIT`` test case has
  been enabled by default. You will most likely not need to change
  anything.
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
  using ledger feature flags to determine which test cases are run. You
  will need to configure the ``StandaloneApiService`` accordingly.

- [HTTP-JSON] Removed the /user/delete GET endpoint. Please use the /user/delete POST endpoint with the own user ID if you need to delete the user associated with the current token

Remove reset service from the ledger api protocol and the documentation
The field "ledger_id" in all request to Participant API is now optional (was required).
Reset service has been removed from the sandbox-classic, sandbox and daml-on-sql
```

CHANGELOG_BEGIN
CHANGELOG_END
stefanobaghino-da added a commit that referenced this pull request Jan 26, 2022
This PR has been created by a script, which is not very smart
and does not have all the context. Please do double-check that
the version prefix is correct before merging.

@stefanobaghino-da is in charge of this release.

Commit log:
```
42cf70b ci: try to fix release process (#12600)
0579ebd Mark the `withExpectedLedgerId` method in `DamlLedgerClient.Builder` as deprecated (#12537)
deb7f3a Move some trigger compat tests to sandbox-on-x (#12598)
5cdf9b9 Remove some unecessary `implictly` with `Factory` (#12559)
9c3f1ce Drop dummy token from JSON API check (#12593)
3366c6f compatibility: Exclude another command deduplication test. (#12592)
54339ad Safeguard Oracle CI tests with lockIdSeed [DPP-802] (#12573)
5cccec2 release: use-devenv (#12583)
90aacea split-release (#12577)
cc19df4 Persist transaction metering info [DPP-814,DPP-821] (#12274)
cb77c84 damlc: Don't rely on worker for zero argument polymorphic type constructors (#12581)
ed33c0d split: flat(ter) files in Artifactory (#12575)
e355832 split: do not push exe (#12574)
0afc4a5 split: do not tag (#12569)
ebf7908 LF: check contracts are consumed when found them in the cache (#12527)
ce06eb0 Add serializability check for interface payloads in Haskell (#12560)
aced78f Drop dadew uninstall (#12566)
ac3ca1d ledger-api-test-tool: Enable command deduplication tests by default [KVL-1261] (#12541)
5f58698 [JSON-API] Add list-specific-users-rights, grant & revoke user rights endpoints (#12352)
42aadec Cleanup Haskell serializability check (#12565)
5d93eb9 Engine stacktraces are disabled by default (#12562)
42d86ac [User management] Disabling user management in auth when user management feature is disabled [DPP-827] (#12503)
13153de update NOTICES file (#12564)
5bfe4ed Wait for server process in client_server_test (#12551)
f1cd4b1 Remove dependencies on compatibility libraries (#12548)
dcd721d Drop scenarios (#12484)
170d839 Fix es (#12554)
8fa54c6 Experimental daml assistant support for metering report [DPP-816] (#12485)
9802028 Cut a new split release (#12547)
aec3390 Replace silencer plugin with built-in warning configuration (#12543)
93cfe04 Remove from the Java bindings constructors that were deprecated since 0.x (#12536)
8d65aa3 Remove Sandbox classic stores and related unit tests (#12532)
24b2325 Bump node-fetch to address dependabot alerts (#12553)
fdb034c split-release: Canton dependencies to public GCS (#12552)
3f8ec07 Upgrade to the latest Canton snapshot (#12544)
8692d80 Fix trigger compat test for canton sandbox (#12549)
3ea8ade LF: Test evaluation order of exercise and exercise_by_key (#12519)
36f8d67 Upgrade `css-loader` to 5.2.7 (#12550)
a150737 Upgrade msys2 (#12545)
01447fd docs: typos and minor clarification for authz docs (#12534)
fbf244e alert on invalid users in create-daml-app (#12518)
f2b4abe update NOTICES file (#12542)
bd0ae02 Startup initialization header for runners [DPP-860] (#12525)
15c0ad7 Migration DB unit testing for PostgreSQL v111 to v116 [DPP-756] (#12517)
7218e6f ledger-api-test-tool: Remove retired tests. (#12535)
cbb4986 Add Empty GRPC Metering Report Service [DPP-856] (#12515)
4d26f08 ledger-api-test-tool: Enable ParticipantPruningIT for everyone. [KVL-1261] (#12529)
3044958 ledger-api-test-tool: Remove deprecated options. (#12533)
5ab9eae Make mutable-contract-state-cache the default and only option (#12528)
89d95e6 user management: allow ':' in user ids (#12531)
f5d7821 compatibility: Disable MultiParticipantIT for old versions. (#12526)
2deeabf [User management] Add feature flag to enable user management [DPP-827] (#12420)
b843117 Drop feature flag for v0 cid support (#12522)
73277f4 Upgrade to oracle 19.14 image for ci (#12523)
cdde8df ledger-api-test-tool: Add assertions and a test case for successful completions when converting deduplication durations to offsets [KVL-1220] (#12462)
2267d1a sandbox-classic uses Sandbox-on-X internals [DPP-860] (#12466)
20cda01 specify that deduplication offsets are exclusive (#12488)
e9e1b06 ledger-api-test-tool: Enable `MultiPartySubmissionIT` for everyone. [KVL-1261] (#12500)
a5f56e0 Use canton sandbox in script+trigger compat tests (#12514)
9c03e79 Build create-daml-app with -Werror (#12513)
688f1e1 Drop v0 contract ids (#12464)
c35d34d Remove ResetService from the grpc documentation (#12512)
eb61893 resources: Remove ResettableResourceOwner. (#12499)
7880d54 Add --port-file and --dar flags in daml sandbox (#12505)
3c8a646 Tell users to use --install-assistant=yes (#12507)
36536fa LF: Test evaluation order of lookup_by_key (#12494)
ad7ce54 participant-integration-api: Factor out feature flags into a class. (#12496)
4d698c1 Update windows testing instructions (#12504)
0f8e40c user management: add reference docs (#12398)
96b8651 Drop orphaned vim syntax files (#12502)
a644406 Avoid stale DAML_SDK_VERSION_LATEST in assistant (#12493)
7a1b37c [User management] Nullable primary_party and for_party (#12419)
cd30f01 update NOTICES file (#12498)
b11f11b Drop support for no seeding in sandbox-classic (#12495)
5d2be1e ledger-api-test-tool-on-canton: Use `join` to clean up exclusions. (#12497)
072d57a DPP-553 Consistently use anorm string interpolation (#12266)
f03fa6a ledger-api-test-tool: Govern ContractIdIT test runs through a feature. (#12454)
dd4fc1f split release (#12492)
de2a8c0 ci: use service account for Windows nodes (#12489)
644efd1 Lower log level to warn (#12490)
ebd3827 Make UserId properly opaque by defining it as a variant (#12476)
3159d60 LF: more tests for evaluation order of fetch (#12471)
96f454a update compat versions for 1.18.1 (#12430)
82639a1 Fix get-daml.sh installation script (#12487)
e222c35 Enhance conformance test: ACS coverage [DPP-672] (#11334)
2443891 Remove /user/delete GET endpoint (#12486)
681f8fc Add missing serializability checks for interfaces (#12483)
7c59728 Remove reset service support from the storage backend [DPP-804] (#12477)
f7e2faf [User management] Addressing outstanding code review comments from #12344 (#12479)
350fe5c Update RELEASE.md (#12481)
82534f9 Remove the reset service from the ledger api and the documentation [DPP-804] (#12472)
4885e61 rotate release duty after 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12468)
9518f15 Fix sandbox on x compat test switch (#12478)
66494a2 [User management] created_at and granted_at in Oracle (#12417)
6fbaac4 Remove user-management error cases from scenario-service proto. (#12460)
1f1e8bf [DPP-829] Make ledger-id field optional in requests (#12243)
74e9efc release 2.0.0-snapshot.20220118.8919.0.d0813e61 (#12467)
d0cbccb Explicitly name coalesced columns (#12377)
954bc5e Remove the reset service from sandbox-classic and sandbox [DPP-804] (#12448)
e40c221 Fix compatibility tests. (#12465)
```
Changelog:
```
[Java bindings] Deprecate `DamlLedgerClient.Builder.withExpectedLedgerId`
Transaction Metering now persisted to database
- [Ledger API Test Tool] More command deduplication tests have been
  enabled by default. This should not affect testing a fully functioning
  ledger. If any tests fail, they can be temporarily excluded.

- [HTTP-JSON] Added endpoint /user/rights that if called with POST will return user rights of the user specified via the payload

- [HTTP-JSON] Added endpoints user/rights/grant & user/rights/revoke which allow granting & revoking user rights for a specific user

Add experimental Daml assistant support for ledger metering
[Java bindings] `DamlLedgerClient.forLedgerIdAndHost` and `DamlLedgerClient.forHostWithLedgerIdDiscovery` static methods
and the constructor taking a `ManagedChannel`, which were all deprecated since 0.13.38, have been removed.
- [Ledger API Test Tool] The retired test suites, ``LotsOfPartiesIT``
  and ``TransactionScaleIT``, have been removed in favor of more
  targeted benchmarking tests. If you are actively including these tests
  in your test run, you will need to remove them. These tests are
  disabled by default so it is likely that no change will be needed.
- [Ledger API Test Tool] The ``ParticipantPruningIT`` test case has
  been enabled by default. You may need to disable specific test cases
  accordingly.
Sandbox: Participant server now supports '--feature-user-management' flag to turn on or off user management feature.
- [Ledger API Test Tool] The ``MultiPartySubmissionIT`` test case has
  been enabled by default. You will most likely not need to change
  anything.
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
  using ledger feature flags to determine which test cases are run. You
  will need to configure the ``StandaloneApiService`` accordingly.

- [HTTP-JSON] Removed the /user/delete GET endpoint. Please use the /user/delete POST endpoint with the own user ID if you need to delete the user associated with the current token

Remove reset service from the ledger api protocol and the documentation
The field "ledger_id" in all request to Participant API is now optional (was required).
Reset service has been removed from the sandbox-classic, sandbox and daml-on-sql
```

CHANGELOG_BEGIN
CHANGELOG_END
stefanobaghino-da added a commit that referenced this pull request Jan 27, 2022
@stefanobaghino-da is in charge of this release

changelog:
```
- [Daml Studio] The minimum supported vscode version is now 1.52.0.

- [Typescript Bindings] All methods for user management have been added to the bindings (createUser, deleteUser, getUser, listUsers, listUserRights, grantUserRight, revokeUserRight)

[Java bindings] Deprecate `DamlLedgerClient.Builder.withExpectedLedgerId`
Transaction Metering now persisted to database
- [Ledger API Test Tool] More command deduplication tests have been
  enabled by default. This should not affect testing a fully functioning
  ledger. If any tests fail, they can be temporarily excluded.

- [HTTP-JSON] Added endpoint /user/rights that if called with POST will return user rights of the user specified via the payload

- [HTTP-JSON] Added endpoints user/rights/grant & user/rights/revoke which allow granting & revoking user rights for a specific user

Add experimental Daml assistant support for ledger metering
[Java bindings] `DamlLedgerClient.forLedgerIdAndHost` and `DamlLedgerClient.forHostWithLedgerIdDiscovery` static methods
and the constructor taking a `ManagedChannel`, which were all deprecated since 0.13.38, have been removed.
- [Ledger API Test Tool] The retired test suites, ``LotsOfPartiesIT``
  and ``TransactionScaleIT``, have been removed in favor of more
  targeted benchmarking tests. If you are actively including these tests
  in your test run, you will need to remove them. These tests are
  disabled by default so it is likely that no change will be needed.
- [Ledger API Test Tool] The ``ParticipantPruningIT`` test case has
  been enabled by default. You may need to disable specific test cases
  accordingly.
Sandbox: Participant server now supports '--feature-user-management' flag to turn on or off user management feature.
- [Ledger API Test Tool] The ``MultiPartySubmissionIT`` test case has
  been enabled by default. You will most likely not need to change
  anything.
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
  using ledger feature flags to determine which test cases are run. You
  will need to configure the ``StandaloneApiService`` accordingly.
```

commits:
```
346a61d79c0574f4a045d46b7e39a99217f44da4 release 2.0.0-snapshot.20220127.9042.0.4038d0a7
4038d0a Fix VSCode extension (#12611)
13acf66 Point out to run release manual tests on Windows with the KV sandbox (#12608)
7305a8c Color and typography edits (#12609)
4a6729e Fix a bug in user management caching (#12605)
3e16e5e Handle ledger bridge Queue errors (#12510)
b1a9175 ci: reduce Windows capacity (#12607)
53edac1 Move some daml-script compat tests to sandbox-on-x (#12595)
6b902fd [TS-Bindings] Complete support for user management (#12576)
f04dcfa release 2.0.0-snapshot.20220126.9029.0.42cf70b1 (#12603)
403efa7 Add support for interfaces through data-dependencies (#12516)
ea62021 Upgrade ghcide (#12579)
98e6842 ci: pin Windows folders, step 1 (#12597)
01219d6 ci: temporarily increase Windows capacity (#12599)
42cf70b ci: try to fix release process (#12600)
0579ebd Mark the `withExpectedLedgerId` method in `DamlLedgerClient.Builder` as deprecated (#12537)
deb7f3a Move some trigger compat tests to sandbox-on-x (#12598)
5cdf9b9 Remove some unecessary `implictly` with `Factory` (#12559)
9c3f1ce Drop dummy token from JSON API check (#12593)
3366c6f compatibility: Exclude another command deduplication test. (#12592)
6b50abf release 2.0.0-snapshot.20220126.9013.0.54339ada (#12587)
ad7148b Tear down daml services gracefully (#12591)
16a4f06 Avoid explicitly listing all Oracle tests in build.yml (#12594)
bc9fa28 Make ledger end non-optional (#12570)
122a487 Fix static-time config in Canton (#12584)
7bcce7c Upgrade rules-haskell (#12580)
159f384 Drop 7zip from Windows dev-env (#12590)
215a63d correct deprecated options with newest synopsys-detect version (#12586)
84023ae update NOTICES file (#12589)
79864ef Fix error codes for V1 cid rejections (#12571)
54339ad Safeguard Oracle CI tests with lockIdSeed [DPP-802] (#12573)
5cccec2 release: use-devenv (#12583)
90aacea split-release (#12577)
cc19df4 Persist transaction metering info [DPP-814,DPP-821] (#12274)
cb77c84 damlc: Don't rely on worker for zero argument polymorphic type constructors (#12581)
ed33c0d split: flat(ter) files in Artifactory (#12575)
e355832 split: do not push exe (#12574)
0afc4a5 split: do not tag (#12569)
ebf7908 LF: check contracts are consumed when found them in the cache (#12527)
ce06eb0 Add serializability check for interface payloads in Haskell (#12560)
aced78f Drop dadew uninstall (#12566)
ac3ca1d ledger-api-test-tool: Enable command deduplication tests by default [KVL-1261] (#12541)
5f58698 [JSON-API] Add list-specific-users-rights, grant & revoke user rights endpoints (#12352)
42aadec Cleanup Haskell serializability check (#12565)
5d93eb9 Engine stacktraces are disabled by default (#12562)
42d86ac [User management] Disabling user management in auth when user management feature is disabled [DPP-827] (#12503)
13153de update NOTICES file (#12564)
5bfe4ed Wait for server process in client_server_test (#12551)
f1cd4b1 Remove dependencies on compatibility libraries (#12548)
dcd721d Drop scenarios (#12484)
170d839 Fix es (#12554)
8fa54c6 Experimental daml assistant support for metering report [DPP-816] (#12485)
9802028 Cut a new split release (#12547)
aec3390 Replace silencer plugin with built-in warning configuration (#12543)
93cfe04 Remove from the Java bindings constructors that were deprecated since 0.x (#12536)
8d65aa3 Remove Sandbox classic stores and related unit tests (#12532)
24b2325 Bump node-fetch to address dependabot alerts (#12553)
fdb034c split-release: Canton dependencies to public GCS (#12552)
3f8ec07 Upgrade to the latest Canton snapshot (#12544)
8692d80 Fix trigger compat test for canton sandbox (#12549)
3ea8ade LF: Test evaluation order of exercise and exercise_by_key (#12519)
36f8d67 Upgrade `css-loader` to 5.2.7 (#12550)
a150737 Upgrade msys2 (#12545)
01447fd docs: typos and minor clarification for authz docs (#12534)
fbf244e alert on invalid users in create-daml-app (#12518)
f2b4abe update NOTICES file (#12542)
bd0ae02 Startup initialization header for runners [DPP-860] (#12525)
15c0ad7 Migration DB unit testing for PostgreSQL v111 to v116 [DPP-756] (#12517)
7218e6f ledger-api-test-tool: Remove retired tests. (#12535)
cbb4986 Add Empty GRPC Metering Report Service [DPP-856] (#12515)
4d26f08 ledger-api-test-tool: Enable ParticipantPruningIT for everyone. [KVL-1261] (#12529)
3044958 ledger-api-test-tool: Remove deprecated options. (#12533)
5ab9eae Make mutable-contract-state-cache the default and only option (#12528)
89d95e6 user management: allow ':' in user ids (#12531)
f5d7821 compatibility: Disable MultiParticipantIT for old versions. (#12526)
2deeabf [User management] Add feature flag to enable user management [DPP-827] (#12420)
b843117 Drop feature flag for v0 cid support (#12522)
73277f4 Upgrade to oracle 19.14 image for ci (#12523)
cdde8df ledger-api-test-tool: Add assertions and a test case for successful completions when converting deduplication durations to offsets [KVL-1220] (#12462)
2267d1a sandbox-classic uses Sandbox-on-X internals [DPP-860] (#12466)
20cda01 specify that deduplication offsets are exclusive (#12488)
e9e1b06 ledger-api-test-tool: Enable `MultiPartySubmissionIT` for everyone. [KVL-1261] (#12500)
a5f56e0 Use canton sandbox in script+trigger compat tests (#12514)
9c03e79 Build create-daml-app with -Werror (#12513)
688f1e1 Drop v0 contract ids (#12464)
c35d34d Remove ResetService from the grpc documentation (#12512)
eb61893 resources: Remove ResettableResourceOwner. (#12499)
7880d54 Add --port-file and --dar flags in daml sandbox (#12505)
3c8a646 Tell users to use --install-assistant=yes (#12507)
36536fa LF: Test evaluation order of lookup_by_key (#12494)
ad7ce54 participant-integration-api: Factor out feature flags into a class. (#12496)
4d698c1 Update windows testing instructions (#12504)
0f8e40c user management: add reference docs (#12398)
96b8651 Drop orphaned vim syntax files (#12502)
a644406 Avoid stale DAML_SDK_VERSION_LATEST in assistant (#12493)
7a1b37c [User management] Nullable primary_party and for_party (#12419)
cd30f01 update NOTICES file (#12498)
b11f11b Drop support for no seeding in sandbox-classic (#12495)
5d2be1e ledger-api-test-tool-on-canton: Use `join` to clean up exclusions. (#12497)
072d57a DPP-553 Consistently use anorm string interpolation (#12266)
f03fa6a ledger-api-test-tool: Govern ContractIdIT test runs through a feature. (#12454)
dd4fc1f split release (#12492)
de2a8c0 ci: use service account for Windows nodes (#12489)
644efd1 Lower log level to warn (#12490)
```

changelog_begin
changelog_end
stefanobaghino-da added a commit that referenced this pull request Jan 27, 2022
@stefanobaghino-da is in charge of this release

changelog:
```
- [Daml Studio] The minimum supported vscode version is now 1.52.0.

- [Typescript Bindings] All methods for user management have been added to the bindings (createUser, deleteUser, getUser, listUsers, listUserRights, grantUserRight, revokeUserRight)

[Java bindings] Deprecate `DamlLedgerClient.Builder.withExpectedLedgerId`
Transaction Metering now persisted to database
- [Ledger API Test Tool] More command deduplication tests have been
  enabled by default. This should not affect testing a fully functioning
  ledger. If any tests fail, they can be temporarily excluded.

- [HTTP-JSON] Added endpoint /user/rights that if called with POST will return user rights of the user specified via the payload

- [HTTP-JSON] Added endpoints user/rights/grant & user/rights/revoke which allow granting & revoking user rights for a specific user

Add experimental Daml assistant support for ledger metering
[Java bindings] `DamlLedgerClient.forLedgerIdAndHost` and `DamlLedgerClient.forHostWithLedgerIdDiscovery` static methods
and the constructor taking a `ManagedChannel`, which were all deprecated since 0.13.38, have been removed.
- [Ledger API Test Tool] The retired test suites, ``LotsOfPartiesIT``
  and ``TransactionScaleIT``, have been removed in favor of more
  targeted benchmarking tests. If you are actively including these tests
  in your test run, you will need to remove them. These tests are
  disabled by default so it is likely that no change will be needed.
- [Ledger API Test Tool] The ``ParticipantPruningIT`` test case has
  been enabled by default. You may need to disable specific test cases
  accordingly.
Sandbox: Participant server now supports '--feature-user-management' flag to turn on or off user management feature.
- [Ledger API Test Tool] The ``MultiPartySubmissionIT`` test case has
  been enabled by default. You will most likely not need to change
  anything.
- [Ledger API Test Tool] The "ContractIdIT" test is now run by default,
  using ledger feature flags to determine which test cases are run. You
  will need to configure the ``StandaloneApiService`` accordingly.
```

commits:
```
346a61d79c0574f4a045d46b7e39a99217f44da4 release 2.0.0-snapshot.20220127.9042.0.4038d0a7
4038d0a Fix VSCode extension (#12611)
13acf66 Point out to run release manual tests on Windows with the KV sandbox (#12608)
7305a8c Color and typography edits (#12609)
4a6729e Fix a bug in user management caching (#12605)
3e16e5e Handle ledger bridge Queue errors (#12510)
b1a9175 ci: reduce Windows capacity (#12607)
53edac1 Move some daml-script compat tests to sandbox-on-x (#12595)
6b902fd [TS-Bindings] Complete support for user management (#12576)
f04dcfa release 2.0.0-snapshot.20220126.9029.0.42cf70b1 (#12603)
403efa7 Add support for interfaces through data-dependencies (#12516)
ea62021 Upgrade ghcide (#12579)
98e6842 ci: pin Windows folders, step 1 (#12597)
01219d6 ci: temporarily increase Windows capacity (#12599)
42cf70b ci: try to fix release process (#12600)
0579ebd Mark the `withExpectedLedgerId` method in `DamlLedgerClient.Builder` as deprecated (#12537)
deb7f3a Move some trigger compat tests to sandbox-on-x (#12598)
5cdf9b9 Remove some unecessary `implictly` with `Factory` (#12559)
9c3f1ce Drop dummy token from JSON API check (#12593)
3366c6f compatibility: Exclude another command deduplication test. (#12592)
6b50abf release 2.0.0-snapshot.20220126.9013.0.54339ada (#12587)
ad7148b Tear down daml services gracefully (#12591)
16a4f06 Avoid explicitly listing all Oracle tests in build.yml (#12594)
bc9fa28 Make ledger end non-optional (#12570)
122a487 Fix static-time config in Canton (#12584)
7bcce7c Upgrade rules-haskell (#12580)
159f384 Drop 7zip from Windows dev-env (#12590)
215a63d correct deprecated options with newest synopsys-detect version (#12586)
84023ae update NOTICES file (#12589)
79864ef Fix error codes for V1 cid rejections (#12571)
54339ad Safeguard Oracle CI tests with lockIdSeed [DPP-802] (#12573)
5cccec2 release: use-devenv (#12583)
90aacea split-release (#12577)
cc19df4 Persist transaction metering info [DPP-814,DPP-821] (#12274)
cb77c84 damlc: Don't rely on worker for zero argument polymorphic type constructors (#12581)
ed33c0d split: flat(ter) files in Artifactory (#12575)
e355832 split: do not push exe (#12574)
0afc4a5 split: do not tag (#12569)
ebf7908 LF: check contracts are consumed when found them in the cache (#12527)
ce06eb0 Add serializability check for interface payloads in Haskell (#12560)
aced78f Drop dadew uninstall (#12566)
ac3ca1d ledger-api-test-tool: Enable command deduplication tests by default [KVL-1261] (#12541)
5f58698 [JSON-API] Add list-specific-users-rights, grant & revoke user rights endpoints (#12352)
42aadec Cleanup Haskell serializability check (#12565)
5d93eb9 Engine stacktraces are disabled by default (#12562)
42d86ac [User management] Disabling user management in auth when user management feature is disabled [DPP-827] (#12503)
13153de update NOTICES file (#12564)
5bfe4ed Wait for server process in client_server_test (#12551)
f1cd4b1 Remove dependencies on compatibility libraries (#12548)
dcd721d Drop scenarios (#12484)
170d839 Fix es (#12554)
8fa54c6 Experimental daml assistant support for metering report [DPP-816] (#12485)
9802028 Cut a new split release (#12547)
aec3390 Replace silencer plugin with built-in warning configuration (#12543)
93cfe04 Remove from the Java bindings constructors that were deprecated since 0.x (#12536)
8d65aa3 Remove Sandbox classic stores and related unit tests (#12532)
24b2325 Bump node-fetch to address dependabot alerts (#12553)
fdb034c split-release: Canton dependencies to public GCS (#12552)
3f8ec07 Upgrade to the latest Canton snapshot (#12544)
8692d80 Fix trigger compat test for canton sandbox (#12549)
3ea8ade LF: Test evaluation order of exercise and exercise_by_key (#12519)
36f8d67 Upgrade `css-loader` to 5.2.7 (#12550)
a150737 Upgrade msys2 (#12545)
01447fd docs: typos and minor clarification for authz docs (#12534)
fbf244e alert on invalid users in create-daml-app (#12518)
f2b4abe update NOTICES file (#12542)
bd0ae02 Startup initialization header for runners [DPP-860] (#12525)
15c0ad7 Migration DB unit testing for PostgreSQL v111 to v116 [DPP-756] (#12517)
7218e6f ledger-api-test-tool: Remove retired tests. (#12535)
cbb4986 Add Empty GRPC Metering Report Service [DPP-856] (#12515)
4d26f08 ledger-api-test-tool: Enable ParticipantPruningIT for everyone. [KVL-1261] (#12529)
3044958 ledger-api-test-tool: Remove deprecated options. (#12533)
5ab9eae Make mutable-contract-state-cache the default and only option (#12528)
89d95e6 user management: allow ':' in user ids (#12531)
f5d7821 compatibility: Disable MultiParticipantIT for old versions. (#12526)
2deeabf [User management] Add feature flag to enable user management [DPP-827] (#12420)
b843117 Drop feature flag for v0 cid support (#12522)
73277f4 Upgrade to oracle 19.14 image for ci (#12523)
cdde8df ledger-api-test-tool: Add assertions and a test case for successful completions when converting deduplication durations to offsets [KVL-1220] (#12462)
2267d1a sandbox-classic uses Sandbox-on-X internals [DPP-860] (#12466)
20cda01 specify that deduplication offsets are exclusive (#12488)
e9e1b06 ledger-api-test-tool: Enable `MultiPartySubmissionIT` for everyone. [KVL-1261] (#12500)
a5f56e0 Use canton sandbox in script+trigger compat tests (#12514)
9c03e79 Build create-daml-app with -Werror (#12513)
688f1e1 Drop v0 contract ids (#12464)
c35d34d Remove ResetService from the grpc documentation (#12512)
eb61893 resources: Remove ResettableResourceOwner. (#12499)
7880d54 Add --port-file and --dar flags in daml sandbox (#12505)
3c8a646 Tell users to use --install-assistant=yes (#12507)
36536fa LF: Test evaluation order of lookup_by_key (#12494)
ad7ce54 participant-integration-api: Factor out feature flags into a class. (#12496)
4d698c1 Update windows testing instructions (#12504)
0f8e40c user management: add reference docs (#12398)
96b8651 Drop orphaned vim syntax files (#12502)
a644406 Avoid stale DAML_SDK_VERSION_LATEST in assistant (#12493)
7a1b37c [User management] Nullable primary_party and for_party (#12419)
cd30f01 update NOTICES file (#12498)
b11f11b Drop support for no seeding in sandbox-classic (#12495)
5d2be1e ledger-api-test-tool-on-canton: Use `join` to clean up exclusions. (#12497)
072d57a DPP-553 Consistently use anorm string interpolation (#12266)
f03fa6a ledger-api-test-tool: Govern ContractIdIT test runs through a feature. (#12454)
dd4fc1f split release (#12492)
de2a8c0 ci: use service account for Windows nodes (#12489)
644efd1 Lower log level to warn (#12490)
```

changelog_begin
changelog_end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants