Skip to content

Commit 59a52e8

Browse files
authored
Merge branch 'main' into fix/usage_reporting_first_seen_duplicates
2 parents bb35fd9 + f6220f1 commit 59a52e8

File tree

97 files changed

+4154
-221
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+4154
-221
lines changed

.pre-commit-config.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,12 @@ repos:
4949
entry: ./bqetl
5050
args: [format, --check]
5151
types: [sql]
52+
- repo: local
53+
hooks:
54+
- id: bqetl_backfill_validate
55+
name: bqetl_backfill_validate
56+
language: script
57+
entry: ./bqetl
58+
args: [backfill, validate, --ignore-missing-metadata]
59+
types: [yaml]
60+
files: ^.+.backfill.yaml$

bigquery_etl/cli/backfill.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import tempfile
88
from collections import defaultdict
99
from datetime import date, datetime, timedelta
10+
from os.path import exists
1011
from pathlib import Path
1112

1213
import rich_click as click
@@ -247,6 +248,15 @@ def validate(
247248
):
248249
"""Validate backfill.yaml files."""
249250
if qualified_table_name:
251+
# checking if path string was passed in instead of "dataset.table_name" format
252+
# if yes we convert it to the expected format.
253+
# this is to accommodate pre-commit hook
254+
qualified_table_name = (
255+
".".join(qualified_table_name.split("/")[-4:-1])
256+
if exists(qualified_table_name)
257+
else qualified_table_name
258+
)
259+
250260
backfills_dict = {
251261
qualified_table_name: get_entries_from_qualified_table_name(
252262
sql_dir, qualified_table_name

bigquery_etl/glam/templates/probe_counts_v1.sql

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,9 +106,11 @@ WITH probe_counts AS (
106106
{{ aggregate_grouping }}
107107
)
108108

109-
{% if channel == "release" %}
109+
{% if channel == "release" and is_scalar %}
110110
,
111111
-- Fix All OS client counts which were originally calculated taking only 10% of Windows due to sampling.
112+
-- This is only relevant for scalars, as histograms are already normalized during client normalization.
113+
-- See histogram_bucket_counts_v1.sql for details.
112114
windows_probe_counts AS (
113115
SELECT
114116
*

bigquery_etl/schema/__init__.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from typing import Any, Dict, Iterable, List, Optional
88

99
import attr
10+
import ujson
1011
import yaml
1112
from google.api_core.exceptions import NotFound
1213
from google.cloud import bigquery
@@ -265,7 +266,10 @@ def _traverse(
265266
else:
266267
if update and add_missing_fields:
267268
# node does not exist in schema, add to schema
268-
columns.append(node.copy())
269+
if node["type"] == "RECORD": # deep copy record fields
270+
columns.append(ujson.loads(ujson.dumps(node)))
271+
else:
272+
columns.append(node.copy())
269273
print(f"Field {node_name} added to {prefix}")
270274
else:
271275
if not ignore_missing_fields:

bigquery_etl/shredder/config.py

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -268,6 +268,48 @@ def fields(self) -> tuple[str, ...]:
268268
client_id_target(table="telemetry_stable.untrusted_modules_v4"): DESKTOP_SRC,
269269
client_id_target(table="telemetry_stable.update_v4"): DESKTOP_SRC,
270270
client_id_target(table="telemetry_stable.voice_v4"): DESKTOP_SRC,
271+
DeleteTarget(
272+
table="telemetry_derived.cohort_weekly_active_clients_staging_v1",
273+
field=(CLIENT_ID,) * 15,
274+
): (
275+
DESKTOP_SRC,
276+
DeleteSource(table="focus_android.deletion_request", field=GLEAN_CLIENT_ID),
277+
DeleteSource(table="firefox_ios.deletion_request", field=GLEAN_CLIENT_ID),
278+
DeleteSource(table="fenix.deletion_request", field=GLEAN_CLIENT_ID),
279+
DeleteSource(table="klar_ios.deletion_request", field=GLEAN_CLIENT_ID),
280+
DeleteSource(table="focus_ios.deletion_request", field=GLEAN_CLIENT_ID),
281+
DeleteSource(table="klar_android.deletion_request", field=GLEAN_CLIENT_ID),
282+
*FOCUS_ADDITIONAL_DELETIONS,
283+
*LEGACY_MOBILE_SOURCES,
284+
),
285+
DeleteTarget(
286+
table="telemetry_derived.cohort_weekly_active_clients_v1",
287+
field=(CLIENT_ID,) * 15,
288+
): (
289+
DESKTOP_SRC,
290+
DeleteSource(table="focus_android.deletion_request", field=GLEAN_CLIENT_ID),
291+
DeleteSource(table="firefox_ios.deletion_request", field=GLEAN_CLIENT_ID),
292+
DeleteSource(table="fenix.deletion_request", field=GLEAN_CLIENT_ID),
293+
DeleteSource(table="klar_ios.deletion_request", field=GLEAN_CLIENT_ID),
294+
DeleteSource(table="focus_ios.deletion_request", field=GLEAN_CLIENT_ID),
295+
DeleteSource(table="klar_android.deletion_request", field=GLEAN_CLIENT_ID),
296+
*FOCUS_ADDITIONAL_DELETIONS,
297+
*LEGACY_MOBILE_SOURCES,
298+
),
299+
DeleteTarget(
300+
table="telemetry_derived.cohort_weekly_cfs_staging_v1",
301+
field=(CLIENT_ID,) * 15,
302+
): (
303+
DESKTOP_SRC,
304+
DeleteSource(table="focus_android.deletion_request", field=GLEAN_CLIENT_ID),
305+
DeleteSource(table="firefox_ios.deletion_request", field=GLEAN_CLIENT_ID),
306+
DeleteSource(table="fenix.deletion_request", field=GLEAN_CLIENT_ID),
307+
DeleteSource(table="klar_ios.deletion_request", field=GLEAN_CLIENT_ID),
308+
DeleteSource(table="focus_ios.deletion_request", field=GLEAN_CLIENT_ID),
309+
DeleteSource(table="klar_android.deletion_request", field=GLEAN_CLIENT_ID),
310+
*FOCUS_ADDITIONAL_DELETIONS,
311+
*LEGACY_MOBILE_SOURCES,
312+
),
271313
DeleteTarget(
272314
table="telemetry_derived.mobile_engagement_clients_v1",
273315
field=(CLIENT_ID, CLIENT_ID),

bqetl_project.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ dry_run:
9595
- sql/moz-fx-cjms-prod-f3c7/cjms_bigquery/subscriptions_v1/query.sql
9696
- sql/moz-fx-data-shared-prod/subscription_platform_derived/apple_subscriptions_v1/query.sql
9797
- sql/moz-fx-data-shared-prod/subscription_platform_derived/google_subscriptions_v1/query.sql
98+
- sql/moz-fx-data-shared-prod/subscription_platform_derived/google_subscriptions_changelog_v1/query.sql
9899
- sql/moz-fx-data-shared-prod/subscription_platform_derived/nonprod_apple_subscriptions_v1/query.sql
99100
- sql/moz-fx-data-shared-prod/subscription_platform_derived/nonprod_google_subscriptions_v1/query.sql
100101
- sql/moz-fx-data-shared-prod/subscription_platform_derived/nonprod_stripe_subscriptions_history_v1/query.sql

dags.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -160,12 +160,12 @@ bqetl_accounts_derived:
160160
- repo/bigquery-etl
161161

162162
bqetl_subplat:
163-
schedule_interval: 45 1 * * *
163+
schedule_interval: 0 12 * * *
164164
description: |
165-
Daily imports for Subscription Platform data from Stripe and the Mozilla VPN
165+
Daily imports for Subscription Platform data from Stripe, Firestore, and the Mozilla VPN
166166
operational DB as well as derived tables based on that data.
167167
168-
Depends on `bqetl_fxa_events`, so is scheduled to run a bit after that.
168+
Scheduled mid-day to allow more time for late-arriving data from the previous day.
169169
170170
Stripe data retrieved by stripe_external__itemized_payout_reconciliation__v5
171171
task has highly viariable availability timing, so it is possible for it to
@@ -177,7 +177,7 @@ bqetl_subplat:
177177
178178
default_args:
179179
180-
start_date: "2021-07-20"
180+
start_date: "2025-05-20"
181181
182182
retries: 2
183183
retry_delay: 30m
@@ -2347,7 +2347,7 @@ bqetl_ech_adoption_rate:
23472347
- repo/bigquery-etl
23482348

23492349
bqetl_newtab_historical:
2350-
schedule_interval: 0 2 * * *
2350+
schedule_interval: once
23512351
description: |
23522352
Load Newtab historical data from GCS into BigQuery
23532353
default_args:

requirements.in

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
attrs==25.3.0
22
authlib==1.5.2
33
beautifulsoup4==4.13.4
4-
bigeye-sdk==0.5.0
4+
bigeye-sdk==0.5.1
55
black==25.1.0
66
cattrs==24.1.3
77
click==8.1.8
8-
cryptography==44.0.3
8+
cryptography==45.0.2
99
exceptiongroup==1.3.0 # for backwards compatibility with python < 3.11
1010
flake8<5 # pytest-flake8 does not support flake8 5+
1111
gcsfs==2025.3.2
@@ -19,7 +19,7 @@ google-cloud-storage==3.1.0
1919
Jinja2==3.1.6
2020
jsonschema==4.23.0
2121
PyJWT==2.10.1
22-
looker-sdk==25.6.0
22+
looker-sdk==25.8.0
2323
markdown-include==0.8.1
2424
mdx_truly_sane_lists==1.3
2525
mkdocs==1.6.1
@@ -48,10 +48,10 @@ stripe==6.4.0
4848
symbolic==12.15.5
4949
siggen==2.2.20241029
5050
tomli==2.2.1 # for backwards compatibility with python < 3.11
51-
types-python-dateutil==2.9.0.20241206
51+
types-python-dateutil==2.9.0.20250516
5252
types-pytz==2025.2.0.20250326
53-
types-PyYAML==6.0.12.20250402
54-
types-requests==2.32.0.20250328
53+
types-PyYAML==6.0.12.20250516
54+
types-requests==2.32.0.20250515
5555
types-ujson==5.10.0.20250326
5656
typing==3.7.4.3
5757
ujson==5.10.0

requirements.txt

Lines changed: 56 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -144,9 +144,9 @@ beautifulsoup4==4.13.4 \
144144
betterproto[compiler]==1.2.5 \
145145
--hash=sha256:74a3ab34646054f674d236d1229ba8182dc2eae86feb249b8590ef496ce9803d
146146
# via bigeye-sdk
147-
bigeye-sdk==0.5.0 \
148-
--hash=sha256:39e29090fa27886f8e89db3bed731d59ddf8d99754fed4afe9ee36cd4c5a88fe \
149-
--hash=sha256:f099720539128f20ce11ed02d14be0d2e87b8dd6d5866b21ade2cf0b4fee96e6
147+
bigeye-sdk==0.5.1 \
148+
--hash=sha256:103c92a7117e48066aeac105ccf3596292d7ec973c92fbbdde77126ec3e0e0e0 \
149+
--hash=sha256:6827c3a48278b5486c7429cff04c553874577c4f3c322f74d000fe91b9dd37c3
150150
# via -r requirements.in
151151
black==25.1.0 \
152152
--hash=sha256:030b9759066a4ee5e5aca28c3c77f9c64789cdd4de8ac1df642c40b708be6171 \
@@ -311,44 +311,44 @@ commonmark==0.9.1 \
311311
--hash=sha256:452f9dc859be7f06631ddcb328b6919c67984aca654e5fefb3914d54691aed60 \
312312
--hash=sha256:da2f38c92590f83de410ba1a3cbceafbc74fee9def35f9251ba9a971d6d66fd9
313313
# via rich
314-
cryptography==44.0.3 \
315-
--hash=sha256:02f55fb4f8b79c1221b0961488eaae21015b69b210e18c386b69de182ebb1259 \
316-
--hash=sha256:157f1f3b8d941c2bd8f3ffee0af9b049c9665c39d3da9db2dc338feca5e98a43 \
317-
--hash=sha256:192ed30fac1728f7587c6f4613c29c584abdc565d7417c13904708db10206645 \
318-
--hash=sha256:21a83f6f35b9cc656d71b5de8d519f566df01e660ac2578805ab245ffd8523f8 \
319-
--hash=sha256:25cd194c39fa5a0aa4169125ee27d1172097857b27109a45fadc59653ec06f44 \
320-
--hash=sha256:3883076d5c4cc56dbef0b898a74eb6992fdac29a7b9013870b34efe4ddb39a0d \
321-
--hash=sha256:3bb0847e6363c037df8f6ede57d88eaf3410ca2267fb12275370a76f85786a6f \
322-
--hash=sha256:3be3f649d91cb182c3a6bd336de8b61a0a71965bd13d1a04a0e15b39c3d5809d \
323-
--hash=sha256:3f07943aa4d7dad689e3bb1638ddc4944cc5e0921e3c227486daae0e31a05e54 \
324-
--hash=sha256:479d92908277bed6e1a1c69b277734a7771c2b78633c224445b5c60a9f4bc1d9 \
325-
--hash=sha256:4ffc61e8f3bf5b60346d89cd3d37231019c17a081208dfbbd6e1605ba03fa137 \
326-
--hash=sha256:5639c2b16764c6f76eedf722dbad9a0914960d3489c0cc38694ddf9464f1bb2f \
327-
--hash=sha256:58968d331425a6f9eedcee087f77fd3c927c88f55368f43ff7e0a19891f2642c \
328-
--hash=sha256:5d186f32e52e66994dce4f766884bcb9c68b8da62d61d9d215bfe5fb56d21334 \
329-
--hash=sha256:5d20cc348cca3a8aa7312f42ab953a56e15323800ca3ab0706b8cd452a3a056c \
330-
--hash=sha256:6866df152b581f9429020320e5eb9794c8780e90f7ccb021940d7f50ee00ae0b \
331-
--hash=sha256:7d5fe7195c27c32a64955740b949070f21cba664604291c298518d2e255931d2 \
332-
--hash=sha256:896530bc9107b226f265effa7ef3f21270f18a2026bc09fed1ebd7b66ddf6375 \
333-
--hash=sha256:962bc30480a08d133e631e8dfd4783ab71cc9e33d5d7c1e192f0b7c06397bb88 \
334-
--hash=sha256:978631ec51a6bbc0b7e58f23b68a8ce9e5f09721940933e9c217068388789fe5 \
335-
--hash=sha256:9b4d4a5dbee05a2c390bf212e78b99434efec37b17a4bff42f50285c5c8c9647 \
336-
--hash=sha256:ab0b005721cc0039e885ac3503825661bd9810b15d4f374e473f8c89b7d5460c \
337-
--hash=sha256:af653022a0c25ef2e3ffb2c673a50e5a0d02fecc41608f4954176f1933b12359 \
338-
--hash=sha256:b0cc66c74c797e1db750aaa842ad5b8b78e14805a9b5d1348dc603612d3e3ff5 \
339-
--hash=sha256:b424563394c369a804ecbee9b06dfb34997f19d00b3518e39f83a5642618397d \
340-
--hash=sha256:c138abae3a12a94c75c10499f1cbae81294a6f983b3af066390adee73f433028 \
341-
--hash=sha256:c6cd67722619e4d55fdb42ead64ed8843d64638e9c07f4011163e46bc512cf01 \
342-
--hash=sha256:c91fc8e8fd78af553f98bc7f2a1d8db977334e4eea302a4bfd75b9461c2d8904 \
343-
--hash=sha256:cad399780053fb383dc067475135e41c9fe7d901a97dd5d9c5dfb5611afc0d7d \
344-
--hash=sha256:cb90f60e03d563ca2445099edf605c16ed1d5b15182d21831f58460c48bffb93 \
345-
--hash=sha256:dad80b45c22e05b259e33ddd458e9e2ba099c86ccf4e88db7bbab4b747b18d06 \
346-
--hash=sha256:dd3db61b8fe5be220eee484a17233287d0be6932d056cf5738225b9c05ef4fff \
347-
--hash=sha256:e28d62e59a4dbd1d22e747f57d4f00c459af22181f0b2f787ea83f5a876d7c76 \
348-
--hash=sha256:e909df4053064a97f1e6565153ff8bb389af12c5c8d29c343308760890560aff \
349-
--hash=sha256:f3ffef566ac88f75967d7abd852ed5f182da252d23fac11b4766da3957766759 \
350-
--hash=sha256:fc3c9babc1e1faefd62704bb46a69f359a9819eb0292e40df3fb6e3574715cd4 \
351-
--hash=sha256:fe19d8bc5536a91a24a8133328880a41831b6c5df54599a8417b62fe015d3053
314+
cryptography==45.0.2 \
315+
--hash=sha256:057723b79752a142efbc609e90b0dff27b0361ccbee3bd48312d70f5cdf53b78 \
316+
--hash=sha256:05c2385b1f5c89a17df19900cfb1345115a77168f5ed44bdf6fd3de1ce5cc65b \
317+
--hash=sha256:08281de408e7eb71ba3cd5098709a356bfdf65eebd7ee7633c3610f0aa80d79b \
318+
--hash=sha256:10d68763892a7b19c22508ab57799c4423c7c8cd61d7eee4c5a6a55a46511949 \
319+
--hash=sha256:1655d3a76e3dedb683c982a6c3a2cbfae2d08f47a48ec5a3d58db52b3d29ea6f \
320+
--hash=sha256:18f8084b7ca3ce1b8d38bdfe33c48116edf9a08b4d056ef4a96dceaa36d8d965 \
321+
--hash=sha256:2cb03a944a1a412724d15a7c051d50e63a868031f26b6a312f2016965b661942 \
322+
--hash=sha256:4142e20c29224cec63e9e32eb1e6014fb285fe39b7be66b3564ca978a3a8afe9 \
323+
--hash=sha256:463096533acd5097f8751115bc600b0b64620c4aafcac10c6d0041e6e68f88fe \
324+
--hash=sha256:48caa55c528617fa6db1a9c3bf2e37ccb31b73e098ac2b71408d1f2db551dde4 \
325+
--hash=sha256:49af56491473231159c98c2c26f1a8f3799a60e5cf0e872d00745b858ddac9d2 \
326+
--hash=sha256:4cc31c66411e14dd70e2f384a9204a859dc25b05e1f303df0f5326691061b839 \
327+
--hash=sha256:501de1296b2041dccf2115e3c7d4947430585601b251b140970ce255c5cfb985 \
328+
--hash=sha256:59c0c8f043dd376bbd9d4f636223836aed50431af4c5a467ed9bf61520294627 \
329+
--hash=sha256:614bca7c6ed0d8ad1dce683a6289afae1f880675b4090878a0136c3da16bc693 \
330+
--hash=sha256:61a8b1bbddd9332917485b2453d1de49f142e6334ce1d97b7916d5a85d179c84 \
331+
--hash=sha256:7429936146063bd1b2cfc54f0e04016b90ee9b1c908a7bed0800049cbace70eb \
332+
--hash=sha256:7c73968fbb7698a4c5d6160859db560d3aac160edde89c751edd5a8bc6560c88 \
333+
--hash=sha256:80303ee6a02ef38c4253160446cbeb5c400c07e01d4ddbd4ff722a89b736d95a \
334+
--hash=sha256:965611880c3fa8e504b7458484c0697e00ae6e937279cd6734fdaa2bc954dc49 \
335+
--hash=sha256:9a900036b42f7324df7c7ad9569eb92ba0b613cf699160dd9c2154b24fd02f8e \
336+
--hash=sha256:9cfd1399064b13043082c660ddd97a0358e41c8b0dc7b77c1243e013d305c344 \
337+
--hash=sha256:a8ec324711596fbf21837d3a5db543937dd84597d364769b46e0102250023f77 \
338+
--hash=sha256:a9727a21957d3327cf6b7eb5ffc9e4b663909a25fea158e3fcbc49d4cdd7881b \
339+
--hash=sha256:b19f4b28dd2ef2e6d600307fee656c00825a2980c4356a7080bd758d633c3a6f \
340+
--hash=sha256:b2de529027579e43b6dc1f805f467b102fb7d13c1e54c334f1403ee2b37d0059 \
341+
--hash=sha256:c0c000c1a09f069632d8a9eb3b610ac029fcc682f1d69b758e625d6ee713f4ed \
342+
--hash=sha256:cdafb86eb673c3211accffbffdb3cdffa3aaafacd14819e0898d23696d18e4d3 \
343+
--hash=sha256:d2a90ce2f0f5b695e4785ac07c19a58244092f3c85d57db6d8eb1a2b26d2aad6 \
344+
--hash=sha256:d784d57b958ffd07e9e226d17272f9af0c41572557604ca7554214def32c26bf \
345+
--hash=sha256:d891942592789fa0ab71b502550bbadb12f540d7413d7d7c4cef4b02af0f5bc6 \
346+
--hash=sha256:dc7693573f16535428183de8fd27f0ca1ca37a51baa0b41dc5ed7b3d68fe80e2 \
347+
--hash=sha256:ddb8d01aa900b741d6b7cc585a97aff787175f160ab975e21f880e89d810781a \
348+
--hash=sha256:e328357b6bbf79928363dbf13f4635b7aac0306afb7e5ad24d21d0c5761c3253 \
349+
--hash=sha256:e86c8d54cd19a13e9081898b3c24351683fd39d726ecf8e774aaa9d8d96f5f3a \
350+
--hash=sha256:e9e4bdcd70216b08801e267c0b563316b787f957a46e215249921f99288456f9 \
351+
--hash=sha256:f169469d04a23282de9d0be349499cb6683b6ff1b68901210faacac9b0c24b7d
352352
# via
353353
# -r requirements.in
354354
# authlib
@@ -815,9 +815,9 @@ keyring==24.3.1 \
815815
--hash=sha256:c3327b6ffafc0e8befbdb597cacdb4928ffe5c1212f7645f186e6d9957a898db \
816816
--hash=sha256:df38a4d7419a6a60fea5cef1e45a948a3e8430dd12ad88b0f423c5c143906218
817817
# via bigeye-sdk
818-
looker-sdk==25.6.0 \
819-
--hash=sha256:4c3bca04c428e3c0a4fd02a199a2e5237cd05d279f21591e9bd684f9c99fa08f \
820-
--hash=sha256:816dce7f181c7b05ab590ed89b2559a8737bad524f8976286a9c024d780da0dd
818+
looker-sdk==25.8.0 \
819+
--hash=sha256:4e9b8e00cab480bd73af8fe10ed7004eb52a875fb4fbd299c3fe3946b8d438c5 \
820+
--hash=sha256:4eef55b317d6fa171898335ac95d8d7e26e9f7dd7dd642789f9f899db8c986f7
821821
# via -r requirements.in
822822
lz4==4.3.3 \
823823
--hash=sha256:01fe674ef2889dbb9899d8a67361e0c4a2c833af5aeb37dd505727cf5d2a131e \
@@ -2185,23 +2185,23 @@ typer==0.12.5 \
21852185
--hash=sha256:62fe4e471711b147e3365034133904df3e235698399bc4de2b36c8579298d52b \
21862186
--hash=sha256:f592f089bedcc8ec1b974125d64851029c3b1af145f04aca64d69410f0c9b722
21872187
# via bigeye-sdk
2188-
types-python-dateutil==2.9.0.20241206 \
2189-
--hash=sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb \
2190-
--hash=sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53
2188+
types-python-dateutil==2.9.0.20250516 \
2189+
--hash=sha256:13e80d6c9c47df23ad773d54b2826bd52dbbb41be87c3f339381c1700ad21ee5 \
2190+
--hash=sha256:2b2b3f57f9c6a61fba26a9c0ffb9ea5681c9b83e69cd897c6b5f668d9c0cab93
21912191
# via -r requirements.in
21922192
types-pytz==2025.2.0.20250326 \
21932193
--hash=sha256:3c397fd1b845cd2b3adc9398607764ced9e578a98a5d1fbb4a9bc9253edfb162 \
21942194
--hash=sha256:deda02de24f527066fc8d6a19e284ab3f3ae716a42b4adb6b40e75e408c08d36
21952195
# via -r requirements.in
2196-
types-pyyaml==6.0.12.20250402 \
2197-
--hash=sha256:652348fa9e7a203d4b0d21066dfb00760d3cbd5a15ebb7cf8d33c88a49546681 \
2198-
--hash=sha256:d7c13c3e6d335b6af4b0122a01ff1d270aba84ab96d1a1a1063ecba3e13ec075
2196+
types-pyyaml==6.0.12.20250516 \
2197+
--hash=sha256:8478208feaeb53a34cb5d970c56a7cd76b72659442e733e268a94dc72b2d0530 \
2198+
--hash=sha256:9f21a70216fc0fa1b216a8176db5f9e0af6eb35d2f2932acb87689d03a5bf6ba
21992199
# via
22002200
# -r requirements.in
22012201
# bigeye-sdk
2202-
types-requests==2.32.0.20250328 \
2203-
--hash=sha256:72ff80f84b15eb3aa7a8e2625fffb6a93f2ad5a0c20215fc1dcfa61117bcb2a2 \
2204-
--hash=sha256:c9e67228ea103bd811c96984fac36ed2ae8da87a36a633964a21f199d60baf32
2202+
types-requests==2.32.0.20250515 \
2203+
--hash=sha256:09c8b63c11318cb2460813871aaa48b671002e59fda67ca909e9883777787581 \
2204+
--hash=sha256:f8eba93b3a892beee32643ff836993f15a785816acca21ea0ffa006f05ef0fb2
22052205
# via -r requirements.in
22062206
types-ujson==5.10.0.20250326 \
22072207
--hash=sha256:5469e05f2c31ecb3c4c0267cc8fe41bcd116826fbb4ded69801a645c687dd014 \
@@ -2530,9 +2530,9 @@ pip==23.3.2 \
25302530
--hash=sha256:5052d7889c1f9d05224cd41741acb7c5d6fa735ab34e339624a614eaaa7e7d76 \
25312531
--hash=sha256:7fd9972f96db22c8077a1ee2691b172c8089b17a5652a44494a9ecb0d78f9149
25322532
# via pip-tools
2533-
setuptools==80.4.0 \
2534-
--hash=sha256:5a78f61820bc088c8e4add52932ae6b8cf423da2aff268c23f813cfbb13b4006 \
2535-
--hash=sha256:6cdc8cb9a7d590b237dbe4493614a9b75d0559b888047c1f67d49ba50fc3edb2
2533+
setuptools==80.7.1 \
2534+
--hash=sha256:ca5cc1069b85dc23070a6628e6bcecb3292acac802399c7f8edc0100619f9009 \
2535+
--hash=sha256:f6ffc5f0142b1bd8d0ca94ee91b30c0ca862ffd50826da1ea85258a06fd94552
25362536
# via
25372537
# bigeye-sdk
25382538
# nodeenv

sql/moz-fx-data-shared-prod/crash_ping_ingest_external/dataset_metadata.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,5 @@ workgroup_access:
1414
- role: roles/bigquery.dataEditor
1515
members:
1616
- workgroup:dataops-managed/crash-ping-ingest
17+
# https://mozilla-hub.atlassian.net/browse/DENG-8424
18+
- workgroup:remote-settings/gke

sql/moz-fx-data-shared-prod/fenix/crash/metadata.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,5 @@ workgroup_access:
33
members:
44
# https://mozilla-hub.atlassian.net/browse/DENG-8189
55
- workgroup:dataops-managed/crash-ping-ingest
6+
# https://mozilla-hub.atlassian.net/browse/DENG-8424
7+
- workgroup:remote-settings/gke
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
2025-05-14:
2+
start_date: 2023-04-01
3+
end_date: 2025-05-14
4+
reason: normalized_channel added, backfill to populate this field historically
5+
watchers:
6+
7+
status: Initiate
8+
override_retention_limit: false

0 commit comments

Comments
 (0)