Add more snapshots from facet tests

This commit is contained in:
Loïc Lecrenier 2022-09-01 11:09:01 +02:00 committed by Loïc Lecrenier
parent 61252248fb
commit 07ff92c663
40 changed files with 840 additions and 81 deletions

View File

@ -108,15 +108,15 @@ where
#[cfg(test)]
mod tests {
use crate::milli_snap;
use crate::{
heed_codec::facet::new::ordered_f64_codec::OrderedF64Codec, search::facet::test::FacetIndex,
};
use heed::BytesDecode;
use rand::{Rng, SeedableRng};
use roaring::RoaringBitmap;
use std::ops::ControlFlow;
use crate::{
heed_codec::facet::new::ordered_f64_codec::OrderedF64Codec, search::facet::test::FacetIndex,
};
use super::iterate_over_facet_distribution;
fn get_simple_index() -> FacetIndex<OrderedF64Codec> {
@ -151,7 +151,7 @@ mod tests {
#[test]
fn random_looking_index_snap() {
let index = get_random_looking_index();
insta::assert_display_snapshot!(index)
milli_snap!(format!("{index}"));
}
#[test]
fn filter_distribution_all() {
@ -172,7 +172,7 @@ mod tests {
},
)
.unwrap();
insta::assert_snapshot!(format!("filter_distribution_{i}_all"), results);
milli_snap!(results, i);
txn.commit().unwrap();
}
@ -203,7 +203,7 @@ mod tests {
},
)
.unwrap();
insta::assert_snapshot!(format!("filter_distribution_{i}_all_stop_early"), results);
milli_snap!(results, i);
txn.commit().unwrap();
}

View File

