daml/LATEST

33 lines
1.7 KiB
Plaintext
Raw Normal View History

release 2.0.0-snapshot.20211130.8536.0.683ab871 (#11934) * release 2.0.0-snapshot.20211130.8536.0.683ab871 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. @SamirTalwar-DA is in charge of this release. Commit log: ``` 683ab8714308a429b2cb41ba9384f4fe0f51d06f Move ghc-lib{,-parser} to bazel-haskell-deps (#11775) 9350632eae1728e9a3c20c237169c5fae9c72198 Fix releasing of resources in case connection initialization failed (#11915) e1559af3136aef343b752bfd00357506d7a86db8 Update `ModelConformanceValidator` comments and prevent them from getting outdated easily (#11924) 16a41f7da2e9e2a8038e66cdd31dc665324e1662 Avoid package validation in speedy compilation benchmark. (#11927) 16135e6f7cd8b9eb4ddc33aaed55d485d58116f4 Limit supported input versions in damlc to >= LF 1.8 (#11905) 0ee4154972dd54d615727a4e8d143288269ad0d3 Use Absolute-indexes as keys for the Env-mapping during closure-conversion (#11912) 1d7bca801ed4737633197194e3adba91ad5c0d85 Add optional typerep argument in UExerciseInterface. (#11910) c2c22f8dea7d34632e318f54ca9af382ee16183d kvutils: Protos no longer depend on the Daml-LF transaction proto [KVL-1166] (#11909) 56419484102bd65956d77d01c2d81cf89a283411 [Docs] Add labels to error codes to support references to them (#11913) 0e776769eeed001d981557abb57aa72a86d0b1e4 Update protobuf docs template to handle oneOf (#11887) 5a9481f9d8f80283140b6fdc44b200a0f915836d unify heading markup according to README.md (#11919) 61334cff77ce435a291a6374b27f27c8c9f1f947 kvutils - Add Writer which can handle deduplication periods as offsets [KVL-1172] (#11900) 0b9d57b95ed12927a34a79a4271a4ab98da8ef36 Add ContractDoesntImplementInterface error. (#11884) 49e5d415f68f67beeeed796ca351ed1e60a620a0 align index.rst files for HTML and PDF (#11907) dbbb05fe2e2dacce7a8496e05d03d5557c018590 Split daml-lf encode/decode Haskell libraries (#11906) e5d3902372af429c65c1762b4a15e9968eb82da2 iface: support for fixed choices in TS codegen (#11630) 31cc540cf9adaeb5509bf6071df8e8d8a4649de1 Turn package name & version warnings into an error (#11859) 4e500600214dbfd9e5ec815e1008ef0d19a7da0a self-service compat: set branch name to not main (#11902) 2f4aa4797ee616c086e611a4ffcc9b9a6988e0e9 refactor to avoid impossible code path (#11901) a81995c82e2c4d12b4c00960fbba15949bda9e10 switch dev images to Temurin (#11895) f3a0e2eba131a78baa1f51f62a3eb8674b5efce4 Set scalafmt dialect explicitly (#11898) 60e372dcd211e86f2aa6dc6a04ef6771995f7119 Don't run pruning tests on H2, they time-out (#11897) 58e69ade1ab5f1a797a2119ccbcf1c41a73c548b LF: replace "dev" LF version by "1.dev" in bazel files (#11894) 8ef348dab02cb9a8cf9ae5f7806dc4d180958ffc Use absolute stack locations in SExpr1 (#11877) 071bcf7639f15ebdeef7e795d7cee9b139cfd941 update NOTICES file (#11892) a1705d669a0c10be7ed6c79fd33f0b2c1e07fb14 participant-state - Add an implicit logging context to the write service [kvl-1072] (#11838) 9ff64f7faab578bb2f22e3b21c356ce14360383b Change daml script’s sleep to sleep for a minimum amount of time (#11886) 132c277bda78be6813b2077901204ec2283a6c7f Add a Canton sandbox to the SDK (#11881) 68a23436e8ca67bd6f365b7b7e7340caf5551e43 Only run self-service compat job on PRs (#11893) c27406cdcffd9f7e4bb3208d70c4b1b580f3f7ee [DPP-762][Self-service error codes] Automate generation of inventory of error categories. #11879 13797229cf33a7b7d3e9280447fa4d0ace73b9ff Adapt the compatibility exclusions (#11872) d66ecc90c9ae70b9cb1f0c1f962faedc51d86537 LF: Drop Archive Snapshot for LF < 1.14 (#11820) abc141b57e919b00671ad00574d325e599092d82 Increase pruning tests timeout (#11891) 66b407467f14fb47faf2bbacb36fb1f53ba1d61f Update protobuf docs plugin (#11880) b0dda5386833dc7c11cea29989d0bf012cbcebf9 LF check stable proto with buf and md5sum. (#11888) 056fc52706467990086c3a87272ad82163ab68c8 Log while processing base64 encoded server key [DPP-761] (#11835) dbda67ba81ee58dbd43cf5c312a4c6388d8f3617 bump JVM in Docker image (#11883) f69bd688ccc17ecb7faa108ab4fff78cb17ae947 ledger-api-bench-tool: Fix flaky `MetricsCollectorSpec` (#11750) cb758e8d917385c879813de557b1b865e82ff18e Fix call to experimental interface signatory builtin (#11882) 024400b9e4384cc1bb72e3290fb797eca163ab62 Error when fetching the wrong template id (via fetch by interface). (#11862) 0852c8f6fa18730f1f0397dfed4fb74759b7edd1 Make DA.List.Total return Optional instead (#11878) df373466dc44d9989c8f92a2419ef0c2821f05a4 [JSON-API] Add query store metrics (#11809) 2f8f69e7cb4a2a136b633fe70af4902518026c90 Drop DA.Next.Set and DA.Next.Map (#11864) 5f3a4d20673974be499a968243d10dd26679d3ef [Self-service error codes] Fix section numbering in pdf for error codes section by moving it a level higher. (#11867) cf3ac011ca60a226d783e87676e3125f26c15303 [Self-service error codes] Do not return error code id and definite_answer in metadata for security sensitive errors (#11828) 026b92a8b1db7cb562703c9a3a791b381d161826 Add gRPC definitions for participant user management service (#11818) 2fde30d9166fb65a1eb5939d43d7755884379fad Disable writing volatile bits in Scala statsfile (#11875) 4ed9deda392395e691c68faca97fe7df0c97d29b Remove xxd from dev-env (#11876) eaded41acaf10ba4723dd5573988b73b925e44b6 remove mergify (#11866) 3cd5028b615bece5c51eb8e221e4f5fb5df2ddde fix a few more things in the daml-lf spec (#11851) beca0ee3e9e1fcbbab90e07f42434c8dd95a95b9 Refactor StandaloneApiServer factory (#11842) 6356f13cde47f164e28cb072e7337c64758606f2 Properly upgrade gRPC to 1.41.0 (#11858) f6accd3a2ff61b84651ec563ae75baf41718fe5b Release 1.18 RC2 (#11869) d858873c449b2f65d463a1b4150e15edac8b6bde fix main (#11868) da8dd7ee2f9366dcb68e70d75daac29354040ede rotate release duty after 1.18.0-snapshot.20211123.8463.0.bd2a6852 (#11845) 066da4f30c4277b42a1497f7aa2ce351994ba180 [Self-service error codes] Small fixes for docs/scripts/live-preview.sh (#11856) 258fb65d1c702b7b13b66e3d9df2c9c266cebaaf Document how to deal with HTTP JSON API schema changes (#11336) b8937ad81b00c06f781cd6b550be51a2ed58ec43 ci: self-service compat test start (#11853) de8d15fb1e335863caf5525ba78c7cd98a5395ff fix Nix install on macOS nodes (#11696) b3d1d40b50e3248cfe4273e1f8bd2a74fe71b4de Expose submissionId via the Java bindings (#11839) (#11847) 86da6e8eef05d71a450ab66481f03f00f6e11469 LF: Test scala interface type checking (#11833) 5f52f00afb531932843999ca320452b0a00ffb71 increase linux cluster size (#11860) 5c12d757f4861fe68e9b95ddcc6a0c8dbca00d94 Add a guard when exercising by interface. (#11836) 7c3a2a78017374e749fb16a2a0d3a9604a734acf Add a new KV submission failure error (#11854) aebc5a734fede67e4c285948755f15590ef04254 All packages must be valid (#11850) 03748431434a2ad6c37663401f6d107424e0132d speedy compilation benchmark (#11852) 393893a60123dd77b4c7a58ba6112b4fd769dff0 LF encoder: make package validation optional (#11849) 25b476fdb23d8f86d70dfd55f701d802bd8cb5f3 DPP-726 Add string interning unit tests (#11841) 59eb0d2eff57fe388099b56f54d88e1e29bc19ad kvutils - For duplicate command rejections, add the submission id as metadata [KVL-1175] (#11848) 970243dd4667fc603240c071d6c9bb5d104af5ec Ensure stack-safety during closure-conversion. (#11778) e63c80ddddc70b689bb643ad21e6ae74a8c3b88a update LATEST (#11846) db425216d14b4d43cae6c07a1921126e27ec6057 libs-scala: Change `SourceQueueResourceOwner` to `BoundedSourceQueueResourceOwner` [KVL-1177] (#11832) 109b60613cae3420bf5be3a01a6c36c75e9788cd Make the `InstrumentedSource.queue` use the `BoundedSourceQueue` [KVL-1177] (#11807) ``` Changelog: ``` - [Daml Compiler] The supported input LF versions for data-dependencies are now limited to LF 1.8 and newer. - [Daml2js] DARs with LF version < 1.8 are no longer supported. - [Integration Kit] kvutils protos no longer depend on the Daml-LF transaction proto - [Daml Standard Library] DA.List.Total functions now return Optional instead of being polymorphic in the return type. DA.Optional.Total has been removed. - [JSON-API] added metrics to separately track: - time taken to update query-store ACS (from ledger) - lookup times for the query store - [Daml Standard Library] DA.Next.Map and DA.Next.Set have been removed after being deprecated since Daml-LF 1.11 - [Ledger API] Introduce gRPC definitions for experimental user managament service to manage users and their rights for interacting with the Ledger API served by a participant node. [HTTP JSON API] [Docs] Document lack of data continuity guarantees and how to deal with schema changes [Java Bindings] submissionId is now exposed via the bindings, see issue #11705 [Integration Kit] Add a new SUBMISSION_FAILED internal error kvutils - For duplicate command rejections, the submission id of the already accepted transaction is returning as part of the gRPC metadata. The submission id will be included under the key `existing_submission_id`. - [Integration Kit] `SourceQueueResourceOwner` has been renamed to `BoundedSourceQueueResourceOwner` and takes a `BoundedSourceQueue` from now on - [Integration Kit] InstrumentedSource.queue.offer no longer returns a Future ``` CHANGELOG_BEGIN CHANGELOG_END * bump to include fix for damlc package validation changelog_begin changelog_end Co-authored-by: Azure Pipelines Daml Build <support@digitalasset.com> Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
2021-12-01 13:26:59 +03:00
1d0ff3cc71583f738489e7732fa758a39f9cbfbd 2.0.0-snapshot.20211201.8538.0.1d0ff3cc
39d9afcdaa536caa092bd6d3a8d8aadc0855f913 1.18.0-snapshot.20211124.8419.0.39d9afcd
e05be36512ade4d9cb6921614c23dadbde1747a3 1.17.1
49a75801fbafa1ffab3247ecfbb06a82925e8a0b 1.17.0
48050ad7836b9825c9dc7bd96fbc980b8eb9b6e5 1.16.0
aca22721f709d879a49fa958a1eb0b532fcbde54 1.15.0
aa2978400dd88a6011db18a62fb71c23ebd9d20b 1.14.2
d1b54ff0a0213d0f88a30078dacae06744529773 1.14.0
5f5323806b9ee704dc7f5bed5c458ee9d0c431f7 1.13.1
9ae787d005a5ea5c3c65aef9f56a56082ea4c167 1.13.0
631db446f0e5f24845b9837ffcf8ea6061f91f4f 1.12.0
eed4ad32b7d6b78c575b67b2bfa459738d08d947 1.11.3-snapshot.20211111.6441.0.eed4ad32
a08f6ea24245461e912f2be5676009dcbea05634 1.11.2
7cd6380e156810ec7a19abbb3b967f45acab00b9 1.11.1
d3d5042ac04f4c0f755df7e87bc191716fdecc4c 1.11.0
80d080ef9f1c63de6f94d22592f89d623bfb1fa6 1.10.2
19bf4031f551334ff70a77bbf469b8af8e061bf2 1.10.0
5b3663a500e6840109e0e3e21cd6dea3c546573d 1.9.0
d443707c1893b58206f2f2ba62a18cd25e1ff53c 1.8.0-snapshot.20210303.5843.0.d443707c
59f5d40754bebf76f0530d94eb4c723cba21a21b 1.8.1
38455e8ca91ca3c351a6d15bd9ec25070386fc6c 1.8.0
e75d42ddc3150c0e054c35cc8c5afcf523ed5702 1.7.0
547abc97d96ad9ab4ed6e5fb6acf4c05ae85b639 1.6.1
d21cb496b7373dcf5c7afcc373b7898cbe54019e 1.6.0
eb68e680f649bc7c2b6b2c3b8a4c7a664f52ecec 1.5.0
224ab3621c8c3745aa5af78f655b4676794d7a5f 1.4.0
8e10c7a7338d72b907ae72f77c03b06cbe8426af 1.3.0
11b5c36282407284122326c4d80cb7a6015ed825 1.3.0-snapshot.20200610.4413.0.11b5c362
1c18058f019229cd0af64669af0de31d0cec916d 1.2.0
trigger all releases from master (#6016) trigger all releases from master The 1.1.0 release went wrong and we had to trash it and release 1.1.1 instead. This is an attempt at identifying and correcting the root cause behind that incident. To understand the situation, we need to know how releases worked before 1.0. We had a one-line file called `LATEST` that specifies the git SHA and version tag for the latest release. A change to that file triggered a release with the specified release tag, built from the source tree of the specified commit. The `LATEST` file looked something like: ``` f050da78c9c8727b889bdac286156f19e2f938c4 1.0.0-snapshot.20200411.3905.0.f050da78 ``` To mark a release as stable, we would change it to look like this: ``` f050da78c9c8727b889bdac286156f19e2f938c4 1.0.0 ``` i.e. simply drop the `-snapshot...` suffix. Even though the commit (and thus the entire source tree we build from) is the same, we would need to rebuild almost all of our release artifacts, as they embed the version tag in various places and ways. That worked well as long as we could assume we were doing trunk-based development, i.e. all releases would always come from the same (`master`) branch. When we released 1.0, and started work on 1.1, we had a few bug reports for 1.0 that we decided should be resolved in a point release. We decided that the best way to handle that would be to have a branch starting on the release commit for 1.0, and then backport patches from `master` to that branch. We adapted our build process to also watch the `release/1.0.x` branch and, in particular, trigger a new release build if the `LATEST` file in that branch changed. That worked well. The plan going forward was to keep doing regular snapshot releases from the `master` branch, and create support, point releases ("patch" releases in semver) from dedicated branches. On April 30, we made a snapshot release as an RC for 1.1.0, by changing the `LATEST` file in the `master` branch. That release was built on commit 681c862d. On May 6, we decided to take a new snapshot as the RC for 1.1.0; we changed `LATEST` in `master` to designate 7e448d81 as the new latest release. On May 11, we noticed an issue that broke our builds. Without going into details, an external artifact we depend on had changed in incompatible ways. After fixing that on `master`, we reasoned that this would also break the build of the final 1.1.0 release if we just tried to build 7e448d81 again. But as the target release date was May 13, we did not want to take a new snapshot after that fix, as that would have included one more week of work in the release, and given us no time to test it. So we did what we did for the 1.0 branch, as it had worked well: we created a branch that forked from `master` at commit 7e448d81 and called it `release/1.1.x`, then cherry-picked the one fix to our build process to work around the broken download. When the time came to make the final 1.1.0 build on May 13, we naturally picked the `LATEST` file from the `release/1.1.x` branch and dropped the `-snapshot...` suffix. Importantly, we did not need to update the target commit to include the "broken download" fix as, in the meantime, the internet had fixed itself, and we thus reasoned we should go for the exact code of the RC rather than include an unnecessary, albeit seemingly harmless, change. Everything went well with the release process. Tests went well too. Then we got a report that an application that worked against the latest RC broke with the final 1.1.0. The issue was that we had built the wrong commit: by branching off at the point of the _target_ commit for the latest snapshot, we did not have the change to the `LATEST` file that designated that commit as the target. So the `LATEST` file in `release/1.1.x` was still pointing to 681c862d. I believe the root cause for this issue is the fact that we have scattered our release process over multiple branches, meaning there is no linear history of what was released and we are relying on people being able to mentally manage multiple timelines. Therefore, I propose to fix our release process so this should not happen again by linearizing the release process, i.e. getting back to a situation where all releases are made from a single branch, `master`. Because we do want to be able to release _for_ multiple release branches (to provide backports and bugfixes), we still need some way to accommodate that. Having a single `LATEST` file in the same format as before would not really work well: keeping track of interleaved release streams on a single file would not really be easier than keeping track of multiple branches. My proposed solution is to instead have a multiline LATEST file, so that all the release branch "tips" can be observed at the same time, and, as long as we take care to only advance one release branch at a time, we can easily keep track of each of them. This is what this PR does. This required a few changes to our release process. Most notably: - Obviously, as this is the main point of this PR, the build process has once again been restricted to only trigger new releases from the `master` branch. - As our CI machinery cannot easily be made to produce multiple releases from a single build, the `check_for_release` step will only recognize a commit as a release trigger if it changes a single line in the `LATEST` file. This restriction comes in addition to the existing one that a release commit is only allowed to change either just the `LATEST` file or both the `LATEST` and `docs/source/support/release-notes.rst` files. - The docs publication process has been changed to update _all_ published versions to display the _latest_ release notes page. This means that the release notes page will always show you all published versions, regardless of which version of the documentation you're looking at. This also means that interleaving release notes correctly on that page is a manual exercise. - As per the intention of the new process, the `LATEST` file has been updated to contained all existing post-1.0 stable releases. It should also include all existing snapshot releases should we have more than one at a time (say, should we discover an issue with 1.1.1 that required us to work on a 1.1.2). - The `release.sh` script has been dramatically simplified as I felt it was trying to do too much and porting its existing functionality to a multi-line `LATEST` file would be too hard. CHANGELOG_BEGIN CHANGELOG_END
2020-05-19 20:18:10 +03:00
7e448d810c1134c39afa2c555e85964b68976446 1.1.1
160936905d393a6f8fb35ea02ad6b3c401820dad 1.0.1
f050da78c9c8727b889bdac286156f19e2f938c4 1.0.0