From 749ccab6c5529a6114eaeb037fca79c8d6133b2c Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Mon, 12 Sep 2022 18:17:51 -0400 Subject: [PATCH 01/31] Update timing_distribution metric docs Now that timing_distribution is being implemented in Glean.js, we no longer need to say that the API is not available. Glean.js PR - https://github.com/mozilla/glean.js/pull/1475 --- .../reference/metrics/timing_distribution.md | 64 +++++++++++++++++-- 1 file changed, 58 insertions(+), 6 deletions(-) diff --git a/docs/user/reference/metrics/timing_distribution.md b/docs/user/reference/metrics/timing_distribution.md index 8b1647e613..142a23325d 100644 --- a/docs/user/reference/metrics/timing_distribution.md +++ b/docs/user/reference/metrics/timing_distribution.md @@ -111,7 +111,18 @@ fn on_page_start() { ``` -
+
+ +```Javascript +import * as timing from "./path/to/generated/files/timing.js"; + +function onPageStart() { + // store this ID, you will need it later to stop or cancel your timer + const timerId = timing.start(); +} +``` + +
**C++** @@ -197,7 +208,17 @@ fn on_page_loaded() { ```
-
+
+ +```Javascript +import * as timing from "./path/to/generated/files/timing.js"; + +function onPageLoaded() { + timing.stopAndAccumulate(timerId); +} +``` + +
**C++** @@ -265,7 +286,7 @@ with metrics.pages.page_load.measure():
-
+
{{#include ../../../shared/tab_footer.md}} @@ -333,7 +354,17 @@ fn on_page_error() { ``` -
+
+ +```Javascript +import * as timing from "./path/to/generated/files/timing.js"; + +function onPageError() { + timing.cancel(timerId); +} +``` + +
**C++** @@ -435,7 +466,19 @@ assert_eq!(1, snapshot.values.len());
-
+
+ +```Javascript +import * as timing from "./path/to/generated/files/timing.js"; + +const snapshot = await timing.testGetValue(""); + +// Usually you don't know the exact timing values, +// but how many should have been recorded. +assert.equal(1, snapshot.count); +``` + +
**C++** @@ -524,7 +567,16 @@ assert_eq!( ```
-
+
+ +```Javascript +import * as timing from "./path/to/generated/files/timing.js"; +import { ErrorType } from "@mozilla/glean/"; + +assert.equal(1, await metric.testGetNumRecordedErrors(ErrorType.InvalidValue)); +``` + +
{{#include ../../../shared/tab_footer.md}} From 053b45861b0b4841694cfa7c4675c67aa7c82691 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Mon, 19 Sep 2022 16:29:03 -0400 Subject: [PATCH 02/31] Add count to DistributionData --- glean-core/src/glean.udl | 3 +++ glean-core/src/metrics/custom_distribution.rs | 1 + glean-core/src/metrics/memory_distribution.rs | 1 + glean-core/src/metrics/mod.rs | 3 +++ glean-core/src/metrics/timing_distribution.rs | 3 +++ 5 files changed, 11 insertions(+) diff --git a/glean-core/src/glean.udl b/glean-core/src/glean.udl index cf7594a86e..35c15c115a 100644 --- a/glean-core/src/glean.udl +++ b/glean-core/src/glean.udl @@ -388,6 +388,9 @@ dictionary DistributionData { // The accumulated sum of all the samples in the distribution. i64 sum; + + // The total number of entries in the distribution. + u64 count; }; // Identifier for a running timer. diff --git a/glean-core/src/metrics/custom_distribution.rs b/glean-core/src/metrics/custom_distribution.rs index 4c4e822a81..d2347031d1 100644 --- a/glean-core/src/metrics/custom_distribution.rs +++ b/glean-core/src/metrics/custom_distribution.rs @@ -34,6 +34,7 @@ pub(crate) fn snapshot(hist: &Histogram) -> DistributionData { .map(|(k, v)| (k as i64, v as i64)) .collect(), sum: hist.sum() as i64, + count: hist.count(), } } diff --git a/glean-core/src/metrics/memory_distribution.rs b/glean-core/src/metrics/memory_distribution.rs index d0cc470a00..988fe13d7a 100644 --- a/glean-core/src/metrics/memory_distribution.rs +++ b/glean-core/src/metrics/memory_distribution.rs @@ -44,6 +44,7 @@ pub(crate) fn snapshot(hist: &Histogram) -> DistributionData { .map(|(k, v)| (k as i64, v as i64)) .collect(), sum: hist.sum() as i64, + count: hist.count(), } } diff --git a/glean-core/src/metrics/mod.rs b/glean-core/src/metrics/mod.rs index fb3534492c..d4e028d9c3 100644 --- a/glean-core/src/metrics/mod.rs +++ b/glean-core/src/metrics/mod.rs @@ -77,6 +77,9 @@ pub struct DistributionData { /// The accumulated sum of all the samples in the distribution. pub sum: i64, + + /// The total number of entries in the distribution. + pub count: u64, } /// The available metrics. diff --git a/glean-core/src/metrics/timing_distribution.rs b/glean-core/src/metrics/timing_distribution.rs index 77671e3aba..bfb659036f 100644 --- a/glean-core/src/metrics/timing_distribution.rs +++ b/glean-core/src/metrics/timing_distribution.rs @@ -75,6 +75,7 @@ pub(crate) fn snapshot(hist: &Histogram) -> DistributionData { .map(|(k, v)| (k as i64, v as i64)) .collect(), sum: hist.sum() as i64, + count: hist.count(), } } @@ -487,6 +488,7 @@ mod test { let snap = snapshot(&hist); let expected_json = json!({ + "count": 10, "sum": 55, "values": { "1": 1, @@ -520,6 +522,7 @@ mod test { let snap = snapshot(&hist); let expected_json = json!({ + "count": 4, "sum": 4612, "values": { "1024": 2, From 39d9c2ce3d7d679c67fc091704220caebdafbae0 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Mon, 19 Sep 2022 16:36:03 -0400 Subject: [PATCH 03/31] Update timing_distribution rust tests to check count --- glean-core/tests/timing_distribution.rs | 26 ++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/glean-core/tests/timing_distribution.rs b/glean-core/tests/timing_distribution.rs index 2ae29a4c2f..4f5b258b9f 100644 --- a/glean-core/tests/timing_distribution.rs +++ b/glean-core/tests/timing_distribution.rs @@ -47,6 +47,7 @@ fn serializer_should_correctly_serialize_timing_distribution() { .get_value(&glean, "store1") .expect("Value should be stored"); + assert_eq!(snapshot.count, 1); assert_eq!(snapshot.sum, duration as i64); } @@ -164,9 +165,12 @@ fn the_accumulate_samples_api_correctly_stores_timing_values() { let seconds_to_nanos = 1000 * 1000 * 1000; - // Check that we got the right sum and number of samples. + // Check that we got the right sum. assert_eq!(snapshot.sum, 6 * seconds_to_nanos); + // Check that we got the right number of samples. + assert_eq!(snapshot.count, 3); + // We should get a sample in 3 buckets. // These numbers are a bit magic, but they correspond to // `hist.sample_to_bucket_minimum(i * seconds_to_nanos)` for `i = 1..=3`. @@ -201,9 +205,12 @@ fn the_accumulate_samples_api_correctly_handles_negative_values() { .get_value(&glean, "store1") .expect("Value should be stored"); - // Check that we got the right sum and number of samples. + // Check that we got the right sum. assert_eq!(snapshot.sum, 6); + // Check that we got the right number of samples. + assert_eq!(snapshot.count, 3); + // We should get a sample in each of the first 3 buckets. assert_eq!(1, snapshot.values[&1]); assert_eq!(1, snapshot.values[&2]); @@ -245,6 +252,9 @@ fn the_accumulate_samples_api_correctly_handles_overflowing_values() { // Overflowing values are truncated to MAX_SAMPLE_TIME and recorded. assert_eq!(snapshot.sum as u64, MAX_SAMPLE_TIME + 6); + // Check that we got the right number of values. + assert_eq!(snapshot.count, 4); + // We should get a sample in each of the first 3 buckets. assert_eq!(1, snapshot.values[&1]); assert_eq!(1, snapshot.values[&2]); @@ -340,9 +350,12 @@ fn the_accumulate_raw_samples_api_correctly_stores_timing_values() { .get_value(&glean, "store1") .expect("Value should be stored"); - // Check that we got the right sum and number of samples. + // Check that we got the right sum. assert_eq!(snapshot.sum, 6 * seconds_to_nanos as i64); + // Check that we got the right number of samples. + assert_eq!(snapshot.count, 3); + // We should get a sample in 3 buckets. // These numbers are a bit magic, but they correspond to // `hist.sample_to_bucket_minimum(i * seconds_to_nanos)` for `i = 1..=3`. @@ -386,16 +399,19 @@ fn raw_samples_api_error_cases() { .get_value(&glean, "store1") .expect("Value should be stored"); - // Check that we got the right sum and number of samples. + // Check that we got the right sum. assert_eq!(snapshot.sum, 2 + max_sample_time as i64); + // Check that we got the right number of samples. + assert_eq!(snapshot.count, 3); + // We should get a sample in 3 buckets. // These numbers are a bit magic, but they correspond to // `hist.sample_to_bucket_minimum(i * seconds_to_nanos)` for `i = {1, max_sample_time}`. assert_eq!(2, snapshot.values[&1]); assert_eq!(1, snapshot.values[&599512966122]); - // No errors should be reported. + // 1 error should be reported. assert_eq!( Ok(1), test_get_num_recorded_errors(&glean, metric.meta(), ErrorType::InvalidOverflow) From d1361743c2b092d42866ac0053a36e074030ca8e Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Mon, 19 Sep 2022 16:43:30 -0400 Subject: [PATCH 04/31] Update timing_distribution Android tests to check count --- .../glean/private/TimingDistributionMetricTypeTest.kt | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt b/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt index d7f8c13e35..7badee389f 100644 --- a/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt +++ b/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt @@ -53,6 +53,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue()!! // Check the sum assertTrue(snapshot.sum > 0L) + assertEquals(snapshot.count, 3UL) // Check that the 1L fell into the first bucket (max 1) // assertEquals(1L, snapshot.values[1]) // Check that the 2L fell into the second bucket (max 2) @@ -126,6 +127,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue("store2")!! // Check the sum assertTrue(snapshot.sum > 0) + assertEquals(snapshot.count, 3UL) // Check that the 1L fell into the first bucket // assertEquals(1L, snapshot.values[1]) // Check that the 2L fell into the second bucket @@ -137,6 +139,7 @@ class TimingDistributionMetricTypeTest { val snapshot2 = metric.testGetValue("store3")!! // Check the sum assertEquals(snapshot.sum, snapshot2.sum) + assertEquals(snapshot2.count, 3UL) // Check that the 1L fell into the first bucket // assertEquals(1L, snapshot2.values[1]) // Check that the 2L fell into the second bucket @@ -169,6 +172,9 @@ class TimingDistributionMetricTypeTest { // Check the sum assertEquals(6L * secondsToNanos, snapshot.sum) + // Check that we got the right number of samples. + assertEquals(snapshot.count, 3UL) + // We should get a sample in 3 buckets. // These numbers are a bit magic, but they correspond to // `hist.sample_to_bucket_minimum(i * seconds_to_nanos)` for `i = 1..=3`, @@ -273,6 +279,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue()!! // Check the sum assertTrue(snapshot.sum > 0L) + assertEquals(snapshot.count, 3UL) // Check that the 1L fell into the first bucket (max 1) // assertEquals(1L, snapshot.values[1]) // Check that the 2L fell into the second bucket (max 2) @@ -311,6 +318,8 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue()!! assertTrue("Should have stored some nanoseconds", snapshot.sum > 0L) + + assertEquals(snapshot.count, 1UL) } @Test From f19113b8b29be877a328b07c30a646fa7892eea8 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Mon, 19 Sep 2022 16:46:00 -0400 Subject: [PATCH 05/31] Update timing_distribution iOS tests to check count --- .../GleanTests/Metrics/TimingDistributionMetricTests.swift | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/glean-core/ios/GleanTests/Metrics/TimingDistributionMetricTests.swift b/glean-core/ios/GleanTests/Metrics/TimingDistributionMetricTests.swift index fd37708fe1..dd8e626ce8 100644 --- a/glean-core/ios/GleanTests/Metrics/TimingDistributionMetricTests.swift +++ b/glean-core/ios/GleanTests/Metrics/TimingDistributionMetricTests.swift @@ -36,6 +36,7 @@ class TimingDistributionTypeTests: XCTestCase { let snapshot = metric.testGetValue()! let sum = snapshot.values.values.reduce(0, +) XCTAssertEqual(3, sum) + XCTAssertEqual(3, snapshot.count) } func testTimingDistributionMustNotRecordIfDisabled() { @@ -91,10 +92,12 @@ class TimingDistributionTypeTests: XCTestCase { var snapshot = metric.testGetValue("store2")! var sum = snapshot.values.values.reduce(0, +) XCTAssertEqual(3, sum) + XCTAssertEqual(3, snapshot.count) snapshot = metric.testGetValue("store3")! sum = snapshot.values.values.reduce(0, +) XCTAssertEqual(3, sum) + XCTAssertEqual(3, snapshot.count) } func testTimingDistributionMustNotRecordIfCanceled() { @@ -162,6 +165,7 @@ class TimingDistributionTypeTests: XCTestCase { let snapshot = metric.testGetValue()! let sum = snapshot.values.values.reduce(0, +) XCTAssertEqual(3, sum) + XCTAssertEqual(3, snapshot.count) } func testMeasureFunctionThrows() { From 257699e7e8b4a78e9add981c2ec1f763940703a4 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Mon, 19 Sep 2022 16:46:22 -0400 Subject: [PATCH 06/31] Update timing_distribution Python tests to check count --- .../python/tests/metrics/test_timing_distribution.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/glean-core/python/tests/metrics/test_timing_distribution.py b/glean-core/python/tests/metrics/test_timing_distribution.py index 0bd9acbed3..7c4512caed 100644 --- a/glean-core/python/tests/metrics/test_timing_distribution.py +++ b/glean-core/python/tests/metrics/test_timing_distribution.py @@ -31,9 +31,7 @@ def test_the_api_saves_to_its_storage_engine(): snapshot = metric.test_get_value() assert 0 < snapshot.sum - - count = sum([v for v in snapshot.values.values()]) - assert 3 == count + assert 3 == snapshot.count def test_disabled_timing_distributions_must_not_record_data(): @@ -91,8 +89,7 @@ def test_api_saves_to_secondary_pings(): for store in ["store1", "store2", "store3"]: snapshot = metric.test_get_value(store) assert 0 < snapshot.sum - count = sum([v for v in snapshot.values.values()]) - assert 3 == count + assert 3 == snapshot.count def test_stopping_a_non_existent_timer_records_an_error(): From f240b4a8055146e69b5360e8544297af9b0dc5df Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Tue, 20 Sep 2022 19:14:55 -0400 Subject: [PATCH 07/31] Fix issues with JS timing distribution examples --- .../reference/metrics/timing_distribution.md | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/user/reference/metrics/timing_distribution.md b/docs/user/reference/metrics/timing_distribution.md index 142a23325d..e57c3dd1f5 100644 --- a/docs/user/reference/metrics/timing_distribution.md +++ b/docs/user/reference/metrics/timing_distribution.md @@ -114,11 +114,11 @@ fn on_page_start() {
```Javascript -import * as timing from "./path/to/generated/files/timing.js"; +import * as pages from "./path/to/generated/files/pages.js"; function onPageStart() { // store this ID, you will need it later to stop or cancel your timer - const timerId = timing.start(); + const timerId = pages.pageLoad.start(); } ``` @@ -211,10 +211,10 @@ fn on_page_loaded() {
```Javascript -import * as timing from "./path/to/generated/files/timing.js"; +import * as pages from "./path/to/generated/files/pages.js"; function onPageLoaded() { - timing.stopAndAccumulate(timerId); + pages.pageLoad.stopAndAccumulate(timerId); } ``` @@ -357,10 +357,10 @@ fn on_page_error() {
```Javascript -import * as timing from "./path/to/generated/files/timing.js"; +import * as pages from "./path/to/generated/files/pages.js"; function onPageError() { - timing.cancel(timerId); + pages.pageLoad.cancel(timerId); } ``` @@ -469,9 +469,9 @@ assert_eq!(1, snapshot.values.len());
```Javascript -import * as timing from "./path/to/generated/files/timing.js"; +import * as pages from "./path/to/generated/files/pages.js"; -const snapshot = await timing.testGetValue(""); +const snapshot = await pages.pageLoad.testGetValue(); // Usually you don't know the exact timing values, // but how many should have been recorded. @@ -570,10 +570,10 @@ assert_eq!(
```Javascript -import * as timing from "./path/to/generated/files/timing.js"; +import * as pages from "./path/to/generated/files/pages.js"; import { ErrorType } from "@mozilla/glean/"; -assert.equal(1, await metric.testGetNumRecordedErrors(ErrorType.InvalidValue)); +assert.equal(1, await pages.pageLoad.testGetNumRecordedErrors(ErrorType.InvalidValue)); ```
From d9002b2a307e3a87f09a774ac9a7f8c74c80c0d1 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Wed, 21 Sep 2022 13:54:59 -0400 Subject: [PATCH 08/31] Add JS examples to memory_distribution metric docs --- .../reference/metrics/memory_distribution.md | 46 +++++++++++++++++-- 1 file changed, 43 insertions(+), 3 deletions(-) diff --git a/docs/user/reference/metrics/memory_distribution.md b/docs/user/reference/metrics/memory_distribution.md index 2f7e00d61a..42dc581e25 100644 --- a/docs/user/reference/metrics/memory_distribution.md +++ b/docs/user/reference/metrics/memory_distribution.md @@ -79,7 +79,18 @@ fn allocate_memory(bytes: u64) { ```
-
+
+ +```js +import * as memory from "./path/to/generated/files/memory.js"; + +function allocateMemory() { + // ... + memory.heapAllocated.accumulate(nbytes / 1024); +} +``` + +
**C++** @@ -201,7 +212,23 @@ assert_eq!(2, snapshot.values.len());
-
+
+ +```js +import * as memory from "./path/to/generated/files/memory.js"; + +// Get snapshot +const snapshot = await memory.heapAllocated.testGetValue(); + +// Does the sum have the expected value? +assert.equal(11, snapshot.sum); + +// Usually you don't know the exact memory values, +// but know how many should have been recorded. +assert.equal(2, snapshot.count); +``` + +
**C++** @@ -291,7 +318,20 @@ assert_eq!( ```
-
+
+ +```js +import * as memory from "./path/to/generated/files/memory.js"; +import { ErrorType } from "@mozilla/glean/"; + +// Did this record a negative value? +assert.equal( + 0, + await memory.heapAllocated.testGetNumRecordedErrors(ErrorType.InvalidValue) +); +``` + +
{{#include ../../../shared/tab_footer.md}} From 9ff8e143b36ef4d41291cb63917efcd9b2061850 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Wed, 21 Sep 2022 15:15:45 -0400 Subject: [PATCH 09/31] Update timing distribution docs --- .../reference/metrics/memory_distribution.md | 4 +-- .../reference/metrics/timing_distribution.md | 25 +++++++++++++++---- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/docs/user/reference/metrics/memory_distribution.md b/docs/user/reference/metrics/memory_distribution.md index 2f7e00d61a..1a99f0a1cc 100644 --- a/docs/user/reference/metrics/memory_distribution.md +++ b/docs/user/reference/metrics/memory_distribution.md @@ -128,7 +128,7 @@ assertEquals(11, snapshot.sum) // Usually you don't know the exact memory values, // but how many should have been recorded. -assertEquals(2L, snapshot.count) +assertEquals(2UL, snapshot.count) ```
@@ -196,7 +196,7 @@ assert_eq!(11, snapshot.sum); // Usually you don't know the exact timing values, // but how many should have been recorded. -assert_eq!(2, snapshot.values.len()); +assert_eq!(2, snapshot.count); ``` diff --git a/docs/user/reference/metrics/timing_distribution.md b/docs/user/reference/metrics/timing_distribution.md index 8b1647e613..10f1c6ecb3 100644 --- a/docs/user/reference/metrics/timing_distribution.md +++ b/docs/user/reference/metrics/timing_distribution.md @@ -372,9 +372,12 @@ import org.mozilla.yourApplication.GleanMetrics.Pages // Get snapshot. val snapshot = Pages.pageLoad.testGetValue() +// Does the sum have the expected value? +assertEquals(11, snapshot.sum) + // Usually you don't know the exact timing values, // but how many should have been recorded. -assertEquals(1L, snapshot.sum) +assertEquals(2UL, snapshot.count) ```
@@ -386,9 +389,12 @@ import org.mozilla.yourApplication.GleanMetrics.Pages; // Get snapshot. DistributionData snapshot = pages.INSTANCE.pageLoad().testGetValue(); +// Does the sum have the expected value? +assertEquals(11, snapshot.sum); + // Usually you don't know the exact timing values, // but how many should have been recorded. -assertEquals(1L, snapshot.getSum()); +assertEquals(2L, snapshot.getCount()); ```
@@ -398,9 +404,12 @@ assertEquals(1L, snapshot.getSum()); // Get snapshot. let snapshot = pages.pageLoad.testGetValue() +// Does the sum have the expected value? +XCTAssertEqual(11, snapshot.sum) + // Usually you don't know the exact timing values, // but how many should have been recorded. -XCTAssertEqual(1, snapshot.sum) +XCTAssertEqual(2, snapshot.count) ``` @@ -413,9 +422,12 @@ metrics = load_metrics("metrics.yaml") # Get snapshot. snapshot = metrics.pages.page_load.test_get_value() +# Does the sum have the expected value? +assert 11 == snapshot.sum + # Usually you don't know the exact timing values, # but how many should have been recorded. -assert 1 == snapshot.sum +assert 2 == snapshot.count ``` @@ -428,9 +440,12 @@ use glean_metrics::pages; // Get snapshot let snapshot = pages::page_load.test_get_value(None).unwrap(); +// Does the sum have the expected value? +assert_eq!(11, snapshot.sum); + // Usually you don't know the exact timing values, // but how many should have been recorded. -assert_eq!(1, snapshot.values.len()); +assert_eq!(2, snapshot.count); ``` From 7c9fd7a39124f38f4d71a0fcdec42835d61651e0 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Thu, 22 Sep 2022 14:47:20 -0400 Subject: [PATCH 10/31] Add JS examples to custom_distribution metric docs --- .../reference/metrics/custom_distribution.md | 42 +++++++++++++++++-- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/docs/user/reference/metrics/custom_distribution.md b/docs/user/reference/metrics/custom_distribution.md index 91eb1bbaa7..511f5a69cf 100644 --- a/docs/user/reference/metrics/custom_distribution.md +++ b/docs/user/reference/metrics/custom_distribution.md @@ -63,7 +63,15 @@ graphics::checkerboard_peak.accumulate_samples_signed(vec![23]); ``` -
+
+ +```js +import * as graphics from "./path/to/generated/files/graphics.js"; + +graphics.checkerboardPeak.accumulateSamples([23]); +``` + +
**C++** @@ -180,7 +188,22 @@ assert_eq(1, snapshot.values[19]) ```
-
+
+ +```js +import * as graphics from "./path/to/generated/files/graphics.js"; + +// Get snapshot +const snapshot = await graphics.checkerboardPeak.testGetValue(); + +// Does the sum have the expected value? +assert.equal(23, snapshot.sum); + +// Buckets are indexed by their lower bound. +assert.equal(1, snapshot.values[19]); +``` + +
**C++** @@ -276,7 +299,20 @@ assert_eq!( ```
-
+
+ +```js +import * as graphics from "./path/to/generated/files/graphics.js"; +import { ErrorType } from "@mozilla/glean/"; + +// Did the metric receive a negative value? +assert.equal( + 0, + graphics.checkerboardPeak.testGetNumRecordedErrors(ErrorType.InvalidValue) +); +``` + +
{{#include ../../../shared/tab_footer.md}} From 5843575f19e3401da9171259ad737fc198cc1c7e Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Thu, 22 Sep 2022 16:17:55 -0400 Subject: [PATCH 11/31] Convert count to `i64` in DistributionData This was what I originally tried but tests were failing locally. Travis tested and said it looked fine for him and I want to see if CI runs. --- .../private/TimingDistributionMetricTypeTest.kt | 12 ++++++------ glean-core/src/glean.udl | 2 +- glean-core/src/metrics/custom_distribution.rs | 2 +- glean-core/src/metrics/memory_distribution.rs | 2 +- glean-core/src/metrics/mod.rs | 2 +- glean-core/src/metrics/timing_distribution.rs | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt b/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt index 7badee389f..c1875bbcba 100644 --- a/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt +++ b/glean-core/android/src/test/java/mozilla/telemetry/glean/private/TimingDistributionMetricTypeTest.kt @@ -53,7 +53,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue()!! // Check the sum assertTrue(snapshot.sum > 0L) - assertEquals(snapshot.count, 3UL) + assertEquals(snapshot.count, 3L) // Check that the 1L fell into the first bucket (max 1) // assertEquals(1L, snapshot.values[1]) // Check that the 2L fell into the second bucket (max 2) @@ -127,7 +127,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue("store2")!! // Check the sum assertTrue(snapshot.sum > 0) - assertEquals(snapshot.count, 3UL) + assertEquals(snapshot.count, 3L) // Check that the 1L fell into the first bucket // assertEquals(1L, snapshot.values[1]) // Check that the 2L fell into the second bucket @@ -139,7 +139,7 @@ class TimingDistributionMetricTypeTest { val snapshot2 = metric.testGetValue("store3")!! // Check the sum assertEquals(snapshot.sum, snapshot2.sum) - assertEquals(snapshot2.count, 3UL) + assertEquals(snapshot2.count, 3L) // Check that the 1L fell into the first bucket // assertEquals(1L, snapshot2.values[1]) // Check that the 2L fell into the second bucket @@ -173,7 +173,7 @@ class TimingDistributionMetricTypeTest { assertEquals(6L * secondsToNanos, snapshot.sum) // Check that we got the right number of samples. - assertEquals(snapshot.count, 3UL) + assertEquals(snapshot.count, 3L) // We should get a sample in 3 buckets. // These numbers are a bit magic, but they correspond to @@ -279,7 +279,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue()!! // Check the sum assertTrue(snapshot.sum > 0L) - assertEquals(snapshot.count, 3UL) + assertEquals(snapshot.count, 3L) // Check that the 1L fell into the first bucket (max 1) // assertEquals(1L, snapshot.values[1]) // Check that the 2L fell into the second bucket (max 2) @@ -319,7 +319,7 @@ class TimingDistributionMetricTypeTest { val snapshot = metric.testGetValue()!! assertTrue("Should have stored some nanoseconds", snapshot.sum > 0L) - assertEquals(snapshot.count, 1UL) + assertEquals(snapshot.count, 1L) } @Test diff --git a/glean-core/src/glean.udl b/glean-core/src/glean.udl index 35c15c115a..af42c85276 100644 --- a/glean-core/src/glean.udl +++ b/glean-core/src/glean.udl @@ -390,7 +390,7 @@ dictionary DistributionData { i64 sum; // The total number of entries in the distribution. - u64 count; + i64 count; }; // Identifier for a running timer. diff --git a/glean-core/src/metrics/custom_distribution.rs b/glean-core/src/metrics/custom_distribution.rs index d2347031d1..595558b572 100644 --- a/glean-core/src/metrics/custom_distribution.rs +++ b/glean-core/src/metrics/custom_distribution.rs @@ -34,7 +34,7 @@ pub(crate) fn snapshot(hist: &Histogram) -> DistributionData { .map(|(k, v)| (k as i64, v as i64)) .collect(), sum: hist.sum() as i64, - count: hist.count(), + count: hist.count() as i64, } } diff --git a/glean-core/src/metrics/memory_distribution.rs b/glean-core/src/metrics/memory_distribution.rs index 988fe13d7a..664ba64bd4 100644 --- a/glean-core/src/metrics/memory_distribution.rs +++ b/glean-core/src/metrics/memory_distribution.rs @@ -44,7 +44,7 @@ pub(crate) fn snapshot(hist: &Histogram) -> DistributionData { .map(|(k, v)| (k as i64, v as i64)) .collect(), sum: hist.sum() as i64, - count: hist.count(), + count: hist.count() as i64, } } diff --git a/glean-core/src/metrics/mod.rs b/glean-core/src/metrics/mod.rs index d4e028d9c3..a8fee52d11 100644 --- a/glean-core/src/metrics/mod.rs +++ b/glean-core/src/metrics/mod.rs @@ -79,7 +79,7 @@ pub struct DistributionData { pub sum: i64, /// The total number of entries in the distribution. - pub count: u64, + pub count: i64, } /// The available metrics. diff --git a/glean-core/src/metrics/timing_distribution.rs b/glean-core/src/metrics/timing_distribution.rs index bfb659036f..fbc17972d8 100644 --- a/glean-core/src/metrics/timing_distribution.rs +++ b/glean-core/src/metrics/timing_distribution.rs @@ -75,7 +75,7 @@ pub(crate) fn snapshot(hist: &Histogram) -> DistributionData { .map(|(k, v)| (k as i64, v as i64)) .collect(), sum: hist.sum() as i64, - count: hist.count(), + count: hist.count() as i64, } } From b8e3c74833b294fee838adbd7a33dcb962757851 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Fri, 23 Sep 2022 08:05:45 -0400 Subject: [PATCH 12/31] Update docs to treat count as signed integer in Kotlin --- docs/user/reference/metrics/memory_distribution.md | 2 +- docs/user/reference/metrics/timing_distribution.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user/reference/metrics/memory_distribution.md b/docs/user/reference/metrics/memory_distribution.md index 1a99f0a1cc..c00fd49e54 100644 --- a/docs/user/reference/metrics/memory_distribution.md +++ b/docs/user/reference/metrics/memory_distribution.md @@ -128,7 +128,7 @@ assertEquals(11, snapshot.sum) // Usually you don't know the exact memory values, // but how many should have been recorded. -assertEquals(2UL, snapshot.count) +assertEquals(2L, snapshot.count) ``` diff --git a/docs/user/reference/metrics/timing_distribution.md b/docs/user/reference/metrics/timing_distribution.md index 10f1c6ecb3..32fb877cf1 100644 --- a/docs/user/reference/metrics/timing_distribution.md +++ b/docs/user/reference/metrics/timing_distribution.md @@ -377,7 +377,7 @@ assertEquals(11, snapshot.sum) // Usually you don't know the exact timing values, // but how many should have been recorded. -assertEquals(2UL, snapshot.count) +assertEquals(2L, snapshot.count) ``` From 034f8b7c61e638f2af2fd981bbfbece19fea0332 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Fri, 23 Sep 2022 08:15:58 -0400 Subject: [PATCH 13/31] Update `custom_distribution` `testGetValue` examples --- .../reference/metrics/custom_distribution.md | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/docs/user/reference/metrics/custom_distribution.md b/docs/user/reference/metrics/custom_distribution.md index 91eb1bbaa7..995e551099 100644 --- a/docs/user/reference/metrics/custom_distribution.md +++ b/docs/user/reference/metrics/custom_distribution.md @@ -114,6 +114,9 @@ val snapshot = Graphics.checkerboardPeak.testGetValue() // Does the sum have the expected value? assertEquals(23, snapshot.sum) +// Does the count have the expected value? +assertEquals(1L, snapshot.count) + // Buckets are indexed by their lower bound. assertEquals(1L, snapshot.values[19]) ``` @@ -130,6 +133,9 @@ val snapshot = Graphics.INSTANCE.checkerboardPeak().testGetValue(); // Does the sum have the expected value? assertEquals(23, snapshot.sum); + +// Does the count have the expected value? +assertEquals(1L, snapshot.count); ``` @@ -139,10 +145,12 @@ assertEquals(23, snapshot.sum); // Get snapshot. let snapshot = graphics.checkerboardPeak.testGetValue() -// Usually you don't know the exact values, -// but how many should have been recorded. +// Does the sum have the expected value? XCTAssertEqual(23, snapshot.sum) +// Does the count have the expected value? +XCTAssertEqual(1, snapshot.count) + // Buckets are indexed by their lower bound. XCTAssertEqual(1L, snapshot.values[19]) ``` @@ -157,12 +165,14 @@ metrics = load_metrics("metrics.yaml") # Get snapshot. snapshot = metrics.graphics.checkerboard_peak.test_get_value() -# Usually you don't know the exact values, -# but how many should have been recorded. +# Does the sum have the expected value? assert 23 == snapshot.sum +# Does the count have the expected value? +assert 1 == snapshot.count + # Buckets are indexed by their lower bound. -assertEquals(1L, snapshot.values[19]) +assert 1 == snapshot.values[19] ``` @@ -171,10 +181,12 @@ assertEquals(1L, snapshot.values[19]) ```Rust use glean_metrics::graphics; -// Usually you don't know the exact values, -// but how many should have been recorded. +// Does the sum have the expected value? assert_eq!(23, graphics::checkerboard_peak.test_get_value(None).unwrap().sum); +// Does the count have the expected value? +assert_eq!(1, graphics::checkerboard_peak.test_get_value(None).unwrap().count); + // Buckets are indexed by their lower bound. assert_eq(1, snapshot.values[19]) ``` From 6df73d10ebf4b23c8b4ac09a75889e8c00efd110 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Tue, 4 Oct 2022 10:52:47 -0400 Subject: [PATCH 14/31] Update docs/user/reference/metrics/custom_distribution.md Co-authored-by: Travis Long --- docs/user/reference/metrics/custom_distribution.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user/reference/metrics/custom_distribution.md b/docs/user/reference/metrics/custom_distribution.md index 995e551099..c2350312c3 100644 --- a/docs/user/reference/metrics/custom_distribution.md +++ b/docs/user/reference/metrics/custom_distribution.md @@ -188,7 +188,7 @@ assert_eq!(23, graphics::checkerboard_peak.test_get_value(None).unwrap().sum); assert_eq!(1, graphics::checkerboard_peak.test_get_value(None).unwrap().count); // Buckets are indexed by their lower bound. -assert_eq(1, snapshot.values[19]) +assert_eq!(1, snapshot.values[19]) ``` From 04fd7db311d49b0ee25253d872a1397b87eca0d1 Mon Sep 17 00:00:00 2001 From: Bruno Rosa Date: Tue, 4 Oct 2022 10:54:55 -0400 Subject: [PATCH 15/31] Update wording of comment in timing_distribution tests --- glean-core/tests/timing_distribution.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glean-core/tests/timing_distribution.rs b/glean-core/tests/timing_distribution.rs index 4f5b258b9f..1fc11500bf 100644 --- a/glean-core/tests/timing_distribution.rs +++ b/glean-core/tests/timing_distribution.rs @@ -252,7 +252,7 @@ fn the_accumulate_samples_api_correctly_handles_overflowing_values() { // Overflowing values are truncated to MAX_SAMPLE_TIME and recorded. assert_eq!(snapshot.sum as u64, MAX_SAMPLE_TIME + 6); - // Check that we got the right number of values. + // Check that we got the right number of samples. assert_eq!(snapshot.count, 4); // We should get a sample in each of the first 3 buckets. From 86847edd7f1c647773758ce444ff9ed5c9783782 Mon Sep 17 00:00:00 2001 From: perrymcmanis144 <95651456+perrymcmanis144@users.noreply.github.com> Date: Tue, 4 Oct 2022 14:44:33 -0500 Subject: [PATCH 16/31] Bumped version to 51.4.0 (#2213) Co-authored-by: Alessio Placitelli --- .buildconfig.yml | 2 +- CHANGELOG.md | 9 ++++++++- Cargo.lock | 4 ++-- DEPENDENCIES.md | 4 ++-- glean-core/Cargo.toml | 2 +- glean-core/python/setup.py | 2 +- glean-core/rlb/Cargo.toml | 4 ++-- .../glean-gradle-plugin/GleanGradlePlugin.groovy | 2 +- 8 files changed, 18 insertions(+), 11 deletions(-) diff --git a/.buildconfig.yml b/.buildconfig.yml index 97f8f9f131..75dcbe222d 100644 --- a/.buildconfig.yml +++ b/.buildconfig.yml @@ -1,4 +1,4 @@ -libraryVersion: 51.3.0 +libraryVersion: 51.4.0 groupId: org.mozilla.telemetry projects: glean: diff --git a/CHANGELOG.md b/CHANGELOG.md index 5cb610dbba..87a9d844cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,17 @@ # Unreleased changes -[Full changelog](https://github.com/mozilla/glean/compare/v51.3.0...main) +[Full changelog](https://github.com/mozilla/glean/compare/v51.4.0...main) + +# v51.4.0 (2022-10-04) + +[Full changelog](https://github.com/mozilla/glean/compare/v51.3.0...v51.4.0) * Kotlin * Update Kotlin and Android Gradle Plugin to the latest releases ([#2211](https://github.com/mozilla/glean/pull/2211)) +* Swift + * Fix for iOS startup crash caused by Glean ([#2206](https://github.com/mozilla/glean/pull/2206)) + # v51.3.0 (2022-09-28) [Full changelog](https://github.com/mozilla/glean/compare/v51.2.0...v51.3.0) diff --git a/Cargo.lock b/Cargo.lock index f2d829ef39..88a898c6b1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -355,7 +355,7 @@ dependencies = [ [[package]] name = "glean" -version = "51.3.0" +version = "51.4.0" dependencies = [ "chrono", "crossbeam-channel", @@ -398,7 +398,7 @@ dependencies = [ [[package]] name = "glean-core" -version = "51.3.0" +version = "51.4.0" dependencies = [ "android_logger", "bincode", diff --git a/DEPENDENCIES.md b/DEPENDENCIES.md index 0bf9bf27e9..e31eece0e1 100644 --- a/DEPENDENCIES.md +++ b/DEPENDENCIES.md @@ -5252,9 +5252,9 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice The following text applies to code linked from these dependencies: -* [glean 51.3.0]( https://github.com/mozilla/glean ) +* [glean 51.4.0]( https://github.com/mozilla/glean ) * [glean-build 6.1.2]( https://github.com/mozilla/glean ) -* [glean-core 51.3.0]( https://github.com/mozilla/glean ) +* [glean-core 51.4.0]( https://github.com/mozilla/glean ) * [zeitstempel 0.1.1]( https://github.com/badboy/zeitstempel ) ``` diff --git a/glean-core/Cargo.toml b/glean-core/Cargo.toml index 0651053bf2..c0a2da1223 100644 --- a/glean-core/Cargo.toml +++ b/glean-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "glean-core" -version = "51.3.0" +version = "51.4.0" authors = ["Jan-Erik Rediger ", "The Glean Team "] description = "A modern Telemetry library" repository = "https://github.com/mozilla/glean" diff --git a/glean-core/python/setup.py b/glean-core/python/setup.py index 39569ffd79..f873da36d2 100644 --- a/glean-core/python/setup.py +++ b/glean-core/python/setup.py @@ -56,7 +56,7 @@ history = history_file.read() # glean version. Automatically updated by the bin/prepare_release.sh script -version = "51.3.0" +version = "51.4.0" requirements = [ "semver>=2.13.0", diff --git a/glean-core/rlb/Cargo.toml b/glean-core/rlb/Cargo.toml index b709f3e6ae..f7f0279083 100644 --- a/glean-core/rlb/Cargo.toml +++ b/glean-core/rlb/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "glean" -version = "51.3.0" +version = "51.4.0" authors = ["Jan-Erik Rediger ", "The Glean Team "] description = "Glean SDK Rust language bindings" repository = "https://github.com/mozilla/glean" @@ -22,7 +22,7 @@ maintenance = { status = "actively-developed" } [dependencies.glean-core] path = ".." -version = "51.3.0" +version = "51.4.0" [dependencies] crossbeam-channel = "0.5" diff --git a/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy b/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy index 268417f12c..5ec14d6443 100644 --- a/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy +++ b/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy @@ -555,7 +555,7 @@ except: void apply(Project project) { isOffline = project.gradle.startParameter.offline - project.ext.glean_version = "51.3.0" + project.ext.glean_version = "51.4.0" def parserVersion = gleanParserVersion(project) // Print the required glean_parser version to the console. This is From 1033d1c7aff703f9162b4fc127e80d3a0326bb49 Mon Sep 17 00:00:00 2001 From: perrymcmanis144 <95651456+perrymcmanis144@users.noreply.github.com> Date: Fri, 7 Oct 2022 07:16:43 -0500 Subject: [PATCH 17/31] Updates instructions to be more clear around the Publish Release actions (#2215) and checking circleci --- docs/dev/cut-a-new-release.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/dev/cut-a-new-release.md b/docs/dev/cut-a-new-release.md index bc0c5783e9..4e4e67aaf7 100644 --- a/docs/dev/cut-a-new-release.md +++ b/docs/dev/cut-a-new-release.md @@ -78,7 +78,8 @@ When CI has finished and is green for your specific release branch, you are read 1. [Create a New Release](https://github.com/mozilla/glean/releases/new) in the GitHub UI (`Releases > Draft a New Release`). 2. Enter `v` as the tag. It's important this is the same as the version you specified to the `prepare_release.sh` script, with the `v` prefix added. 3. Select the `release` branch as the target. - 4. Under the description, paste the contents of the release notes from `CHANGELOG.md`. + 4. Under the description, paste the contents of the release notes from `CHANGELOG.md`. + 5. Click the green `Publish Release` button. 5. Wait for the CI build to complete for the tag. * You can check [on CircleCI for the running build](https://circleci.com/gh/mozilla/glean). * You can find the TaskCluster task on the corresponding commit. See [How to find TaskCluster tasks](ci.md#how-to-find-taskcluster-tasks) for details. @@ -87,6 +88,7 @@ When CI has finished and is green for your specific release branch, you are read 6. Merge the Pull Request opened previously. * This is important so that no changes are lost. * If this PR is "trivial" (no bugfixes or merge conflicts of note from earlier steps) you may land it without review. + * There is a separate CirleCI task for the release branch, ensure that it also completes. 7. Once the above pull request lands, delete the specific release branch. 8. Post a message to [#glean:mozilla.org](https://chat.mozilla.org/#/room/#glean:mozilla.org) announcing the new release. * Include a copy of the release-specific changelog if you want to be fancy. From cb8f21ad226925822fdd138fae7aad9b2187a74d Mon Sep 17 00:00:00 2001 From: Alessio Placitelli Date: Fri, 7 Oct 2022 16:12:45 +0200 Subject: [PATCH 18/31] Fix a typo in cut-a-new-release.md --- docs/dev/cut-a-new-release.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev/cut-a-new-release.md b/docs/dev/cut-a-new-release.md index 4e4e67aaf7..ce555c6bef 100644 --- a/docs/dev/cut-a-new-release.md +++ b/docs/dev/cut-a-new-release.md @@ -88,7 +88,7 @@ When CI has finished and is green for your specific release branch, you are read 6. Merge the Pull Request opened previously. * This is important so that no changes are lost. * If this PR is "trivial" (no bugfixes or merge conflicts of note from earlier steps) you may land it without review. - * There is a separate CirleCI task for the release branch, ensure that it also completes. + * There is a separate CircleCI task for the release branch, ensure that it also completes. 7. Once the above pull request lands, delete the specific release branch. 8. Post a message to [#glean:mozilla.org](https://chat.mozilla.org/#/room/#glean:mozilla.org) announcing the new release. * Include a copy of the release-specific changelog if you want to be fancy. From 9e14b072093e07c54a757144b0fae43201c1823e Mon Sep 17 00:00:00 2001 From: Tawah Peggy Date: Mon, 10 Oct 2022 13:44:52 +0100 Subject: [PATCH 19/31] Bug 1761485 - Add deprecated imports statements to ErrorType. (#2210) --- docs/user/reference/metrics/counter.md | 3 +-- docs/user/reference/metrics/datetime.md | 2 +- docs/user/reference/metrics/event.md | 2 +- docs/user/reference/metrics/labeled_booleans.md | 2 +- docs/user/reference/metrics/labeled_counters.md | 2 +- docs/user/reference/metrics/labeled_strings.md | 2 +- docs/user/reference/metrics/quantity.md | 2 +- docs/user/reference/metrics/rate.md | 2 +- docs/user/reference/metrics/string.md | 2 +- docs/user/reference/metrics/text.md | 2 +- docs/user/reference/metrics/timespan.md | 2 +- docs/user/reference/metrics/url.md | 2 +- docs/user/reference/metrics/uuid.md | 2 +- 13 files changed, 13 insertions(+), 14 deletions(-) diff --git a/docs/user/reference/metrics/counter.md b/docs/user/reference/metrics/counter.md index cd872cb84b..5b722673b5 100644 --- a/docs/user/reference/metrics/counter.md +++ b/docs/user/reference/metrics/counter.md @@ -286,8 +286,7 @@ assert_eq!( ```js import * as controls from "./path/to/generated/files/controls.js"; -import { ErrorType } from "@mozilla/glean/"; - +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 0, await controls.refreshPressed.testGetNumRecordedErrors(ErrorType.InvalidValue) diff --git a/docs/user/reference/metrics/datetime.md b/docs/user/reference/metrics/datetime.md index f045aa5da9..3494cf6374 100644 --- a/docs/user/reference/metrics/datetime.md +++ b/docs/user/reference/metrics/datetime.md @@ -353,7 +353,7 @@ assert_eq!( ```js import * as install from "./path/to/generated/files/install.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 0, diff --git a/docs/user/reference/metrics/event.md b/docs/user/reference/metrics/event.md index 16253e0510..67f0113464 100644 --- a/docs/user/reference/metrics/event.md +++ b/docs/user/reference/metrics/event.md @@ -392,7 +392,7 @@ assert_eq!( ```js import * as views from "./path/to/generated/files/views.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 0, diff --git a/docs/user/reference/metrics/labeled_booleans.md b/docs/user/reference/metrics/labeled_booleans.md index f1bfeff662..44b5bf07c6 100644 --- a/docs/user/reference/metrics/labeled_booleans.md +++ b/docs/user/reference/metrics/labeled_booleans.md @@ -265,7 +265,7 @@ assert_eq!( ```js import * as accessibility from "./path/to/generated/files/acessibility.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert( 1, diff --git a/docs/user/reference/metrics/labeled_counters.md b/docs/user/reference/metrics/labeled_counters.md index 2fad6a6fd9..d16997c037 100644 --- a/docs/user/reference/metrics/labeled_counters.md +++ b/docs/user/reference/metrics/labeled_counters.md @@ -282,7 +282,7 @@ assert_eq!( ```js import * as stability from "./path/to/generated/files/stability.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; // Were there any invalid labels? assert( diff --git a/docs/user/reference/metrics/labeled_strings.md b/docs/user/reference/metrics/labeled_strings.md index 9020221777..3252d862ce 100644 --- a/docs/user/reference/metrics/labeled_strings.md +++ b/docs/user/reference/metrics/labeled_strings.md @@ -257,7 +257,7 @@ assert_eq!( ```js import * as login from "./path/to/generated/files/login.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; // Were there any invalid labels? assert( diff --git a/docs/user/reference/metrics/quantity.md b/docs/user/reference/metrics/quantity.md index 131d9a1137..dbbe2c222f 100644 --- a/docs/user/reference/metrics/quantity.md +++ b/docs/user/reference/metrics/quantity.md @@ -262,7 +262,7 @@ assert_eq!( ```js import * as display from "./path/to/generated/files/display.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 0, diff --git a/docs/user/reference/metrics/rate.md b/docs/user/reference/metrics/rate.md index a43e46aefc..774c606262 100644 --- a/docs/user/reference/metrics/rate.md +++ b/docs/user/reference/metrics/rate.md @@ -382,7 +382,7 @@ assert_eq!( ```js import * as network from "./path/to/generated/files/network.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 1, diff --git a/docs/user/reference/metrics/string.md b/docs/user/reference/metrics/string.md index a2e0cc7524..d138b71148 100644 --- a/docs/user/reference/metrics/string.md +++ b/docs/user/reference/metrics/string.md @@ -303,7 +303,7 @@ assert_eq!( ```js import * as searchDefault from "./path/to/generated/files/searchDefault.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; // Was the string truncated, and an error reported? assert.strictEqual( diff --git a/docs/user/reference/metrics/text.md b/docs/user/reference/metrics/text.md index 6493f49bdc..63abe382b1 100644 --- a/docs/user/reference/metrics/text.md +++ b/docs/user/reference/metrics/text.md @@ -245,7 +245,7 @@ assert_eq!( ```js import * as article from "./path/to/generated/files/article.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 0, diff --git a/docs/user/reference/metrics/timespan.md b/docs/user/reference/metrics/timespan.md index 9e38fd693a..c313fb05eb 100644 --- a/docs/user/reference/metrics/timespan.md +++ b/docs/user/reference/metrics/timespan.md @@ -612,7 +612,7 @@ assert_eq!(1, auth::login_time.test_get_num_recorded_errors(ErrorType::InvalidVa ```js import * as auth from "./path/to/generated/files/auth.js"; -import { ErrorType } from "@mozilla/glean/";; +import { ErrorType } from "@mozilla/glean/error";; assert.strictEqual( 1, diff --git a/docs/user/reference/metrics/url.md b/docs/user/reference/metrics/url.md index c19f866f00..34582d4559 100644 --- a/docs/user/reference/metrics/url.md +++ b/docs/user/reference/metrics/url.md @@ -298,7 +298,7 @@ assert_eq!( ```js import * as search from "./path/to/generated/files/search.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; assert.strictEqual( 0, diff --git a/docs/user/reference/metrics/uuid.md b/docs/user/reference/metrics/uuid.md index 9ca1862021..f540b920fd 100644 --- a/docs/user/reference/metrics/uuid.md +++ b/docs/user/reference/metrics/uuid.md @@ -371,7 +371,7 @@ assert_eq!( ```js import * as user from "./path/to/generated/files/user.js"; -import { ErrorType } from "@mozilla/glean/"; +import { ErrorType } from "@mozilla/glean/error"; // Was the string truncated, and an error reported? assert.strictEqual( From a1dfe102c32bfa4e435f8e132b0782a66fdb78e3 Mon Sep 17 00:00:00 2001 From: Ryan VanderMeulen Date: Wed, 5 Oct 2022 14:36:35 -0400 Subject: [PATCH 20/31] Switch from deprecated digital.wup.android-maven-publish to maven-publish plugin This was done in AC a long time ago. --- build.gradle | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/build.gradle b/build.gradle index 4af1f8ac0e..ad95629f45 100644 --- a/build.gradle +++ b/build.gradle @@ -12,7 +12,6 @@ buildscript { // versions below must match the ones in that repository. ext.versions = [ android_gradle_plugin: '7.3.0', - android_maven_publish_plugin: '3.6.2', coroutines: '1.6.4', jna: '5.8.0', junit: '4.12', @@ -53,9 +52,6 @@ buildscript { classpath "com.android.tools.build:gradle:$versions.android_gradle_plugin" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$versions.kotlin" - // Publish. - classpath "digital.wup:android-maven-publish:$versions.android_maven_publish_plugin" - classpath "org.mozilla.rust-android-gradle:plugin:$versions.rust_android_plugin" // Yes, this is unusual. We want to access some host-specific @@ -143,7 +139,7 @@ switch (DefaultPlatform.RESOURCE_PREFIX) { ext.rustTargets += ext.nativeRustTarget subprojects { - apply plugin: 'digital.wup.android-maven-publish' + apply plugin: 'maven-publish' // Enable Kotlin warnings as errors for all modules tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { @@ -164,11 +160,11 @@ subprojects { repositories { maven { name = "rootProjectBuildDir" - url "file://${project.rootProject.buildDir}/maven" + url = "file://${project.rootProject.buildDir}/maven" } maven { name = "projectBuildDir" - url "file://${project.buildDir}/maven" + url = "file://${project.buildDir}/maven" } } } From 361d4561029dac02511f10af217235a2d296dc4c Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Tue, 13 Sep 2022 14:29:52 +0200 Subject: [PATCH 21/31] Upgrade to Xcode 14.0.0 CircleCI announcement: https://discuss.circleci.com/t/xcode-14-rc-released/45334 Full software list: https://circle-macos-docs.s3.amazonaws.com/image-manifest/v8770/index.html --- .circleci/config.yml | 32 ++++++++------ .circleci/jazzy.yml | 2 +- CHANGELOG.md | 3 ++ bin/run-ios-build.sh | 2 +- bin/run-ios-sample-app-build.sh | 2 +- bin/run-ios-sample-app-test.sh | 2 +- bin/run-ios-tests.sh | 2 +- .../ios/Glean.xcodeproj/project.pbxproj | 3 +- .../xcshareddata/swiftpm/Package.resolved | 42 +++++++++---------- 9 files changed, 49 insertions(+), 41 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 1e8ca1d70b..700db9a0b5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -462,7 +462,7 @@ jobs: Check Swift formatting: macos: - xcode: "13.2.1" + xcode: "14.0.0" steps: - checkout - run: @@ -478,7 +478,7 @@ jobs: iOS build and test: macos: - xcode: "13.2.1" + xcode: "14.0.0" steps: - checkout - run: @@ -490,23 +490,28 @@ jobs: - setup-rust-toolchain - restore_cache: name: Restore rubygems cache - key: swift-docs-gems-v11 + key: swift-docs-gems-v12 - run: name: Install jazzy command: gem install jazzy - save_cache: name: Save rubygems cache # NEEDS TO CHANGE WHEN JAZZY OR RUBY IS UPDATED - key: swift-docs-gems-v11 + key: swift-docs-gems-v12 paths: - - ~/.gem/ruby/2.7.5 + - ~/.gem/ruby/2.7.6 - run: name: Setup build environment command: | + set -x rustup target add aarch64-apple-ios aarch64-apple-ios-sim x86_64-apple-ios - UDID=$(xcrun xctrace list devices 2>&1 | grep 'iPhone 11 Simulator (14' | awk -F'[()]' '{print $4}') - xcrun simctl boot "$UDID" + # List available devices -- allows us to see what's there + DEVICES=$(xcrun xctrace list devices 2>&1) + echo "$DEVICES" + # Pick a device and start it + UUID=$(echo "$DEVICES" | grep --max-count=1 'iPhone 14 Simulator (16' | awk -F'[()]' '{print $4}') + xcrun simctl boot "$UUID" # Store build type for use in cache key if [ -z "${CIRCLE_TAG}" ]; then echo "debug" > buildtype.txt @@ -574,7 +579,7 @@ jobs: iOS integration test: macos: - xcode: "13.2.1" + xcode: "14.0.0" steps: - checkout - skip-if-doc-only @@ -583,14 +588,15 @@ jobs: - run: name: Setup build environment command: | + set -x rustup target add aarch64-apple-ios aarch64-apple-ios-sim x86_64-apple-ios # List available devices -- allows us to see what's there DEVICES=$(xcrun xctrace list devices 2>&1) echo "$DEVICES" # Pick a device and start it - UDID=$(echo "$DEVICES" | grep 'iPhone 11 Simulator (14' | awk -F'[()]' '{print $4}') - xcrun simctl boot "$UDID" + UUID=$(echo "$DEVICES" | grep --max-count=1 'iPhone 14 Simulator (16' | awk -F'[()]' '{print $4}') + xcrun simctl boot "$UUID" - run: name: Build XCFramework archive command: | @@ -625,7 +631,7 @@ jobs: iOS Framework release: macos: - xcode: "13.2.1" + xcode: "14.0.0" steps: - checkout - attach_workspace: @@ -866,7 +872,7 @@ jobs: pypi-macos-release: macos: - xcode: "13.2.1" + xcode: "14.0.0" steps: - install-rustup - setup-rust-toolchain @@ -898,7 +904,7 @@ jobs: pypi-macos-arm64-release: macos: - xcode: "13.2.1" + xcode: "14.0.0" steps: - install-rustup - setup-rust-toolchain diff --git a/.circleci/jazzy.yml b/.circleci/jazzy.yml index 6a57b40e82..9d61646e36 100644 --- a/.circleci/jazzy.yml +++ b/.circleci/jazzy.yml @@ -10,4 +10,4 @@ xcodebuild_arguments: - "-scheme" - "Glean" - "-destination" - - "platform=iOS Simulator,name=iPhone 11" + - "platform=iOS Simulator,name=iPhone 14" diff --git a/CHANGELOG.md b/CHANGELOG.md index 87a9d844cb..b74610c3ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,9 @@ * Gradle plugin: Fix quoting issue in Python wrapper code ([#2193](https://github.com/mozilla/glean/pull/2193)) * Bumped the required Android NDK to version 25.1.8937393 ([#2195](https://github.com/mozilla/glean/pull/2195)) +* iOS + * Glean for iOS is now being built with Xcode 14.0.0 ([#2188](https://github.com/mozilla/glean/pull/2188)). + # v51.2.0 (2022-09-08) [Full changelog](https://github.com/mozilla/glean/compare/v51.1.0...v51.2.0) diff --git a/bin/run-ios-build.sh b/bin/run-ios-build.sh index 65087fe3c5..9d8fd8d329 100755 --- a/bin/run-ios-build.sh +++ b/bin/run-ios-build.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./glean-core/ios/Glean.xcodeproj/project.xcworkspace \ -scheme Glean \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 11' \ + -destination 'platform=iOS Simulator,name=iPhone 14' \ build | \ tee raw_xcodebuild.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/bin/run-ios-sample-app-build.sh b/bin/run-ios-sample-app-build.sh index a13d30ba6d..22d1a83350 100755 --- a/bin/run-ios-sample-app-build.sh +++ b/bin/run-ios-sample-app-build.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./samples/ios/app/glean-sample-app.xcodeproj/project.xcworkspace \ -scheme glean-sample-app \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 11' \ + -destination 'platform=iOS Simulator,name=iPhone 14' \ build | \ tee raw_sample_xcodebuild.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/bin/run-ios-sample-app-test.sh b/bin/run-ios-sample-app-test.sh index c419f510c3..64b4ed3452 100755 --- a/bin/run-ios-sample-app-test.sh +++ b/bin/run-ios-sample-app-test.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./samples/ios/app/glean-sample-app.xcodeproj/project.xcworkspace \ -scheme glean-sample-app \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 11' \ + -destination 'platform=iOS Simulator,name=iPhone 14' \ test | \ tee raw_sample_xcodetest.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/bin/run-ios-tests.sh b/bin/run-ios-tests.sh index 7ae79b5c38..0913cad9e6 100755 --- a/bin/run-ios-tests.sh +++ b/bin/run-ios-tests.sh @@ -11,7 +11,7 @@ xcodebuild \ -workspace ./glean-core/ios/Glean.xcodeproj/project.xcworkspace \ -scheme Glean \ -sdk iphonesimulator \ - -destination 'platform=iOS Simulator,name=iPhone 11' \ + -destination 'platform=iOS Simulator,name=iPhone 14' \ test | \ tee raw_xcodetest.log | \ xcpretty && exit "${PIPESTATUS[0]}" diff --git a/glean-core/ios/Glean.xcodeproj/project.pbxproj b/glean-core/ios/Glean.xcodeproj/project.pbxproj index 121040f600..769a43521c 100644 --- a/glean-core/ios/Glean.xcodeproj/project.pbxproj +++ b/glean-core/ios/Glean.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 52; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -510,6 +510,7 @@ /* Begin PBXShellScriptBuildPhase section */ BF6F2DA5224BF2E000394062 /* Run Script */ = { isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); diff --git a/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index 05934cd81a..76d8a414b0 100644 --- a/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/glean-core/ios/Glean.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -1,25 +1,23 @@ { - "object": { - "pins" : [ - { - "package": "GzipSwift", - "repositoryURL" : "https://github.com/1024jp/GzipSwift", - "state" : { - "branch": null, - "revision" : "7a7f17761c76a932662ab77028a4329f67d645a4", - "version" : "5.2.0" - } - }, - { - "package" : "OHHTTPStubs", - "repositoryURL" : "https://github.com/alisoftware/OHHTTPStubs", - "state" : { - "branch": null, - "revision" : "12f19662426d0434d6c330c6974d53e2eb10ecd9", - "version" : "9.1.0" - } + "pins" : [ + { + "identity" : "gzipswift", + "kind" : "remoteSourceControl", + "location" : "https://github.com/1024jp/GzipSwift", + "state" : { + "revision" : "7a7f17761c76a932662ab77028a4329f67d645a4", + "version" : "5.2.0" } - ] - }, - "version": 1 + }, + { + "identity" : "ohhttpstubs", + "kind" : "remoteSourceControl", + "location" : "https://github.com/alisoftware/OHHTTPStubs", + "state" : { + "revision" : "12f19662426d0434d6c330c6974d53e2eb10ecd9", + "version" : "9.1.0" + } + } + ], + "version" : 2 } From 8da7d327db57653e4269f38945fc03b880f2a241 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 7 Oct 2022 05:20:44 +0000 Subject: [PATCH 22/31] Bump black from 22.8.0 to 22.10.0 in /glean-core/python Bumps [black](https://github.com/psf/black) from 22.8.0 to 22.10.0. - [Release notes](https://github.com/psf/black/releases) - [Changelog](https://github.com/psf/black/blob/main/CHANGES.md) - [Commits](https://github.com/psf/black/compare/22.8.0...22.10.0) --- updated-dependencies: - dependency-name: black dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- glean-core/python/requirements_dev.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/glean-core/python/requirements_dev.txt b/glean-core/python/requirements_dev.txt index bdb94d3568..19c44de7a8 100644 --- a/glean-core/python/requirements_dev.txt +++ b/glean-core/python/requirements_dev.txt @@ -1,5 +1,5 @@ auditwheel==5.1.2 -black==22.8.0 +black==22.10.0; python_version > '3.6' coverage==6.2 flake8==5.0.4 flake8-bugbear==22.8.23 From b07fbb063f359afedd54da952f6926b817a617b3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Sep 2022 05:04:17 +0000 Subject: [PATCH 23/31] Bump ctor from 0.1.22 to 0.1.23 Bumps [ctor](https://github.com/mmastrac/rust-ctor) from 0.1.22 to 0.1.23. - [Release notes](https://github.com/mmastrac/rust-ctor/releases) - [Commits](https://github.com/mmastrac/rust-ctor/commits) --- updated-dependencies: - dependency-name: ctor dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- Cargo.lock | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 88a898c6b1..75c7493ee4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -263,9 +263,9 @@ dependencies = [ [[package]] name = "ctor" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c" +checksum = "cdffe87e1d521a10f9696f833fe502293ea446d7f256c06128293a4119bdf4cb" dependencies = [ "quote", "syn", @@ -775,18 +775,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.37" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1" +checksum = "7bd7356a8122b6c4a24a82b278680c73357984ca2fc79a0f9fa6dea7dced7c58" dependencies = [ - "unicode-xid", + "unicode-ident", ] [[package]] name = "quote" -version = "1.0.18" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1" +checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" dependencies = [ "proc-macro2", ] @@ -945,13 +945,13 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "syn" -version = "1.0.92" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ff7c592601f11445996a06f8ad0c27f094a58857c2f89e97974ab9235b92c52" +checksum = "e90cde112c4b9690b8cbe810cba9ddd8bc1d7472e2cae317b69e9438c1cba7d2" dependencies = [ "proc-macro2", "quote", - "unicode-xid", + "unicode-ident", ] [[package]] @@ -1058,6 +1058,12 @@ version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" +[[package]] +name = "unicode-ident" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd" + [[package]] name = "unicode-linebreak" version = "0.1.2" @@ -1082,12 +1088,6 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" -[[package]] -name = "unicode-xid" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04" - [[package]] name = "uniffi" version = "0.20.0" From 2068d73511db0acc8935ecdb9fbd1da16fb477e1 Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Tue, 11 Oct 2022 15:12:21 +0200 Subject: [PATCH 24/31] Allow Unicode-DFS-2016 Compatible with the MPL --- deny.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/deny.toml b/deny.toml index ce0d008fe3..6422df45ef 100644 --- a/deny.toml +++ b/deny.toml @@ -8,4 +8,5 @@ allow = [ "BSD-2-Clause", "BSD-3-Clause", "Zlib", + "Unicode-DFS-2016", ] From f3987dbbce7f0f308e3554a1c19d0b6442686374 Mon Sep 17 00:00:00 2001 From: Ryan VanderMeulen Date: Tue, 11 Oct 2022 09:20:09 -0400 Subject: [PATCH 25/31] Syncronize AndroidX dependencies with AC --- build.gradle | 4 ++-- glean-core/android/build.gradle | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index ad95629f45..e565ce9eb3 100644 --- a/build.gradle +++ b/build.gradle @@ -25,10 +25,10 @@ buildscript { androidx_annotation: '1.1.0', androidx_appcompat: '1.3.0', androidx_browser: '1.3.0', - androidx_core: '1.3.0', + androidx_core: '1.8.0', androidx_espresso: '3.3.0', androidx_junit: '1.1.3', - androidx_lifecycle_extensions: '2.2.0', + androidx_lifecycle: '2.5.1', androidx_test: '1.4.0', androidx_work: '2.7.1', androidx_uiautomator: '2.2.0', diff --git a/glean-core/android/build.gradle b/glean-core/android/build.gradle index 1dab2f0e53..ceb76950ad 100644 --- a/glean-core/android/build.gradle +++ b/glean-core/android/build.gradle @@ -158,8 +158,8 @@ dependencies { implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$versions.coroutines" implementation "androidx.annotation:annotation:$versions.androidx_annotation" - implementation "androidx.lifecycle:lifecycle-extensions:$versions.androidx_lifecycle_extensions" - implementation "androidx.lifecycle:lifecycle-common:$versions.androidx_lifecycle_extensions" + implementation "androidx.lifecycle:lifecycle-common:$versions.androidx_lifecycle" + implementation "androidx.lifecycle:lifecycle-process:$versions.androidx_lifecycle" implementation "androidx.work:work-runtime-ktx:$versions.androidx_work" // We need a compileOnly dependency on the following block of testing @@ -182,7 +182,7 @@ dependencies { testImplementation "androidx.test.ext:junit:$versions.androidx_junit" testImplementation "org.robolectric:robolectric:$versions.robolectric" testImplementation "org.mockito:mockito-core:$versions.mockito" - testImplementation "androidx.test:core-ktx:$versions.androidx_core" + testImplementation "androidx.test:core-ktx:$versions.androidx_test" testImplementation "com.squareup.okhttp3:mockwebserver:$versions.mockwebserver" testImplementation "androidx.work:work-testing:$versions.androidx_work" From c01ada9bd41979a8c9f6b6e54ad51309567d498b Mon Sep 17 00:00:00 2001 From: Ryan VanderMeulen Date: Mon, 17 Oct 2022 03:08:39 -0400 Subject: [PATCH 26/31] Bump jna to 5.12.1 (#2221) AC and A-S have already picked up this change, let's keep Glean in sync as well. --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index e565ce9eb3..fbf4f4b41e 100644 --- a/build.gradle +++ b/build.gradle @@ -13,7 +13,7 @@ buildscript { ext.versions = [ android_gradle_plugin: '7.3.0', coroutines: '1.6.4', - jna: '5.8.0', + jna: '5.12.1', junit: '4.12', mockito: '3.11.2', mockwebserver: '4.9.1', // This is different than a-c, but we're fine, it's only tests. From c69ed251ec4436eb72c147cd84b88eeb5a0f496a Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Mon, 17 Oct 2022 11:41:12 +0200 Subject: [PATCH 27/31] Revert "Kotlin: Upgrade to NDK r25" This reverts commit d2530de32fe48bf72933d50c3a69a75d32ca521d. --- .circleci/config.yml | 2 +- CHANGELOG.md | 3 +++ build.gradle | 2 +- docs/dev/android/sdk-ndk-versions.md | 6 +++--- docs/dev/android/setup-android-build-environment.md | 6 +++--- taskcluster/docker/linux/Dockerfile | 2 +- 6 files changed, 12 insertions(+), 9 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 700db9a0b5..c3528cb96e 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -100,7 +100,7 @@ commands: command: | sdkmanager \ "build-tools;33.0.0" \ - "ndk;25.1.8937393" + "ndk;21.3.6528147" android-setup: steps: diff --git a/CHANGELOG.md b/CHANGELOG.md index b74610c3ae..c95d550418 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ [Full changelog](https://github.com/mozilla/glean/compare/v51.4.0...main) +* Kotlin + * Downgrade Android NDK to r21 to mitigate a crash on `x86(_64)` ([#2227](https://github.com/mozilla/glean/pull/2227), [bug 1791842](https://bugzilla.mozilla.org/show_bug.cgi?id=1791842)) + # v51.4.0 (2022-10-04) [Full changelog](https://github.com/mozilla/glean/compare/v51.3.0...v51.4.0) diff --git a/build.gradle b/build.gradle index fbf4f4b41e..32ae795131 100644 --- a/build.gradle +++ b/build.gradle @@ -35,7 +35,7 @@ buildscript { ] ext.build = [ - ndkVersion: "25.1.8937393", // Keep it in sync in TC Dockerfile. + ndkVersion: "21.3.6528147", // Keep it in sync in TC Dockerfile. compileSdkVersion: 32, targetSdkVersion: 32, minSdkVersion: 21, // So that we can publish for aarch64. diff --git a/docs/dev/android/sdk-ndk-versions.md b/docs/dev/android/sdk-ndk-versions.md index 8cfdbe8fdb..7e79b4c02f 100644 --- a/docs/dev/android/sdk-ndk-versions.md +++ b/docs/dev/android/sdk-ndk-versions.md @@ -7,8 +7,8 @@ The Glean SDK implementation is currently build against the following versions: * or install with: `sdkmanager --verbose "platforms;android-32"` * Android Command line tools * Download link: -* NDK r25 - * Download link: +* NDK r21 + * Download link: For the full setup see [Setup the Android Build Environment](setup-android-build-environment.html). @@ -26,4 +26,4 @@ All locations need to be updated on upgrades: * `ENV ANDROID_BUILD_TOOLS "33.0.0"` * `ENV ANDROID_SDK_VERSION "8512546"` * `ENV ANDROID_PLATFORM_VERSION "32"` - * `ENV ANDROID_NDK_VERSION "25.1.8937393"` + * `ENV ANDROID_NDK_VERSION "21.3.6528147"` diff --git a/docs/dev/android/setup-android-build-environment.md b/docs/dev/android/setup-android-build-environment.md index 5453561617..be2d133a67 100644 --- a/docs/dev/android/setup-android-build-environment.md +++ b/docs/dev/android/setup-android-build-environment.md @@ -45,11 +45,11 @@ sdk.dir=/path/to/sdk For the Android NDK ([check here for the version requirements](sdk-ndk-versions.md)): -1. Download NDK from . -2. Extract it and put it somewhere (`$HOME/.android-ndk-r25` is a reasonable choice, but it doesn't matter). +1. Download NDK r21 from . +2. Extract it and put it somewhere (`$HOME/.android-ndk-r21` is a reasonable choice, but it doesn't matter). 3. Add the following line to the `local.properties` file in the root of the Glean checkout (create the file if it does not exist): ``` - ndk.dir=/path/to/.android-ndk-r25 + ndk.dir=/path/to/.android-ndk-r21 ``` ### Setting up Rust diff --git a/taskcluster/docker/linux/Dockerfile b/taskcluster/docker/linux/Dockerfile index 66de960cd7..08a0b758e4 100644 --- a/taskcluster/docker/linux/Dockerfile +++ b/taskcluster/docker/linux/Dockerfile @@ -25,7 +25,7 @@ WORKDIR /builds/worker/ ENV ANDROID_BUILD_TOOLS "33.0.0" ENV ANDROID_TOOLS_VERSION "8512546" ENV ANDROID_PLATFORM_VERSION "32" -ENV ANDROID_NDK_VERSION "25.1.8937393" +ENV ANDROID_NDK_VERSION "21.3.6528147" # Set up the language variables to avoid problems (we run locale-gen later). ENV LANG en_US.UTF-8 From b90147101eed635d1fc25a90e2f0b7985fc575c3 Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Tue, 18 Oct 2022 12:07:41 +0200 Subject: [PATCH 28/31] Revert "Revert "Kotlin: Upgrade to NDK r25"" This reverts commit c69ed251ec4436eb72c147cd84b88eeb5a0f496a. This might not have been the issue afterall. --- .circleci/config.yml | 2 +- CHANGELOG.md | 3 --- build.gradle | 2 +- docs/dev/android/sdk-ndk-versions.md | 6 +++--- docs/dev/android/setup-android-build-environment.md | 6 +++--- taskcluster/docker/linux/Dockerfile | 2 +- 6 files changed, 9 insertions(+), 12 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c3528cb96e..700db9a0b5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -100,7 +100,7 @@ commands: command: | sdkmanager \ "build-tools;33.0.0" \ - "ndk;21.3.6528147" + "ndk;25.1.8937393" android-setup: steps: diff --git a/CHANGELOG.md b/CHANGELOG.md index c95d550418..b74610c3ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,6 @@ [Full changelog](https://github.com/mozilla/glean/compare/v51.4.0...main) -* Kotlin - * Downgrade Android NDK to r21 to mitigate a crash on `x86(_64)` ([#2227](https://github.com/mozilla/glean/pull/2227), [bug 1791842](https://bugzilla.mozilla.org/show_bug.cgi?id=1791842)) - # v51.4.0 (2022-10-04) [Full changelog](https://github.com/mozilla/glean/compare/v51.3.0...v51.4.0) diff --git a/build.gradle b/build.gradle index 32ae795131..fbf4f4b41e 100644 --- a/build.gradle +++ b/build.gradle @@ -35,7 +35,7 @@ buildscript { ] ext.build = [ - ndkVersion: "21.3.6528147", // Keep it in sync in TC Dockerfile. + ndkVersion: "25.1.8937393", // Keep it in sync in TC Dockerfile. compileSdkVersion: 32, targetSdkVersion: 32, minSdkVersion: 21, // So that we can publish for aarch64. diff --git a/docs/dev/android/sdk-ndk-versions.md b/docs/dev/android/sdk-ndk-versions.md index 7e79b4c02f..8cfdbe8fdb 100644 --- a/docs/dev/android/sdk-ndk-versions.md +++ b/docs/dev/android/sdk-ndk-versions.md @@ -7,8 +7,8 @@ The Glean SDK implementation is currently build against the following versions: * or install with: `sdkmanager --verbose "platforms;android-32"` * Android Command line tools * Download link: -* NDK r21 - * Download link: +* NDK r25 + * Download link: For the full setup see [Setup the Android Build Environment](setup-android-build-environment.html). @@ -26,4 +26,4 @@ All locations need to be updated on upgrades: * `ENV ANDROID_BUILD_TOOLS "33.0.0"` * `ENV ANDROID_SDK_VERSION "8512546"` * `ENV ANDROID_PLATFORM_VERSION "32"` - * `ENV ANDROID_NDK_VERSION "21.3.6528147"` + * `ENV ANDROID_NDK_VERSION "25.1.8937393"` diff --git a/docs/dev/android/setup-android-build-environment.md b/docs/dev/android/setup-android-build-environment.md index be2d133a67..5453561617 100644 --- a/docs/dev/android/setup-android-build-environment.md +++ b/docs/dev/android/setup-android-build-environment.md @@ -45,11 +45,11 @@ sdk.dir=/path/to/sdk For the Android NDK ([check here for the version requirements](sdk-ndk-versions.md)): -1. Download NDK r21 from . -2. Extract it and put it somewhere (`$HOME/.android-ndk-r21` is a reasonable choice, but it doesn't matter). +1. Download NDK from . +2. Extract it and put it somewhere (`$HOME/.android-ndk-r25` is a reasonable choice, but it doesn't matter). 3. Add the following line to the `local.properties` file in the root of the Glean checkout (create the file if it does not exist): ``` - ndk.dir=/path/to/.android-ndk-r21 + ndk.dir=/path/to/.android-ndk-r25 ``` ### Setting up Rust diff --git a/taskcluster/docker/linux/Dockerfile b/taskcluster/docker/linux/Dockerfile index 08a0b758e4..66de960cd7 100644 --- a/taskcluster/docker/linux/Dockerfile +++ b/taskcluster/docker/linux/Dockerfile @@ -25,7 +25,7 @@ WORKDIR /builds/worker/ ENV ANDROID_BUILD_TOOLS "33.0.0" ENV ANDROID_TOOLS_VERSION "8512546" ENV ANDROID_PLATFORM_VERSION "32" -ENV ANDROID_NDK_VERSION "21.3.6528147" +ENV ANDROID_NDK_VERSION "25.1.8937393" # Set up the language variables to avoid problems (we run locale-gen later). ENV LANG en_US.UTF-8 From c32e1f3b31c9c4f0301eb3fcc95b18324bb24486 Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Tue, 18 Oct 2022 16:02:07 +0200 Subject: [PATCH 29/31] Upgrade to UniFFI 0.21.0 --- Cargo.lock | 143 +++++++++++++---------- glean-core/Cargo.toml | 6 +- tools/embedded-uniffi-bindgen/Cargo.toml | 2 +- 3 files changed, 86 insertions(+), 65 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 75c7493ee4..02415372c1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8,11 +8,22 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "ahash" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + [[package]] name = "aho-corasick" -version = "0.7.18" +version = "0.7.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" +checksum = "b4f55bd91a0978cbfd91c457a164bab8b4001c833b7f323132c0a4e1922dd44e" dependencies = [ "memchr", ] @@ -37,9 +48,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.64" +version = "1.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9a8f622bcf6ff3df478e9deba3e03e4e04b300f8e6a139e192c05fa3490afc7" +checksum = "98161a4e3e2184da77bb14f02184cdd111e83bbbcc9979dfee3c44b9a85f5602" [[package]] name = "arrayref" @@ -138,9 +149,9 @@ checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" [[package]] name = "camino" -version = "1.0.9" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "869119e97797867fd90f5e22af7d0bd274bd4635ebb9eb68c04f3f513ae6c412" +checksum = "88ad0e1e3e88dd237a156ab9f571021b8a158caa0ae44b1968a241efb5144c1e" dependencies = [ "serde", ] @@ -195,16 +206,16 @@ dependencies = [ [[package]] name = "clap" -version = "3.1.15" +version = "3.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85a35a599b11c089a7f49105658d089b8f2cf0882993c17daf6de15285c2c35d" +checksum = "86447ad904c7fb335a790c9d7fe3d0d971dc523b8ccd1561a520de9a85302750" dependencies = [ "atty", "bitflags", "clap_derive", "clap_lex", "indexmap", - "lazy_static", + "once_cell", "strsim", "termcolor", "textwrap", @@ -212,9 +223,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "3.1.7" +version = "3.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1" +checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65" dependencies = [ "heck", "proc-macro-error", @@ -225,9 +236,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.2.0" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a37c35f1112dad5e6e0b1adaff798507497a18fceeb30cceb3bae7d1427b9213" +checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" dependencies = [ "os_str_bytes", ] @@ -338,19 +349,19 @@ dependencies = [ [[package]] name = "fs-err" -version = "2.7.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bd79fa345a495d3ae89fb7165fec01c0e72f41821d642dda363a1e97975652e" +checksum = "64db3e262960f0662f43a6366788d5f10f7f244b8f7d7d987f560baf5ded5c50" [[package]] name = "getrandom" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad" +checksum = "4eb1a864a501629691edf6c15a593b7a51eebaa1e8468e9ddc623de7c9b58ec6" dependencies = [ "cfg-if", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", ] [[package]] @@ -438,9 +449,12 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.11.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash", +] [[package]] name = "heck" @@ -482,9 +496,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.8.1" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee" +checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" dependencies = [ "autocfg", "hashbrown", @@ -536,9 +550,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.1" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" +checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc" [[package]] name = "json-pointer" @@ -575,9 +589,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.125" +version = "0.2.135" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b" +checksum = "68783febc7782c6c5cb401fbda4de5a9898be1762314da0bb2c10ced61f18b0c" [[package]] name = "lmdb-rkv" @@ -710,9 +724,9 @@ dependencies = [ [[package]] name = "os_str_bytes" -version = "6.0.0" +version = "6.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64" +checksum = "9ff7415e9ae3fff1225851df9e0d9e4e5479f947619774677a63572e55e80eff" [[package]] name = "oslog" @@ -727,9 +741,9 @@ dependencies = [ [[package]] name = "paste" -version = "1.0.7" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc" +checksum = "b1de2e551fb905ac83f73f7aedf2f0cb4a0da7e35efa24a202a936269f1f18e1" [[package]] name = "percent-encoding" @@ -775,9 +789,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.44" +version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bd7356a8122b6c4a24a82b278680c73357984ca2fc79a0f9fa6dea7dced7c58" +checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725" dependencies = [ "unicode-ident", ] @@ -851,9 +865,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.9" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f" +checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09" [[package]] name = "sample" @@ -896,18 +910,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.137" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1" +checksum = "728eb6351430bccb993660dfffc5a72f91ccc1295abaa8ce19b27ebe4f75568b" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.137" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be" +checksum = "81fa1584d3d1bcacd84c277a0dfe21f5b0f6accf4a23d04d4c6d61f1af522b4c" dependencies = [ "proc-macro2", "quote", @@ -916,9 +930,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.81" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c" +checksum = "41feea4228a6f1cd09ec7a3593a682276702cd67b5273544757dae23c096f074" dependencies = [ "itoa", "ryu", @@ -945,9 +959,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "syn" -version = "1.0.101" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e90cde112c4b9690b8cbe810cba9ddd8bc1d7472e2cae317b69e9438c1cba7d2" +checksum = "3fcd952facd492f9be3ef0d0b7032a6e442ee9b361d4acc2b1d0c4aaa5f613a1" dependencies = [ "proc-macro2", "quote", @@ -979,9 +993,9 @@ dependencies = [ [[package]] name = "textwrap" -version = "0.15.0" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb" +checksum = "949517c0cf1bf4ee812e2e07e08ab448e3ae0d23472aee8a06c985f0c8815b16" dependencies = [ "smawk", "unicode-linebreak", @@ -1015,7 +1029,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" dependencies = [ "libc", - "wasi", + "wasi 0.10.0+wasi-snapshot-preview1", "winapi", ] @@ -1060,16 +1074,17 @@ checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" [[package]] name = "unicode-ident" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcc811dc4066ac62f84f11307873c4850cb653bfa9b1719cee2bd2204a4bc5dd" +checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3" [[package]] name = "unicode-linebreak" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a52dcaab0c48d931f7cc8ef826fa51690a08e1ea55117ef26f89864f532383f" +checksum = "c5faade31a542b8b35855fff6e8def199853b2da8da256da52f52f1316ee3137" dependencies = [ + "hashbrown", "regex", ] @@ -1084,15 +1099,15 @@ dependencies = [ [[package]] name = "unicode-width" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" +checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b" [[package]] name = "uniffi" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ff9d73a665e4e94d566f069fc0c6b92d13fc7de25ae128dd20402023884b551" +checksum = "f54af5ada67d1173457a99a7bb44a7917f63e7466764cb4714865c7a6678b830" dependencies = [ "anyhow", "bytes", @@ -1107,9 +1122,9 @@ dependencies = [ [[package]] name = "uniffi_bindgen" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "195251b1b0dbb221759ea4d79e3090e5c08a60fc4040c9e945b255def155ea90" +checksum = "12cc4af3c0180c7e86c4a3acf2b6587af04ba2567b1e948993df10f421796621" dependencies = [ "anyhow", "askama", @@ -1130,9 +1145,9 @@ dependencies = [ [[package]] name = "uniffi_build" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74b65ae1c0bac70369bb0d9df6fae578b1ca130bf4cb6203e2636e2d6969dba5" +checksum = "510287c368a9386eb731ebe824a6fc6c82a105e20d020af1aa20519c1c1561db" dependencies = [ "anyhow", "camino", @@ -1141,9 +1156,9 @@ dependencies = [ [[package]] name = "uniffi_macros" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5efddfb993c5b394a75042c0d144665388af2ad3db628401ab8f4fb6f6d07e54" +checksum = "5c8604503caa2cbcf271578dc51ca236d40e3b22e1514ffa2e638e2c39f6ad10" dependencies = [ "bincode", "camino", @@ -1160,9 +1175,9 @@ dependencies = [ [[package]] name = "uniffi_meta" -version = "0.20.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe1767e693cbd11fc22c37a4033d82eb9d891c3862e45329b4a891c1d8395df5" +checksum = "cd9417cc653937681436b93838d8c5f97a5b8c58697813982ee8810bd1dc3b57" dependencies = [ "serde", ] @@ -1200,6 +1215,12 @@ version = "0.10.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + [[package]] name = "weedle2" version = "4.0.0" diff --git a/glean-core/Cargo.toml b/glean-core/Cargo.toml index c0a2da1223..9691663e44 100644 --- a/glean-core/Cargo.toml +++ b/glean-core/Cargo.toml @@ -40,8 +40,8 @@ zeitstempel = "0.1.0" crossbeam-channel = "0.5" thiserror = "1.0.4" whatsys = "0.1.2" -uniffi = "0.20.0" -uniffi_macros = "0.20.0" +uniffi = "0.21.0" +uniffi_macros = "0.21.0" time = "0.1.40" [target.'cfg(target_os = "android")'.dependencies] @@ -60,4 +60,4 @@ iso8601 = "0.4" ctor = "0.1.12" [build-dependencies] -uniffi_build = { version = "0.20.0", features = ["builtin-bindgen"] } +uniffi_build = { version = "0.21.0", features = ["builtin-bindgen"] } diff --git a/tools/embedded-uniffi-bindgen/Cargo.toml b/tools/embedded-uniffi-bindgen/Cargo.toml index 28a114d86a..138e16fc41 100644 --- a/tools/embedded-uniffi-bindgen/Cargo.toml +++ b/tools/embedded-uniffi-bindgen/Cargo.toml @@ -8,4 +8,4 @@ publish = false [dependencies] anyhow = "1" -uniffi_bindgen = "0.20.0" +uniffi_bindgen = "0.21.0" From b2f396fba70c2f1d8024009e88c304686bd8cc33 Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Tue, 18 Oct 2022 16:06:24 +0200 Subject: [PATCH 30/31] Document pending changes for next release --- .dictionary | 3 ++- CHANGELOG.md | 13 +++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/.dictionary b/.dictionary index a246d1a990..5c873e9cc3 100644 --- a/.dictionary +++ b/.dictionary @@ -1,10 +1,11 @@ -personal_ws-1.1 en 251 utf-8 +personal_ws-1.1 en 252 utf-8 AAR AARs ABI API's APIs APK +AndroidX AppServices BUGFIX Bool diff --git a/CHANGELOG.md b/CHANGELOG.md index b74610c3ae..d390cde62e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,13 +2,21 @@ [Full changelog](https://github.com/mozilla/glean/compare/v51.4.0...main) +* General + * Add `count` to `DistributionData` payload ([#2196](https://github.com/mozilla/glean/pull/2196)) + * Update to UniFFI 0.21.0 ([#2229](https://github.com/mozilla/glean/pull/2229)) +* Android + * Synchronize AndroidX dependencies with AC ([#2219](https://github.com/mozilla/glean/pull/2219)) + * Bump `jna` to 5.12.1 #2221 ([#2221](https://github.com/mozilla/glean/pull/2221)) +* iOS + * Glean for iOS is now being built with Xcode 14.0 ([#2188](https://github.com/mozilla/glean/pull/2188)) + # v51.4.0 (2022-10-04) [Full changelog](https://github.com/mozilla/glean/compare/v51.3.0...v51.4.0) * Kotlin * Update Kotlin and Android Gradle Plugin to the latest releases ([#2211](https://github.com/mozilla/glean/pull/2211)) - * Swift * Fix for iOS startup crash caused by Glean ([#2206](https://github.com/mozilla/glean/pull/2206)) @@ -22,9 +30,6 @@ * Gradle plugin: Fix quoting issue in Python wrapper code ([#2193](https://github.com/mozilla/glean/pull/2193)) * Bumped the required Android NDK to version 25.1.8937393 ([#2195](https://github.com/mozilla/glean/pull/2195)) -* iOS - * Glean for iOS is now being built with Xcode 14.0.0 ([#2188](https://github.com/mozilla/glean/pull/2188)). - # v51.2.0 (2022-09-08) [Full changelog](https://github.com/mozilla/glean/compare/v51.1.0...v51.2.0) From c754562cad282cad7af69992c612b3953443af5a Mon Sep 17 00:00:00 2001 From: Jan-Erik Rediger Date: Tue, 18 Oct 2022 17:08:10 +0200 Subject: [PATCH 31/31] Bumped version to 51.5.0 --- .buildconfig.yml | 2 +- CHANGELOG.md | 6 +- Cargo.lock | 4 +- DEPENDENCIES.md | 99 ++++++++++++------- about.toml | 1 + glean-core/Cargo.toml | 2 +- .../android-native/dependency-licenses.xml | 15 +-- glean-core/android/dependency-licenses.xml | 15 +-- glean-core/python/setup.py | 2 +- glean-core/rlb/Cargo.toml | 4 +- .../GleanGradlePlugin.groovy | 2 +- 11 files changed, 98 insertions(+), 54 deletions(-) diff --git a/.buildconfig.yml b/.buildconfig.yml index 75dcbe222d..80ebeef28c 100644 --- a/.buildconfig.yml +++ b/.buildconfig.yml @@ -1,4 +1,4 @@ -libraryVersion: 51.4.0 +libraryVersion: 51.5.0 groupId: org.mozilla.telemetry projects: glean: diff --git a/CHANGELOG.md b/CHANGELOG.md index d390cde62e..4332ef338d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,10 @@ # Unreleased changes -[Full changelog](https://github.com/mozilla/glean/compare/v51.4.0...main) +[Full changelog](https://github.com/mozilla/glean/compare/v51.5.0...main) + +# v51.5.0 (2022-10-18) + +[Full changelog](https://github.com/mozilla/glean/compare/v51.4.0...v51.5.0) * General * Add `count` to `DistributionData` payload ([#2196](https://github.com/mozilla/glean/pull/2196)) diff --git a/Cargo.lock b/Cargo.lock index 02415372c1..ec4f5d273e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -366,7 +366,7 @@ dependencies = [ [[package]] name = "glean" -version = "51.4.0" +version = "51.5.0" dependencies = [ "chrono", "crossbeam-channel", @@ -409,7 +409,7 @@ dependencies = [ [[package]] name = "glean-core" -version = "51.4.0" +version = "51.5.0" dependencies = [ "android_logger", "bincode", diff --git a/DEPENDENCIES.md b/DEPENDENCIES.md index e31eece0e1..19686d8c91 100644 --- a/DEPENDENCIES.md +++ b/DEPENDENCIES.md @@ -8,6 +8,7 @@ the details of which are reproduced below. * [MIT License](#MIT) * [Mozilla Public License 2.0](#MPL-2.0) * [BSD 2-Clause "Simplified" License](#BSD-2-Clause) +* [Unicode License Agreement - Data Files and Software (2016)](#Unicode-DFS-2016) ------------- ## Apache License 2.0 @@ -839,12 +840,12 @@ The following text applies to code linked from these dependencies: The following text applies to code linked from these dependencies: -* [clap 3.1.15]( https://github.com/clap-rs/clap ) -* [clap_derive 3.1.7]( https://github.com/clap-rs/clap/tree/master/clap_derive ) -* [clap_lex 0.2.0]( https://github.com/clap-rs/clap/tree/master/clap_lex ) -* [os_str_bytes 6.0.0]( https://github.com/dylni/os_str_bytes ) -* [ryu 1.0.9]( https://github.com/dtolnay/ryu ) -* [unicode-linebreak 0.1.2]( https://github.com/axelf4/unicode-linebreak ) +* [clap 3.2.22]( https://github.com/clap-rs/clap ) +* [clap_derive 3.2.18]( https://github.com/clap-rs/clap/tree/master/clap_derive ) +* [clap_lex 0.2.4]( https://github.com/clap-rs/clap/tree/master/clap_lex ) +* [os_str_bytes 6.3.0]( https://github.com/dylni/os_str_bytes ) +* [ryu 1.0.11]( https://github.com/dtolnay/ryu ) +* [unicode-linebreak 0.1.4]( https://github.com/axelf4/unicode-linebreak ) ``` Apache License @@ -1479,7 +1480,7 @@ The following text applies to code linked from these dependencies: The following text applies to code linked from these dependencies: -* [libc 0.2.125]( https://github.com/rust-lang/libc ) +* [libc 0.2.135]( https://github.com/rust-lang/libc ) ``` Apache License @@ -2089,9 +2090,10 @@ limitations under the License. The following text applies to code linked from these dependencies: -* [anyhow 1.0.64]( https://github.com/dtolnay/anyhow ) +* [ahash 0.7.6]( https://github.com/tkaitchuck/ahash ) +* [anyhow 1.0.65]( https://github.com/dtolnay/anyhow ) * [bitflags 1.3.2]( https://github.com/bitflags/bitflags ) -* [camino 1.0.9]( https://github.com/camino-rs/camino ) +* [camino 1.1.1]( https://github.com/camino-rs/camino ) * [cfg-if 1.0.0]( https://github.com/alexcrichton/cfg-if ) * [crossbeam-channel 0.5.6]( https://github.com/crossbeam-rs/crossbeam ) * [crossbeam-utils 0.8.8]( https://github.com/crossbeam-rs/crossbeam ) @@ -2099,29 +2101,29 @@ The following text applies to code linked from these dependencies: * [fastrand 1.7.0]( https://github.com/smol-rs/fastrand ) * [flate2 1.0.24]( https://github.com/rust-lang/flate2-rs ) * [form_urlencoded 1.0.1]( https://github.com/servo/rust-url ) -* [hashbrown 0.11.2]( https://github.com/rust-lang/hashbrown ) +* [hashbrown 0.12.3]( https://github.com/rust-lang/hashbrown ) * [heck 0.4.0]( https://github.com/withoutboats/heck ) * [id-arena 2.2.1]( https://github.com/fitzgen/id-arena ) * [idna 0.2.3]( https://github.com/servo/rust-url/ ) -* [indexmap 1.8.1]( https://github.com/bluss/indexmap ) +* [indexmap 1.9.1]( https://github.com/bluss/indexmap ) * [inherent 1.0.1]( https://github.com/dtolnay/inherent ) -* [itoa 1.0.1]( https://github.com/dtolnay/itoa ) +* [itoa 1.0.4]( https://github.com/dtolnay/itoa ) * [lazy_static 1.4.0]( https://github.com/rust-lang-nursery/lazy-static.rs ) * [mime 0.3.16]( https://github.com/hyperium/mime ) * [num-integer 0.1.45]( https://github.com/rust-num/num-integer ) * [num-traits 0.2.15]( https://github.com/rust-num/num-traits ) * [num_cpus 1.13.1]( https://github.com/seanmonstar/num_cpus ) * [once_cell 1.15.0]( https://github.com/matklad/once_cell ) -* [paste 1.0.7]( https://github.com/dtolnay/paste ) +* [paste 1.0.9]( https://github.com/dtolnay/paste ) * [percent-encoding 2.1.0]( https://github.com/servo/rust-url/ ) * [plain 0.2.3]( https://github.com/randomites/plain ) -* [proc-macro2 1.0.37]( https://github.com/dtolnay/proc-macro2 ) -* [quote 1.0.18]( https://github.com/dtolnay/quote ) +* [proc-macro2 1.0.47]( https://github.com/dtolnay/proc-macro2 ) +* [quote 1.0.21]( https://github.com/dtolnay/quote ) * [semver 1.0.10]( https://github.com/dtolnay/semver ) -* [serde 1.0.137]( https://github.com/serde-rs/serde ) -* [serde_derive 1.0.137]( https://github.com/serde-rs/serde ) -* [serde_json 1.0.81]( https://github.com/serde-rs/json ) -* [syn 1.0.92]( https://github.com/dtolnay/syn ) +* [serde 1.0.145]( https://github.com/serde-rs/serde ) +* [serde_derive 1.0.145]( https://github.com/serde-rs/serde ) +* [serde_json 1.0.86]( https://github.com/serde-rs/json ) +* [syn 1.0.102]( https://github.com/dtolnay/syn ) * [tempfile 3.3.0]( https://github.com/Stebalien/tempfile ) * [thiserror 1.0.31]( https://github.com/dtolnay/thiserror ) * [thiserror-impl 1.0.31]( https://github.com/dtolnay/thiserror ) @@ -2129,9 +2131,9 @@ The following text applies to code linked from these dependencies: * [toml 0.5.9]( https://github.com/alexcrichton/toml-rs ) * [unicase 2.6.0]( https://github.com/seanmonstar/unicase ) * [unicode-bidi 0.3.8]( https://github.com/servo/unicode-bidi ) +* [unicode-ident 1.0.5]( https://github.com/dtolnay/unicode-ident ) * [unicode-normalization 0.1.19]( https://github.com/unicode-rs/unicode-normalization ) -* [unicode-width 0.1.9]( https://github.com/unicode-rs/unicode-width ) -* [unicode-xid 0.2.3]( https://github.com/unicode-rs/unicode-xid ) +* [unicode-width 0.1.10]( https://github.com/unicode-rs/unicode-width ) * [url 2.2.2]( https://github.com/servo/rust-url ) ``` @@ -2765,7 +2767,7 @@ limitations under the License. The following text applies to code linked from these dependencies: -* [getrandom 0.2.6]( https://github.com/rust-random/getrandom ) +* [getrandom 0.2.7]( https://github.com/rust-random/getrandom ) ``` Apache License @@ -3399,7 +3401,7 @@ limitations under the License. The following text applies to code linked from these dependencies: -* [fs-err 2.7.0]( https://github.com/andrewhickman/fs-err ) +* [fs-err 2.8.1]( https://github.com/andrewhickman/fs-err ) * [log 0.4.17]( https://github.com/rust-lang/log ) * [uuid 0.8.2]( https://github.com/uuid-rs/uuid ) @@ -4339,8 +4341,7 @@ limitations under the License. The following text applies to code linked from these dependencies: * [unicode-normalization 0.1.19]( https://github.com/unicode-rs/unicode-normalization ) -* [unicode-width 0.1.9]( https://github.com/unicode-rs/unicode-width ) -* [unicode-xid 0.2.3]( https://github.com/unicode-rs/unicode-xid ) +* [unicode-width 0.1.10]( https://github.com/unicode-rs/unicode-width ) ``` Licensed under the Apache License, Version 2.0 @@ -4584,7 +4585,7 @@ DEALINGS IN THE SOFTWARE. The following text applies to code linked from these dependencies: -* [textwrap 0.15.0]( https://github.com/mgeisler/textwrap ) +* [textwrap 0.15.1]( https://github.com/mgeisler/textwrap ) ``` MIT License @@ -5094,11 +5095,11 @@ The following text applies to code linked from these dependencies: * [embedded-uniffi-bindgen 0.1.0]( https://crates.io/crates/embedded-uniffi-bindgen ) * [glean-bundle 1.0.0]( https://github.com/mozilla/glean ) * [glean-bundle-android 1.0.0]( https://github.com/mozilla/glean ) -* [uniffi 0.20.0]( https://github.com/mozilla/uniffi-rs ) -* [uniffi_bindgen 0.20.0]( https://github.com/mozilla/uniffi-rs ) -* [uniffi_build 0.20.0]( https://github.com/mozilla/uniffi-rs ) -* [uniffi_macros 0.20.0]( https://github.com/mozilla/uniffi-rs ) -* [uniffi_meta 0.20.0]( https://github.com/mozilla/uniffi-rs ) +* [uniffi 0.21.0]( https://github.com/mozilla/uniffi-rs ) +* [uniffi_bindgen 0.21.0]( https://github.com/mozilla/uniffi-rs ) +* [uniffi_build 0.21.0]( https://github.com/mozilla/uniffi-rs ) +* [uniffi_macros 0.21.0]( https://github.com/mozilla/uniffi-rs ) +* [uniffi_meta 0.21.0]( https://github.com/mozilla/uniffi-rs ) ``` Mozilla Public License Version 2.0 @@ -5252,9 +5253,9 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice The following text applies to code linked from these dependencies: -* [glean 51.4.0]( https://github.com/mozilla/glean ) +* [glean 51.5.0]( https://github.com/mozilla/glean ) * [glean-build 6.1.2]( https://github.com/mozilla/glean ) -* [glean-core 51.4.0]( https://github.com/mozilla/glean ) +* [glean-core 51.5.0]( https://github.com/mozilla/glean ) * [zeitstempel 0.1.1]( https://github.com/badboy/zeitstempel ) ``` @@ -5633,4 +5634,36 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice defined by the Mozilla Public License, v. 2.0. ``` +## Unicode License Agreement - Data Files and Software (2016) + + +The following text applies to code linked from these dependencies: + +* [unicode-ident 1.0.5]( https://github.com/dtolnay/unicode-ident ) + +``` +UNICODE, INC. LICENSE AGREEMENT - DATA FILES AND SOFTWARE + +Unicode Data Files include all data files under the directories http://www.unicode.org/Public/, http://www.unicode.org/reports/, http://www.unicode.org/cldr/data/, http://source.icu-project.org/repos/icu/, and http://www.unicode.org/utility/trac/browser/. + +Unicode Data Files do not include PDF online code charts under the directory http://www.unicode.org/Public/. + +Software includes any source code published in the Unicode Standard or under the directories http://www.unicode.org/Public/, http://www.unicode.org/reports/, http://www.unicode.org/cldr/data/, http://source.icu-project.org/repos/icu/, and http://www.unicode.org/utility/trac/browser/. + +NOTICE TO USER: Carefully read the following legal agreement. BY DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING UNICODE INC.'S DATA FILES ("DATA FILES"), AND/OR SOFTWARE ("SOFTWARE"), YOU UNEQUIVOCALLY ACCEPT, AND AGREE TO BE BOUND BY, ALL OF THE TERMS AND CONDITIONS OF THIS AGREEMENT. IF YOU DO NOT AGREE, DO NOT DOWNLOAD, INSTALL, COPY, DISTRIBUTE OR USE THE DATA FILES OR SOFTWARE. + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 1991-2016 Unicode, Inc. All rights reserved. Distributed under the Terms of Use in http://www.unicode.org/copyright.html. + +Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that either + + (a) this copyright and permission notice appear with all copies of the Data Files or Software, or + (b) this copyright and permission notice appear in associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. + +``` diff --git a/about.toml b/about.toml index 10bc71c087..90c1c261b8 100644 --- a/about.toml +++ b/about.toml @@ -7,6 +7,7 @@ accepted = [ "BSD-3-Clause", "ISC", "Zlib", + "Unicode-DFS-2016", ] # Subset of targets we build for diff --git a/glean-core/Cargo.toml b/glean-core/Cargo.toml index 9691663e44..9da0b2fc88 100644 --- a/glean-core/Cargo.toml +++ b/glean-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "glean-core" -version = "51.4.0" +version = "51.5.0" authors = ["Jan-Erik Rediger ", "The Glean Team "] description = "A modern Telemetry library" repository = "https://github.com/mozilla/glean" diff --git a/glean-core/android-native/dependency-licenses.xml b/glean-core/android-native/dependency-licenses.xml index ba44eadaf1..cfa7d8d34f 100644 --- a/glean-core/android-native/dependency-licenses.xml +++ b/glean-core/android-native/dependency-licenses.xml @@ -60,6 +60,9 @@ the details of which are reproduced below. Apache License 2.0: proc-macro-error-attr https://gitlab.com/CreepySkeleton/proc-macro-error + + Apache License 2.0: ahash + https://github.com/tkaitchuck/ahash Apache License 2.0: anyhow https://github.com/dtolnay/anyhow @@ -180,15 +183,15 @@ the details of which are reproduced below. Apache License 2.0: unicode-bidi https://github.com/servo/unicode-bidi + + Apache License 2.0: unicode-ident + https://github.com/dtolnay/unicode-ident Apache License 2.0: unicode-normalization https://github.com/unicode-rs/unicode-normalization Apache License 2.0: unicode-width https://github.com/unicode-rs/unicode-width - - Apache License 2.0: unicode-xid - https://github.com/unicode-rs/unicode-xid Apache License 2.0: url https://github.com/servo/rust-url @@ -255,9 +258,6 @@ the details of which are reproduced below. Apache License 2.0: unicode-width https://github.com/unicode-rs/unicode-width - - Apache License 2.0: unicode-xid - https://github.com/unicode-rs/unicode-xid BSD 2-Clause "Simplified" License: arrayref https://github.com/droundy/arrayref @@ -381,5 +381,8 @@ the details of which are reproduced below. Mozilla Public License 2.0: zeitstempel https://github.com/badboy/zeitstempel + + Unicode License Agreement - Data Files and Software (2016): unicode-ident + https://github.com/dtolnay/unicode-ident diff --git a/glean-core/android/dependency-licenses.xml b/glean-core/android/dependency-licenses.xml index ba44eadaf1..cfa7d8d34f 100644 --- a/glean-core/android/dependency-licenses.xml +++ b/glean-core/android/dependency-licenses.xml @@ -60,6 +60,9 @@ the details of which are reproduced below. Apache License 2.0: proc-macro-error-attr https://gitlab.com/CreepySkeleton/proc-macro-error + + Apache License 2.0: ahash + https://github.com/tkaitchuck/ahash Apache License 2.0: anyhow https://github.com/dtolnay/anyhow @@ -180,15 +183,15 @@ the details of which are reproduced below. Apache License 2.0: unicode-bidi https://github.com/servo/unicode-bidi + + Apache License 2.0: unicode-ident + https://github.com/dtolnay/unicode-ident Apache License 2.0: unicode-normalization https://github.com/unicode-rs/unicode-normalization Apache License 2.0: unicode-width https://github.com/unicode-rs/unicode-width - - Apache License 2.0: unicode-xid - https://github.com/unicode-rs/unicode-xid Apache License 2.0: url https://github.com/servo/rust-url @@ -255,9 +258,6 @@ the details of which are reproduced below. Apache License 2.0: unicode-width https://github.com/unicode-rs/unicode-width - - Apache License 2.0: unicode-xid - https://github.com/unicode-rs/unicode-xid BSD 2-Clause "Simplified" License: arrayref https://github.com/droundy/arrayref @@ -381,5 +381,8 @@ the details of which are reproduced below. Mozilla Public License 2.0: zeitstempel https://github.com/badboy/zeitstempel + + Unicode License Agreement - Data Files and Software (2016): unicode-ident + https://github.com/dtolnay/unicode-ident diff --git a/glean-core/python/setup.py b/glean-core/python/setup.py index f873da36d2..167b244ca6 100644 --- a/glean-core/python/setup.py +++ b/glean-core/python/setup.py @@ -56,7 +56,7 @@ history = history_file.read() # glean version. Automatically updated by the bin/prepare_release.sh script -version = "51.4.0" +version = "51.5.0" requirements = [ "semver>=2.13.0", diff --git a/glean-core/rlb/Cargo.toml b/glean-core/rlb/Cargo.toml index f7f0279083..095ce33cef 100644 --- a/glean-core/rlb/Cargo.toml +++ b/glean-core/rlb/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "glean" -version = "51.4.0" +version = "51.5.0" authors = ["Jan-Erik Rediger ", "The Glean Team "] description = "Glean SDK Rust language bindings" repository = "https://github.com/mozilla/glean" @@ -22,7 +22,7 @@ maintenance = { status = "actively-developed" } [dependencies.glean-core] path = ".." -version = "51.4.0" +version = "51.5.0" [dependencies] crossbeam-channel = "0.5" diff --git a/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy b/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy index 5ec14d6443..4cde099e06 100644 --- a/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy +++ b/gradle-plugin/src/main/groovy/mozilla/telemetry/glean-gradle-plugin/GleanGradlePlugin.groovy @@ -555,7 +555,7 @@ except: void apply(Project project) { isOffline = project.gradle.startParameter.offline - project.ext.glean_version = "51.4.0" + project.ext.glean_version = "51.5.0" def parserVersion = gleanParserVersion(project) // Print the required glean_parser version to the console. This is