From 8ef7198097cf3910741805bcb71ed6ad41d24ed3 Mon Sep 17 00:00:00 2001 From: Francesco Novy Date: Mon, 12 Aug 2024 11:18:35 +0200 Subject: [PATCH] feat: Use v8 for Loader by default for new projects (#75818) This PR removes the loader-v8 feature flag, instead enabling this for all orgs. It also adds a new epoch, so that new projects will get v8 by default for the loader. v7 remains selectable for them. closes https://github.com/getsentry/sentry-javascript/issues/12187 --- src/sentry/features/temporary.py | 2 -- src/sentry/loader/browsersdkversion.py | 8 +------- src/sentry/projectoptions/defaults.py | 8 ++++---- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/src/sentry/features/temporary.py b/src/sentry/features/temporary.py index 03a4488299f45f..c413c0e82690ff 100644 --- a/src/sentry/features/temporary.py +++ b/src/sentry/features/temporary.py @@ -164,8 +164,6 @@ def register_temporary_features(manager: FeatureManager): manager.add("organizations:issue-search-snuba", OrganizationFeature, FeatureHandlerStrategy.FLAGPOLE, api_expose=False) # Enable the new issue stream search bar UI manager.add("organizations:issue-stream-search-query-builder", OrganizationFeature, FeatureHandlerStrategy.FLAGPOLE, api_expose=True) - # Enable v8 support for the Loader Script - manager.add("organizations:js-sdk-loader-v8", OrganizationFeature, FeatureHandlerStrategy.FLAGPOLE, api_expose=False) manager.add("organizations:large-debug-files", OrganizationFeature, FeatureHandlerStrategy.INTERNAL, api_expose=False) # Enabled latest adopted release filter for issue alerts manager.add("organizations:latest-adopted-release-filter", OrganizationFeature, FeatureHandlerStrategy.FLAGPOLE, api_expose=False) diff --git a/src/sentry/loader/browsersdkversion.py b/src/sentry/loader/browsersdkversion.py index d09bdabe2727e7..cbff9bae47623c 100644 --- a/src/sentry/loader/browsersdkversion.py +++ b/src/sentry/loader/browsersdkversion.py @@ -8,7 +8,6 @@ from packaging.version import Version import sentry -from sentry import features logger = logging.getLogger("sentry") @@ -98,9 +97,4 @@ def get_default_sdk_version_for_project(project): def get_available_sdk_versions_for_project(project): - versions = project.get_option("sentry:loader_available_sdk_versions") - - if features.has("organizations:js-sdk-loader-v8", project.organization, actor=None): - return ["8.x"] + versions - - return versions + return project.get_option("sentry:loader_available_sdk_versions") diff --git a/src/sentry/projectoptions/defaults.py b/src/sentry/projectoptions/defaults.py index 6cdf0e31e02630..0500e3f0b810d1 100644 --- a/src/sentry/projectoptions/defaults.py +++ b/src/sentry/projectoptions/defaults.py @@ -2,7 +2,7 @@ # This controls what sentry:option-epoch value is given to a project when it is created # The epoch of a project will determine what options are valid options for that specific project -LATEST_EPOCH = 12 +LATEST_EPOCH = 13 # grouping related configs # @@ -51,7 +51,8 @@ # is expected to be never set but the epoch defaults are used if no # version is set on a project's DSN. register( - key="sentry:default_loader_version", epoch_defaults={1: "4.x", 2: "5.x", 7: "6.x", 8: "7.x"} + key="sentry:default_loader_version", + epoch_defaults={1: "4.x", 2: "5.x", 7: "6.x", 8: "7.x", 13: "8.x"}, ) # Default symbol sources. The ios source does not exist by default and @@ -179,8 +180,7 @@ ) # The available loader SDK versions -# todo: v8 add version register( key="sentry:loader_available_sdk_versions", - epoch_defaults={1: ["7.x", "6.x", "5.x", "4.x"], 11: ["7.x"]}, + epoch_defaults={1: ["8.x", "7.x", "6.x", "5.x", "4.x"], 11: ["8.x", "7.x"]}, )