In order to work with further improvements to static linking on Windows
to enable Swift in Swift and C++ Interop, we need to bump the s-a-p with
a fix for underlinking.
This would be needed to support the upcoming clang-1600 rebranch -- in
there LLVM requires CMake 3.20 as per https://reviews.llvm.org/D151344
Note this will not take care of updating `cmake_minimum_required` in the
build code -- we will consider doing this at a later time (possibly
setting a different version that the one specified in
`update-checkout.config.json`).
Addresses rdar://111475397
Also update swift-crypto to 2.3.0
These are needed for SwiftPM registry work. We're using the `main` branch for now but will switch to concrete versions closer to the release.
A one line follow-up fix for #62004. We re-read the config, but didn't check out correct branches after that, because `scheme_map` dictionary was loaded from the old config.
When updating versions of some dependencies, it's important to be able to re-read the checkout config to get the new versions to actually check them out.
Consider two branch-schemes, where the second is a subset of the first.
Suppose repositories have been cloned using the first branch scheme. Previously,
a successive update using the second branch-scheme would cause update-checkout
to fail in an attempt to query the branch-scheme about the target branch for a
repository it does not map, even though the update, given no further errors, can
be considered successful.
Sometimes when working with Docker to debug a Linux issue, we want
to copy the sources directory into the Docker image. If we have a
checkout that was done on macOS, then repos needed to build those
same sources on Linux, such as `icu` will not be included. There
was no way to ask `update-checkout` to download those repos while
on macOS.
With `--all-repositories`, you can now ask for those repos, despite
them not being needed on macOS. You can even do
`--all-repositories --skip-repository icu` to include all platform
specific repositories, but skip `icu`.