Bug 1828066 - Update to Glean v52.7.0 r=chutten,supply-chain-reviewers

Differential Revision: https://phabricator.services.mozilla.com/D177617
This commit is contained in:
Jan-Erik Rediger 2023-05-11 11:25:33 +00:00
Родитель c84e710613
Коммит 9db3021bfb
26 изменённых файлов: 154 добавлений и 27 удалений

8
Cargo.lock сгенерированный
Просмотреть файл

@ -2211,9 +2211,9 @@ dependencies = [
[[package]]
name = "glean"
version = "52.6.0"
version = "52.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ca7a95d864d1302298573c801cb926d7bc4bbf4112545a1e24a0a27c384368b"
checksum = "cb5fc2dc8615ab49bfa879d64a02565b459881b72023ff39aca75e5581825695"
dependencies = [
"chrono",
"crossbeam-channel",
@ -2231,9 +2231,9 @@ dependencies = [
[[package]]
name = "glean-core"
version = "52.6.0"
version = "52.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b45b505ad6e7b569135e44dd84ccac982683054e61dfa2a7906b18510b1993c"
checksum = "3493e4f4df45199762f43a6d2298fa9d885fa5ddc9efdc118a41b38c69c7ad59"
dependencies = [
"android_logger",
"bincode",

Просмотреть файл

@ -36,7 +36,7 @@ allprojects {
topsrcdir = gradle.mozconfig.topsrcdir
topobjdir = gradle.mozconfig.topobjdir
gleanVersion = "52.6.0"
gleanVersion = "52.7.0"
if (gleanVersion != getRustVersionFor("glean")) {
throw new StopExecutionException("Mismatched Glean version, expected: ${gleanVersion}," +
" found ${getRustVersionFor("glean")}")

8
gfx/wr/Cargo.lock сгенерированный
Просмотреть файл

@ -940,9 +940,9 @@ dependencies = [
[[package]]
name = "glean"
version = "52.6.0"
version = "52.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ca7a95d864d1302298573c801cb926d7bc4bbf4112545a1e24a0a27c384368b"
checksum = "cb5fc2dc8615ab49bfa879d64a02565b459881b72023ff39aca75e5581825695"
dependencies = [
"chrono",
"crossbeam-channel",
@ -960,9 +960,9 @@ dependencies = [
[[package]]
name = "glean-core"
version = "52.6.0"
version = "52.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b45b505ad6e7b569135e44dd84ccac982683054e61dfa2a7906b18510b1993c"
checksum = "3493e4f4df45199762f43a6d2298fa9d885fa5ddc9efdc118a41b38c69c7ad59"
dependencies = [
"android_logger",
"bincode",

Просмотреть файл

@ -52,7 +52,7 @@ svg_fmt = "0.4"
tracy-rs = "0.1.2"
derive_more = { version = "0.99", default-features = false, features = ["add_assign"] }
etagere = "0.2.6"
glean = "52.6.0"
glean = "52.7.0"
firefox-on-glean = { version = "0.1.0", optional = true }
swgl = { path = "../swgl", optional = true }
topological-sort = "0.1"

Просмотреть файл

@ -25,7 +25,7 @@ tracy-rs = "0.1.2"
log = "0.4"
lazy_static = "1"
fxhash = "0.2.1"
glean = { version = "52.6.0", optional = true }
glean = { version = "52.7.0", optional = true }
firefox-on-glean = { version = "0.1.0", optional = true }
serde = { optional = true, version = "1.0", features = ["serde_derive"] }

Просмотреть файл

@ -138,7 +138,7 @@ pth:xpcom/geckoprocesstypes_generator
pth:xpcom/idl-parser
# glean-sdk may not be installable if a wheel isn't available
# and it has to be built from source.
pypi-optional:glean-sdk==52.6.0:telemetry will not be collected
pypi-optional:glean-sdk==52.7.0:telemetry will not be collected
# Mach gracefully handles the case where `psutil` is unavailable.
# We aren't (yet) able to pin packages in automation, so we have to
# support down to the oldest locally-installed version (5.4.2).

Просмотреть файл

@ -149,15 +149,15 @@ user-login = "jrmuizel"
user-name = "Jeff Muizelaar"
[[publisher.glean]]
version = "52.6.0"
when = "2023-04-20"
version = "52.7.0"
when = "2023-05-10"
user-id = 48
user-login = "badboy"
user-name = "Jan-Erik Rediger"
[[publisher.glean-core]]
version = "52.6.0"
when = "2023-04-20"
version = "52.7.0"
when = "2023-05-10"
user-id = 48
user-login = "badboy"
user-name = "Jan-Erik Rediger"

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

2
third_party/rust/glean-core/Cargo.toml поставляемый
Просмотреть файл

@ -13,7 +13,7 @@
edition = "2021"
rust-version = "1.62"
name = "glean-core"
version = "52.6.0"
version = "52.7.0"
authors = [
"Jan-Erik Rediger <jrediger@mozilla.com>",
"The Glean Team <glean-team@mozilla.com>",

2
third_party/rust/glean-core/src/core/mod.rs поставляемый
Просмотреть файл

@ -112,6 +112,7 @@ where
/// app_build: "".into(),
/// use_core_mps: false,
/// trim_data_to_registered_pings: false,
/// log_level: None,
/// };
/// let mut glean = Glean::new(cfg).unwrap();
/// let ping = PingType::new("sample", true, false, vec![]);
@ -293,6 +294,7 @@ impl Glean {
app_build: "Unknown".into(),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let mut glean = Self::new(cfg).unwrap();

Просмотреть файл

@ -6,8 +6,10 @@ use once_cell::sync::Lazy;
use std::sync::atomic::{AtomicBool, Ordering};
use std::sync::RwLock;
use std::thread;
use std::time::Duration;
use super::{DispatchError, DispatchGuard, Dispatcher};
use crossbeam_channel::RecvTimeoutError;
#[cfg(feature = "preinit_million_queue")]
pub const GLOBAL_DISPATCHER_LIMIT: usize = 1000000;
@ -76,6 +78,11 @@ pub fn block_on_queue() {
guard().block_on_queue();
}
/// Block until all tasks prior to this call are processed, with a timeout.
pub fn block_on_queue_timeout(timeout: Duration) -> Result<(), RecvTimeoutError> {
guard().block_on_queue_timeout(timeout)
}
/// Starts processing queued tasks in the global dispatch queue.
///
/// This function blocks until queued tasks prior to this call are finished.

Просмотреть файл

@ -29,9 +29,10 @@ use std::{
Arc,
},
thread::{self, JoinHandle},
time::Duration,
};
use crossbeam_channel::{bounded, unbounded, SendError, Sender};
use crossbeam_channel::{bounded, unbounded, RecvTimeoutError, SendError, Sender};
use thiserror::Error;
pub use global::*;
@ -161,6 +162,26 @@ impl DispatchGuard {
.expect("Failed to receive message on single-use channel");
}
/// Block on the task queue emptying, with a timeout.
fn block_on_queue_timeout(&self, timeout: Duration) -> Result<(), RecvTimeoutError> {
let (tx, rx) = crossbeam_channel::bounded(0);
// We explicitly don't use `self.launch` here.
// We always put this task on the unbounded queue.
// The pre-init queue might be full before its flushed, in which case this would panic.
// Blocking on the queue can only work if it is eventually flushed anyway.
let task = Command::Task(Box::new(move || {
tx.send(())
.expect("(worker) Can't send message on single-use channel");
}));
self.sender
.send(task)
.expect("Failed to launch the blocking task");
rx.recv_timeout(timeout)
}
fn kill(&mut self) -> Result<(), DispatchError> {
// We immediately stop queueing in the pre-init buffer.
let old_val = self.queue_preinit.swap(false, Ordering::SeqCst);

Просмотреть файл

@ -238,7 +238,7 @@ impl EventDatabase {
db.insert(
store_name,
file.lines()
.filter_map(|line| line.ok())
.map_while(Result::ok)
.filter_map(|line| serde_json::from_str::<StoredEvent>(&line).ok())
.collect(),
);

11
third_party/rust/glean-core/src/glean.udl поставляемый
Просмотреть файл

@ -69,6 +69,17 @@ dictionary InternalConfiguration {
string app_build;
boolean use_core_mps;
boolean trim_data_to_registered_pings;
LevelFilter? log_level;
};
// An enum representing the different logging levels for the `log` crate.
enum LevelFilter {
"Off",
"Error",
"Warn",
"Info",
"Debug",
"Trace",
};
// Values for the `client_info` metrics.

Просмотреть файл

@ -24,6 +24,9 @@ pub struct AdditionalMetrics {
/// Time waited for the uploader at shutdown.
pub shutdown_wait: TimingDistributionMetric,
/// Time waited for the dispatcher to unblock during shutdown.
pub shutdown_dispatcher_wait: TimingDistributionMetric,
}
impl CoreMetrics {
@ -97,6 +100,18 @@ impl AdditionalMetrics {
},
TimeUnit::Millisecond,
),
shutdown_dispatcher_wait: TimingDistributionMetric::new(
CommonMetricData {
name: "shutdown_dispatcher_wait".into(),
category: "glean.validation".into(),
send_in_pings: vec!["metrics".into()],
lifetime: Lifetime::Ping,
disabled: false,
dynamic_label: None,
},
TimeUnit::Millisecond,
),
}
}
}

35
third_party/rust/glean-core/src/lib.rs поставляемый
Просмотреть файл

@ -25,6 +25,7 @@ use std::thread;
use std::time::Duration;
use crossbeam_channel::unbounded;
use log::{self, LevelFilter};
use once_cell::sync::{Lazy, OnceCell};
use uuid::Uuid;
@ -125,6 +126,8 @@ pub struct InternalConfiguration {
pub use_core_mps: bool,
/// Whether Glean should, on init, trim its event storage to only the registered pings.
pub trim_data_to_registered_pings: bool,
/// The internal logging level.
pub log_level: Option<LevelFilter>,
}
/// Launches a new task on the global dispatch queue with a reference to the Glean singleton.
@ -306,6 +309,11 @@ fn initialize_inner(
let upload_enabled = cfg.upload_enabled;
let trim_data_to_registered_pings = cfg.trim_data_to_registered_pings;
// Set the internal logging level.
if let Some(level) = cfg.log_level {
log::set_max_level(level)
}
let glean = match Glean::new(cfg) {
Ok(glean) => glean,
Err(err) => {
@ -557,8 +565,31 @@ pub fn shutdown() {
glean.set_dirty_flag(false);
});
// We need to wait for above task to finish.
dispatcher::block_on_queue();
// We need to wait for above task to finish,
// but we also don't wait around forever.
//
// TODO: Make the timeout configurable?
// The default hang watchdog on Firefox waits 60s,
// Glean's `uploader_shutdown` further below waits up to 30s.
let timer_id = core::with_glean(|glean| {
glean
.additional_metrics
.shutdown_dispatcher_wait
.start_sync()
});
if dispatcher::block_on_queue_timeout(Duration::from_secs(10)).is_err() {
log::error!(
"Timeout while blocking on the dispatcher. No further shutdown cleanup will happen."
);
return;
}
let stop_time = time::precise_time_ns();
core::with_glean(|glean| {
glean
.additional_metrics
.shutdown_dispatcher_wait
.set_stop_and_accumulate(glean, timer_id, stop_time);
});
if let Err(e) = dispatcher::shutdown() {
log::error!("Can't shutdown dispatcher thread: {:?}", e);

Просмотреть файл

@ -59,6 +59,7 @@ pub fn new_glean(tempdir: Option<tempfile::TempDir>) -> (Glean, tempfile::TempDi
app_build: "Unknown".into(),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let glean = Glean::new(cfg).unwrap();

2
third_party/rust/glean/.cargo-checksum.json поставляемый
Просмотреть файл

@ -1 +1 @@
{"files":{"Cargo.toml":"32bdc5d1ae4465c672d2b38766643729acd3185977ccf212e376d962231ef90b","LICENSE":"1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5","README.md":"5627cc81e6187ab6c2b4dff061af16d559edcab64ba786bac39daa69c703c595","src/common_test.rs":"de47b53dcca37985c0a2b8c02daecbf32309aa54f5a4dd9290719c2c1fd0fa55","src/configuration.rs":"4ca9be0a49a9c50f4ebe868d4bfa04fe27619c871a436911f850b4dcf6e7a7b2","src/core_metrics.rs":"dd17b482613894af08b51a2cff6dc1e84a6dbd853c14a55566e6698348941ced","src/lib.rs":"6b486cda2c92ab49dbc26533f1aac5b0b1a071b227ddd9b9e85c0edb768fe5bc","src/net/http_uploader.rs":"43812a70d19a38e8d7a093c8076c2b6345372c3c861b0f3511428762700a65e0","src/net/mod.rs":"e36e170a8e53530f8705988eea694ed7c55f50bb0ce403c0facbfb75ce03ac7f","src/private/event.rs":"02bbebf545695812e5055741cc0b5f3c99eda2039e684e26fcdd5f087ed15fe3","src/private/mod.rs":"eb8fe4e588bb32a54617324db39319920c627e6fc23c23cf4da5c17c63e0afed","src/private/ping.rs":"cbdc57f41fc9d46e56b4dfff91ac683753d1f8b3ecd0aa9bc3419e3595b8b81b","src/system.rs":"6eae5b41c15eba9cad6dbd116abe3519ee3e1fe034e79bdd692b029829a8c384","src/test.rs":"5cd8befc816333970d8068c449e945866b0530eecfa630109ee154b43b1ac62f","tests/common/mod.rs":"37cd4c48e140c793b852ae09fb3e812da28a4412977295015bcbffd632fcf294","tests/init_fails.rs":"28fd7726e76ca1295eb0905eca0b2ec65b0accfa28432c9ff90ec8f92616fc79","tests/never_init.rs":"1f33b8ce7ca3514b57b48cc16d98408974c85cf8aa7d13257ffc2ad878ebb295","tests/no_time_to_init.rs":"e7df75b47897fbf2c860a2e1c1c225b57598b8d1a39125ca897fe8d825bf0338","tests/overflowing_preinit.rs":"7ad4b2274dd9240b53430859a4eb1d2597cf508a5a678333f3d3abbadd2ed4a7","tests/persist_ping_lifetime.rs":"81415dc1d74743f02269f0d0dfa524003147056853f080276972e64a0b761d3c","tests/persist_ping_lifetime_nopanic.rs":"18379d3ffbf4a2c8c684c04ff7a0660b86dfbbb447db2d24dfed6073cb7ddf8f","tests/schema.rs":"1b7b19aec54a24c2bdd4738cf33c16802c19c83504c4d0e6bcfc19142877acdb","tests/simple.rs":"b099034b0599bdf4650e0fa09991a8413fc5fbf397755fc06c8963d4c7c8dfa6","tests/test-shutdown-blocking.sh":"9b16a01c190c7062474dd92182298a3d9a27928c8fa990340fdd798e6cdb7ab2","tests/upload_timing.rs":"d044fce7c783133e385671ea37d674e5a1b4120cae7b07708dcd825addfa0ee3"},"package":"1ca7a95d864d1302298573c801cb926d7bc4bbf4112545a1e24a0a27c384368b"}
{"files":{"Cargo.toml":"bb7825ea1f64c8c1d61c3dd696263f14335902b25c99fd5ec53d87c360e535e7","LICENSE":"1f256ecad192880510e84ad60474eab7589218784b9a50bc7ceee34c2b91f1d5","README.md":"5627cc81e6187ab6c2b4dff061af16d559edcab64ba786bac39daa69c703c595","src/common_test.rs":"de47b53dcca37985c0a2b8c02daecbf32309aa54f5a4dd9290719c2c1fd0fa55","src/configuration.rs":"883b327fdad366e414ece83f65ab6b0216ab819c7854b382acf91b702b5a9697","src/core_metrics.rs":"dd17b482613894af08b51a2cff6dc1e84a6dbd853c14a55566e6698348941ced","src/lib.rs":"7cc249fc8f674958b91e6259225e858dfcd2b9b9dbdaecfab4d0ca85ad44129a","src/net/http_uploader.rs":"43812a70d19a38e8d7a093c8076c2b6345372c3c861b0f3511428762700a65e0","src/net/mod.rs":"e36e170a8e53530f8705988eea694ed7c55f50bb0ce403c0facbfb75ce03ac7f","src/private/event.rs":"02bbebf545695812e5055741cc0b5f3c99eda2039e684e26fcdd5f087ed15fe3","src/private/mod.rs":"eb8fe4e588bb32a54617324db39319920c627e6fc23c23cf4da5c17c63e0afed","src/private/ping.rs":"cbdc57f41fc9d46e56b4dfff91ac683753d1f8b3ecd0aa9bc3419e3595b8b81b","src/system.rs":"6eae5b41c15eba9cad6dbd116abe3519ee3e1fe034e79bdd692b029829a8c384","src/test.rs":"68e046309f943aacc45af9e8bb0687c5b49da32f3a55050a3724f0be0a91c61c","tests/common/mod.rs":"37cd4c48e140c793b852ae09fb3e812da28a4412977295015bcbffd632fcf294","tests/init_fails.rs":"28fd7726e76ca1295eb0905eca0b2ec65b0accfa28432c9ff90ec8f92616fc79","tests/never_init.rs":"1f33b8ce7ca3514b57b48cc16d98408974c85cf8aa7d13257ffc2ad878ebb295","tests/no_time_to_init.rs":"e7df75b47897fbf2c860a2e1c1c225b57598b8d1a39125ca897fe8d825bf0338","tests/overflowing_preinit.rs":"7ad4b2274dd9240b53430859a4eb1d2597cf508a5a678333f3d3abbadd2ed4a7","tests/persist_ping_lifetime.rs":"81415dc1d74743f02269f0d0dfa524003147056853f080276972e64a0b761d3c","tests/persist_ping_lifetime_nopanic.rs":"18379d3ffbf4a2c8c684c04ff7a0660b86dfbbb447db2d24dfed6073cb7ddf8f","tests/schema.rs":"1b7b19aec54a24c2bdd4738cf33c16802c19c83504c4d0e6bcfc19142877acdb","tests/simple.rs":"b099034b0599bdf4650e0fa09991a8413fc5fbf397755fc06c8963d4c7c8dfa6","tests/test-shutdown-blocking.sh":"9b16a01c190c7062474dd92182298a3d9a27928c8fa990340fdd798e6cdb7ab2","tests/upload_timing.rs":"d044fce7c783133e385671ea37d674e5a1b4120cae7b07708dcd825addfa0ee3"},"package":"cb5fc2dc8615ab49bfa879d64a02565b459881b72023ff39aca75e5581825695"}

4
third_party/rust/glean/Cargo.toml поставляемый
Просмотреть файл

@ -13,7 +13,7 @@
edition = "2021"
rust-version = "1.62"
name = "glean"
version = "52.6.0"
version = "52.7.0"
authors = [
"Jan-Erik Rediger <jrediger@mozilla.com>",
"The Glean Team <glean-team@mozilla.com>",
@ -43,7 +43,7 @@ features = ["serde"]
version = "0.5"
[dependencies.glean-core]
version = "52.6.0"
version = "52.7.0"
[dependencies.inherent]
version = "1"

9
third_party/rust/glean/src/configuration.rs поставляемый
Просмотреть файл

@ -2,6 +2,8 @@
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
use log::LevelFilter;
use crate::net::PingUploader;
use std::path::PathBuf;
@ -34,6 +36,8 @@ pub struct Configuration {
/// Unless you know that all your and your libraries' pings are appropriately registered
/// _before_ init, you shouldn't use this.
pub trim_data_to_registered_pings: bool,
/// The internal logging level.
pub log_level: Option<LevelFilter>,
}
/// Configuration builder.
@ -68,6 +72,9 @@ pub struct Builder {
/// _before_ init, you shouldn't use this.
/// Default: `false`
pub trim_data_to_registered_pings: bool,
/// Optional: The internal logging level.
/// Default: `None`
pub log_level: Option<LevelFilter>,
}
impl Builder {
@ -87,6 +94,7 @@ impl Builder {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
}
}
@ -102,6 +110,7 @@ impl Builder {
uploader: self.uploader,
use_core_mps: self.use_core_mps,
trim_data_to_registered_pings: self.trim_data_to_registered_pings,
log_level: self.log_level,
}
}

1
third_party/rust/glean/src/lib.rs поставляемый
Просмотреть файл

@ -118,6 +118,7 @@ fn initialize_internal(cfg: Configuration, client_info: ClientInfoMetrics) -> Op
app_build: client_info.app_build.clone(),
use_core_mps: cfg.use_core_mps,
trim_data_to_registered_pings: cfg.trim_data_to_registered_pings,
log_level: cfg.log_level,
};
glean_core::glean_initialize(core_cfg, client_info.into(), callbacks);

27
third_party/rust/glean/src/test.rs поставляемый
Просмотреть файл

@ -53,6 +53,7 @@ fn send_a_ping() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -142,6 +143,7 @@ fn test_experiments_recording_before_glean_inits() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
false,
@ -202,6 +204,7 @@ fn sending_of_foreground_background_pings() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -284,6 +287,7 @@ fn sending_of_startup_baseline_ping() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
false,
@ -343,6 +347,7 @@ fn no_dirty_baseline_on_clean_shutdowns() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
false,
@ -373,6 +378,7 @@ fn initialize_must_not_crash_if_data_dir_is_messed_up() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
test_reset_glean(cfg, ClientInfoMetrics::unknown(), false);
@ -419,6 +425,7 @@ fn queued_recorded_metrics_correctly_record_during_init() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), false);
@ -445,6 +452,7 @@ fn initializing_twice_is_a_noop() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
true,
@ -465,6 +473,7 @@ fn initializing_twice_is_a_noop() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
);
@ -493,6 +502,7 @@ fn dont_handle_events_when_uninitialized() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
true,
@ -557,6 +567,7 @@ fn the_app_channel_must_be_correctly_set_if_requested() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
client_info,
true,
@ -579,6 +590,7 @@ fn the_app_channel_must_be_correctly_set_if_requested() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
client_info,
true,
@ -642,6 +654,7 @@ fn ping_collection_must_happen_after_concurrently_scheduled_metrics_recordings()
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
true,
@ -723,6 +736,7 @@ fn core_metrics_should_be_cleared_and_restored_when_disabling_and_enabling_uploa
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
true,
@ -785,6 +799,7 @@ fn sending_deletion_ping_if_disabled_outside_of_run() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -802,6 +817,7 @@ fn sending_deletion_ping_if_disabled_outside_of_run() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
false,
@ -850,6 +866,7 @@ fn no_sending_of_deletion_ping_if_unchanged_outside_of_run() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -867,6 +884,7 @@ fn no_sending_of_deletion_ping_if_unchanged_outside_of_run() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
false,
@ -923,6 +941,7 @@ fn test_sending_of_startup_baseline_ping_with_application_lifetime_metric() {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
true,
@ -955,6 +974,7 @@ fn test_sending_of_startup_baseline_ping_with_application_lifetime_metric() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
},
ClientInfoMetrics::unknown(),
false,
@ -1013,6 +1033,7 @@ fn setting_debug_view_tag_before_initialization_should_not_crash() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -1071,6 +1092,7 @@ fn setting_source_tags_before_initialization_should_not_crash() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -1128,6 +1150,7 @@ fn setting_source_tags_after_initialization_should_not_crash() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -1199,6 +1222,7 @@ fn flipping_upload_enabled_respects_order_of_events() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
// We create a ping and a metric before we initialize Glean
@ -1267,6 +1291,7 @@ fn registering_pings_before_init_must_work() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -1317,6 +1342,7 @@ fn test_a_ping_before_submission() {
uploader: Some(Box::new(FakeUploader { sender: s })),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);
@ -1445,6 +1471,7 @@ fn signaling_done() {
})),
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let _t = new_glean(Some(cfg), true);

Просмотреть файл

@ -6,7 +6,7 @@ edition = "2018"
license = "MPL-2.0"
[dependencies]
glean = "52.6.0"
glean = "52.7.0"
log = "0.4"
nserror = { path = "../../../xpcom/rust/nserror" }
nsstring = { path = "../../../xpcom/rust/nsstring" }

Просмотреть файл

@ -9,7 +9,7 @@ license = "MPL-2.0"
[dependencies]
bincode = "1.0"
chrono = "0.4.10"
glean = "52.6.0"
glean = "52.7.0"
inherent = "1.0.0"
log = "0.4"
nsstring = { path = "../../../../xpcom/rust/nsstring", optional = true }

Просмотреть файл

@ -39,6 +39,7 @@ fn setup_glean(tempdir: Option<tempfile::TempDir>) -> tempfile::TempDir {
uploader: None,
use_core_mps: false,
trim_data_to_registered_pings: false,
log_level: None,
};
let client_info = glean::ClientInfoMetrics {

Просмотреть файл

@ -164,6 +164,7 @@ fn build_configuration(
uploader: None,
use_core_mps: true,
trim_data_to_registered_pings: true,
log_level: None,
};
Ok((configuration, client_info))