- Suggest installing Monolog to send log messages directly to Sentry (#908)
- Make the
$errcontextargument of theErrorHandler::handleError()methodnullable(#917)
- Fix deprecation raised when serializing callable in certain circumstances (#821)
- Fix incorrect
criticalbreadcrumb level by replacing it with thefatallevel (#901) - Fix regression on default sending behavior of the
HttpTransporttransport (#905) - Fix stacktrace frame inApp detection: all paths outside the project_root are now considered as not in app (#911)
- Fix handling of fifth argument in the error handler (#892)
- Catch exception from vendors in
Sentry\Transport\HttpTransport(#899)
- Disable default deprecation warning
Sentry\Transport\HttpTransport(#884)
- Change type hint for both parameter and return value of
HubInterface::getCurrentHubandHubInterface::setCurrentHub()methods (#849) - Add the
setTags,setExtrasandclearBreadcrumbsmethods to theScopeclass (#852) - Silently cast numeric values to strings when trying to set the tags instead of throwing (#858)
- Support force sending events on-demand and fix sending of events in long-running processes (#813)
- Update PHPStan and introduce Psalm (#846)
- Add an integration to set the transaction attribute of the event (#865)
- Deprecate
Hub::getCurrentandHub::setCurrentmethods to set the current hub instance (#847)
- Fix GZIP-compressed requests failing when
exit($code)was used to terminate the application (#877)
- Fix
TypeErrorinSentry\Monolog\Handlerwhen the extra data array has numeric keys (#833). - Fix sending of GZIP-compressed requests when the
enable_compressionoption istrue(#857) - Fix error thrown when trying to set the
transactionattribute of the event in a CLI environment (#862) - Fix integrations that were not skipped if the client bound to the current hub was not using them (#861)
- Fix undefined index generated by missing function in class (#823)
- Fix the behavior of the
excluded_exceptionsoption: now it's used to skip capture of exceptions, not to purge theexceptiondata of the event, which resulted in broken or empty chains of exceptions in reported events (#822) - Fix handling of uploaded files in the
RequestIntegration, to respect the PSR-7 spec fully (#827) - Fix use of
REMOTE_ADDRserver variable rather than HTTP header - Fix exception, open_basedir restriction in effect (#824)
- Mark Sentry internal frames when using
attach_stacktraceasin_appfalse(#786) - Increase default severity of
E_RECOVERABLE_ERRORtoSeverity::ERROR, instead of warning (#792) - Make it possible to register fatal error listeners separately from the error listeners
and change the type of the reported exception to
\Sentry\Exception\FatalErrorException(#788) - Add a static factory method to create a breadcrumb from an array of data (#798)
- Add support for
SENTRY_ENVRIONMENTandSENTRY_RELEASEenvironment variables (#810) - Add the
class_serializersoption to make it possible to customize how objects are serialized in the event payload (#809) - Fix the default value of the
$exceptionsproperty of the Event class (#806) - Add a Monolog handler (#808)
- Allow capturing the body of an HTTP request (#807)
- Capture exceptions during serialization, to avoid hard failures (#818)
- Do no longer report silenced errors by default (#785)
- New option
capture_silenced_errorto enable reporting of silenced errors, disabled by default (#785)
Version 2.0.0 is a complete rewrite of the existing SDK. Code Changes are needed. Please see UPGRADE 2.0 for more details.
- Updated .gitattributes to reduce package footprint (#770)
- Use multibyte functions to handle unicode paths (#774)
- Remove
Hub::getScope()to deny direct access toScopeinstances (#776) - Reintroduce
http_proxyoption (#775) - Added support for HTTPlug 2 / PSR-18 (#777)
- Rename
SentryAuthclass toSentryAuthentication(#742) Clientclass is now final- Fix issue with
ClientBuilder: factories are not instantiated if transport is set manually (#747) - Rename
excluded_pathstoin_app_excludeoption to follow Unified API spec (#755) - Add
max_value_lengthoption to trim long values during serialization (#754) - Lower the default
send_attemptsto 3 (#760) - Fix method argument name handling when Xdebug is enabled (#763)
- Add CI build under Windows with AppVeyor (#758) and fix some bugs
- Change the
ErrorHandlerand default integrations behavior: the handler is now a singleton, and it's possible to attach a number of callables as listeners for errors and exceptions (#762) - The
context_linesoptions changed the default to5and is properly applied (#743) - Add support for "formatted messages" in
captureEventas payload (#752) - Fix issue when capturing exceptions to remove warning when converting array args (#761)
- Require PHP >= 7.1
- Refactor the whole codebase to support the Unified API SDK specs
- See the UPGRADE.md document for more information.
- Added passing data from context in monolog breadcrumb handler (#683)
- Do not return error id if we know we did not send the error (#667)
- Do not force IPv4 protocol by default (#654)
- Remove secret_key from required keys for CLI test command. (#645)
- Proper case in Raven_Util class name usage. (#642)
- Support longer credit card numbers. (#635)
- Use configured message limit when creating serializers. (#634)
- Do not truncate strings if message limit is set to zero. (#630)
- Add option to ignore SERVER_PORT getting added to url. (#629)
- Cleanup the PHP version reported. (#604)
- Allow the use of a public DSN (private part of the DSN was deprecated in Sentry 9) (#615)
- Send transaction as transaction not as culprit (#601)
- Fixed undefined variable (#588)
- Fix for exceptions throwing exceptions when setting event id (#587)
- Fix monolog handler not accepting Throwable (#586)
- Add
excluded_exceptionsoption to exclude exceptions and their extending exceptions (#583) - Fix
HTTP_X_FORWARDED_PROTOheader detection (#578) - Fix sending events async in PHP 5 (#576)
- Avoid double reporting due to
ErrorExceptions (#574) - Make it possible to overwrite serializer message limit of 1024 (#559)
- Allow request data to be nested up to 5 levels deep (#554)
- Update serializer to handle UTF-8 characters correctly (#553)
- Revert ignoring fatal errors on PHP 7+ (#571)
- Add PHP runtime information (#564)
- Cleanup the
sitevalue if it's empty (#555) - Add
application/jsoninput handling (#546)
- Serialize breadcrumbs to prevent issues with binary data (#538)
- Fix notice array_key_exists() expects parameter 2 to be array, null given (#527)
- Improve handling DSN with "null" like values (#522)
- Prevent warning in Raven_Stacktrace (#493)
- Add setters for the serializers on the
Raven_Client(#515) - Avoid to capture
E_ERRORin PHP 7+, because it's also aThrowablethat gets captured and duplicates the error (#514)
- Use namespaced classes in test for PHPUnit (#506)
- Prevent segmentation fault on PHP
<5.6(#504) - Remove
ini_setcall for unneeded functionality (#501) - Exclude single
.phpfiles from the app path (#500) - Start testing PHP 7.2 (#489)
- Exclude anonymous frames from app path (#482)
- Fix of filtering sensitive data when there is an exception with multiple 'values' (#483)
- Corrected some issues with argument serialization in stacktraces (#399).
- The default exception handler will now re-raise exceptions when
call_existingis true and no exception handler is registered (#421). - Collect
User.ip_addressautomatically (#419). - Added a processor to remove web cookies. It will be enabled by default in
2.0(#405). - Added a processor to remove HTTP body data for POST, PUT, PATCH and DELETE requests. It will be enabled by default in
2.0(#405). - Added a processor to sanitize HTTP headers (e.g. the Authorization header) (#428).
- Added a processor to remove
pre_context,context_lineandpost_contextinformations from reported exceptions (#429).
- Fixed behavior where fatal errors weren't correctly being reported in most situations.
- Correct handling of null in
user_context.
- Improved serialization of certain types to be more restrictive.
error_typescan now be configured viaRavenClient.- Class serialization has been expanded to include attributes.
- The session extension is no longer required.
- Monolog is no longer a required dependency.
user_contextnow merges by default.
- Added named transaction support.
This version primarily overhauls the exception/stacktrace generation to fix a few bugs and improve the quality of data (#359).
- Added
excluded_app_pathsconfig. - Removed
shift_varsconfig. - Correct fatal error handling to only operate on expected types. This also fixes some behavior with the error suppression operator.
- Expose anonymous and similar frames in the stacktrace.
- Default
prefixesto PHP's include paths. - Remove
moduleusage. - Better handle empty argument context.
- Correct alignment of filename (current frame) and function (caller frame)
- Fixed an issue causing the error suppression operator to not be respected (#335)
- Fixed some serialization behavior (#352)
- Fixed an issue with app paths and trailing slashes (#350)
- Handle non-latin encoding with source code context line (#345)
- Handle non-latin encoding in source code and exception values (#342)
- Ensure pending events are sent on shutdown by default (#338)
- Add
captureLastErrorhelper (#334) - Dont report duplicate errors with fatal error handler (#334)
- Enforce maximum length for string serialization (#329)
- Uncoercable values should no longer prevent exceptions from sending to the Sentry server.
install()can no longer be called multiple times.
- Removed deprecated error codes configuration from ErrorHandler.
- Removed env data from HTTP interface.
- Removed
messageattribute from exceptions. - appPath and prefixes are now resolved fully.
- Fixed various getter methods requiring invalid args.
- Fixed data mutation with
send_callback.
- Improve handling of encodings.
- Improve resiliency of variable serialization.
- Add 'formatted' attribute to Message interface.
- Added
transportoption. - Added
install()shortcut.
- Handle missing function names on frames.
- Remove suppression operator usage in breadcrumbs buffer.
- Force serialization of context values.
- Add
error_reportingbreadcrumb handler.
- Remove session from serialized data.
send_callbackreturn value must now be false to prevent capture.- Add various getter/setter methods for configuration.
- Don't attempt to serialize fixed SDK inputs.
- Improvements to breadcrumbs support in Monolog.
- Initial breadcrumbs support with Monolog handler.
- Fixed some cases where serialization wouldn't happen.
- Added sdk attribute.
- Added
prefixesoption for stripping absolute paths. - Removed
abs_pathfrom stacktraces. - Added
app_pathto specify application root for resolvingin_appon frames. - Moved Laravel support to
sentry-laravelproject. - Fixed duplicate stack computation.
- Added
dsnoption to ease configuration. - Fixed an issue with the curl async transport.
- Improved serialization of values.
- Updated API to use new style interfaces.
- Remove session cookie in default processor.
- Expand docs for Laravel, Symfony2, and Monolog.
- Default error types can now be set as part of ErrorHandler configuration.
- Dont send empty values for various context.
- Bumped protocol version to 6.
- Fixed an issue with the async curl handler (GH-216).
- Removed UDP transport.
- New configuration parameter:
release - New configuration parameter:
message_limit - New configuration parameter:
curl_ssl_version - New configuration parameter:
curl_ipv4 - New configuration parameter:
verify_ssl - Updated remote endpoint to use modern project-based path.
- Expanded default sanitizer support to include
auth_pwattribute.
- Added a default certificate bundle which includes common root CA's as well as getsentry.com's CA.
- Change default curl connection to
sync - Improve CLI reporting
- Protocol version 5
- Default to asynchronous HTTP handler using curl_multi.
(For previous versions see the commit history)