-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Open
1 / 41 of 4 issues completedOpen
1 / 41 of 4 issues completed
Copy link
Description
Description
We noticed that we keep re-inventing the wheel when it comes to build time configuration with source map options.
To apply the learnings from the past, it would probably make sense to align the options across frameworks.
withSentryConfig
in Next.jssentry
config field for the@sentry/nuxt/module
modulesentry
integration in AstrosentrySolidStartVite
in SolidStart"@sentry/gatsby"
plugin for Gatsby
The general type to be used is the BuildTImeOptionsBase
Migration
- All previous build-time options should be marked with a
@deprecated
notice in JSDoc - The new build-time options take precedence over the old ones
- In the next major version, we'll delete the old build-time options
Archive
First strawman proposal for the type
interface BuildTimeOptions {
org?: string;
project?: string;
authToken?: string;
sentryUrl?: string;
headers?: Record<string, string>;
telemetry?: boolean;
silent?: boolean;
debug?: boolean;
sourcemaps?: {
disable?: boolean;
assets?: string | string[];
ignore?: string | string[];
deleteSourcemapsAfterUpload?: boolean;
};
release?: {
name?: string;
create?: boolean;
finalize?: boolean;
dist?: string;
vcsRemote?: string;
setCommits?: (
| {
auto: true;
repo?: undefined;
commit?: undefined;
}
| {
auto?: false | undefined;
repo: string;
commit: string;
}
) & {
previousCommit?: string;
ignoreMissing?: boolean;
ignoreEmpty?: boolean;
};
deploy?: {
env: string;
started?: number | string;
finished?: number | string;
time?: number;
name?: string;
url?: string;
};
};
bundleSizeOptimizations?: {
excludeDebugStatements?: boolean;
excludeTracing?: boolean;
excludeReplayShadowDom?: boolean;
excludeReplayIframe?: boolean;
excludeReplayWorker?: boolean;
};
unstable_sentryINSERTBUILDTOOLOFCHOICEHEREPluginOptions?: SentryINSERTBUILDTOOLOFCHOICEHEREPluginOptions;
hideSourceMaps?: boolean;
tunnelRoute?: string;
disableLogger?: boolean;
};
It is not necessary to implement all of these options right out the gate when building a new SDK, however, when deciding where to put an option we should follow the decided interface.
andreiborza, jared-christensen and h3llomoto
Sub-issues
Metadata
Metadata
Assignees
Labels
No labels