From 0d3525d80fbeee78ae49384f2d722de20127a040 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Sat, 3 Mar 2018 18:50:18 +0300 Subject: Rename bpkg repository type to pkg --- bpkg/auth.cxx | 6 +- bpkg/fetch-bpkg.cxx | 270 -------------------------------------------- bpkg/fetch-pkg.cxx | 270 ++++++++++++++++++++++++++++++++++++++++++++ bpkg/fetch.hxx | 40 +++---- bpkg/manifest-utility.cxx | 8 +- bpkg/package.hxx | 2 +- bpkg/pkg-fetch.cxx | 4 +- bpkg/pkg-verify.cxx | 4 +- bpkg/rep-add.cli | 57 +++++----- bpkg/rep-create.cxx | 6 +- bpkg/rep-fetch.cxx | 28 ++--- bpkg/rep-info.cli | 2 +- bpkg/repository-signing.cli | 4 +- doc/manual.cli | 32 +++--- tests/pkg-build.test | 2 +- tests/publish | 4 +- tests/remote.test | 2 +- tests/rep-add.test | 38 +++---- tests/rep-auth.test | 70 ++++++------ tests/rep-fetch.test | 148 ++++++++++++------------ tests/rep-info.test | 22 ++-- tests/rep-list.test | 34 +++--- tests/rep-remove.test | 22 ++-- 23 files changed, 537 insertions(+), 538 deletions(-) delete mode 100644 bpkg/fetch-bpkg.cxx create mode 100644 bpkg/fetch-pkg.cxx diff --git a/bpkg/auth.cxx b/bpkg/auth.cxx index df31a60..bdcf528 100644 --- a/bpkg/auth.cxx +++ b/bpkg/auth.cxx @@ -69,7 +69,7 @@ namespace bpkg if (rl.remote ()) return repository_location ( repository_url (p.posix_string ()), - repository_type::bpkg, + repository_type::pkg, rl).canonical_name (); else return (path_cast (rl.path ()) / p).normalize ().string (); @@ -711,9 +711,9 @@ namespace bpkg pair c (split (cert.name)); - // Strip 'bpkg:' prefix. + // Strip 'pkg:' prefix. // - pair r (split (rl.canonical_name ().substr (5))); + pair r (split (rl.canonical_name ().substr (4))); // Match the repository canonical name leading part. // diff --git a/bpkg/fetch-bpkg.cxx b/bpkg/fetch-bpkg.cxx deleted file mode 100644 index 606843f..0000000 --- a/bpkg/fetch-bpkg.cxx +++ /dev/null @@ -1,270 +0,0 @@ -// file : bpkg/fetch-bpkg.cxx -*- C++ -*- -// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd -// license : MIT; see accompanying LICENSE file - -#include - -#include - -#include // cpfile () -#include - -#include -#include - -using namespace std; -using namespace butl; - -namespace bpkg -{ - template - static pair - fetch_manifest (const common_options& o, - const repository_url& u, - bool ignore_unknown) - { - string url (u.string ()); - process pr (start_fetch (o, url)); - - try - { - // Unfortunately we cannot read from the original source twice as we do - // below for files. There doesn't seem to be anything better than reading - // the entire file into memory and then streaming it twice, once to - // calculate the checksum and the second time to actually parse. We need - // to read the original stream in the binary mode for the checksum - // calculation, then use the binary data to create the text stream for - // the manifest parsing. - // - ifdstream is (move (pr.in_ofd), fdstream_mode::binary); - stringstream bs (ios::in | ios::out | ios::binary); - - // Note that the eof check is important: if the stream is at eof, write - // will fail. - // - if (is.peek () != ifdstream::traits_type::eof ()) - bs << is.rdbuf (); - - is.close (); - - string s (bs.str ()); - string sha256sum (sha256 (s.c_str (), s.size ())); - - istringstream ts (s); // Text mode. - - manifest_parser mp (ts, url); - M m (mp, ignore_unknown); - - if (pr.wait ()) - return make_pair (move (m), move (sha256sum)); - - // Child existed with an error, fall through. - } - // Ignore these exceptions if the child process exited with - // an error status since that's the source of the failure. - // - catch (const manifest_parsing& e) - { - if (pr.wait ()) - fail (e.name, e.line, e.column) << e.description; - } - catch (const io_error&) - { - if (pr.wait ()) - fail << "unable to read fetched " << url; - } - - // We should only get here if the child exited with an error status. - // - assert (!pr.wait ()); - - // While it is reasonable to assuming the child process issued - // diagnostics, some may not mention the URL. - // - fail << "unable to fetch " << url << - info << "re-run with -v for more information" << endf; - } - - static path - fetch_file (const common_options& o, - const repository_url& u, - const dir_path& d) - { - path r (d / u.path->leaf ()); - - if (exists (r)) - fail << "file " << r << " already exists"; - - auto_rmfile arm (r); - process pr (start_fetch (o, u.string (), r)); - - if (!pr.wait ()) - { - // While it is reasonable to assuming the child process issued - // diagnostics, some may not mention the URL. - // - fail << "unable to fetch " << u << - info << "re-run with -v for more information"; - } - - arm.cancel (); - return r; - } - - static path - fetch_file (const path& f, const dir_path& d) - { - path r (d / f.leaf ()); - - try - { - cpfile (f, r); - } - catch (const system_error& e) - { - fail << "unable to copy " << f << " to " << r << ": " << e; - } - - return r; - } - - // If o is nullptr, then don't calculate the checksum. - // - template - static pair - fetch_manifest (const common_options* o, - const path& f, - bool ignore_unknown) - { - if (!exists (f)) - fail << "file " << f << " does not exist"; - - try - { - // We can not use the same file stream for both calculating the checksum - // and reading the manifest. The file should be opened in the binary - // mode for the first operation and in the text mode for the second one. - // - string sha256sum; - if (o != nullptr) - sha256sum = sha256 (*o, f); // Read file in the binary mode. - - ifdstream ifs (f); // Open file in the text mode. - - manifest_parser mp (ifs, f.string ()); - return make_pair (M (mp, ignore_unknown), move (sha256sum)); - } - catch (const manifest_parsing& e) - { - fail (e.name, e.line, e.column) << e.description << endf; - } - catch (const io_error& e) - { - fail << "unable to read from " << f << ": " << e << endf; - } - } - - static const path repositories ("repositories"); - - bpkg_repository_manifests - bpkg_fetch_repositories (const dir_path& d, bool iu) - { - return fetch_manifest ( - nullptr, d / repositories, iu).first; - } - - pair - bpkg_fetch_repositories (const common_options& o, - const repository_location& rl, - bool iu) - { - assert (rl.remote () || rl.absolute ()); - - repository_url u (rl.url ()); - - path& f (*u.path); - f /= repositories; - - return rl.remote () - ? fetch_manifest (o, u, iu) - : fetch_manifest (&o, f, iu); - } - - static const path packages ("packages"); - - bpkg_package_manifests - bpkg_fetch_packages (const dir_path& d, bool iu) - { - return fetch_manifest ( - nullptr, d / packages, iu).first; - } - - pair - bpkg_fetch_packages (const common_options& o, - const repository_location& rl, - bool iu) - { - assert (rl.remote () || rl.absolute ()); - - repository_url u (rl.url ()); - - path& f (*u.path); - f /= packages; - - return rl.remote () - ? fetch_manifest (o, u, iu) - : fetch_manifest (&o, f, iu); - } - - static const path signature ("signature"); - - signature_manifest - bpkg_fetch_signature (const common_options& o, - const repository_location& rl, - bool iu) - { - assert (rl.remote () || rl.absolute ()); - - repository_url u (rl.url ()); - - path& f (*u.path); - f /= signature; - - return rl.remote () - ? fetch_manifest (o, u, iu).first - : fetch_manifest (nullptr, f, iu).first; - } - - path - bpkg_fetch_archive (const common_options& o, - const repository_location& rl, - const path& a, - const dir_path& d) - { - assert (!a.empty () && a.relative ()); - assert (rl.remote () || rl.absolute ()); - - repository_url u (rl.url ()); - - path& f (*u.path); - f /= a; - - auto bad_loc = [&u] () {fail << "invalid archive location " << u;}; - - try - { - f.normalize (); - - if (*f.begin () == "..") // Can be the case for the remote location. - bad_loc (); - } - catch (const invalid_path&) - { - bad_loc (); - } - - return rl.remote () - ? fetch_file (o, u, d) - : fetch_file (f, d); - } -} diff --git a/bpkg/fetch-pkg.cxx b/bpkg/fetch-pkg.cxx new file mode 100644 index 0000000..09422e7 --- /dev/null +++ b/bpkg/fetch-pkg.cxx @@ -0,0 +1,270 @@ +// file : bpkg/fetch-pkg.cxx -*- C++ -*- +// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd +// license : MIT; see accompanying LICENSE file + +#include + +#include + +#include // cpfile () +#include + +#include +#include + +using namespace std; +using namespace butl; + +namespace bpkg +{ + template + static pair + fetch_manifest (const common_options& o, + const repository_url& u, + bool ignore_unknown) + { + string url (u.string ()); + process pr (start_fetch (o, url)); + + try + { + // Unfortunately we cannot read from the original source twice as we do + // below for files. There doesn't seem to be anything better than reading + // the entire file into memory and then streaming it twice, once to + // calculate the checksum and the second time to actually parse. We need + // to read the original stream in the binary mode for the checksum + // calculation, then use the binary data to create the text stream for + // the manifest parsing. + // + ifdstream is (move (pr.in_ofd), fdstream_mode::binary); + stringstream bs (ios::in | ios::out | ios::binary); + + // Note that the eof check is important: if the stream is at eof, write + // will fail. + // + if (is.peek () != ifdstream::traits_type::eof ()) + bs << is.rdbuf (); + + is.close (); + + string s (bs.str ()); + string sha256sum (sha256 (s.c_str (), s.size ())); + + istringstream ts (s); // Text mode. + + manifest_parser mp (ts, url); + M m (mp, ignore_unknown); + + if (pr.wait ()) + return make_pair (move (m), move (sha256sum)); + + // Child existed with an error, fall through. + } + // Ignore these exceptions if the child process exited with + // an error status since that's the source of the failure. + // + catch (const manifest_parsing& e) + { + if (pr.wait ()) + fail (e.name, e.line, e.column) << e.description; + } + catch (const io_error&) + { + if (pr.wait ()) + fail << "unable to read fetched " << url; + } + + // We should only get here if the child exited with an error status. + // + assert (!pr.wait ()); + + // While it is reasonable to assuming the child process issued + // diagnostics, some may not mention the URL. + // + fail << "unable to fetch " << url << + info << "re-run with -v for more information" << endf; + } + + static path + fetch_file (const common_options& o, + const repository_url& u, + const dir_path& d) + { + path r (d / u.path->leaf ()); + + if (exists (r)) + fail << "file " << r << " already exists"; + + auto_rmfile arm (r); + process pr (start_fetch (o, u.string (), r)); + + if (!pr.wait ()) + { + // While it is reasonable to assuming the child process issued + // diagnostics, some may not mention the URL. + // + fail << "unable to fetch " << u << + info << "re-run with -v for more information"; + } + + arm.cancel (); + return r; + } + + static path + fetch_file (const path& f, const dir_path& d) + { + path r (d / f.leaf ()); + + try + { + cpfile (f, r); + } + catch (const system_error& e) + { + fail << "unable to copy " << f << " to " << r << ": " << e; + } + + return r; + } + + // If o is nullptr, then don't calculate the checksum. + // + template + static pair + fetch_manifest (const common_options* o, + const path& f, + bool ignore_unknown) + { + if (!exists (f)) + fail << "file " << f << " does not exist"; + + try + { + // We can not use the same file stream for both calculating the checksum + // and reading the manifest. The file should be opened in the binary + // mode for the first operation and in the text mode for the second one. + // + string sha256sum; + if (o != nullptr) + sha256sum = sha256 (*o, f); // Read file in the binary mode. + + ifdstream ifs (f); // Open file in the text mode. + + manifest_parser mp (ifs, f.string ()); + return make_pair (M (mp, ignore_unknown), move (sha256sum)); + } + catch (const manifest_parsing& e) + { + fail (e.name, e.line, e.column) << e.description << endf; + } + catch (const io_error& e) + { + fail << "unable to read from " << f << ": " << e << endf; + } + } + + static const path repositories ("repositories"); + + pkg_repository_manifests + pkg_fetch_repositories (const dir_path& d, bool iu) + { + return fetch_manifest ( + nullptr, d / repositories, iu).first; + } + + pair + pkg_fetch_repositories (const common_options& o, + const repository_location& rl, + bool iu) + { + assert (rl.remote () || rl.absolute ()); + + repository_url u (rl.url ()); + + path& f (*u.path); + f /= repositories; + + return rl.remote () + ? fetch_manifest (o, u, iu) + : fetch_manifest (&o, f, iu); + } + + static const path packages ("packages"); + + pkg_package_manifests + pkg_fetch_packages (const dir_path& d, bool iu) + { + return fetch_manifest ( + nullptr, d / packages, iu).first; + } + + pair + pkg_fetch_packages (const common_options& o, + const repository_location& rl, + bool iu) + { + assert (rl.remote () || rl.absolute ()); + + repository_url u (rl.url ()); + + path& f (*u.path); + f /= packages; + + return rl.remote () + ? fetch_manifest (o, u, iu) + : fetch_manifest (&o, f, iu); + } + + static const path signature ("signature"); + + signature_manifest + pkg_fetch_signature (const common_options& o, + const repository_location& rl, + bool iu) + { + assert (rl.remote () || rl.absolute ()); + + repository_url u (rl.url ()); + + path& f (*u.path); + f /= signature; + + return rl.remote () + ? fetch_manifest (o, u, iu).first + : fetch_manifest (nullptr, f, iu).first; + } + + path + pkg_fetch_archive (const common_options& o, + const repository_location& rl, + const path& a, + const dir_path& d) + { + assert (!a.empty () && a.relative ()); + assert (rl.remote () || rl.absolute ()); + + repository_url u (rl.url ()); + + path& f (*u.path); + f /= a; + + auto bad_loc = [&u] () {fail << "invalid archive location " << u;}; + + try + { + f.normalize (); + + if (*f.begin () == "..") // Can be the case for the remote location. + bad_loc (); + } + catch (const invalid_path&) + { + bad_loc (); + } + + return rl.remote () + ? fetch_file (o, u, d) + : fetch_file (f, d); + } +} diff --git a/bpkg/fetch.hxx b/bpkg/fetch.hxx index 659e019..fc6b763 100644 --- a/bpkg/fetch.hxx +++ b/bpkg/fetch.hxx @@ -16,35 +16,35 @@ namespace bpkg { - // Repository type bpkg (fetch-bpkg.cxx). + // Repository type pkg (fetch-pkg.cxx). // - bpkg_repository_manifests - bpkg_fetch_repositories (const dir_path&, bool ignore_unknown); + pkg_repository_manifests + pkg_fetch_repositories (const dir_path&, bool ignore_unknown); - pair - bpkg_fetch_repositories (const common_options&, - const repository_location&, - bool ignore_unknown); + pair + pkg_fetch_repositories (const common_options&, + const repository_location&, + bool ignore_unknown); - bpkg_package_manifests - bpkg_fetch_packages (const dir_path&, bool ignore_unknown); + pkg_package_manifests + pkg_fetch_packages (const dir_path&, bool ignore_unknown); - pair - bpkg_fetch_packages (const common_options&, - const repository_location&, - bool ignore_unknown); + pair + pkg_fetch_packages (const common_options&, + const repository_location&, + bool ignore_unknown); signature_manifest - bpkg_fetch_signature (const common_options&, - const repository_location&, - bool ignore_unknown); + pkg_fetch_signature (const common_options&, + const repository_location&, + bool ignore_unknown); path - bpkg_fetch_archive (const common_options&, - const repository_location&, - const path& archive, - const dir_path& destdir); + pkg_fetch_archive (const common_options&, + const repository_location&, + const path& archive, + const dir_path& destdir); // Repository type git (fetch-git.cxx). // diff --git a/bpkg/manifest-utility.cxx b/bpkg/manifest-utility.cxx index 77baafb..6162c21 100644 --- a/bpkg/manifest-utility.cxx +++ b/bpkg/manifest-utility.cxx @@ -87,7 +87,7 @@ namespace bpkg // Guess the repository type to construct the repository location: // // 1. If type is specified as an option use that (but validate - // incompatible scheme/type e.g., git/bpkg). + // incompatible scheme/type e.g., git/pkg). // // 2. See guess_type() function description in libbpkg/manifest.hxx for // the algorithm details. @@ -106,10 +106,10 @@ namespace bpkg dr << fail << "invalid " << t << " repository location '" << u << "': " << e; - // If the bpkg repository type was guessed, then suggest the user to + // If the pkg repository type was guessed, then suggest the user to // specify the type explicitly. // - if (!ot && t == repository_type::bpkg) + if (!ot && t == repository_type::pkg) dr << info << "consider using --type to specify repository type"; dr << endf; @@ -133,7 +133,7 @@ namespace bpkg { switch (l.type ()) { - case repository_type::bpkg: return dir_path (); // No state. + case repository_type::pkg: return dir_path (); // No state. case repository_type::git: { return dir_path (sha256 (l.canonical_name ()).abbreviated_string (16)); diff --git a/bpkg/package.hxx b/bpkg/package.hxx index 68c2cd8..3567b10 100644 --- a/bpkg/package.hxx +++ b/bpkg/package.hxx @@ -222,7 +222,7 @@ namespace bpkg // #pragma db map type(repository_location) as(_repository_location) \ to({(?).url (), \ - (?).empty () ? bpkg::repository_type::bpkg : (?).type ()}) \ + (?).empty () ? bpkg::repository_type::pkg : (?).type ()}) \ from(bpkg::repository_location (std::move ((?).url), (?).type)) // repository diff --git a/bpkg/pkg-fetch.cxx b/bpkg/pkg-fetch.cxx index fbe5b5c..1dd9f2e 100644 --- a/bpkg/pkg-fetch.cxx +++ b/bpkg/pkg-fetch.cxx @@ -224,9 +224,7 @@ namespace bpkg text << "fetching " << pl->location.leaf () << " " << "from " << pl->repository->name; - path a ( - bpkg_fetch_archive (co, pl->repository->location, pl->location, c)); - + path a (pkg_fetch_archive (co, pl->repository->location, pl->location, c)); auto_rmfile arm (a); // We can't be fetching an archive for a transient object. diff --git a/bpkg/pkg-verify.cxx b/bpkg/pkg-verify.cxx index 2f01f94..ee3cfe4 100644 --- a/bpkg/pkg-verify.cxx +++ b/bpkg/pkg-verify.cxx @@ -39,7 +39,7 @@ namespace bpkg { ifdstream is (move (pr.second.in_ofd), fdstream_mode::skip); manifest_parser mp (is, mf.string ()); - package_manifest m (bpkg_package_manifest (mp, iu)); + package_manifest m (pkg_package_manifest (mp, iu)); is.close (); if (wait ()) @@ -129,7 +129,7 @@ namespace bpkg { ifdstream ifs (mf); manifest_parser mp (ifs, mf.string ()); - package_manifest m (bpkg_package_manifest (mp, iu)); + package_manifest m (pkg_package_manifest (mp, iu)); // We used to verify package directory is - but it is // not clear why we should enforce it in this case (i.e., the user diff --git a/bpkg/rep-add.cli b/bpkg/rep-add.cli index 827e745..b630f0a 100644 --- a/bpkg/rep-add.cli +++ b/bpkg/rep-add.cli @@ -30,31 +30,32 @@ namespace bpkg the newly added repository. For that, use the \l{bpkg-rep-fetch(1)} command, normally, after adding all the repositories you wish to use. - Currently two types of repositories are supported: \i{bpkg} and \i{git}. + Currently two types of repositories are supported: \cb{pkg} and \cb{git}. Normally the repository type can be automatically guessed by examining its URL (for example, the presence of the \cb{.git} extension) or, in case of a local repository, its content (for example, the presence of the - \cb{.git/} subdirectory). Without any identifying information the bpkg - type is assumed unless explicitly specified with the \cb{--type} option. + \cb{.git/} subdirectory). Without any identifying information the + \cb{pkg} type is assumed unless explicitly specified with the \cb{--type} + option. - A bpkg repository is \i{archive}-based. That is, it contains a collection - of various packages/versions as archive files. For more information on - the structure of bpkg repositories refer to the \l{bpkg \cb{bpkg} - manual}. + A \cb{pkg} repository is \i{archive}-based. That is, it contains a + collection of various packages/versions as archive files. For more + information on the structure of \cb{pkg} repositories refer to the + \l{bpkg \cb{bpkg} manual}. - A git repository is \i{version control}-based. That is, it normally + A \cb{git} repository is \i{version control}-based. That is, it normally contains multiple versions of the same package (but can also contain several packages in the same repository). - Theoretically, a git repository may contain as many package versions as - there are commits. Practically, however, we are normally only interested - in a small subset of them while fetching and processing the necessary - information for all of them could be prohibitively expensive. As a - result, a git repository URL must include the fragment component that - restricts the set of versions to consider as available. While in the - future it will be possible to specify multiple available versions, - currently the fragment must identify a single version using one of the - following forms: + Theoretically, a \cb{git} repository may contain as many package versions + as there are commits. Practically, however, we are normally only + interested in a small subset of them while fetching and processing the + necessary information for all of them could be prohibitively expensive. + As a result, a \cb{git} repository URL must include the fragment + component that restricts the set of versions to consider as available. + While in the future it will be possible to specify multiple available + versions, currently the fragment must identify a single version using one + of the following forms: \ # @@ -72,7 +73,7 @@ namespace bpkg branch/tag otherwise. In an unlikely case this produces an incorrect result, the last form with omitted can be used. - Below are some examples of git repository URLs: + Below are some examples of \cb{git} repository URLs: \ https://example.com/foo.git#v1.2.3 @@ -82,16 +83,16 @@ namespace bpkg https://example.com/foo.git#deadbeefdeadbeefdeadbeefdeadbeefdeadbeef@ \ - A git repository is expected to contain either the \cb{manifest} or + A \cb{git} repository is expected to contain either the \cb{manifest} or \cb{packages} file in the root directory of the repository. If it only contains \cb{manifest}, then it is assumed to be a single-package repository with the \cb{manifest} file being its package manifest. Otherwise the \cb{packages} file should list the available packages as described in \l{bpkg#manifest-package-list-git Package List Manifest for - \c{git} Repositories}. + \cb{git} Repositories}. - A git repository may also contain the \cb{repositories} file in the root - directory of the repository. This file can be used to describe the + A \cb{git} repository may also contain the \cb{repositories} file in the + root directory of the repository. This file can be used to describe the repository itself as well as specify its prerequisite and complement repositories. See \l{bpkg#manifest-repository-list Repository List Manifest} for details on the format and semantics of this file. @@ -102,11 +103,11 @@ namespace bpkg it is not always possible for some protocols and/or server configurations, as discussed next. - A git repository accessible via \cb{http(s)://} can use either \i{dumb} - or \i{smart} protocol (refer to the \cb{git} documentation for details). - The dumb protocol provides only limited support for fetch minimization - and if this protocol is used, then \cb{bpkg} has no choice but to - download a substantial amount of history. + A \cb{git} repository accessible via \cb{http(s)://} can use either + \i{dumb} or \i{smart} protocol (refer to the \cb{git} documentation for + details). The dumb protocol provides only limited support for fetch + minimization and if this protocol is used, then \cb{bpkg} has no choice + but to download a substantial amount of history. The smart protocol allows fetching of minimal history for tags and branches. Whether this is also possible for (all) commit ids depends on @@ -137,7 +138,7 @@ namespace bpkg repository_type --type { "", - "Specify the repository type with valid values being \cb{bpkg} and + "Specify the repository type with valid values being \cb{pkg} and \cb{git}." } }; diff --git a/bpkg/rep-create.cxx b/bpkg/rep-create.cxx index e9619ca..3940c48 100644 --- a/bpkg/rep-create.cxx +++ b/bpkg/rep-create.cxx @@ -184,8 +184,8 @@ namespace bpkg // Load the 'repositories' file to make sure it is there and // is valid. // - bpkg_repository_manifests rms ( - bpkg_fetch_repositories (d, o.ignore_unknown ())); + pkg_repository_manifests rms ( + pkg_fetch_repositories (d, o.ignore_unknown ())); l4 ([&]{trace << rms.size () - 1 << " prerequisite repository(s)";}); @@ -196,7 +196,7 @@ namespace bpkg package_map pm; collect (o, pm, d, d); - bpkg_package_manifests manifests; + pkg_package_manifests manifests; manifests.sha256sum = sha256 (o, path (d / repositories)); for (auto& p: pm) diff --git a/bpkg/rep-fetch.cxx b/bpkg/rep-fetch.cxx index 9cd6164..795a170 100644 --- a/bpkg/rep-fetch.cxx +++ b/bpkg/rep-fetch.cxx @@ -42,18 +42,18 @@ namespace bpkg static bool filesystem_state_changed; static rep_fetch_data - rep_fetch_bpkg (const common_options& co, - const dir_path* conf, - const repository_location& rl, - bool ignore_unknown) + rep_fetch_pkg (const common_options& co, + const dir_path* conf, + const repository_location& rl, + bool ignore_unknown) { // First fetch the repositories list and authenticate the base's // certificate. // - pair rmc ( - bpkg_fetch_repositories (co, rl, ignore_unknown)); + pair rmc ( + pkg_fetch_repositories (co, rl, ignore_unknown)); - bpkg_repository_manifests& rms (rmc.first); + pkg_repository_manifests& rms (rmc.first); bool a (co.auth () != auth::none && (co.auth () == auth::all || rl.remote ())); @@ -70,10 +70,10 @@ namespace bpkg // Now fetch the packages list and make sure it matches the repositories // we just fetched. // - pair pmc ( - bpkg_fetch_packages (co, rl, ignore_unknown)); + pair pmc ( + pkg_fetch_packages (co, rl, ignore_unknown)); - bpkg_package_manifests& pms (pmc.first); + pkg_package_manifests& pms (pmc.first); if (rmc.second != pms.sha256sum) fail << "repositories manifest file checksum mismatch for " @@ -83,7 +83,7 @@ namespace bpkg if (a) { signature_manifest sm ( - bpkg_fetch_signature (co, rl, true /* ignore_unknown */)); + pkg_fetch_signature (co, rl, true /* ignore_unknown */)); if (sm.sha256sum != pmc.second) fail << "packages manifest file checksum mismatch for " @@ -270,7 +270,7 @@ namespace bpkg { ifdstream ifs (f); manifest_parser mp (ifs, f.string ()); - package_manifest m (bpkg_package_manifest (mp, ignore_unknown)); + package_manifest m (pkg_package_manifest (mp, ignore_unknown)); // Save the package manifest, preserving its location. // @@ -410,8 +410,8 @@ namespace bpkg { switch (rl.type ()) { - case repository_type::bpkg: return rep_fetch_bpkg (co, conf, rl, iu); - case repository_type::git: return rep_fetch_git (co, conf, rl, iu); + case repository_type::pkg: return rep_fetch_pkg (co, conf, rl, iu); + case repository_type::git: return rep_fetch_git (co, conf, rl, iu); } assert (false); // Can't be here. diff --git a/bpkg/rep-info.cli b/bpkg/rep-info.cli index 5c11f4f..029b27b 100644 --- a/bpkg/rep-info.cli +++ b/bpkg/rep-info.cli @@ -96,7 +96,7 @@ namespace bpkg repository_type --type { "", - "Specify the repository type with valid values being \cb{bpkg} and + "Specify the repository type with valid values being \cb{pkg} and \cb{git}. Refer to \l{bpkg-rep-add(1)} for details." } diff --git a/bpkg/repository-signing.cli b/bpkg/repository-signing.cli index f6ee7fa..96c37bc 100644 --- a/bpkg/repository-signing.cli +++ b/bpkg/repository-signing.cli @@ -36,7 +36,7 @@ matches the certificate's subject (see below). In the future a certificate authority (CA)-based model may be added. The rest of this guide shows how to create a key/certificate pair for -\cb{bpkg} repository signing and use it to sign a repository. At the end it +\cb{pkg} repository signing and use it to sign a repository. At the end it also briefly explains how to store the private key on a PIV/PKCS#11 device using Yubikey 4 as an example. @@ -92,7 +92,7 @@ it. Also use a working email address in case users need to contact you about issues with your certificate. Note that the \cb{name:} prefix in the \cb{CN} value is not a typo. -The \cb{name} field is a canonical repository name prefix with the \cb{bpkg:} +The \cb{name} field is a canonical repository name prefix with the \cb{pkg:} type part stripped. Any repository with a canonical name that starts with this prefix can be authenticated by this certificate (see the repository manifest documentation for more information on canonical names). For example, name diff --git a/doc/manual.cli b/doc/manual.cli index 02287bd..73f82ed 100644 --- a/doc/manual.cli +++ b/doc/manual.cli @@ -856,9 +856,9 @@ Note that the comment of the matching exclusion is used by the web interface (\c{brep}) to display the reason for the build exclusion. -\h#manifest-package-list-bpkg|Package List Manifest for \c{bpkg} Repositories| +\h#manifest-package-list-pkg|Package List Manifest for \cb{pkg} Repositories| -The package list manifest (the \c{packages} file found in the \c{bpkg} +The package list manifest (the \c{packages} file found in the \cb{pkg} repository root directory) describes the list of packages available in the repository. First comes a manifest that describes the list itself (referred to as the list manifest). The list manifest synopsis is presented next: @@ -879,7 +879,7 @@ sha256sum: The detailed description of each value follows in the subsequent sections. -\h2#manifest-package-list-bpkg-sha256sum|\c{sha256sum} (list manifest)| +\h2#manifest-package-list-pkg-sha256sum|\c{sha256sum} (list manifest)| \ sha256sum: @@ -895,7 +895,7 @@ was fetched is the same as the one that was used to create the \c{packages} file. This also means that if \c{repositories} is modified in any way, then \c{packages} must be regenerated as well.] -\h2#manifest-package-list-bpkg-package-location|\c{location} (package manifest)| +\h2#manifest-package-list-pkg-package-location|\c{location} (package manifest)| \ location: @@ -909,7 +909,7 @@ them all into the repository root directory, it can get untidy. With \c{location} we allow for sub-directories.] -\h2#manifest-package-list-bpkg-package-sha256sum|\c{sha256sum} (package manifest)| +\h2#manifest-package-list-pkg-package-sha256sum|\c{sha256sum} (package manifest)| \ sha256sum: @@ -920,9 +920,9 @@ The SHA256 checksum of the package archive file. The \i{sum} value should be markers), be calculated in the binary mode, and use lower-case letters. -\h#manifest-package-list-git|Package List Manifest for \c{git} Repositories| +\h#manifest-package-list-git|Package List Manifest for \cb{git} Repositories| -The package list manifest (the \c{packages} file found in the \c{git} +The package list manifest (the \c{packages} file found in the \cb{git} repository root directory) describes the list of packages available in the repository. It is a (potentially empty) sequence of manifests with the following synopsis: @@ -957,13 +957,13 @@ be in the POSIX representation. \h#manifest-repository|Repository Manifest| The repository manifest (only used as part of the repository manifest list -described below) describes a \c{bpkg} or \c{git} repository. The manifest +described below) describes a \cb{pkg} or \cb{git} repository. The manifest synopsis is presented next followed by the detailed description of each value in subsequent sections. \ [location]: -[type]: bpkg|git +[type]: pkg|git [role]: base|prerequisite|complement [url]: [email]: [; ] @@ -998,7 +998,7 @@ that is not possible (for example, there is a drive letter in the path).] \h2#manifest-repository-type|\c{type}| \ -[type]: bpkg|git +[type]: pkg|git \ The repository type. The type must be omitted for the base repository. If the @@ -1124,7 +1124,7 @@ description. The X.509 certificate for the repository. It should be in the PEM format and can only be specified for the base repository. Currently only used for the -\c{bpkg} repository type. +\cb{pkg} repository type. The certificate should contain the \c{CN} and \c{O} components in the subject as well as the \c{email:} component in the subject alternative names. The @@ -1135,7 +1135,7 @@ repository name(s) that are authenticated with this certificate. See If this value is present then the \c{packages} file must be signed with the corresponding private key and the signature saved in the \c{signature} file. -See \l{#manifest-signature-bpkg Signature Manifest} for details. +See \l{#manifest-signature-pkg Signature Manifest} for details. \h#manifest-repository-list|Repository List Manifest| @@ -1184,9 +1184,9 @@ https://pkg.example.org/1/math/stable \ -\h#manifest-signature-bpkg|Signature Manifest for \c{bpkg} Repositories| +\h#manifest-signature-pkg|Signature Manifest for \cb{pkg} Repositories| -The signature manifest (the \c{signature} file found in the \c{bpkg} +The signature manifest (the \c{signature} file found in the \cb{pkg} repository root directory) contains the signature of the repository's \c{packages} file. In order to detect the situation where the downloaded \c{signature} and \c{packages} files belong to different updates, the manifest @@ -1201,7 +1201,7 @@ sha256sum: signature: \ -\h2#manifest-signature-bpkg-sha256sum|\c{sha256sum}| +\h2#manifest-signature-pkg-sha256sum|\c{sha256sum}| \ sha256sum: @@ -1212,7 +1212,7 @@ characters long (that is, just the SHA256 value, no file name or any other markers), be calculated in the binary mode, and use lower-case letters. -\h2#manifest-signature-bpkg-signature|\c{signature}| +\h2#manifest-signature-pkg-signature|\c{signature}| \ signature: diff --git a/tests/pkg-build.test b/tests/pkg-build.test index b7d7fff..b1ba0c8 100644 --- a/tests/pkg-build.test +++ b/tests/pkg-build.test @@ -1442,7 +1442,7 @@ rep_fetch += -d cfg --auth all --trust-yes 2>! $* "libbar@$rep/t4d" 2>>~%EOE% != 0 %.+ - error: package libbar is not found in bpkg:build2.org/pkg-build/t4d or its complements + error: package libbar is not found in pkg:build2.org/pkg-build/t4d or its complements EOE } } diff --git a/tests/publish b/tests/publish index 5d1e928..21c7898 100755 --- a/tests/publish +++ b/tests/publish @@ -22,7 +22,7 @@ for o in "$@"; do esac done -# Publish bpkg test repositories. +# Publish test pkg repositories. # rsync -v -rlpt --copy-unsafe-links \ --prune-empty-dirs --delete-after --delete-excluded $* \ @@ -34,7 +34,7 @@ rsync -v -rlpt --copy-unsafe-links \ --exclude '*' \ test/*/pkg/1/build2.org/ build2.org:/var/pkg/1/ -# Publish git test repositories. +# Publish test git repositories. # urls=('git.build2.org:/var/scm/testing/bpkg/unadv' \ 'git.build2.org:/var/scm/testing/bpkg/advonly') diff --git a/tests/remote.test b/tests/remote.test index af0c6f6..78a65af 100644 --- a/tests/remote.test +++ b/tests/remote.test @@ -2,7 +2,7 @@ # copyright : Copyright (c) 2014-2017 Code Synthesis Ltd # license : MIT; see accompanying LICENSE file -# Tests for commands that accept bpkg repository location must be able to run +# Tests for commands that accept pkg repository location must be able to run # regardless whether the repository is local or remote. They also must be able # to create the repository used for testing at the specified path, so being # published to build2.org it can be used for the remote testing. Note that diff --git a/tests/rep-add.test b/tests/rep-add.test index c96b32b..8ee1b9d 100644 --- a/tests/rep-add.test +++ b/tests/rep-add.test @@ -40,7 +40,7 @@ rep_list += -d cfg $clone_cfg; $* 'stable' 2>>/~%EOE% != 0 - %error: invalid bpkg repository location '.+/no-version/stable': missing repository version% + %error: invalid pkg repository location '.+/no-version/stable': missing repository version% info: consider using --type to specify repository type EOE } @@ -55,13 +55,13 @@ rep_list += -d cfg EOE } - : bpkg-git-scheme + : pkg-git-scheme : { $clone_cfg; - $* 'git://example.org/repo' --type bpkg 2>>EOE != 0 - error: invalid bpkg repository location 'git://example.org/repo': unsupported scheme for bpkg repository + $* 'git://example.org/repo' --type pkg 2>>EOE != 0 + error: invalid pkg repository location 'git://example.org/repo': unsupported scheme for pkg repository EOE } @@ -97,11 +97,11 @@ rep_list += -d cfg added git:example.org/repo#master EOE - : http-bpkg + : http-pkg : $clone_cfg; $* 'http://example.org/1/repo' 2>>EOE - added bpkg:example.org/repo + added pkg:example.org/repo EOE : file-git @@ -112,7 +112,7 @@ rep_list += -d cfg %error: invalid git repository location '.+repo': missing branch/tag or commit id for git repository% EOE - : file-bpkg + : file-pkg : $clone_cfg; @@ -128,11 +128,11 @@ rep_list += -d cfg $clone_cfg; $* ./1/bar/stable 2>>/~%EOE%; - %added bpkg:.+/relative-path/bar/stable% + %added pkg:.+/relative-path/bar/stable% EOE $* ./1/../1/bar/stable 2>>/~%EOE% - %unchanged bpkg:.+/relative-path/bar/stable% + %unchanged pkg:.+/relative-path/bar/stable% EOE } @@ -142,11 +142,11 @@ rep_list += -d cfg $clone_cfg; $* $~/1/foo/stable 2>>/~%EOE%; - %added bpkg:.+/absolute-path/foo/stable% + %added pkg:.+/absolute-path/foo/stable% EOE $* $~/1/../1/foo/stable 2>>/~%EOE% - %unchanged bpkg:.+/absolute-path/foo/stable% + %unchanged pkg:.+/absolute-path/foo/stable% EOE } @@ -155,20 +155,20 @@ rep_list += -d cfg { +$clone_cfg - : bpkg + : pkg : $clone_cfg; $* 'http://pkg.example.org/1/testing' 2>>EOE; - added bpkg:example.org/testing + added pkg:example.org/testing EOE $* 'https://www.example.org/1/testing' 2>>EOE; - updated bpkg:example.org/testing + updated pkg:example.org/testing EOE $rep_list >>EOO - bpkg:example.org/testing https://www.example.org/1/testing + pkg:example.org/testing https://www.example.org/1/testing EOO : git @@ -194,12 +194,12 @@ rep_list += -d cfg $clone_cfg; $* 'http://pkg.example.org/1/alpha' 'http://pkg.example.org/1/beta' 2>>EOE; - added bpkg:example.org/alpha - added bpkg:example.org/beta + added pkg:example.org/alpha + added pkg:example.org/beta EOE $rep_list >>EOO - bpkg:example.org/alpha http://pkg.example.org/1/alpha - bpkg:example.org/beta http://pkg.example.org/1/beta + pkg:example.org/alpha http://pkg.example.org/1/alpha + pkg:example.org/beta http://pkg.example.org/1/beta EOO } diff --git a/tests/rep-auth.test b/tests/rep-auth.test index 336397b..1fb7d97 100644 --- a/tests/rep-auth.test +++ b/tests/rep-auth.test @@ -173,8 +173,8 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch 2>>"EOE" != 0; - fetching bpkg:build2.org/rep-auth/signed - warning: authenticity of the certificate for repository bpkg:build2.org/rep-auth/signed cannot be established + fetching pkg:build2.org/rep-auth/signed + warning: authenticity of the certificate for repository pkg:build2.org/rep-auth/signed cannot be established certificate is for build2.org, "Code Synthesis" certificate SHA256 fingerprint: $cert_fp @@ -191,7 +191,7 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust $cert_fp 2>>EOE; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed 1 package(s) in 1 repository(s) EOE @@ -204,7 +204,7 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-no --trust $cert_fp 2>>EOE; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed 1 package(s) in 1 repository(s) EOE @@ -217,7 +217,7 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-yes 2>>EOE; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed 1 package(s) in 1 repository(s) EOE @@ -230,8 +230,8 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-no 2>>EOE != 0; - fetching bpkg:build2.org/rep-auth/signed - error: authenticity of the certificate for repository bpkg:build2.org/rep-auth/signed cannot be established + fetching pkg:build2.org/rep-auth/signed + error: authenticity of the certificate for repository pkg:build2.org/rep-auth/signed cannot be established EOE $not_fetched @@ -243,7 +243,7 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-yes --trust-no 2>>EOE != 0; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed error: --trust-yes and --trust-no are mutually exclusive EOE @@ -256,19 +256,19 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-yes 2>>EOE; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed 1 package(s) in 1 repository(s) EOE $rep_fetch 2>>EOE; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed 1 package(s) in 1 repository(s) EOE $fetched; $rep_fetch --trust-no 2>>EOE; - fetching bpkg:build2.org/rep-auth/signed + fetching pkg:build2.org/rep-auth/signed 1 package(s) in 1 repository(s) EOE @@ -284,7 +284,7 @@ sc = " " # Space character to append to here-document line when required. : no-auth : $rep_info 2>>"EOE" != 0 - warning: authenticity of the certificate for repository bpkg:build2.org/rep-auth/signed cannot be established + warning: authenticity of the certificate for repository pkg:build2.org/rep-auth/signed cannot be established certificate is for build2.org, "Code Synthesis" certificate SHA256 fingerprint: $cert_fp @@ -303,7 +303,7 @@ sc = " " # Space character to append to here-document line when required. : trust-no : $rep_info --trust-no 2>>EOE != 0 - error: authenticity of the certificate for repository bpkg:build2.org/rep-auth/signed cannot be established + error: authenticity of the certificate for repository pkg:build2.org/rep-auth/signed cannot be established EOE : already-trusted @@ -354,7 +354,7 @@ sc = " " # Space character to append to here-document line when required. cp -r $rep/self-match $r; $rep_info $r/self-match 2>>EOE != 0 - error: certificate name mismatch for repository bpkg:b.a.build2.org/self-match + error: certificate name mismatch for repository pkg:b.a.build2.org/self-match info: certificate name is *build2.org EOE } @@ -400,7 +400,7 @@ sc = " " # Space character to append to here-document line when required. : exact : $rep_info $rep/subdomain-match 2>>EOE != 0 - error: certificate name mismatch for repository bpkg:build2.org/rep-auth/subdomain-match + error: certificate name mismatch for repository pkg:build2.org/rep-auth/subdomain-match info: certificate name is *.build2.org EOE @@ -426,7 +426,7 @@ sc = " " # Space character to append to here-document line when required. cp -r $rep/subdomain-match $r; $rep_info $r/subdomain-match 2>>EOE != 0 - error: certificate name mismatch for repository bpkg:b.a.build2.org/subdomain-match + error: certificate name mismatch for repository pkg:b.a.build2.org/subdomain-match info: certificate name is *.build2.org EOE } @@ -450,8 +450,8 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch 2>>~%EOE% != 0; - fetching bpkg:build2.org/rep-auth/unsigned1 - warning: repository bpkg:build2.org/rep-auth/unsigned1 is unsigned + fetching pkg:build2.org/rep-auth/unsigned1 + warning: repository pkg:build2.org/rep-auth/unsigned1 is unsigned %continue without authenticating repositories at .+\? \[y/n\] % error: unable to read y/n answer from STDOUT EOE @@ -465,7 +465,7 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-yes 2>>EOE; - fetching bpkg:build2.org/rep-auth/unsigned1 + fetching pkg:build2.org/rep-auth/unsigned1 1 package(s) in 1 repository(s) EOE @@ -478,8 +478,8 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-no 2>>EOE != 0; - fetching bpkg:build2.org/rep-auth/unsigned1 - error: repository bpkg:build2.org/rep-auth/unsigned1 is unsigned + fetching pkg:build2.org/rep-auth/unsigned1 + error: repository pkg:build2.org/rep-auth/unsigned1 is unsigned EOE $not_fetched @@ -491,19 +491,19 @@ sc = " " # Space character to append to here-document line when required. $clone_cfg; $rep_fetch --trust-yes 2>>EOE; - fetching bpkg:build2.org/rep-auth/unsigned1 + fetching pkg:build2.org/rep-auth/unsigned1 1 package(s) in 1 repository(s) EOE $rep_fetch 2>>EOE; - fetching bpkg:build2.org/rep-auth/unsigned1 + fetching pkg:build2.org/rep-auth/unsigned1 1 package(s) in 1 repository(s) EOE $fetched; $rep_fetch --trust-no 2>>EOE; - fetching bpkg:build2.org/rep-auth/unsigned1 + fetching pkg:build2.org/rep-auth/unsigned1 1 package(s) in 1 repository(s) EOE @@ -512,8 +512,8 @@ sc = " " # Space character to append to here-document line when required. $rep_add $rep/unsigned2; $rep_fetch 2>>EOE; - fetching bpkg:build2.org/rep-auth/unsigned1 - fetching bpkg:build2.org/rep-auth/unsigned2 + fetching pkg:build2.org/rep-auth/unsigned1 + fetching pkg:build2.org/rep-auth/unsigned2 1 package(s) in 2 repository(s) EOE @@ -529,7 +529,7 @@ sc = " " # Space character to append to here-document line when required. : no-auth : $rep_info 2>>~%EOE% != 0 - warning: repository bpkg:build2.org/rep-auth/unsigned1 is unsigned + warning: repository pkg:build2.org/rep-auth/unsigned1 is unsigned %continue without authenticating repositories at .+\? \[y/n\] % error: unable to read y/n answer from STDOUT EOE @@ -537,13 +537,13 @@ sc = " " # Space character to append to here-document line when required. : trust-yes : $rep_info --trust-yes >>"EOO" - bpkg:build2.org/rep-auth/unsigned1 ($rep/unsigned1) + pkg:build2.org/rep-auth/unsigned1 ($rep/unsigned1) EOO : trust-no : $rep_info --trust-no 2>>EOE != 0 - error: repository bpkg:build2.org/rep-auth/unsigned1 is unsigned + error: repository pkg:build2.org/rep-auth/unsigned1 is unsigned EOE : already-trusted @@ -553,10 +553,10 @@ sc = " " # Space character to append to here-document line when required. rep_info += -d cfg; $rep_info --trust-yes >>"EOO"; - bpkg:build2.org/rep-auth/unsigned1 ($rep/unsigned1) + pkg:build2.org/rep-auth/unsigned1 ($rep/unsigned1) EOO $rep_info >>"EOO" - bpkg:build2.org/rep-auth/unsigned1 ($rep/unsigned1) + pkg:build2.org/rep-auth/unsigned1 ($rep/unsigned1) EOO } } @@ -570,20 +570,20 @@ sc = " " # Space character to append to here-document line when required. : name-mismatch : $rep_info $rep/name-mismatch 2>>EOE != 0 - error: certificate name mismatch for repository bpkg:build2.org/rep-auth/name-mismatch + error: certificate name mismatch for repository pkg:build2.org/rep-auth/name-mismatch info: certificate name is build2.org/mismatched/name EOE : expired : $rep_info $rep/expired 2>>EOE != 0 - error: certificate for repository bpkg:build2.org/rep-auth/expired has expired + error: certificate for repository pkg:build2.org/rep-auth/expired has expired EOE : sha256sum-mismatch : $rep_info $rep/sha256sum-mismatch 2>>EOE != 0 - error: packages manifest file checksum mismatch for bpkg:build2.org/rep-auth/sha256sum-mismatch + error: packages manifest file checksum mismatch for pkg:build2.org/rep-auth/sha256sum-mismatch info: try again EOE @@ -591,7 +591,7 @@ sc = " " # Space character to append to here-document line when required. : $rep_info $rep/signature-mismatch 2>>~%EOE% != 0 %.* - %error: unable to authenticate repository bpkg:build2.org/rep-auth/signature-mismatch: .*% + %error: unable to authenticate repository pkg:build2.org/rep-auth/signature-mismatch: .*% EOE : create-rep diff --git a/tests/rep-fetch.test b/tests/rep-fetch.test index 527a07b..237ee6a 100644 --- a/tests/rep-fetch.test +++ b/tests/rep-fetch.test @@ -112,7 +112,7 @@ $* 2>>/EOE != 0 info: use 'bpkg rep-add' to add a repository EOE -: bpkg-repos +: pkg-repos : { test.options += --auth all @@ -123,12 +123,12 @@ $* 2>>/EOE != 0 $clone_root_cfg && $rep_add $rep/hello; $* --trust $cert_fp 2>>EOE &cfg/.bpkg/certs/**; - fetching bpkg:build2.org/rep-fetch/hello + fetching pkg:build2.org/rep-fetch/hello 1 package(s) in 1 repository(s) EOE $* 2>>EOE - fetching bpkg:build2.org/rep-fetch/hello + fetching pkg:build2.org/rep-fetch/hello 1 package(s) in 1 repository(s) EOE } @@ -139,20 +139,20 @@ $* 2>>/EOE != 0 $clone_root_cfg && $rep_add $rep/bar/unstable; $* --trust-yes 2>>EOE; - fetching bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/foo/testing (prerequisite of bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/foo/stable (complements bpkg:build2.org/rep-fetch/foo/testing) - fetching bpkg:build2.org/rep-fetch/bar/testing (complements bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/bar/stable (complements bpkg:build2.org/rep-fetch/bar/testing) + fetching pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/foo/testing (prerequisite of pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/foo/stable (complements pkg:build2.org/rep-fetch/foo/testing) + fetching pkg:build2.org/rep-fetch/bar/testing (complements pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/bar/stable (complements pkg:build2.org/rep-fetch/bar/testing) 5 package(s) in 5 repository(s) EOE $* 2>>EOE - fetching bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/foo/testing (prerequisite of bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/foo/stable (complements bpkg:build2.org/rep-fetch/foo/testing) - fetching bpkg:build2.org/rep-fetch/bar/testing (complements bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/bar/stable (complements bpkg:build2.org/rep-fetch/bar/testing) + fetching pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/foo/testing (prerequisite of pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/foo/stable (complements pkg:build2.org/rep-fetch/foo/testing) + fetching pkg:build2.org/rep-fetch/bar/testing (complements pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/bar/stable (complements pkg:build2.org/rep-fetch/bar/testing) 5 package(s) in 5 repository(s) EOE } @@ -163,22 +163,22 @@ $* 2>>/EOE != 0 $clone_root_cfg && $rep_add $rep/hello $rep/bar/unstable; $* --trust-yes 2>>EOE &cfg/.bpkg/certs/**; - fetching bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/foo/testing (prerequisite of bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/foo/stable (complements bpkg:build2.org/rep-fetch/foo/testing) - fetching bpkg:build2.org/rep-fetch/bar/testing (complements bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/bar/stable (complements bpkg:build2.org/rep-fetch/bar/testing) - fetching bpkg:build2.org/rep-fetch/hello + fetching pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/foo/testing (prerequisite of pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/foo/stable (complements pkg:build2.org/rep-fetch/foo/testing) + fetching pkg:build2.org/rep-fetch/bar/testing (complements pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/bar/stable (complements pkg:build2.org/rep-fetch/bar/testing) + fetching pkg:build2.org/rep-fetch/hello 6 package(s) in 6 repository(s) EOE $* 2>>EOE - fetching bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/foo/testing (prerequisite of bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/foo/stable (complements bpkg:build2.org/rep-fetch/foo/testing) - fetching bpkg:build2.org/rep-fetch/bar/testing (complements bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/bar/stable (complements bpkg:build2.org/rep-fetch/bar/testing) - fetching bpkg:build2.org/rep-fetch/hello + fetching pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/foo/testing (prerequisite of pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/foo/stable (complements pkg:build2.org/rep-fetch/foo/testing) + fetching pkg:build2.org/rep-fetch/bar/testing (complements pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/bar/stable (complements pkg:build2.org/rep-fetch/bar/testing) + fetching pkg:build2.org/rep-fetch/hello 6 package(s) in 6 repository(s) EOE } @@ -189,33 +189,33 @@ $* 2>>/EOE != 0 $clone_root_cfg; $* --trust-yes $rep/bar/unstable 2>>EOE; - added bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/foo/testing (prerequisite of bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/foo/stable (complements bpkg:build2.org/rep-fetch/foo/testing) - fetching bpkg:build2.org/rep-fetch/bar/testing (complements bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/bar/stable (complements bpkg:build2.org/rep-fetch/bar/testing) + added pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/foo/testing (prerequisite of pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/foo/stable (complements pkg:build2.org/rep-fetch/foo/testing) + fetching pkg:build2.org/rep-fetch/bar/testing (complements pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/bar/stable (complements pkg:build2.org/rep-fetch/bar/testing) 5 package(s) in 5 repository(s) EOE - $* 'bpkg:build2.org/rep-fetch/bar/unstable' 2>>EOE; - fetching bpkg:build2.org/rep-fetch/bar/unstable - fetching bpkg:build2.org/rep-fetch/foo/testing (prerequisite of bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/foo/stable (complements bpkg:build2.org/rep-fetch/foo/testing) - fetching bpkg:build2.org/rep-fetch/bar/testing (complements bpkg:build2.org/rep-fetch/bar/unstable) - fetching bpkg:build2.org/rep-fetch/bar/stable (complements bpkg:build2.org/rep-fetch/bar/testing) + $* 'pkg:build2.org/rep-fetch/bar/unstable' 2>>EOE; + fetching pkg:build2.org/rep-fetch/bar/unstable + fetching pkg:build2.org/rep-fetch/foo/testing (prerequisite of pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/foo/stable (complements pkg:build2.org/rep-fetch/foo/testing) + fetching pkg:build2.org/rep-fetch/bar/testing (complements pkg:build2.org/rep-fetch/bar/unstable) + fetching pkg:build2.org/rep-fetch/bar/stable (complements pkg:build2.org/rep-fetch/bar/testing) 5 package(s) in 5 repository(s) EOE $rep_list >>"EOO" - bpkg:build2.org/rep-fetch/bar/unstable ($rep/bar/unstable) - complement bpkg:build2.org/rep-fetch/bar/testing ($rep/bar/testing) - complement bpkg:build2.org/rep-fetch/bar/stable ($rep/bar/stable) - prerequisite bpkg:build2.org/rep-fetch/foo/stable ($rep/foo/stable) - prerequisite bpkg:build2.org/rep-fetch/foo/testing ($rep/foo/testing) - complement bpkg:build2.org/rep-fetch/foo/stable ($rep/foo/stable) - prerequisite bpkg:build2.org/rep-fetch/foo/testing ($rep/foo/testing) - complement bpkg:build2.org/rep-fetch/foo/stable ($rep/foo/stable) + pkg:build2.org/rep-fetch/bar/unstable ($rep/bar/unstable) + complement pkg:build2.org/rep-fetch/bar/testing ($rep/bar/testing) + complement pkg:build2.org/rep-fetch/bar/stable ($rep/bar/stable) + prerequisite pkg:build2.org/rep-fetch/foo/stable ($rep/foo/stable) + prerequisite pkg:build2.org/rep-fetch/foo/testing ($rep/foo/testing) + complement pkg:build2.org/rep-fetch/foo/stable ($rep/foo/stable) + prerequisite pkg:build2.org/rep-fetch/foo/testing ($rep/foo/testing) + complement pkg:build2.org/rep-fetch/foo/stable ($rep/foo/stable) EOO } @@ -225,18 +225,18 @@ $* 2>>/EOE != 0 $clone_root_cfg; $* --trust-yes $rep/cycle/stable 2>>EOE; - added bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/math (prerequisite of bpkg:build2.org/rep-fetch/cycle/stable) - fetching bpkg:build2.org/rep-fetch/cycle/extra (prerequisite of bpkg:build2.org/rep-fetch/cycle/math) + added pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/math (prerequisite of pkg:build2.org/rep-fetch/cycle/stable) + fetching pkg:build2.org/rep-fetch/cycle/extra (prerequisite of pkg:build2.org/rep-fetch/cycle/math) 3 package(s) in 3 repository(s) EOE $rep_list >>"EOO" - bpkg:build2.org/rep-fetch/cycle/stable ($rep/cycle/stable) - prerequisite bpkg:build2.org/rep-fetch/cycle/math ($rep/cycle/math) - prerequisite bpkg:build2.org/rep-fetch/cycle/extra ($rep/cycle/extra) - prerequisite bpkg:build2.org/rep-fetch/cycle/stable ($rep/cycle/stable) + pkg:build2.org/rep-fetch/cycle/stable ($rep/cycle/stable) + prerequisite pkg:build2.org/rep-fetch/cycle/math ($rep/cycle/math) + prerequisite pkg:build2.org/rep-fetch/cycle/extra ($rep/cycle/extra) + prerequisite pkg:build2.org/rep-fetch/cycle/stable ($rep/cycle/stable) EOO } @@ -266,23 +266,23 @@ $* 2>>/EOE != 0 $clone_cfg; $* --trust-yes $rep/cycle/stable 2>>EOE; - added bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/math (prerequisite of bpkg:build2.org/rep-fetch/cycle/stable) - fetching bpkg:build2.org/rep-fetch/cycle/extra (prerequisite of bpkg:build2.org/rep-fetch/cycle/math) + added pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/math (prerequisite of pkg:build2.org/rep-fetch/cycle/stable) + fetching pkg:build2.org/rep-fetch/cycle/extra (prerequisite of pkg:build2.org/rep-fetch/cycle/math) 3 package(s) in 3 repository(s) EOE $* --trust-yes $stable_rep 2>>EOE; - updated bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/extra (prerequisite of bpkg:build2.org/rep-fetch/cycle/stable) + updated pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/extra (prerequisite of pkg:build2.org/rep-fetch/cycle/stable) 2 package(s) in 2 repository(s) EOE $rep_list >>"EOO" - bpkg:build2.org/rep-fetch/cycle/stable ($nc_rep/stable) - prerequisite bpkg:build2.org/rep-fetch/cycle/extra ($nc_rep/extra) + pkg:build2.org/rep-fetch/cycle/stable ($nc_rep/stable) + prerequisite pkg:build2.org/rep-fetch/cycle/extra ($nc_rep/extra) EOO } @@ -292,26 +292,26 @@ $* 2>>/EOE != 0 $clone_cfg; $* --trust-yes $rep/cycle/stable 2>>EOE; - added bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/math (prerequisite of bpkg:build2.org/rep-fetch/cycle/stable) - fetching bpkg:build2.org/rep-fetch/cycle/extra (prerequisite of bpkg:build2.org/rep-fetch/cycle/math) + added pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/math (prerequisite of pkg:build2.org/rep-fetch/cycle/stable) + fetching pkg:build2.org/rep-fetch/cycle/extra (prerequisite of pkg:build2.org/rep-fetch/cycle/math) 3 package(s) in 3 repository(s) EOE $* --trust-yes $math_rep $stable_rep 2>>EOE; - added bpkg:build2.org/rep-fetch/cycle/math - updated bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/math - fetching bpkg:build2.org/rep-fetch/cycle/stable - fetching bpkg:build2.org/rep-fetch/cycle/extra (prerequisite of bpkg:build2.org/rep-fetch/cycle/stable) + added pkg:build2.org/rep-fetch/cycle/math + updated pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/math + fetching pkg:build2.org/rep-fetch/cycle/stable + fetching pkg:build2.org/rep-fetch/cycle/extra (prerequisite of pkg:build2.org/rep-fetch/cycle/stable) 3 package(s) in 3 repository(s) EOE $rep_list >>"EOO" - bpkg:build2.org/rep-fetch/cycle/math ($nc_rep/math) - bpkg:build2.org/rep-fetch/cycle/stable ($nc_rep/stable) - prerequisite bpkg:build2.org/rep-fetch/cycle/extra ($nc_rep/extra) + pkg:build2.org/rep-fetch/cycle/math ($nc_rep/math) + pkg:build2.org/rep-fetch/cycle/stable ($nc_rep/stable) + prerequisite pkg:build2.org/rep-fetch/cycle/extra ($nc_rep/extra) EOO } } diff --git a/tests/rep-info.test b/tests/rep-info.test index ce0c6d4..2b6aa0f 100644 --- a/tests/rep-info.test +++ b/tests/rep-info.test @@ -52,9 +52,9 @@ EOE : unsigned : $* $rep/testing >>"EOO" - bpkg:build2.org/rep-info/testing ($rep/testing) - prerequisite bpkg:build2.org/foo/testing ($rep_root/foo/testing) - complement bpkg:build2.org/rep-info/stable ($rep/stable) + pkg:build2.org/rep-info/testing ($rep/testing) + prerequisite pkg:build2.org/foo/testing ($rep_root/foo/testing) + complement pkg:build2.org/rep-info/stable ($rep/stable) foo/1 EOO @@ -62,11 +62,11 @@ EOE : signed : $* $rep/signed >>"EOO" - bpkg:build2.org/rep-info/signed ($rep/signed) + pkg:build2.org/rep-info/signed ($rep/signed) CN=build2.org/O=Code Synthesis/info@build2.org $cert_fp - prerequisite bpkg:build2.org/foo/testing ($rep_root/foo/testing) - complement bpkg:build2.org/rep-info/stable ($rep/stable) + prerequisite pkg:build2.org/foo/testing ($rep_root/foo/testing) + complement pkg:build2.org/rep-info/stable ($rep/stable) foo/1 EOO @@ -74,7 +74,7 @@ EOE : name : -$* --name $rep/testing >"bpkg:build2.org/rep-info/testing ($rep/testing)" +$* --name $rep/testing >"pkg:build2.org/rep-info/testing ($rep/testing)" : packages : @@ -107,8 +107,8 @@ $* --name $rep/testing >"bpkg:build2.org/rep-info/testing ($rep/testing)" : list : $* --repositories $rep/testing >>"EOO" - prerequisite bpkg:build2.org/foo/testing ($rep_root/foo/testing) - complement bpkg:build2.org/rep-info/stable ($rep/stable) + prerequisite pkg:build2.org/foo/testing ($rep_root/foo/testing) + complement pkg:build2.org/rep-info/stable ($rep/stable) EOO : manifest @@ -116,10 +116,10 @@ $* --name $rep/testing >"bpkg:build2.org/rep-info/testing ($rep/testing)" $* --repositories --manifest $rep/testing >>EOO : 1 location: ../../foo/testing - type: bpkg + type: pkg : location: ../stable - type: bpkg + type: pkg role: complement : EOO diff --git a/tests/rep-list.test b/tests/rep-list.test index a8802ea..398d887 100644 --- a/tests/rep-list.test +++ b/tests/rep-list.test @@ -64,8 +64,8 @@ rep_fetch += -d cfg --auth all --trust-yes 2>! $rep_add $rep/stable && $rep_add $rep/testing && $rep_fetch; $* >>"EOO" - bpkg:build2.org/rep-list/stable ($rep/stable) - bpkg:build2.org/rep-list/testing ($rep/testing) + pkg:build2.org/rep-list/stable ($rep/stable) + pkg:build2.org/rep-list/testing ($rep/testing) EOO } @@ -78,10 +78,10 @@ rep_fetch += -d cfg --auth all --trust-yes 2>! $rep_add $rep/stable && $rep_fetch; $* --prerequisites >>"EOO" - bpkg:build2.org/rep-list/stable ($rep/stable) - prerequisite bpkg:build2.org/rep-list/math ($rep/math) - prerequisite bpkg:build2.org/rep-list/extra ($rep/extra) - prerequisite bpkg:build2.org/rep-list/stable ($rep/stable) + pkg:build2.org/rep-list/stable ($rep/stable) + prerequisite pkg:build2.org/rep-list/math ($rep/math) + prerequisite pkg:build2.org/rep-list/extra ($rep/extra) + prerequisite pkg:build2.org/rep-list/stable ($rep/stable) EOO } @@ -92,8 +92,8 @@ rep_fetch += -d cfg --auth all --trust-yes 2>! $rep_add $rep/testing && $rep_fetch; $* --complements >>"EOO" - bpkg:build2.org/rep-list/testing ($rep/testing) - complement bpkg:build2.org/rep-list/stable ($rep/stable) + pkg:build2.org/rep-list/testing ($rep/testing) + complement pkg:build2.org/rep-list/stable ($rep/stable) EOO } @@ -104,15 +104,15 @@ rep_fetch += -d cfg --auth all --trust-yes 2>! $rep_add $rep/testing && $rep_fetch; $* --prerequisites --complements >>"EOO" - bpkg:build2.org/rep-list/testing ($rep/testing) - complement bpkg:build2.org/rep-list/stable ($rep/stable) - prerequisite bpkg:build2.org/rep-list/math ($rep/math) - prerequisite bpkg:build2.org/rep-list/extra ($rep/extra) - prerequisite bpkg:build2.org/rep-list/stable ($rep/stable) - prerequisite bpkg:build2.org/rep-list/extra ($rep/extra) - prerequisite bpkg:build2.org/rep-list/stable ($rep/stable) - prerequisite bpkg:build2.org/rep-list/math ($rep/math) - prerequisite bpkg:build2.org/rep-list/extra ($rep/extra) + pkg:build2.org/rep-list/testing ($rep/testing) + complement pkg:build2.org/rep-list/stable ($rep/stable) + prerequisite pkg:build2.org/rep-list/math ($rep/math) + prerequisite pkg:build2.org/rep-list/extra ($rep/extra) + prerequisite pkg:build2.org/rep-list/stable ($rep/stable) + prerequisite pkg:build2.org/rep-list/extra ($rep/extra) + prerequisite pkg:build2.org/rep-list/stable ($rep/stable) + prerequisite pkg:build2.org/rep-list/math ($rep/math) + prerequisite pkg:build2.org/rep-list/extra ($rep/extra) EOO } diff --git a/tests/rep-remove.test b/tests/rep-remove.test index 3717449..e451def 100644 --- a/tests/rep-remove.test +++ b/tests/rep-remove.test @@ -90,11 +90,11 @@ pkg_status += -d cfg $rep_add $rep/extra && $rep_fetch; $* --clean 2>>"EOE"; - cleaned bpkg:build2.org/rep-remove/extra + cleaned pkg:build2.org/rep-remove/extra EOE $rep_list >>"EOE"; - bpkg:build2.org/rep-remove/extra ($rep/extra) + pkg:build2.org/rep-remove/extra ($rep/extra) EOE $pkg_status libbar >'unknown' @@ -107,7 +107,7 @@ pkg_status += -d cfg $rep_add $rep/extra && $rep_fetch; $* --all 2>>"EOE"; - removed bpkg:build2.org/rep-remove/extra + removed pkg:build2.org/rep-remove/extra EOE $rep_list >:""; @@ -120,8 +120,8 @@ pkg_status += -d cfg $clone_cfg; $rep_add $rep/extra && $rep_fetch; - $* 'bpkg:build2.org/rep-remove/extra' 2>>"EOE"; - removed bpkg:build2.org/rep-remove/extra + $* 'pkg:build2.org/rep-remove/extra' 2>>"EOE"; + removed pkg:build2.org/rep-remove/extra EOE $rep_list >:""; @@ -135,7 +135,7 @@ pkg_status += -d cfg $rep_add $rep/testing && $rep_fetch; $* $rep/testing 2>>"EOE"; - removed bpkg:build2.org/rep-remove/testing + removed pkg:build2.org/rep-remove/testing EOE $rep_list >:""; @@ -150,14 +150,14 @@ pkg_status += -d cfg $rep_add $rep/testing && $rep_add $rep/math && $rep_fetch; $* $rep/testing 2>>"EOE"; - removed bpkg:build2.org/rep-remove/testing + removed pkg:build2.org/rep-remove/testing EOE $rep_list >>"EOO"; - bpkg:build2.org/rep-remove/math ($rep/math) - prerequisite bpkg:build2.org/rep-remove/extra ($rep/extra) - prerequisite bpkg:build2.org/rep-remove/stable ($rep/stable) - prerequisite bpkg:build2.org/rep-remove/math ($rep/math) + pkg:build2.org/rep-remove/math ($rep/math) + prerequisite pkg:build2.org/rep-remove/extra ($rep/extra) + prerequisite pkg:build2.org/rep-remove/stable ($rep/stable) + prerequisite pkg:build2.org/rep-remove/math ($rep/math) EOO $pkg_status libbar >'available 1.0.0 sys:?'; -- cgit v1.1