
Security News
Research
Supply Chain Attack on Rspack npm Packages Injects Cryptojacking Malware
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
@sentry/utils
Advanced tools
The @sentry/utils package provides a collection of utility functions and classes that are used across the Sentry JavaScript SDK. These utilities help with various tasks such as data manipulation, browser and node environment checks, and integration with Sentry's error tracking and performance monitoring features.
Data Manipulation
Provides utility functions for checking data types and manipulating data. For example, the `isString` function can be used to check if a variable is a string.
import { isString } from '@sentry/utils';
function logMessage(message) {
if (isString(message)) {
console.log(message);
} else {
console.log('Not a string');
}
}
Environment Checks
Includes functions to check the current runtime environment, such as whether the code is running in a browser or Node.js environment. This is useful for writing isomorphic code that runs both on the client and server.
import { isNodeEnv } from '@sentry/utils';
if (isNodeEnv()) {
console.log('Running in a Node environment');
} else {
console.log('Not running in a Node environment');
}
Integration Helpers
Provides functions and classes to help integrate with Sentry, including adding global event processors that can modify or filter events before they are sent to Sentry.
import { addGlobalEventProcessor } from '@sentry/utils';
addGlobalEventProcessor(event => {
// Modify the event object or return null to skip sending the event
return event;
});
Lodash is a comprehensive utility library offering a wide array of functions for tasks like data manipulation, array and object operations, and more. While it doesn't provide direct integrations with error tracking systems, its broad utility function set makes it a versatile tool for many of the same data manipulation tasks as @sentry/utils.
The debug package is used for logging debug messages in a development environment. It doesn't offer the same utility functions or Sentry integration as @sentry/utils, but it's useful for debugging applications in development, similar to how one might use Sentry's logging and error tracking in production.
DEPRECATION NOTICE: The
@sentry/utils
package is deprecated. All exports have been moved to@sentry/core
. Import everything from@sentry/core
instead.
Common utilities used by the Sentry JavaScript SDKs.
Note: This package is only meant to be used internally, and as such is not part of our public API contract and does not follow semver.
8.43.0
feat(nuxt): Add option autoInjectServerSentry (no default import()) (#14553)
Using the dynamic import()
as the default behavior for initializing the SDK on the server-side did not work for every project.
The default behavior of the SDK has been changed, and you now need to use the --import
flag to initialize Sentry on the server-side to leverage full functionality.
Example with --import
:
node --import ./.output/server/sentry.server.config.mjs .output/server/index.mjs
In case you are not able to use the --import
flag, you can enable auto-injecting Sentry in the nuxt.config.ts
(comes with limitations):
sentry: {
autoInjectServerSentry: 'top-level-import', // or 'experimental_dynamic-import'
},
feat(browser): Adds LaunchDarkly and OpenFeature integrations (#14207)
Adds browser SDK integrations for tracking feature flag evaluations through the LaunchDarkly JS SDK and OpenFeature Web SDK:
import * as Sentry from '@sentry/browser';
Sentry.init({
integrations: [
// Track LaunchDarkly feature flags
Sentry.launchDarklyIntegration(),
// Track OpenFeature feature flags
Sentry.openFeatureIntegration(),
],
});
feat(browser): Add featureFlagsIntegration
for custom tracking of flag evaluations (#14582)
Adds a browser integration to manually track feature flags with an API. Feature flags are attached to subsequent error events:
import * as Sentry from '@sentry/browser';
const featureFlagsIntegrationInstance = Sentry.featureFlagsIntegration();
Sentry.init({
// Initialize the SDK with the feature flag integration
integrations: [featureFlagsIntegrationInstance],
});
// Manually track a feature flag
featureFlagsIntegrationInstance.addFeatureFlag('my-feature', true);
feat(astro): Add Astro 5 support (#14613)
With this release, the Sentry Astro SDK officially supports Astro 5.
feat(nextjs): Deprecate typedef for hideSourceMaps
(#14594)
The functionality of hideSourceMaps
was removed in version 8 but was forgotten to be deprecated and removed.
It will be completely removed in the next major version.
feat(core): Deprecate APIs around RequestSession
s (#14566)
The APIs around RequestSession
s are mostly used internally.
Going forward the SDK will not expose concepts around RequestSession
s.
Instead, functionality around server-side Release Health will be managed in integrations.
browserSessionIntegration
(#14551)raw_security
envelope types (#14562)disableAnrDetectionForCallback
function (#14359)trackIncomingRequestsAsSessions
option to http integration (#14567)autoInjectServerSentry
(no default import()
) (#14553)^1.29.0
(#14590)1.28.0
(#14547)filename
and module
stack frame properties in Node stack parser (#14544)maxSpanWaitDuration
values (#14632)parseSearch
option in TanStack Router instrumentation (#14328)Work in this release was contributed by @lsmurray. Thank you for your contribution!
FAQs
Utilities for all Sentry JavaScript SDKs
The npm package @sentry/utils receives a total of 9,589,974 weekly downloads. As such, @sentry/utils popularity was classified as popular.
We found that @sentry/utils demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 11 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.
Security News
Sonar’s acquisition of Tidelift highlights a growing industry shift toward sustainable open source funding, addressing maintainer burnout and critical software dependencies.