diff --git a/packages/deno/package.json b/packages/deno/package.json
index b9f7dbdc8ea8..7cecc1e7c228 100644
--- a/packages/deno/package.json
+++ b/packages/deno/package.json
@@ -41,15 +41,14 @@
"build:types:bundle": "rollup -c rollup.types.config.mjs",
"build:tarball": "node ./scripts/prepack.js && npm pack ./build",
"circularDepCheck": "madge --circular src/index.ts",
- "clean": "rimraf build build-types build-test coverage sentry-deno-*.tgz",
+ "clean": "rimraf build build-types build-test coverage node_modules/.deno sentry-deno-*.tgz",
"prefix": "yarn deno-types",
"fix": "eslint . --format stylish --fix",
"prelint": "yarn deno-types",
"lint": "eslint . --format stylish",
"install:deno": "node ./scripts/install-deno.mjs",
- "pretest": "run-s deno-types test:build",
+ "pretest": "run-s deno-types",
"test": "run-s install:deno test:types test:unit",
- "test:build": "tsc -p tsconfig.test.types.json && rollup -c rollup.test.config.mjs",
"test:types": "deno check ./build/index.mjs",
"test:unit": "deno test --allow-read --allow-run",
"test:unit:update": "deno test --allow-read --allow-write --allow-run -- --update",
diff --git a/packages/deno/rollup.test.config.mjs b/packages/deno/rollup.test.config.mjs
deleted file mode 100644
index 2902fcfe39b0..000000000000
--- a/packages/deno/rollup.test.config.mjs
+++ /dev/null
@@ -1,45 +0,0 @@
-import nodeResolve from '@rollup/plugin-node-resolve';
-import sucrase from '@rollup/plugin-sucrase';
-import { defineConfig } from 'rollup';
-// @ts-check
-import dts from 'rollup-plugin-dts';
-
-export default [
- defineConfig({
- input: ['test/build.ts'],
- output: {
- file: 'build-test/index.js',
- sourcemap: true,
- preserveModules:
- process.env.SENTRY_BUILD_PRESERVE_MODULES === undefined
- ? false
- : Boolean(process.env.SENTRY_BUILD_PRESERVE_MODULES),
- strict: false,
- freeze: false,
- interop: 'auto',
- format: 'esm',
- banner: '/// ',
- },
- plugins: [
- nodeResolve({
- extensions: ['.mjs', '.js', '.json', '.node', '.ts', '.tsx'],
- }),
- sucrase({ transforms: ['typescript'] }),
- ],
- }),
- defineConfig({
- input: './build-test/build.d.ts',
- output: [{ file: 'build-test/index.d.ts', format: 'es' }],
- plugins: [
- dts({ respectExternal: true }),
- // The bundled types contain a declaration for the __DEBUG_BUILD__ global
- // This can result in errors about duplicate global declarations so we strip it out!
- {
- name: 'strip-global',
- renderChunk(code) {
- return { code: code.replace(/declare global \{\s*const __DEBUG_BUILD__: boolean;\s*\}/g, '') };
- },
- },
- ],
- }),
-];
diff --git a/packages/deno/rollup.types.config.mjs b/packages/deno/rollup.types.config.mjs
index ccfb62251351..4bd81990f8bd 100644
--- a/packages/deno/rollup.types.config.mjs
+++ b/packages/deno/rollup.types.config.mjs
@@ -6,7 +6,7 @@ export default defineConfig({
input: './build-types/index.d.ts',
output: [{ file: 'build/index.d.ts', format: 'es' }],
plugins: [
- dts({ respectExternal: true }),
+ dts({ respectExternal: false }),
// The bundled types contain a declaration for the __DEBUG_BUILD__ global
// This can result in errors about duplicate global declarations so we strip it out!
{
diff --git a/packages/deno/test/__snapshots__/mod.test.ts.snap b/packages/deno/test/__snapshots__/mod.test.ts.snap
index f9f3006c34c4..2142108a79f4 100644
--- a/packages/deno/test/__snapshots__/mod.test.ts.snap
+++ b/packages/deno/test/__snapshots__/mod.test.ts.snap
@@ -48,7 +48,7 @@ snapshot[`captureException 1`] = `
filename: "app:///test/mod.test.ts",
function: "?",
in_app: true,
- lineno: 46,
+ lineno: 44,
post_context: [
"",
" await delay(200);",
@@ -56,7 +56,7 @@ snapshot[`captureException 1`] = `
"});",
"",
"Deno.test('captureMessage', async t => {",
- " let ev: sentryTypes.Event | undefined;",
+ " let ev: Event | undefined;",
],
pre_context: [
" ev = event;",
@@ -74,7 +74,7 @@ snapshot[`captureException 1`] = `
filename: "app:///test/mod.test.ts",
function: "something",
in_app: true,
- lineno: 43,
+ lineno: 41,
post_context: [
" }",
"",
@@ -86,7 +86,7 @@ snapshot[`captureException 1`] = `
],
pre_context: [
"Deno.test('captureException', async t => {",
- " let ev: sentryTypes.Event | undefined;",
+ " let ev: Event | undefined;",
" const client = getTestClient(event => {",
" ev = event;",
" });",
diff --git a/packages/deno/test/build.ts b/packages/deno/test/build.ts
deleted file mode 100644
index 2ea3d4191454..000000000000
--- a/packages/deno/test/build.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-// We use this as the entry point to bundle Sentry dependencies that are used by the tests.
-export * as sentryTypes from '@sentry/core';
-export * as sentryUtils from '@sentry/core';
-export * as sentryCore from '@sentry/core';
diff --git a/packages/deno/test/mod.test.ts b/packages/deno/test/mod.test.ts
index 656d9301b7ca..e37de1c440ec 100644
--- a/packages/deno/test/mod.test.ts
+++ b/packages/deno/test/mod.test.ts
@@ -1,21 +1,19 @@
import { assertEquals } from 'https://deno.land/std@0.202.0/assert/assert_equals.ts';
import { assertSnapshot } from 'https://deno.land/std@0.202.0/testing/snapshot.ts';
-import type { sentryTypes } from '../build-test/index.js';
-import { sentryUtils } from '../build-test/index.js';
+import type { Event } from '@sentry/core';
+import { createStackParser, nodeStackLineParser } from '@sentry/core';
import { DenoClient, getCurrentScope, getDefaultIntegrations } from '../build/index.mjs';
+
import { getNormalizedEvent } from './normalize.ts';
import { makeTestTransport } from './transport.ts';
-function getTestClient(
- callback: (event?: sentryTypes.Event) => void,
- integrations: sentryTypes.Integration[] = [],
-): DenoClient {
+function getTestClient(callback: (event?: Event) => void): DenoClient {
const client = new DenoClient({
dsn: 'https://233a45e5efe34c47a3536797ce15dafa@nothing.here/5650507',
debug: true,
- integrations: [...getDefaultIntegrations({}), ...integrations],
- stackParser: sentryUtils.createStackParser(sentryUtils.nodeStackLineParser()),
+ integrations: getDefaultIntegrations({}),
+ stackParser: createStackParser(nodeStackLineParser()),
transport: makeTestTransport(envelope => {
callback(getNormalizedEvent(envelope));
}),
@@ -34,7 +32,7 @@ function delay(time: number): Promise {
}
Deno.test('captureException', async t => {
- let ev: sentryTypes.Event | undefined;
+ let ev: Event | undefined;
const client = getTestClient(event => {
ev = event;
});
@@ -50,7 +48,7 @@ Deno.test('captureException', async t => {
});
Deno.test('captureMessage', async t => {
- let ev: sentryTypes.Event | undefined;
+ let ev: Event | undefined;
const client = getTestClient(event => {
ev = event;
});
@@ -62,7 +60,7 @@ Deno.test('captureMessage', async t => {
});
Deno.test('captureMessage twice', async t => {
- let ev: sentryTypes.Event | undefined;
+ let ev: Event | undefined;
const client = getTestClient(event => {
ev = event;
});
diff --git a/packages/deno/test/normalize.ts b/packages/deno/test/normalize.ts
index 2946ea8de153..3edc273b75cd 100644
--- a/packages/deno/test/normalize.ts
+++ b/packages/deno/test/normalize.ts
@@ -1,21 +1,21 @@
/* eslint-disable complexity */
-import type { sentryTypes } from '../build-test/index.js';
-import { sentryUtils } from '../build-test/index.js';
+import type { Envelope, Event, Session } from '@sentry/core';
+import { forEachEnvelopeItem } from '@sentry/core';
-type EventOrSession = sentryTypes.Event | sentryTypes.Session;
+type EventOrSession = Event | Session;
-export function getNormalizedEvent(envelope: sentryTypes.Envelope): sentryTypes.Event | undefined {
- let event: sentryTypes.Event | undefined;
+export function getNormalizedEvent(envelope: Envelope): Event | undefined {
+ let event: Event | undefined;
- sentryUtils.forEachEnvelopeItem(envelope, item => {
+ forEachEnvelopeItem(envelope, item => {
const [headers, body] = item;
if (headers.type === 'event') {
- event = body as sentryTypes.Event;
+ event = body as Event;
}
});
- return normalize(event) as sentryTypes.Event | undefined;
+ return normalize(event) as Event | undefined;
}
export function normalize(event: EventOrSession | undefined): EventOrSession | undefined {
@@ -24,14 +24,14 @@ export function normalize(event: EventOrSession | undefined): EventOrSession | u
}
if (eventIsSession(event)) {
- return normalizeSession(event as sentryTypes.Session);
+ return normalizeSession(event as Session);
} else {
- return normalizeEvent(event as sentryTypes.Event);
+ return normalizeEvent(event as Event);
}
}
export function eventIsSession(data: EventOrSession): boolean {
- return !!(data as sentryTypes.Session)?.sid;
+ return !!(data as Session)?.sid;
}
/**
@@ -40,7 +40,7 @@ export function eventIsSession(data: EventOrSession): boolean {
* All properties that are timestamps, versions, ids or variables that may vary
* by platform are replaced with placeholder strings
*/
-function normalizeSession(session: sentryTypes.Session): sentryTypes.Session {
+function normalizeSession(session: Session): Session {
if (session.sid) {
session.sid = '{{id}}';
}
@@ -66,7 +66,7 @@ function normalizeSession(session: sentryTypes.Session): sentryTypes.Session {
* All properties that are timestamps, versions, ids or variables that may vary
* by platform are replaced with placeholder strings
*/
-function normalizeEvent(event: sentryTypes.Event): sentryTypes.Event {
+function normalizeEvent(event: Event): Event {
if (event.sdk?.version) {
event.sdk.version = '{{version}}';
}
diff --git a/packages/deno/test/transport.ts b/packages/deno/test/transport.ts
index d18bd610c7dc..f8e39168148f 100644
--- a/packages/deno/test/transport.ts
+++ b/packages/deno/test/transport.ts
@@ -1,25 +1,29 @@
-import type { sentryTypes } from '../build-test/index.js';
-import { sentryCore, sentryUtils } from '../build-test/index.js';
+import type {
+ BaseTransportOptions,
+ Envelope,
+ Transport,
+ TransportMakeRequestResponse,
+ TransportRequest,
+} from '@sentry/core';
+import { createTransport, parseEnvelope } from '@sentry/core';
-export interface TestTransportOptions extends sentryTypes.BaseTransportOptions {
- callback: (envelope: sentryTypes.Envelope) => void;
+export interface TestTransportOptions extends BaseTransportOptions {
+ callback: (envelope: Envelope) => void;
}
/**
* Creates a Transport that uses the Fetch API to send events to Sentry.
*/
-export function makeTestTransport(callback: (envelope: sentryTypes.Envelope) => void) {
- return (options: sentryTypes.BaseTransportOptions): sentryTypes.Transport => {
- async function doCallback(
- request: sentryTypes.TransportRequest,
- ): Promise {
- await callback(sentryUtils.parseEnvelope(request.body));
+export function makeTestTransport(callback: (envelope: Envelope) => void) {
+ return (options: BaseTransportOptions): Transport => {
+ async function doCallback(request: TransportRequest): Promise {
+ await callback(parseEnvelope(request.body));
return Promise.resolve({
statusCode: 200,
});
}
- return sentryCore.createTransport(options, doCallback);
+ return createTransport(options, doCallback);
};
}
diff --git a/packages/deno/tsconfig.test.types.json b/packages/deno/tsconfig.test.types.json
deleted file mode 100644
index 1cac4cb38a90..000000000000
--- a/packages/deno/tsconfig.test.types.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "extends": "./tsconfig.json",
- "include": ["./lib.deno.d.ts", "test/build.ts"],
- "compilerOptions": {
- "declaration": true,
- "declarationMap": false,
- "emitDeclarationOnly": true,
- "outDir": "build-test"
- }
-}