aboutsummaryrefslogtreecommitdiff
path: root/bpkg/package-query.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2023-02-09 09:00:55 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2023-02-09 09:00:55 +0200
commitf1d08308522bbcbc655f6e55b4b84af9253d8679 (patch)
treebdfce6b84427691b2aec989c2b7ee4061cd018e7 /bpkg/package-query.hxx
parentd6500b9d7ee5cf68a7507f9d4d726ffb767d827a (diff)
Infrastructure work for binary distribution package generation
Diffstat (limited to 'bpkg/package-query.hxx')
-rw-r--r--bpkg/package-query.hxx21
1 files changed, 19 insertions, 2 deletions
diff --git a/bpkg/package-query.hxx b/bpkg/package-query.hxx
index ee9b595..98bb7a0 100644
--- a/bpkg/package-query.hxx
+++ b/bpkg/package-query.hxx
@@ -154,7 +154,11 @@ namespace bpkg
bool revision = false);
// Try to find an available package corresponding to the specified selected
- // package and, if not found, return a transient one.
+ // package and, if not found, return a transient one. The search is
+ // performed in the ultimate dependent configurations of the selected
+ // package (see dependent_repo_configs() for details).
+ //
+ // NOTE: repo_configs needs to be filled prior to the function call.
//
shared_ptr<available_package>
find_available (const common_options&,
@@ -166,6 +170,8 @@ namespace bpkg
// left empty and that the returned repository fragment could be NULL if the
// package is an orphan.
//
+ // NOTE: repo_configs needs to be filled prior to the function call.
+ //
pair<shared_ptr<available_package>,
lazy_shared_ptr<repository_fragment>>
find_available_fragment (const common_options&,
@@ -191,11 +197,17 @@ namespace bpkg
// locations list is left empty and that the returned repository fragment
// could be NULL if the package is an orphan.
//
- // Note also that in our model we assume that make_available_fragment() is
+ // Note that the repository fragment is searched in the ultimate dependent
+ // configurations of the selected package (see dependent_repo_configs() for
+ // details).
+ //
+ // Also note that in our model we assume that make_available_fragment() is
// only called if there is no real available_package. This makes sure that
// if the package moves (e.g., from testing to stable), then we will be
// using stable to resolve its dependencies.
//
+ // NOTE: repo_configs needs to be filled prior to the function call.
+ //
pair<shared_ptr<available_package>,
lazy_shared_ptr<repository_fragment>>
make_available_fragment (const common_options&,
@@ -230,6 +242,11 @@ namespace bpkg
// Return the ultimate dependent configurations for packages in this
// configuration.
//
+ // Specifically, this is an intersection of all the dependent configurations
+ // for the specified configuration (see database::dependent_configs() for
+ // details) and configurations which contain repository information
+ // (repo_configs).
+ //
linked_databases
dependent_repo_configs (database&);
}