From d16a17ecee11dc2a8c1e81cf31e9b1a7b44077e1 Mon Sep 17 00:00:00 2001 From: Mike Williams Date: Thu, 16 Apr 2026 16:54:35 -0400 Subject: [PATCH] feat: incorporate configured enrollments_query_type --- jetstream/analysis.py | 6 ++++-- jetstream/platform.py | 4 ++-- jetstream/preview.py | 2 +- jetstream/tests/test_config.py | 2 +- pyproject.toml | 2 +- requirements.in | 4 ++-- requirements.txt | 8 ++++---- 7 files changed, 15 insertions(+), 13 deletions(-) diff --git a/jetstream/analysis.py b/jetstream/analysis.py index 6bc1e8f03..e4387418f 100644 --- a/jetstream/analysis.py +++ b/jetstream/analysis.py @@ -919,7 +919,8 @@ def validate(self, use_glean_ids: bool = False, metric_slugs: list[str] | None = enrollments_sql = exp.build_enrollments_query( limits, - PLATFORM_CONFIGS[self.config.experiment.app_name].enrollments_query_type, + self.config.experiment.enrollments_query_type + or PLATFORM_CONFIGS[self.config.experiment.app_name].enrollments_query_type, self.config.experiment.enrollment_query, None, exposure_signal, @@ -1463,7 +1464,8 @@ def enrollments_query(self, time_limits: TimeLimits, use_glean_ids: bool = False return exp.build_enrollments_query( time_limits, - PLATFORM_CONFIGS[self.config.experiment.app_name].enrollments_query_type, + self.config.experiment.enrollments_query_type + or PLATFORM_CONFIGS[self.config.experiment.app_name].enrollments_query_type, self.config.experiment.enrollment_query, None, exposure_signal, diff --git a/jetstream/platform.py b/jetstream/platform.py index b1ec874b0..6bcfe985c 100644 --- a/jetstream/platform.py +++ b/jetstream/platform.py @@ -5,7 +5,7 @@ import attr import toml from metric_config_parser.analysis import AnalysisSpec -from mozanalysis.experiment import EnrollmentsQueryType +from metric_config_parser.experiment import EnrollmentsQueryType from jetstream.config import ConfigLoader @@ -27,7 +27,7 @@ class Platform: More info about Jetstream configuration: https://experimenter.info/jetstream/configuration :param enrollments_query_type: - :type enrollments_query_type: mozanalysis.experiment.EnrollmentsQueryType + :type enrollments_query_type: metric_config_parser.experiment.EnrollmentsQueryType :param app_id: :type app_id: str diff --git a/jetstream/preview.py b/jetstream/preview.py index 2695269b8..3fa7a5bad 100644 --- a/jetstream/preview.py +++ b/jetstream/preview.py @@ -4,9 +4,9 @@ from metric_config_parser import AnalysisUnit from metric_config_parser.analysis import AnalysisConfiguration from metric_config_parser.data_source import DataSourceReference +from metric_config_parser.experiment import EnrollmentsQueryType from metric_config_parser.exposure_signal import ExposureSignalDefinition from metric_config_parser.metric import AnalysisPeriod -from mozanalysis.experiment import EnrollmentsQueryType from .analysis import Analysis from .platform import PLATFORM_CONFIGS diff --git a/jetstream/tests/test_config.py b/jetstream/tests/test_config.py index 5d42ac4d3..a767426c8 100644 --- a/jetstream/tests/test_config.py +++ b/jetstream/tests/test_config.py @@ -5,8 +5,8 @@ import toml from metric_config_parser.analysis import AnalysisSpec from metric_config_parser.config import Config, DefaultConfig, Outcome +from metric_config_parser.experiment import EnrollmentsQueryType from metric_config_parser.outcome import OutcomeSpec -from mozanalysis.experiment import EnrollmentsQueryType from jetstream.config import ConfigLoader, _ConfigLoader, validate from jetstream.dryrun import DryRunFailedError diff --git a/pyproject.toml b/pyproject.toml index 7720833b9..beb1f28c5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta" name = "mozilla-jetstream" # This project does not issue regular releases, only when there # are changes that would be meaningful to our (few) dependents. -version = "2026.3.3" +version = "2026.4.1" authors = [{ name = "Mozilla Corporation", email = "fx-data-dev@mozilla.org" }] description = "Runs a thing that analyzes experiments" readme = "README.md" diff --git a/requirements.in b/requirements.in index 38d913ee0..4e12c4f94 100644 --- a/requirements.in +++ b/requirements.in @@ -188,9 +188,9 @@ matplotlib==3.10.8 # plotnine mizani==0.14.4 # via plotnine -mozanalysis==2026.1.2 +mozanalysis==2026.4.1 # via mozilla-jetstream -mozilla-metric-config-parser==2026.1.1 +mozilla-metric-config-parser==2026.4.1 # via # mozanalysis # mozilla-jetstream diff --git a/requirements.txt b/requirements.txt index 195d71c30..6ed904429 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1281,11 +1281,11 @@ mizani==0.14.4 \ # via # -r requirements.in # plotnine -mozanalysis==2026.1.2 \ - --hash=sha256:fa2471e24f4d952bb257423912eef8094a067c314efa629fc69f52a34c9c9b5d +mozanalysis==2026.4.1 \ + --hash=sha256:642b479ad6191dc0980de0a16062c02c67495ad654ceea012342cb52f23319d2 # via -r requirements.in -mozilla-metric-config-parser==2026.1.1 \ - --hash=sha256:0e74d8a453a839cd5eb82799655ddc1d2c79c461ce099375749c23b6ffdb4903 +mozilla-metric-config-parser==2026.4.1 \ + --hash=sha256:b349016cae82b59427b69f800f162a77ce80dc82693ef2a8718675e1b6198e90 # via # -r requirements.in # mozanalysis