From c9d13dff940ab16e28f2440a819a0151a3a7543f Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 2 Dec 2021 15:27:42 +0300 Subject: Prepare for supporting multiple dependencies in dependency alternative --- bpkg/database.cxx | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) (limited to 'bpkg/database.cxx') diff --git a/bpkg/database.cxx b/bpkg/database.cxx index 4f3b102..39013e8 100644 --- a/bpkg/database.cxx +++ b/bpkg/database.cxx @@ -187,6 +187,72 @@ namespace bpkg "ON selected_package_prerequisites (configuration, prerequisite)"); }); + static const migration_entry<13> + migrate_v13 ([] (odb::database& db) + { + // Note that + // available_package_dependency_alternative_dependencies.alternative_index + // is copied from available_package_dependency_alternatives.index and + // available_package_dependency_alternative_dependencies.index is set to 0. + // + db.execute ( + "INSERT INTO \"main\".\"available_package_dependency_alternative_dependencies\" " + "(\"name\", " + "\"version_epoch\", " + "\"version_canonical_upstream\", " + "\"version_canonical_release\", " + "\"version_revision\", " + "\"version_iteration\", " + "\"dependency_index\", " + "\"alternative_index\", " + "\"index\", " + "\"dep_name\", " + "\"dep_min_version_epoch\", " + "\"dep_min_version_canonical_upstream\", " + "\"dep_min_version_canonical_release\", " + "\"dep_min_version_revision\", " + "\"dep_min_version_iteration\", " + "\"dep_min_version_upstream\", " + "\"dep_min_version_release\", " + "\"dep_max_version_epoch\", " + "\"dep_max_version_canonical_upstream\", " + "\"dep_max_version_canonical_release\", " + "\"dep_max_version_revision\", " + "\"dep_max_version_iteration\", " + "\"dep_max_version_upstream\", " + "\"dep_max_version_release\", " + "\"dep_min_open\", " + "\"dep_max_open\") " + "SELECT " + "\"name\", " + "\"version_epoch\", " + "\"version_canonical_upstream\", " + "\"version_canonical_release\", " + "\"version_revision\", " + "\"version_iteration\", " + "\"dependency_index\", " + "\"index\", " + "0, " + "\"dep_name\", " + "\"dep_min_version_epoch\", " + "\"dep_min_version_canonical_upstream\", " + "\"dep_min_version_canonical_release\", " + "\"dep_min_version_revision\", " + "\"dep_min_version_iteration\", " + "\"dep_min_version_upstream\", " + "\"dep_min_version_release\", " + "\"dep_max_version_epoch\", " + "\"dep_max_version_canonical_upstream\", " + "\"dep_max_version_canonical_release\", " + "\"dep_max_version_revision\", " + "\"dep_max_version_iteration\", " + "\"dep_max_version_upstream\", " + "\"dep_max_version_release\", " + "\"dep_min_open\", " + "\"dep_max_open\" " + "FROM \"main\".\"available_package_dependency_alternatives\""); + }); + static inline path cfg_path (const dir_path& d, bool create) { -- cgit v1.1