This is a complete rewrite of toucan-js. The goal of this update is to reuse more components from @sentry/core, fix long-standing issues with source maps, and provide starters using various bundlers (esbuild, rollup, vite, webpack).
The good news is that toucan-js now supports pretty much all SDK options and methods provided in official Sentry SDKs for JavaScript that you all are used to and love.
The bad news is that I may fail to document all breaking changes, because toucan-js now delegates to a lot of code written by someone else. So use this release with caution. :)
All methods and options available on Hub that previously weren't available or didn't work are now supported. This includes integrations!
On integrations: some integrations from @sentry/integrations might not work because they use globals, or modify global runtime methods (such as console.log). Refer to README file that documents all supported integrations.
Total bundle size reduced from 65.3kB to 44.3kB. This is thanks to replacing stacktrace-js with our own stack parser. Pretty cool given that we added a ton of new features at the same time!
Breaking changes
Toucan now uses Envelopes protocol with POST /api/<project_id>/envelope/ endpoint, instead of previously used POST /api/<project_id>/store/ endpoint.
Toucan client is no longer the default export. It is now a named export.
Before:
import Toucan from 'toucan-js';
After:
import { Toucan } from 'toucan-js';
setFingerprint is no longer a top level method. This method is now available on Scope. There are many ways to configure scope:
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps toucan-js from 2.7.0 to 3.1.0.
Release notes
Sourced from toucan-js's releases.
... (truncated)
Commits
0ad38a1
Merge pull request #120 from robertcepa/changeset-release/mastercd13aaa
Version Packages4f95cea
Merge pull request #119 from robertcepa/sentry-deps/7.28.15f6cea5
Update sentry dependencies to 7.28.15712267
Merge pull request #116 from robertcepa/docs01ffabd
Clarify setRequestBody in documentationaa70df8
Merge pull request #114 from robertcepa/changeset-release/master7dd203c
Version Packages46321ce
Merge pull request #113 from robertcepa/rewrite-3.0adf151f
Full rewriteDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)