@ -258,6 +258,7 @@ impl<'t, 'b, 'bitmap> FacetRangeSearch<'t, 'b, 'bitmap> {
#[cfg(test)]
mod tests {
use crate::milli_snap;
use crate::{
heed_codec::facet::new::{ordered_f64_codec::OrderedF64Codec, FacetKeyCodec},
search::facet::test::FacetIndex,
@ -301,7 +302,7 @@ mod tests {
#[test]
fn random_looking_index_snap() {
let index = get_random_looking_index();
insta::assert_display_snapshot!(index)
milli_snap!(format!("{index}"));
}
#[test]
fn filter_range_increasing() {
@ -323,10 +324,7 @@ mod tests {
.unwrap();
results.push_str(&format!("{}\n", display_bitmap(&docids)));
}
insta::assert_snapshot!(
format!("filter_range_{i}_increasing_included_bounds"),
results
);
milli_snap!(results, i);
let mut results = String::new();
for i in 0..=255 {
let i = i as f64;
@ -342,10 +340,7 @@ mod tests {
.unwrap();
results.push_str(&format!("{}\n", display_bitmap(&docids)));
}
insta::assert_snapshot!(
format!("filter_range_{i}_increasing_excluded_bounds"),
results
);
milli_snap!(results, i);
txn.commit().unwrap();
}
}
@ -372,10 +367,7 @@ mod tests {
results.push_str(&format!("{}\n", display_bitmap(&docids)));
}
insta::assert_snapshot!(
format!("filter_range_{i}_decreasing_included_bounds"),
results
);
milli_snap!(results, i);
let mut results = String::new();
@ -394,10 +386,7 @@ mod tests {
results.push_str(&format!("{}\n", display_bitmap(&docids)));
}
insta::assert_snapshot!(
format!("filter_range_{i}_decreasing_excluded_bounds"),
results
);
milli_snap!(results, i);
txn.commit().unwrap();
}
@ -425,7 +414,7 @@ mod tests {
results.push_str(&format!("{}\n", display_bitmap(&docids)));
}
insta::assert_snapshot!(format!("filter_range_{i}_pinch_included_bounds"), results);
milli_snap!(results, i);
let mut results = String::new();
@ -444,7 +433,7 @@ mod tests {
results.push_str(&format!("{}\n", display_bitmap(&docids)));
}
insta::assert_snapshot!(format!("filter_range_{i}_pinch_excluded_bounds"), results);
milli_snap!(results, i);
txn.commit().unwrap();
}

View File

@ -83,15 +83,15 @@ impl<'t, 'e> Iterator for AscendingFacetSort<'t, 'e> {
#[cfg(test)]
mod tests {
use rand::Rng;
use rand::SeedableRng;
use roaring::RoaringBitmap;
use crate::milli_snap;
use crate::{
heed_codec::facet::new::ordered_f64_codec::OrderedF64Codec,
search::facet::{facet_sort_ascending::ascending_facet_sort, test::FacetIndex},
snapshot_tests::display_bitmap,
};
use rand::Rng;
use rand::SeedableRng;
use roaring::RoaringBitmap;
fn get_simple_index() -> FacetIndex<OrderedF64Codec> {
let index = FacetIndex::<OrderedF64Codec>::new(4, 8);
@ -125,7 +125,7 @@ mod tests {
#[test]
fn random_looking_index_snap() {
let index = get_random_looking_index();
insta::assert_display_snapshot!(index)
milli_snap!(format!("{index}"));
}
#[test]
fn filter_sort() {
@ -138,8 +138,9 @@ mod tests {
for el in iter {
let docids = el.unwrap();
results.push_str(&display_bitmap(&docids));
results.push('\n');
}
insta::assert_snapshot!(format!("filter_sort_{i}_ascending"), results);
milli_snap!(results, i);
txn.commit().unwrap();
}

View File

@ -111,15 +111,15 @@ impl<'t> Iterator for DescendingFacetSort<'t> {
#[cfg(test)]
mod tests {
use rand::Rng;
use rand::SeedableRng;
use roaring::RoaringBitmap;
use crate::milli_snap;
use crate::{
heed_codec::facet::new::{ordered_f64_codec::OrderedF64Codec, FacetKeyCodec, MyByteSlice},
search::facet::{facet_sort_descending::descending_facet_sort, test::FacetIndex},
snapshot_tests::display_bitmap,
};
use rand::Rng;
use rand::SeedableRng;
use roaring::RoaringBitmap;
fn get_simple_index() -> FacetIndex<OrderedF64Codec> {
let index = FacetIndex::<OrderedF64Codec>::new(4, 8);
@ -153,7 +153,7 @@ mod tests {
#[test]
fn random_looking_index_snap() {
let index = get_random_looking_index();
insta::assert_display_snapshot!(index)
milli_snap!(format!("{index}"));
}
#[test]
fn filter_sort_descending() {
@ -167,8 +167,9 @@ mod tests {
for el in iter {
let docids = el.unwrap();
results.push_str(&display_bitmap(&docids));
results.push('\n');
}
insta::assert_snapshot!(format!("filter_sort_{i}_descending"), results);
milli_snap!(results, i);
txn.commit().unwrap();
}

View File

@ -0,0 +1,228 @@
---
source: milli/src/search/facet/facet_distribution_iter.rs
---
0: 1
1: 1
2: 1
3: 1
4: 1
5: 1
6: 1
7: 1
8: 1
9: 1
10: 1
11: 1
12: 1
13: 1
14: 1
15: 1
16: 1
17: 1
18: 1
19: 1
20: 1
21: 1
22: 1
23: 1
24: 1
25: 1
26: 1
27: 1
28: 1
29: 1
30: 1
31: 1
32: 1
33: 1
34: 1
35: 1
36: 1
37: 1
38: 1
39: 1
40: 1
41: 1
42: 1
43: 1
44: 1
45: 1
46: 1
47: 1
48: 1
49: 1
50: 1
51: 1
52: 1
53: 1
54: 1
55: 1
56: 1
57: 1
58: 1
59: 1
60: 1
61: 1
62: 1
63: 1
64: 1
65: 1
66: 1
67: 1
68: 1
69: 1
70: 1
71: 1
72: 1
73: 1
74: 1
75: 1
76: 1
77: 1
78: 1
79: 1
80: 1
81: 1
82: 1
83: 1
84: 1
85: 1
86: 1
87: 1
88: 1
89: 1
90: 1
91: 1
92: 1
93: 1
94: 1
95: 1
96: 1
97: 1
98: 1
99: 1
100: 1
101: 1
102: 1
103: 1
104: 1
105: 1
106: 1
107: 1
108: 1
109: 1
110: 1
111: 1
112: 1
113: 1
114: 1
115: 1
116: 1
117: 1
118: 1
119: 1
120: 1
121: 1
122: 1
123: 1
124: 1
125: 1
126: 1
127: 1
128: 1
129: 1
130: 1
131: 1
132: 1
133: 1
134: 1
135: 1
136: 1
137: 1
138: 1
139: 1
140: 1
141: 1
142: 1
143: 1
144: 1
145: 1
146: 1
147: 1
148: 1
149: 1
150: 1
151: 1
152: 1
153: 1
154: 1
155: 1
156: 1
157: 1
158: 1
159: 1
160: 1
161: 1
162: 1
163: 1
164: 1
165: 1
166: 1
167: 1
168: 1
169: 1
170: 1
171: 1
172: 1
173: 1
174: 1
175: 1
176: 1
177: 1
178: 1
179: 1
180: 1
181: 1
182: 1
183: 1
184: 1
185: 1
186: 1
187: 1
188: 1
189: 1
190: 1
191: 1
192: 1
193: 1
194: 1
195: 1
196: 1
197: 1
198: 1
199: 1
200: 1
201: 1
202: 1
203: 1
204: 1
205: 1
206: 1
207: 1
208: 1
209: 1
210: 1
211: 1
212: 1
213: 1
214: 1
215: 1
216: 1
217: 1
218: 1
219: 1
220: 1
221: 1
222: 1
223: 1

View File

@ -0,0 +1,100 @@
---
source: milli/src/search/facet/facet_distribution_iter.rs
---
3: 2
5: 2
6: 2
9: 2
10: 2
11: 2
14: 2
18: 2
19: 2
24: 2
26: 2
28: 2
29: 2
32: 2
33: 2
35: 2
36: 2
37: 2
38: 2
39: 2
41: 2
46: 2
47: 2
49: 2
52: 2
53: 2
55: 2
59: 2
61: 2
64: 2
68: 2
71: 2
74: 2
75: 2
76: 2
81: 2
83: 2
85: 2
86: 2
88: 2
90: 2
91: 2
92: 2
98: 2
99: 2
101: 2
102: 2
103: 2
107: 2
111: 2
115: 2
119: 2
123: 2
124: 2
130: 2
131: 2
133: 2
135: 2
136: 2
137: 2
139: 2
141: 2
143: 2
144: 2
147: 2
150: 2
156: 1
158: 1
160: 1
162: 1
163: 1
164: 1
167: 1
169: 1
173: 1
177: 1
178: 1
179: 1
181: 1
182: 1
186: 1
189: 1
192: 1
193: 1
195: 1
197: 1
205: 1
206: 1
207: 1
208: 1
209: 1
210: 1
216: 1
219: 1
220: 1
226: 1

View File

@ -0,0 +1,104 @@
---
source: milli/src/search/facet/facet_distribution_iter.rs
---
0: 1
1: 1
2: 1
3: 1
4: 1
5: 1
6: 1
7: 1
8: 1
9: 1
10: 1
11: 1
12: 1
13: 1
14: 1
15: 1
16: 1
17: 1
18: 1
19: 1
20: 1
21: 1
22: 1
23: 1
24: 1
25: 1
26: 1
27: 1
28: 1
29: 1
30: 1
31: 1
32: 1
33: 1
34: 1
35: 1
36: 1
37: 1
38: 1
39: 1
40: 1
41: 1
42: 1
43: 1
44: 1
45: 1
46: 1
47: 1
48: 1
49: 1
50: 1
51: 1
52: 1
53: 1
54: 1
55: 1
56: 1
57: 1
58: 1
59: 1
60: 1
61: 1
62: 1
63: 1
64: 1
65: 1
66: 1
67: 1
68: 1
69: 1
70: 1
71: 1
72: 1
73: 1
74: 1
75: 1
76: 1
77: 1
78: 1
79: 1
80: 1
81: 1
82: 1
83: 1
84: 1
85: 1
86: 1
87: 1
88: 1
89: 1
90: 1
91: 1
92: 1
93: 1
94: 1
95: 1
96: 1
97: 1
98: 1
99: 1

View File

@ -0,0 +1,100 @@
---
source: milli/src/search/facet/facet_distribution_iter.rs
---
3: 2
5: 2
6: 2
9: 2
10: 2
11: 2
14: 2
18: 2
19: 2
24: 2
26: 2
28: 2
29: 2
32: 2
33: 2
35: 2
36: 2
37: 2
38: 2
39: 2
41: 2
46: 2
47: 2
49: 2
52: 2
53: 2
55: 2
59: 2
61: 2
64: 2
68: 2
71: 2
74: 2
75: 2
76: 2
81: 2
83: 2
85: 2
86: 2
88: 2
90: 2
91: 2
92: 2
98: 2
99: 2
101: 2
102: 2
103: 2
107: 2
111: 2
115: 2
119: 2
123: 2
124: 2
130: 2
131: 2
133: 2
135: 2
136: 2
137: 2
139: 2
141: 2
143: 2
144: 2
147: 2
150: 2
156: 1
158: 1
160: 1
162: 1
163: 1
164: 1
167: 1
169: 1
173: 1
177: 1
178: 1
179: 1
181: 1
182: 1
186: 1
189: 1
192: 1
193: 1
195: 1
197: 1
205: 1
206: 1
207: 1
208: 1
209: 1
210: 1
216: 1
219: 1
220: 1
226: 1

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_distribution_iter.rs
---
ea4022977d09c7854c833146276348de

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
52d0b31f312572c10959418434e36581

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
2cb9e819529823d488e141edb4307f97

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
38a4352c48905f5b121d1217734862da

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
aefc1ec120fa884cc8396a68bd7de42f

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
9e360d7bcd29ac2c23bc241df941fd23

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
f0606b9af67de9ede9d469514ea1741f

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_range_search.rs
---
ea4022977d09c7854c833146276348de

View File

@ -0,0 +1,28 @@
---
source: milli/src/search/facet/facet_sort_ascending.rs
---
[200, ]
[201, ]
[202, ]
[203, ]
[204, ]
[205, ]
[206, ]
[207, ]
[208, ]
[209, ]
[210, ]
[211, ]
[212, ]
[213, ]
[214, ]
[215, ]
[216, ]
[217, ]
[218, ]
[219, ]
[220, ]
[221, ]
[222, ]
[223, ]

View File

@ -0,0 +1,53 @@
---
source: milli/src/search/facet/facet_sort_ascending.rs
---
[201, ]
[202, ]
[203, ]
[207, ]
[211, ]
[215, ]
[219, ]
[223, ]
[224, ]
[230, ]
[231, ]
[233, ]
[235, ]
[236, ]
[237, ]
[239, ]
[241, ]
[243, ]
[244, ]
[247, ]
[250, ]
[256, ]
[258, ]
[260, ]
[262, ]
[263, ]
[264, ]
[267, ]
[269, ]
[273, ]
[277, ]
[278, ]
[279, ]
[281, ]
[282, ]
[286, ]
[289, ]
[292, ]
[293, ]
[295, ]
[297, ]
[205, ]
[206, ]
[208, ]
[209, ]
[210, ]
[216, ]
[220, ]
[226, ]

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_sort_ascending.rs
---
ea4022977d09c7854c833146276348de

View File

@ -0,0 +1,16 @@
---
source: milli/src/search/facet/facet_sort_descending.rs
---
[247, ]
[246, ]
[245, ]
[244, ]
[207, ]
[206, ]
[205, ]
[204, ]
[203, ]
[202, ]
[201, ]
[200, ]

View File

@ -0,0 +1,49 @@
---
source: milli/src/search/facet/facet_sort_descending.rs
---
[243, ]
[235, ]
[226, ]
[209, ]
[208, ]
[207, ]
[206, ]
[205, ]
[297, ]
[295, ]
[293, ]
[292, ]
[289, ]
[286, ]
[282, ]
[281, ]
[279, ]
[278, ]
[277, ]
[273, ]
[269, ]
[267, ]
[264, ]
[263, ]
[262, ]
[260, ]
[258, ]
[256, ]
[250, ]
[247, ]
[244, ]
[241, ]
[239, ]
[237, ]
[236, ]
[233, ]
[231, ]
[230, ]
[224, ]
[223, ]
[215, ]
[211, ]
[203, ]
[202, ]
[201, ]

View File

@ -0,0 +1,4 @@
---
source: milli/src/search/facet/facet_sort_descending.rs
---
ea4022977d09c7854c833146276348de

View File

@ -6,7 +6,7 @@ use std::fmt::Write;
use std::path::Path;
#[track_caller]
pub fn default_db_snapshot_settings_for_test(name: Option<&str>) -> insta::Settings {
pub fn default_db_snapshot_settings_for_test(name: Option<&str>) -> (insta::Settings, String) {
let mut settings = insta::Settings::clone_current();
settings.set_prepend_module_to_snapshot(false);
let path = Path::new(std::panic::Location::caller().file());
@ -16,12 +16,63 @@ pub fn default_db_snapshot_settings_for_test(name: Option<&str>) -> insta::Setti
if let Some(name) = name {
settings
.set_snapshot_path(Path::new("snapshots").join(filename).join(test_name).join(name));
.set_snapshot_path(Path::new("snapshots").join(filename).join(&test_name).join(name));
} else {
settings.set_snapshot_path(Path::new("snapshots").join(filename).join(test_name));
settings.set_snapshot_path(Path::new("snapshots").join(filename).join(&test_name));
}
settings
(settings, test_name)
}
#[macro_export]
macro_rules! milli_snap {
($value:expr, $name:expr) => {
let (settings, _) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
settings.bind(|| {
let snap = $value;
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(&format!("{}", $name), &snap, false);
for (name, snap) in snaps {
insta::assert_snapshot!(name, snap);
}
});
};
($value:expr) => {
let (settings, test_name) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
settings.bind(|| {
let snap = $value;
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(&format!("{}", test_name), &snap, false);
for (name, snap) in snaps {
insta::assert_snapshot!(name, snap);
}
});
};
($value:expr, @$inline:literal) => {
let (settings, test_name) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
settings.bind(|| {
let snap = $value;
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(&format!("{}", test_name), &snap, true);
for (name, snap) in snaps {
if !name.ends_with(".full") {
insta::assert_snapshot!(snap, @$inline);
} else {
insta::assert_snapshot!(name, snap);
}
}
});
};
($value:expr, $name:expr, @$inline:literal) => {
let (settings, _) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
settings.bind(|| {
let snap = $value;
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(&format!("{}", $name), &snap, true);
for (name, snap) in snaps {
if !name.ends_with(".full") {
insta::assert_snapshot!(snap, @$inline);
} else {
insta::assert_snapshot!(name, snap);
}
}
});
};
}
/**
@ -92,7 +143,7 @@ db_snap!(index, word_docids, "some_identifier", @"");
#[macro_export]
macro_rules! db_snap {
($index:ident, $db_name:ident, $name:expr) => {
let settings = $crate::snapshot_tests::default_db_snapshot_settings_for_test(Some(
let (settings, _) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(Some(
&format!("{}", $name),
));
settings.bind(|| {
@ -104,7 +155,7 @@ macro_rules! db_snap {
});
};
($index:ident, $db_name:ident) => {
let settings = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
let (settings, _) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
settings.bind(|| {
let snap = $crate::full_snap_of_db!($index, $db_name);
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(stringify!($db_name), &snap, false);
@ -114,7 +165,7 @@ macro_rules! db_snap {
});
};
($index:ident, $db_name:ident, @$inline:literal) => {
let settings = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
let (settings, _) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(None);
settings.bind(|| {
let snap = $crate::full_snap_of_db!($index, $db_name);
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(stringify!($db_name), &snap, true);
@ -127,8 +178,8 @@ macro_rules! db_snap {
}
});
};
($index:ident, $db_name:ident, $name:literal, @$inline:literal) => {
let settings = $crate::snapshot_tests::default_db_snapshot_settings_for_test(Some(&format!("{}", $name)));
($index:ident, $db_name:ident, $name:expr, @$inline:literal) => {
let (settings, _) = $crate::snapshot_tests::default_db_snapshot_settings_for_test(Some(&format!("{}", $name)));
settings.bind(|| {
let snap = $crate::full_snap_of_db!($index, $db_name);
let snaps = $crate::snapshot_tests::convert_snap_to_hash_if_needed(stringify!($db_name), &snap, true);

View File

@ -1,9 +1,8 @@
use crate::facet::FacetType;
use crate::heed_codec::facet::new::{
FacetGroupValue, FacetGroupValueCodec, FacetKey, FacetKeyCodec, MyByteSlice,
};
use crate::search::facet::get_highest_level;
use crate::{Index, Result};
use crate::Result;
use heed::Error;
use heed::{types::ByteSlice, BytesDecode, RoTxn, RwTxn};
use roaring::RoaringBitmap;

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
8bc439472ccda008dc5c28aa789f433d

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
8bc439472ccda008dc5c28aa789f433d

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
8bc439472ccda008dc5c28aa789f433d

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
8bc439472ccda008dc5c28aa789f433d

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
8bc439472ccda008dc5c28aa789f433d

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
8bc439472ccda008dc5c28aa789f433d

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
834f27a924de1acbd3cd94c0d7f10315

View File

@ -0,0 +1,4 @@
---
source: milli/src/update/facet/bulk.rs
---
834f27a924de1acbd3cd94c0d7f10315

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
587899707db2848da3f18399e14ed4d0

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
02bbf2ca1663cccea0e4c06d5ad06a45

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
e68ea591e1af3e53e544dff9a1648e88

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
12a4bb0f5b95d7629c2b9a915150c0cf

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
6438e94bc7fada13022e0efccdf294e0

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
5348bbc46b5384455b6a900666d2a502

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
faddef9eae5f2efacfec51f20f2e8cd6

View File

@ -1,4 +0,0 @@
---
source: milli/src/update/facets.rs
---
ddb8fc987c5dc892337682595043858e