diff options
-rw-r--r-- | builder/src/bin/import.rs | 21 | ||||
-rw-r--r-- | crate_db/src/builddb.rs | 2 |
2 files changed, 11 insertions, 12 deletions
diff --git a/builder/src/bin/import.rs b/builder/src/bin/import.rs index 9fd32ef..2a1901d 100644 --- a/builder/src/bin/import.rs +++ b/builder/src/bin/import.rs @@ -5,21 +5,20 @@ use lts::*; use std::path::Path; fn main() { - let rustc_version = "1.24.0"; - let date = "2018-03-28"; // good for 1.24 - // let date = "2019-05-28"; // good for 1.34 - let crates = kitchen_sink::KitchenSink::new_default().unwrap(); let db = BuildDb::new(crates.main_cache_dir().join("builds.db")).unwrap(); let lts = LTS::new(None); - let old_branch = lts.cut_branch_at(date).unwrap(); - let old_repo = Path::new("/tmp/oldcratesfilter"); - lts.clone_to(&old_branch, &old_repo, false).unwrap(); - let idx = Index::new(&old_repo); - for k in idx.crates() { - let ver = k.latest_version(); - db.set_compat(&Origin::from_crates_io_name(ver.name()), ver.version(), rustc_version, Compat::ProbablyWorks).unwrap(); + for (rustc_version, date) in &[("1.19.0", "2017-08-20"), ("1.24.0", "2018-03-28"), ("1.34.0", "2019-05-28")] { + let old_branch = lts.cut_branch_at(date).unwrap(); + let old_repo = Path::new("/tmp").join(format!("oldcratesfilter-{}-{}", rustc_version, date)); + lts.clone_to(&old_branch, &old_repo, false).unwrap(); + let idx = Index::new(&old_repo); + + for k in idx.crates() { + let ver = k.latest_version(); + db.set_compat(&Origin::from_crates_io_name(ver.name()), ver.version(), rustc_version, Compat::ProbablyWorks).unwrap(); + } } } diff --git a/crate_db/src/builddb.rs b/crate_db/src/builddb.rs index be7c89c..88be8aa 100644 --- a/crate_db/src/builddb.rs +++ b/crate_db/src/builddb.rs @@ -156,7 +156,7 @@ impl BuildDb { pub fn set_compat(&self, origin: &Origin, ver: &str, rustc_version: &str, compat: Compat) -> Result<()> { let conn = self.conn.lock(); // these are weak info, so don't replace good info with them - let mut ins = conn.prepare_cached(if compat == Compat::ProbablyWorks || compat == Compat::BrokenDeps { + let mut ins = conn.prepare_cached(if compat != Compat::VerifiedWorks { r"INSERT OR IGNORE INTO build_results(origin, version, rustc_version, compat) VALUES(?1, ?2, ?3, ?4)" } else { "INSERT OR REPLACE INTO build_results(origin, version, rustc_version, compat) VALUES(?1, ?2, ?3, ?4)" |