Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update dependency sentry/sentry to v4 #628

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 13, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
sentry/sentry (source) ^3.22.1 -> ^4.8.0 age adoption passing confidence

Release Notes

getsentry/sentry-php (sentry/sentry)

v4.8.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.8.0.

Features
  • Add timing span when emiting a timing metric (#​1717)

    use function Sentry\metrics;
    
    // This will now both emit a distribution metric and a span with the "expensive-operation" key
    metrics()->timing(
        key: 'expensive-operation',
        callback: fn() => doExpensiveOperation(),
    );
Bug Fixes
  • Fix missing data on HTTP spans (#​1735)
  • Test span sampled status before creating child spans (#​1740)
Misc
  • Implement fast path for ignoring errors (#​1737)
  • Add array shape for better autocomplete of Sentry\init function (#​1738)
  • Represent callable strings as strings (#​1741)
  • Use AWS_LAMBDA_FUNCTION_VERSION environment variable for release if available (#​1742)

v4.7.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.7.0.

Features
Bug Fixes
  • Fix deprecation notice when trying to serialize a callable (#​1732)
Misc
  • Deprecated SpanStatus::resourceExchausted(). Use SpanStatus::resourceExhausted() instead (#​1725)
  • Update metric normalization (#​1729)

v4.6.1

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.6.1.

Bug Fixes
  • Always add the sampled flag to the W3C traceparent header (#​1713)
  • Add JSON_ERROR_NON_BACKED_ENUM to allowed JSON::encode() errors. (#​1707)

v4.6.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.6.0.

Features
  • Add the PHP SAPI to the runtime context (#​1700)
Bug Fixes
  • Correctly apply properties/options in ClientBuilder::class (#​1699)
  • Attach _metrics_summary to transactions (#​1702)
Misc
  • Remove final from Metrics::class (#​1697)
  • Return early when using ignore_exceptions (#​1701)
  • Attach exceptions to the log message from FrameContextifierIntegration::class (#​1678)

v4.5.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.5.0.

Features
  • Add before_send_check_in and before_send_metrics (#​1690)

    \Sentry\init([
        'before_send_check_in' => function (\Sentry\Event $event) {
            $checkIn = $event->getCheckIn(),
            // modify the check-in or return null to not send it
        },
    ]);
    \Sentry\init([
        'before_send_metrics' => function (\Sentry\Event $event) {
            $metrics = $event->getMetrics(),
            // modify the metrics or return null to not send it
        },
    ]);
Bug Fixes
  • Fix _metrics_summary formatting (#​1682)

  • Fix DebugFileLogger and DebugStdOutLogger to be usable with PHP 7.2 and up (#​1691)

  • Allow whitespace in metric tag values (#​1692)

v4.4.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.4.0.

Features
  • Add metrics()->timing() (#​1670)

    This allows you to emit a distribution metric based on the duration of the provided callback.

    use function Sentry\metrics;
    
    metrics()->timing(
        key: 'my-metric',
        callback: fn() => doSomething(),
    );
  • Add withMonitor() (#​1679)

    This wraps a callback into monitor check-ins.

    use function Sentry\withMonitor;
    
    withMonitor(
        slug: 'my-monitor',
        callback: fn () => doSomething(),
        monitorConfig: new MonitorConfig(...),
    );
  • Add new failure_issue_threshold and recovery_threshold configuration to MonitorConfig (#​1685)

  • Add TransactionContext::make() and SpanContext::make() (#​1684)

    use Sentry\Tracing\SpanContext;
    
    $spanCpntext = SpanContext::make()
        ->setOp('http.client')
        ->setDescription('GET https://example.com')
  • Add support for fluent use of Transaction::setName() (#​1687)

  • Add support for the W3C traceparent header (#​1680)

Bug Fixes
  • Do not send an empty event if no metrics are in the bucket (#​1676)

  • Fix the http_ssl_verify_peer option to set the correct value to CURLOPT_SSL_VERIFYPEER (#​1686)

Misc
  • Depreacted UserDataBag::getSegment() and UserDataBag::setSegment(). You may use a custom tag or context instead (#​1681)

v4.3.1

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.3.1.

Bug Fixes
  • Fix tags not being serialized correctly for metrics (#​1672)
Misc
  • Remove @internal annotation from MetricsUnit class (#​1671)

v4.3.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.3.0.

Features
  • Add support for Sentry Developer Metrics (#​1619)

    use function Sentry\metrics;
    
    // Add 4 to a counter named hits
    metrics()->increment(key: 'hits', value: 4);
    
    // Add 25 to a distribution named response_time with unit milliseconds
    metrics()->distribution(key: 'response_time', value: 25, unit: MetricsUnit::millisecond());
    
    // Add 2 to gauge named parallel_requests, tagged with type: "a"
    metrics()->gauge(key: 'parallel_requests, value: 2, tags: ['type': 'a']);
    
    // Add a user's email to a set named users.sessions, tagged with role: "admin"
    metrics()->set('users.sessions, '[email protected]', null, ['role' => User::admin()]);
    
    // Add 2 to gauge named `parallel_requests`, tagged with `type: "a"`
    Sentry.metrics.gauge('parallel_requests', 2, { tags: { type: 'a' } });
    
    // Flush the metrics to Sentry
    metrics()->flush();
    
    // We recommend registering the flushing in a shutdown function
    register_shutdown_function(static fn () => metrics()->flush());

    To learn more about Sentry Developer Merics, join the discussion at https://github.com/getsentry/sentry-php/discussions/1666.

Bug Fixes
  • Disallow to seralize the HubAdapter::class (#​1663)
  • Do not overwrite trace context on event (#​1668)
  • Serialize breadcrumb data to display correct in the Sentry UI (#​1669)
Misc
  • Remove the final keyword from Hub::class, Client::class and Scope::class (#​1665)

v4.2.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.2.0.

Features
  • Add a config option to allow overriding the Spotlight url (#​1659)

    Sentry\init([
        'spotlight_url' => 'http:https://localhost:8969',
    ]);
Bug Fixes
  • Restore setting the logger value on the event payload (#​1657)

  • Only apply the sample_rate on error/message events (#​1662)

    This fixes an issue where Cron Check-Ins were wrongly sampled out if a sample_rate lower than 1.0 is used.

Misc
  • Remove the @internal annotation from ClientBuilder::class (#​1661)

v4.1.0

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.1.0.

Features
  • Add support for Spotlight (#​1647)

    Spotlight is Sentry for Development. Inspired by an old project, Django Debug Toolbar. Spotlight brings a rich debug overlay into development environments, and it does it by leveraging the existing power of Sentry's SDKs.

    To learn more about Spotlight, go to https://spotlightjs.com/.

Misc

v4.0.1

Compare Source

The Sentry SDK team is happy to announce the immediate availability of Sentry PHP SDK v4.0.1.

Bug Fixes
  • Fix capturing out-of-memory errors when memory-constrained (#​1636)
  • Check if the cURL extension is installed (#​1632)

v4.0.0

Compare Source

The Sentry SDK team is thrilled to announce the immediate availability of Sentry PHP SDK v4.0.0.

Breaking Change

Please refer to the UPGRADE-4.0.md guide for a complete list of breaking changes.

  • This version exclusively uses the envelope endpoint to send event data to Sentry.

    If you are using sentry.io, no action is needed.
    If you are using an on-premise/self-hosted installation of Sentry, the minimum requirement is now version >= v20.6.0.

  • You need to have ext-curl installed to use the SDK.

  • The IgnoreErrorsIntegration integration was removed. Use the ignore_exceptions option instead.

    Sentry\init([
        'ignore_exceptions' => [BadThingsHappenedException::class],
    ]);

    This option performs an is_a check now, so you can also ignore more generic exceptions.

Features
  • Add new fluent APIs (#​1601)

    // Before
    $transactionContext = new TransactionContext();
    $transactionContext->setName('GET /example');
    $transactionContext->setOp('http.server');
    
    // After
    $transactionContext = (new TransactionContext())
        ->setName('GET /example');
        ->setOp('http.server');
  • Simplify the breadcrumb API (#​1603)

    // Before
    \Sentry\addBreadcrumb(
        new \Sentry\Breadcrumb(
            \Sentry\Breadcrumb::LEVEL_INFO,
            \Sentry\Breadcrumb::TYPE_DEFAULT,
            'auth',                // category
            'User authenticated',  // message (optional)
            ['user_id' => $userId] // data (optional)
        )
    );
    
    // After
    \Sentry\addBreadcrumb(
        category: 'auth',
        message: 'User authenticated', // optional
        metadata: ['user_id' => $userId], // optional
        level: Breadcrumb::LEVEL_INFO, // set by default
        type: Breadcrumb::TYPE_DEFAULT, // set by default
    );
  • New logger option (#​1625)

    To make it easier to debug the internals of the SDK, the logger option now accepts a Psr\Log\LoggerInterface instance.
    We do provide two implementations, Sentry\Logger\DebugFileLogger and Sentry\Logger\DebugStdOutLogger.

    // This logs messages to the provided file path
    Sentry\init([
        'logger' => new DebugFileLogger(filePath: ROOT . DS . 'sentry.log'),
    ]);
    
    // This logs messages to stdout
    Sentry\init([
        'logger' => new DebugStdOutLogger(),
    ]);
  • New default cURL HTTP client (#​1589)

    The SDK now ships with its own HTTP client based on cURL. A few new options were added.

    Sentry\init([
        'http_proxy_authentication' => 'username:password', // user name and password to use for proxy authentication
        'http_ssl_verify_peer' => false, // default true, verify the peer's SSL certificate
        'http_compression' => false, // default true, http request body compression
    ]);

    To use a different client, you may use the http_client option.

    use Sentry\Client;
    use Sentry\HttpClient\HttpClientInterface;
    use Sentry\HttpClient\Request;
    use Sentry\HttpClient\Response;
    use Sentry\Options;
    
    $httpClient = new class() implements HttpClientInterface {
        public function sendRequest(Request $request, Options $options): Response
        {
    
            // your custom implementation
    
            return new Response($response->getStatusCode(), $response->getHeaders(), '');
        }
    };
    
    Sentry\init([
        'http_client' => $httpClient,
    ]);

    To use a different transport, you may use the transport option. A custom transport must implement the TransportInterface.
    If you use the transport option, the http_client option has no effect.

Misc
  • The abandoned package php-http/message-factory was removed.

Configuration

📅 Schedule: Branch creation - "before 5am on monday" in timezone Europe/Vienna, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 4 times, most recently from 9b631c5 to bc536d2 Compare November 20, 2023 08:58
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch from bc536d2 to ab1b7d5 Compare December 4, 2023 14:32
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 3 times, most recently from 0f97882 to 183dd43 Compare December 22, 2023 22:25
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 3 times, most recently from 582e9c2 to 9784070 Compare January 2, 2024 09:16
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch from 9784070 to c4fc392 Compare January 15, 2024 04:06
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 2 times, most recently from 49455fb to b027f7b Compare January 23, 2024 10:38
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 2 times, most recently from ad441d5 to 6f290a0 Compare February 5, 2024 04:18
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 2 times, most recently from 83e27dc to 902afe2 Compare February 19, 2024 04:30
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 2 times, most recently from 9b4032a to 3b209a6 Compare March 4, 2024 03:18
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch 2 times, most recently from 9c8663e to c68edc6 Compare March 11, 2024 04:29
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch from c68edc6 to 6aec3eb Compare March 18, 2024 04:41
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch from 6aec3eb to 3d24210 Compare April 10, 2024 13:42
@renovate renovate bot force-pushed the renovate/sentry-sentry-4.x branch from 3d24210 to cf05886 Compare June 5, 2024 14:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

0 participants