зеркало из https://github.com/microsoft/vcpkg.git
[vcpkg] Rename `port_versions` to `versions` (#15784)
This commit is contained in:
Родитель
bedeaa639c
Коммит
68a74950d0
|
@ -204,16 +204,16 @@ For Example:
|
|||
|
||||
See our [manifest files document](manifest-files.md#port-version) for a full explanation of our conventions.
|
||||
|
||||
### Update the version files in `port_versions/` of any modified ports
|
||||
### Update the version files in `versions/` of any modified ports
|
||||
|
||||
Vcpkg uses a set of metadata files to power its versioning feature.
|
||||
These files are located in the following locations:
|
||||
* `${VCPKG_ROOT}/port_versions/baseline.json`, (this file is common to all ports) and
|
||||
* `${VCPKG_ROOT}/port_versions/${first-letter-of-portname}-/${portname}.json` (one per port).
|
||||
* `${VCPKG_ROOT}/versions/baseline.json`, (this file is common to all ports) and
|
||||
* `${VCPKG_ROOT}/versions/${first-letter-of-portname}-/${portname}.json` (one per port).
|
||||
|
||||
For example, for `zlib` the relevant files are:
|
||||
* `${VCPKG_ROOT}/port_versions/baseline.json`
|
||||
* `${VCPKG_ROOT}/port_versions/z-/zlib.json`
|
||||
* `${VCPKG_ROOT}/versions/baseline.json`
|
||||
* `${VCPKG_ROOT}/versions/z-/zlib.json`
|
||||
|
||||
We expect that each time you update a port, you also update its version files.
|
||||
|
||||
|
|
|
@ -171,7 +171,7 @@ Baselines are used to set lower boundaries on package versions. A baseline effec
|
|||
|
||||
But what is a baseline?
|
||||
|
||||
In the main registry, the baseline is a file located in `${VCPKG_ROOT}/port_versions/baseline.json`. This file contains a version declaration for each package in vcpkg. The format of this file is the following:
|
||||
In the main registry, the baseline is a file located in `${VCPKG_ROOT}/versions/baseline.json`. This file contains a version declaration for each package in vcpkg. The format of this file is the following:
|
||||
|
||||
```json
|
||||
{
|
||||
|
@ -319,9 +319,9 @@ Although the concept of package versions has always been present in vcpkg, the c
|
|||
|
||||
With the introduction of versioning constraints, it is now possible that a package depends on a port version that does not match the one available locally. This raises a problem as vcpkg needs to know how to acquire the port files for the requested version.
|
||||
|
||||
To solve this problem, a new set of metadata needs to be introduced. This specification proposes a that a new “port_versions” folder is added as part of a registry. In the main vcpkg registry, this means a new root level port_versions directory.
|
||||
To solve this problem, a new set of metadata needs to be introduced. This specification proposes a that a new "versions" folder is added as part of a registry. In the main vcpkg registry, this means a new root level versions directory.
|
||||
|
||||
The port_versions directory, from here on referred as the versions database, will contain JSON files for each one of the ports available in the registry. Each file will list all the versions available for a package and contain a Git tree-ish object that vcpkg can check out to obtain that version’s portfiles.
|
||||
The versions directory, from here on referred as the versions database, will contain JSON files for each one of the ports available in the registry. Each file will list all the versions available for a package and contain a Git tree-ish object that vcpkg can check out to obtain that version’s portfiles.
|
||||
|
||||
As part of the versioning implementation, a generator for these database files will be implemented. The generator will extract from our repository’s Git history, all the versions of each port that had been available at any moment in time and compile them into these database files.
|
||||
|
||||
|
@ -349,5 +349,5 @@ Example: generated `zlib.json`
|
|||
}
|
||||
```
|
||||
|
||||
For each port, its corresponding versions file should be located in `port_versions/{first letter of port name}-/{port name}.json`. For example, zlib’s version file will be located in `port_versions/z-/zlib.json`.
|
||||
Aside from port version files, the current baseline file is located in `port_versions/baseline.json`.
|
||||
For each port, its corresponding versions file should be located in `versions/{first letter of port name}-/{port name}.json`. For example, zlib’s version file will be located in `versions/z-/zlib.json`.
|
||||
Aside from port version files, the current baseline file is located in `versions/baseline.json`.
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
. "$PSScriptRoot/../end-to-end-tests-prelude.ps1"
|
||||
|
||||
|
||||
$builtinRegistryArgs = $commonArgs + @("--x-builtin-port-versions-dir=$PSScriptRoot/../../e2e_ports/port_versions")
|
||||
$builtinRegistryArgs = $commonArgs + @("--x-builtin-registry-versions-dir=$PSScriptRoot/../../e2e_ports/versions")
|
||||
|
||||
Run-Vcpkg install @builtinRegistryArgs 'vcpkg-internal-e2e-test-port'
|
||||
Throw-IfNotFailed
|
||||
|
||||
# We should not look into the port_versions directory unless we have a baseline,
|
||||
# We should not look into the versions directory unless we have a baseline,
|
||||
# even if we pass the registries feature flag
|
||||
Run-Vcpkg install @builtinRegistryArgs --feature-flags=registries 'vcpkg-internal-e2e-test-port'
|
||||
Throw-IfNotFailed
|
||||
|
@ -28,13 +28,13 @@ Copy-Item -Recurse `
|
|||
-LiteralPath "$PSScriptRoot/../../e2e_ports/vcpkg-internal-e2e-test-port" `
|
||||
-Destination "$filesystemRegistry"
|
||||
New-Item `
|
||||
-Path "$filesystemRegistry/port_versions" `
|
||||
-Path "$filesystemRegistry/versions" `
|
||||
-ItemType Directory
|
||||
Copy-Item `
|
||||
-LiteralPath "$PSScriptRoot/../../e2e_ports/port_versions/baseline.json" `
|
||||
-Destination "$filesystemRegistry/port_versions/baseline.json"
|
||||
-LiteralPath "$PSScriptRoot/../../e2e_ports/versions/baseline.json" `
|
||||
-Destination "$filesystemRegistry/versions/baseline.json"
|
||||
New-Item `
|
||||
-Path "$filesystemRegistry/port_versions/v-" `
|
||||
-Path "$filesystemRegistry/versions/v-" `
|
||||
-ItemType Directory
|
||||
|
||||
$vcpkgInternalE2eTestPortJson = @{
|
||||
|
@ -46,7 +46,7 @@ $vcpkgInternalE2eTestPortJson = @{
|
|||
)
|
||||
}
|
||||
New-Item `
|
||||
-Path "$filesystemRegistry/port_versions/v-/vcpkg-internal-e2e-test-port.json" `
|
||||
-Path "$filesystemRegistry/versions/v-/vcpkg-internal-e2e-test-port.json" `
|
||||
-ItemType File `
|
||||
-Value (ConvertTo-Json -Depth 5 -InputObject $vcpkgInternalE2eTestPortJson)
|
||||
|
||||
|
@ -68,7 +68,7 @@ try
|
|||
$CurrentTest = 'git init .'
|
||||
git @gitConfigOptions init .
|
||||
Throw-IfFailed
|
||||
Copy-Item -Recurse -LiteralPath "$PSScriptRoot/../../e2e_ports/port_versions" -Destination .
|
||||
Copy-Item -Recurse -LiteralPath "$PSScriptRoot/../../e2e_ports/versions" -Destination .
|
||||
Copy-Item -Recurse -LiteralPath "$PSScriptRoot/../../e2e_ports/vcpkg-internal-e2e-test-port" -Destination .
|
||||
|
||||
$CurrentTest = 'git add -A'
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
# Test verify versions
|
||||
mkdir $VersionFilesRoot
|
||||
Copy-Item -Recurse "scripts/testing/version-files/port_versions_incomplete" $VersionFilesRoot
|
||||
Copy-Item -Recurse "scripts/testing/version-files/versions_incomplete" $VersionFilesRoot
|
||||
$portsRedirectArgsOK = @(
|
||||
"--feature-flags=versions",
|
||||
"--x-builtin-ports-root=scripts/testing/version-files/ports",
|
||||
"--x-builtin-port-versions-dir=scripts/testing/version-files/port_versions"
|
||||
"--x-builtin-registry-versions-dir=scripts/testing/version-files/versions"
|
||||
)
|
||||
$portsRedirectArgsIncomplete = @(
|
||||
"--feature-flags=versions",
|
||||
"--x-builtin-ports-root=scripts/testing/version-files/ports_incomplete",
|
||||
"--x-builtin-port-versions-dir=$VersionFilesRoot/port_versions_incomplete"
|
||||
"--x-builtin-registry-versions-dir=$VersionFilesRoot/versions_incomplete"
|
||||
)
|
||||
$CurrentTest = "x-verify-ci-versions (All files OK)"
|
||||
Write-Host $CurrentTest
|
||||
|
@ -77,7 +77,7 @@ foreach ($opt_registries in @("",",registries"))
|
|||
./vcpkg $commonArgs "--feature-flags=versions$opt_registries" install `
|
||||
"--dry-run" `
|
||||
"--x-manifest-root=scripts/testing/version-files/without-default-baseline-2" `
|
||||
"--x-builtin-port-versions-dir=scripts/testing/version-files/default-baseline-2/port_versions"
|
||||
"--x-builtin-registry-versions-dir=scripts/testing/version-files/default-baseline-2/versions"
|
||||
Throw-IfFailed
|
||||
Require-FileNotExists $buildtreesRoot/versioning
|
||||
|
||||
|
@ -85,7 +85,7 @@ foreach ($opt_registries in @("",",registries"))
|
|||
./vcpkg $commonArgs "--feature-flags=versions$opt_registries" install `
|
||||
"--dry-run" `
|
||||
"--x-manifest-root=scripts/testing/version-files/default-baseline-2" `
|
||||
"--x-builtin-port-versions-dir=scripts/testing/version-files/default-baseline-2/port_versions"
|
||||
"--x-builtin-registry-versions-dir=scripts/testing/version-files/default-baseline-2/versions"
|
||||
Throw-IfFailed
|
||||
Require-FileExists $buildtreesRoot/versioning
|
||||
|
||||
|
@ -93,6 +93,6 @@ foreach ($opt_registries in @("",",registries"))
|
|||
./vcpkg $commonArgs "--feature-flags=-versions$opt_registries" install `
|
||||
"--dry-run" `
|
||||
"--x-manifest-root=scripts/testing/version-files/default-baseline-2" `
|
||||
"--x-builtin-port-versions-dir=scripts/testing/version-files/default-baseline-2/port_versions"
|
||||
"--x-builtin-registry-versions-dir=scripts/testing/version-files/default-baseline-2/versions"
|
||||
Throw-IfNotFailed
|
||||
}
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ from pathlib import Path
|
|||
|
||||
SCRIPT_DIRECTORY = os.path.dirname(os.path.abspath(__file__))
|
||||
PORTS_DIRECTORY = os.path.join(SCRIPT_DIRECTORY, '../ports')
|
||||
VERSIONS_DB_DIRECTORY = os.path.join(SCRIPT_DIRECTORY, '../port_versions')
|
||||
VERSIONS_DB_DIRECTORY = os.path.join(SCRIPT_DIRECTORY, '../versions')
|
||||
|
||||
|
||||
def get_version_tag(version):
|
||||
|
|
|
@ -13,7 +13,7 @@ from pathlib import Path
|
|||
MAX_PROCESSES = multiprocessing.cpu_count()
|
||||
SCRIPT_DIRECTORY = os.path.dirname(os.path.abspath(__file__))
|
||||
PORTS_DIRECTORY = os.path.join(SCRIPT_DIRECTORY, '../ports')
|
||||
VERSIONS_DB_DIRECTORY = os.path.join(SCRIPT_DIRECTORY, '../port_versions')
|
||||
VERSIONS_DB_DIRECTORY = os.path.join(SCRIPT_DIRECTORY, '../versions')
|
||||
|
||||
|
||||
def get_current_git_ref():
|
||||
|
@ -26,7 +26,7 @@ def get_current_git_ref():
|
|||
return None
|
||||
|
||||
|
||||
def generate_port_versions_file(port_name):
|
||||
def generate_versions_file(port_name):
|
||||
containing_dir = os.path.join(VERSIONS_DB_DIRECTORY, f'{port_name[0]}-')
|
||||
os.makedirs(containing_dir, exist_ok=True)
|
||||
|
||||
|
@ -43,7 +43,7 @@ def generate_port_versions_file(port_name):
|
|||
output.stdout.strip(), file=sys.stderr)
|
||||
|
||||
|
||||
def generate_port_versions_db(revision):
|
||||
def generate_versions_db(revision):
|
||||
start_time = time.time()
|
||||
|
||||
# Assume each directory in ${VCPKG_ROOT}/ports is a different port
|
||||
|
@ -54,7 +54,7 @@ def generate_port_versions_db(revision):
|
|||
concurrency = MAX_PROCESSES / 2
|
||||
print(f'Running {concurrency:.0f} parallel processes')
|
||||
process_pool = multiprocessing.Pool(MAX_PROCESSES)
|
||||
for i, _ in enumerate(process_pool.imap_unordered(generate_port_versions_file, port_names), 1):
|
||||
for i, _ in enumerate(process_pool.imap_unordered(generate_versions_file, port_names), 1):
|
||||
sys.stderr.write(
|
||||
f'\rProcessed: {i}/{total_count} ({(i / total_count):.2%})')
|
||||
process_pool.close()
|
||||
|
@ -80,7 +80,7 @@ def main():
|
|||
print(f'Database files already exist for commit {revision}')
|
||||
sys.exit(0)
|
||||
|
||||
generate_port_versions_db(revision)
|
||||
generate_versions_db(revision)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
execute_process(COMMAND "bash" "-c" "echo \$TEST_ENV_VAR")
|
|
@ -134,8 +134,8 @@ namespace vcpkg
|
|||
std::unique_ptr<std::string> scripts_root_dir;
|
||||
constexpr static StringLiteral BUILTIN_PORTS_ROOT_DIR_ARG = "x-builtin-ports-root";
|
||||
std::unique_ptr<std::string> builtin_ports_root_dir;
|
||||
constexpr static StringLiteral BUILTIN_PORT_VERSIONS_DIR_ARG = "x-builtin-port-versions-dir";
|
||||
std::unique_ptr<std::string> builtin_port_versions_dir;
|
||||
constexpr static StringLiteral BUILTIN_REGISTRY_VERSIONS_DIR_ARG = "x-builtin-registry-versions-dir";
|
||||
std::unique_ptr<std::string> builtin_registry_versions_dir;
|
||||
|
||||
constexpr static StringLiteral DEFAULT_VISUAL_STUDIO_PATH_ENV = "VCPKG_VISUAL_STUDIO_PATH";
|
||||
std::unique_ptr<std::string> default_visual_studio_path;
|
||||
|
|
|
@ -92,7 +92,7 @@ namespace vcpkg
|
|||
fs::path scripts;
|
||||
fs::path prefab;
|
||||
fs::path builtin_ports;
|
||||
fs::path builtin_port_versions;
|
||||
fs::path builtin_registry_versions;
|
||||
|
||||
fs::path tools;
|
||||
fs::path buildsystems;
|
||||
|
|
|
@ -15,7 +15,7 @@ TEST_CASE ("VcpkgCmdArguments from lowercase argument sequence", "[arguments]")
|
|||
"C:\\vcpkg",
|
||||
"--x-scripts-root=C:\\scripts",
|
||||
"--x-builtin-ports-root=C:\\ports",
|
||||
"--x-builtin-port-versions-dir=C:\\port_versions",
|
||||
"--x-builtin-registry-versions-dir=C:\\versions",
|
||||
"--debug",
|
||||
"--sendmetrics",
|
||||
"--printmetrics",
|
||||
|
@ -28,7 +28,7 @@ TEST_CASE ("VcpkgCmdArguments from lowercase argument sequence", "[arguments]")
|
|||
REQUIRE(*v.vcpkg_root_dir == "C:\\vcpkg");
|
||||
REQUIRE(*v.scripts_root_dir == "C:\\scripts");
|
||||
REQUIRE(*v.builtin_ports_root_dir == "C:\\ports");
|
||||
REQUIRE(*v.builtin_port_versions_dir == "C:\\port_versions");
|
||||
REQUIRE(*v.builtin_registry_versions_dir == "C:\\versions");
|
||||
REQUIRE(v.debug);
|
||||
REQUIRE(*v.debug.get());
|
||||
REQUIRE(v.send_metrics);
|
||||
|
@ -51,7 +51,7 @@ TEST_CASE ("VcpkgCmdArguments from uppercase argument sequence", "[arguments]")
|
|||
"C:\\vcpkg",
|
||||
"--X-SCRIPTS-ROOT=C:\\scripts",
|
||||
"--X-BUILTIN-PORTS-ROOT=C:\\ports",
|
||||
"--X-BUILTIN-PORT-VERSIONS-DIR=C:\\port_versions",
|
||||
"--X-BUILTIN-REGISTRY-VERSIONS-DIR=C:\\versions",
|
||||
"--DEBUG",
|
||||
"--SENDMETRICS",
|
||||
"--PRINTMETRICS",
|
||||
|
@ -64,7 +64,7 @@ TEST_CASE ("VcpkgCmdArguments from uppercase argument sequence", "[arguments]")
|
|||
REQUIRE(*v.vcpkg_root_dir == "C:\\vcpkg");
|
||||
REQUIRE(*v.scripts_root_dir == "C:\\scripts");
|
||||
REQUIRE(*v.builtin_ports_root_dir == "C:\\ports");
|
||||
REQUIRE(*v.builtin_port_versions_dir == "C:\\port_versions");
|
||||
REQUIRE(*v.builtin_registry_versions_dir == "C:\\versions");
|
||||
REQUIRE(v.debug);
|
||||
REQUIRE(*v.debug.get());
|
||||
REQUIRE(v.send_metrics);
|
||||
|
|
|
@ -334,7 +334,7 @@ namespace vcpkg::Commands::AddVersion
|
|||
const bool verbose = Util::Sets::contains(parsed_args.switches, OPTION_VERBOSE);
|
||||
|
||||
auto& fs = paths.get_filesystem();
|
||||
auto baseline_path = paths.builtin_port_versions / fs::u8path("baseline.json");
|
||||
auto baseline_path = paths.builtin_registry_versions / fs::u8path("baseline.json");
|
||||
if (!fs.exists(VCPKG_LINE_INFO, baseline_path))
|
||||
{
|
||||
System::printf(
|
||||
|
@ -400,8 +400,8 @@ namespace vcpkg::Commands::AddVersion
|
|||
}
|
||||
const auto& git_tree = git_tree_it->second;
|
||||
|
||||
auto port_versions_path =
|
||||
paths.builtin_port_versions / Strings::concat(port_name[0], '-') / Strings::concat(port_name, ".json");
|
||||
auto port_versions_path = paths.builtin_registry_versions / fs::u8path({port_name[0], '-'}) /
|
||||
fs::u8path(Strings::concat(port_name, ".json"));
|
||||
update_version_db_file(
|
||||
paths, port_name, schemed_version, git_tree, port_versions_path, overwrite_version, verbose, add_all);
|
||||
update_baseline_version(paths, port_name, schemed_version.versiont, baseline_path, verbose);
|
||||
|
@ -413,4 +413,4 @@ namespace vcpkg::Commands::AddVersion
|
|||
{
|
||||
AddVersion::perform_and_exit(args, paths);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -367,8 +367,8 @@ namespace vcpkg::Commands::CIVerifyVersions
|
|||
continue;
|
||||
}
|
||||
|
||||
auto versions_file_path =
|
||||
paths.builtin_port_versions / Strings::concat(port_name[0], '-') / Strings::concat(port_name, ".json");
|
||||
auto versions_file_path = paths.builtin_registry_versions / fs::u8path({port_name[0], '-'}) /
|
||||
fs::u8path(Strings::concat(port_name, ".json"));
|
||||
if (!fs.exists(versions_file_path))
|
||||
{
|
||||
System::printf(System::Color::error, "FAIL: %s\n", port_name);
|
||||
|
@ -415,4 +415,4 @@ namespace vcpkg::Commands::CIVerifyVersions
|
|||
{
|
||||
CIVerifyVersions::perform_and_exit(args, paths);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ namespace
|
|||
|
||||
using Baseline = std::map<std::string, VersionT, std::less<>>;
|
||||
|
||||
static fs::path port_versions_dir = fs::u8path("port_versions");
|
||||
static const fs::path registry_versions_dir_name = fs::u8path("versions");
|
||||
|
||||
// this class is an implementation detail of `BuiltinRegistryEntry`;
|
||||
// when `BuiltinRegistryEntry` is using a port versions file for a port,
|
||||
|
@ -72,12 +72,12 @@ namespace
|
|||
{
|
||||
return m_versions_tree.get([this, &paths]() -> fs::path {
|
||||
auto maybe_tree = paths.git_find_object_id_for_remote_registry_path(get_commit_of_repo(paths),
|
||||
fs::u8path("port_versions"));
|
||||
registry_versions_dir_name);
|
||||
if (!maybe_tree)
|
||||
{
|
||||
Checks::exit_with_message(
|
||||
VCPKG_LINE_INFO,
|
||||
"Error: could not find the git tree for `port_versions` in repo `%s` at commit `%s`: %s",
|
||||
"Error: could not find the git tree for `versions` in repo `%s` at commit `%s`: %s",
|
||||
m_repo,
|
||||
get_commit_of_repo(paths),
|
||||
maybe_tree.error());
|
||||
|
@ -218,9 +218,9 @@ namespace
|
|||
const fs::path& path_to_baseline,
|
||||
StringView identifier = {});
|
||||
|
||||
void load_all_port_names_from_port_versions(std::vector<std::string>& out,
|
||||
const VcpkgPaths& paths,
|
||||
const fs::path& port_versions_path)
|
||||
void load_all_port_names_from_registry_versions(std::vector<std::string>& out,
|
||||
const VcpkgPaths& paths,
|
||||
const fs::path& port_versions_path)
|
||||
{
|
||||
for (auto super_directory : fs::directory_iterator(port_versions_path))
|
||||
{
|
||||
|
@ -247,11 +247,11 @@ namespace
|
|||
// { BuiltinRegistry::RegistryImplementation
|
||||
std::unique_ptr<RegistryEntry> BuiltinRegistry::get_port_entry(const VcpkgPaths& paths, StringView port_name) const
|
||||
{
|
||||
auto versions_path = paths.builtin_port_versions / relative_path_to_versions(port_name);
|
||||
auto versions_path = paths.builtin_registry_versions / relative_path_to_versions(port_name);
|
||||
if (!m_baseline_identifier.empty() && paths.get_filesystem().exists(versions_path))
|
||||
{
|
||||
auto maybe_version_entries =
|
||||
load_versions_file(paths.get_filesystem(), VersionDbType::Git, paths.builtin_port_versions, port_name);
|
||||
auto maybe_version_entries = load_versions_file(
|
||||
paths.get_filesystem(), VersionDbType::Git, paths.builtin_registry_versions, port_name);
|
||||
Checks::check_maybe_upgrade(
|
||||
VCPKG_LINE_INFO, maybe_version_entries.has_value(), "Error: " + maybe_version_entries.error());
|
||||
auto version_entries = std::move(maybe_version_entries).value_or_exit(VCPKG_LINE_INFO);
|
||||
|
@ -300,7 +300,7 @@ namespace
|
|||
ExpectedS<Baseline> try_parse_builtin_baseline(const VcpkgPaths& paths, StringView baseline_identifier)
|
||||
{
|
||||
if (baseline_identifier.size() == 0) return Baseline{};
|
||||
auto path_to_baseline = paths.builtin_port_versions / fs::u8path("baseline.json");
|
||||
auto path_to_baseline = paths.builtin_registry_versions / fs::u8path("baseline.json");
|
||||
auto res_baseline = load_baseline_versions(paths, path_to_baseline, baseline_identifier);
|
||||
|
||||
if (!res_baseline.has_value())
|
||||
|
@ -384,9 +384,9 @@ namespace
|
|||
|
||||
void BuiltinRegistry::get_all_port_names(std::vector<std::string>& out, const VcpkgPaths& paths) const
|
||||
{
|
||||
if (!m_baseline_identifier.empty() && paths.get_filesystem().exists(paths.builtin_port_versions))
|
||||
if (!m_baseline_identifier.empty() && paths.get_filesystem().exists(paths.builtin_registry_versions))
|
||||
{
|
||||
load_all_port_names_from_port_versions(out, paths, paths.builtin_port_versions);
|
||||
load_all_port_names_from_registry_versions(out, paths, paths.builtin_registry_versions);
|
||||
}
|
||||
|
||||
for (auto port_directory : fs::directory_iterator(paths.builtin_ports_directory()))
|
||||
|
@ -402,7 +402,7 @@ namespace
|
|||
// { FilesystemRegistry::RegistryImplementation
|
||||
Baseline parse_filesystem_baseline(const VcpkgPaths& paths, const fs::path& root, StringView baseline_identifier)
|
||||
{
|
||||
auto path_to_baseline = root / port_versions_dir / fs::u8path("baseline.json");
|
||||
auto path_to_baseline = root / registry_versions_dir_name / fs::u8path("baseline.json");
|
||||
auto res_baseline = load_baseline_versions(paths, path_to_baseline, baseline_identifier);
|
||||
if (auto opt_baseline = res_baseline.get())
|
||||
{
|
||||
|
@ -445,9 +445,9 @@ namespace
|
|||
StringView port_name) const
|
||||
{
|
||||
auto maybe_version_entries = load_versions_file(
|
||||
paths.get_filesystem(), VersionDbType::Filesystem, m_path / port_versions_dir, port_name, m_path);
|
||||
paths.get_filesystem(), VersionDbType::Filesystem, m_path / registry_versions_dir_name, port_name, m_path);
|
||||
Checks::check_maybe_upgrade(
|
||||
VCPKG_LINE_INFO, maybe_version_entries.has_value(), "Error: " + maybe_version_entries.error());
|
||||
VCPKG_LINE_INFO, maybe_version_entries.has_value(), "Error: %s", maybe_version_entries.error());
|
||||
auto version_entries = std::move(maybe_version_entries).value_or_exit(VCPKG_LINE_INFO);
|
||||
|
||||
auto res = std::make_unique<FilesystemRegistryEntry>(port_name.to_string());
|
||||
|
@ -461,7 +461,7 @@ namespace
|
|||
|
||||
void FilesystemRegistry::get_all_port_names(std::vector<std::string>& out, const VcpkgPaths& paths) const
|
||||
{
|
||||
load_all_port_names_from_port_versions(out, paths, m_path / port_versions_dir);
|
||||
load_all_port_names_from_registry_versions(out, paths, m_path / registry_versions_dir_name);
|
||||
}
|
||||
// } FilesystemRegistry::RegistryImplementation
|
||||
|
||||
|
@ -526,7 +526,7 @@ namespace
|
|||
m_repo,
|
||||
explicit_hash.error());
|
||||
}
|
||||
auto path_to_baseline = fs::u8path("port_versions") / fs::u8path("baseline.json");
|
||||
auto path_to_baseline = registry_versions_dir_name / fs::u8path("baseline.json");
|
||||
auto maybe_contents = paths.git_show_from_remote_registry(*explicit_hash.get(), path_to_baseline);
|
||||
if (!maybe_contents.has_value())
|
||||
{
|
||||
|
@ -573,7 +573,7 @@ namespace
|
|||
void GitRegistry::get_all_port_names(std::vector<std::string>& out, const VcpkgPaths& paths) const
|
||||
{
|
||||
auto versions_path = get_versions_tree_path(paths);
|
||||
load_all_port_names_from_port_versions(out, paths, versions_path);
|
||||
load_all_port_names_from_registry_versions(out, paths, versions_path);
|
||||
}
|
||||
// } GitRegistry::RegistryImplementation
|
||||
|
||||
|
@ -616,7 +616,7 @@ namespace
|
|||
auto& name = scfl->source_control_file->core_paragraph->name;
|
||||
return Strings::format(
|
||||
"Error: no version entry for %s at version %s.\n"
|
||||
"We are currently using the version in the ports tree (%s), since no %s.json was found in /port_versions.",
|
||||
"We are currently using the version in the ports tree (%s), since no %s.json was found in /versions.",
|
||||
name,
|
||||
version.to_string(),
|
||||
scfl->to_versiont().to_string(),
|
||||
|
@ -958,7 +958,7 @@ namespace
|
|||
|
||||
ExpectedS<std::vector<VersionDbEntry>> load_versions_file(Files::Filesystem& fs,
|
||||
VersionDbType type,
|
||||
const fs::path& port_versions,
|
||||
const fs::path& registry_versions,
|
||||
StringView port_name,
|
||||
const fs::path& registry_root)
|
||||
{
|
||||
|
@ -966,7 +966,7 @@ namespace
|
|||
!(type == VersionDbType::Filesystem && registry_root.empty()),
|
||||
"Bug in vcpkg; type should never = Filesystem when registry_root is empty.");
|
||||
|
||||
auto versions_file_path = port_versions / relative_path_to_versions(port_name);
|
||||
auto versions_file_path = registry_versions / relative_path_to_versions(port_name);
|
||||
|
||||
if (!fs.exists(versions_file_path))
|
||||
{
|
||||
|
@ -1180,7 +1180,7 @@ namespace vcpkg
|
|||
StringView port_name)
|
||||
{
|
||||
auto maybe_versions =
|
||||
load_versions_file(paths.get_filesystem(), VersionDbType::Git, paths.builtin_port_versions, port_name);
|
||||
load_versions_file(paths.get_filesystem(), VersionDbType::Git, paths.builtin_registry_versions, port_name);
|
||||
if (auto pversions = maybe_versions.get())
|
||||
{
|
||||
return Util::fmap(
|
||||
|
|
|
@ -277,7 +277,7 @@ namespace vcpkg
|
|||
{PACKAGES_ROOT_DIR_ARG, &VcpkgCmdArguments::packages_root_dir},
|
||||
{SCRIPTS_ROOT_DIR_ARG, &VcpkgCmdArguments::scripts_root_dir},
|
||||
{BUILTIN_PORTS_ROOT_DIR_ARG, &VcpkgCmdArguments::builtin_ports_root_dir},
|
||||
{BUILTIN_PORT_VERSIONS_DIR_ARG, &VcpkgCmdArguments::builtin_port_versions_dir},
|
||||
{BUILTIN_REGISTRY_VERSIONS_DIR_ARG, &VcpkgCmdArguments::builtin_registry_versions_dir},
|
||||
};
|
||||
|
||||
constexpr static std::pair<StringView, std::vector<std::string> VcpkgCmdArguments::*>
|
||||
|
@ -630,7 +630,7 @@ namespace vcpkg
|
|||
table.format(opt(SCRIPTS_ROOT_DIR_ARG, "=", "<path>"), "(Experimental) Specify the scripts root directory");
|
||||
table.format(opt(BUILTIN_PORTS_ROOT_DIR_ARG, "=", "<path>"),
|
||||
"(Experimental) Specify the packages root directory");
|
||||
table.format(opt(BUILTIN_PORT_VERSIONS_DIR_ARG, "=", "<path>"),
|
||||
table.format(opt(BUILTIN_REGISTRY_VERSIONS_DIR_ARG, "=", "<path>"),
|
||||
"(Experimental) Specify the versions root directory");
|
||||
table.format(opt(JSON_SWITCH, "", ""), "(Experimental) Request JSON output");
|
||||
}
|
||||
|
@ -920,7 +920,7 @@ namespace vcpkg
|
|||
constexpr StringLiteral VcpkgCmdArguments::PACKAGES_ROOT_DIR_ARG;
|
||||
constexpr StringLiteral VcpkgCmdArguments::SCRIPTS_ROOT_DIR_ARG;
|
||||
constexpr StringLiteral VcpkgCmdArguments::BUILTIN_PORTS_ROOT_DIR_ARG;
|
||||
constexpr StringLiteral VcpkgCmdArguments::BUILTIN_PORT_VERSIONS_DIR_ARG;
|
||||
constexpr StringLiteral VcpkgCmdArguments::BUILTIN_REGISTRY_VERSIONS_DIR_ARG;
|
||||
|
||||
constexpr StringLiteral VcpkgCmdArguments::DEFAULT_VISUAL_STUDIO_PATH_ENV;
|
||||
|
||||
|
|
|
@ -349,8 +349,8 @@ If you wish to silence this error and use classic mode, you can:
|
|||
scripts = process_input_directory(filesystem, root, args.scripts_root_dir.get(), "scripts", VCPKG_LINE_INFO);
|
||||
builtin_ports =
|
||||
process_output_directory(filesystem, root, args.builtin_ports_root_dir.get(), "ports", VCPKG_LINE_INFO);
|
||||
builtin_port_versions = process_output_directory(
|
||||
filesystem, root, args.builtin_port_versions_dir.get(), "port_versions", VCPKG_LINE_INFO);
|
||||
builtin_registry_versions = process_output_directory(
|
||||
filesystem, root, args.builtin_registry_versions_dir.get(), "versions", VCPKG_LINE_INFO);
|
||||
prefab = root / fs::u8path("prefab");
|
||||
|
||||
if (args.default_visual_studio_path)
|
||||
|
@ -653,7 +653,7 @@ If you wish to silence this error and use classic mode, you can:
|
|||
if (!fs.exists(destination))
|
||||
{
|
||||
const fs::path destination_tmp = destination_parent / fs::u8path("baseline.json.tmp");
|
||||
auto treeish = Strings::concat(commit_sha, ":port_versions/baseline.json");
|
||||
auto treeish = Strings::concat(commit_sha, ":versions/baseline.json");
|
||||
auto maybe_contents = git_show(treeish, this->root / fs::u8path(".git"));
|
||||
if (auto contents = maybe_contents.get())
|
||||
{
|
||||
|
|
Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше
Загрузка…
Ссылка в новой задаче