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

Update dependency monolog/monolog to v3 #13

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

Conversation

renovate[bot]
Copy link

@renovate renovate bot commented May 16, 2022

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
monolog/monolog ~1.17 -> ~3.0 age adoption passing confidence

Release Notes

Seldaek/monolog (monolog/monolog)

v3.7.0

Compare Source

  • Added NormalizerFormatter->setBasePath(...) (and JsonFormatter by extension) that allows removing the project's path from the stack trace output (47e301d)
    • Fixed JsonFormatter handling of incomplete classes (#​1834)
    • Fixed private error handlers causing problems with custom StreamHandler implementations (#​1866)

v3.6.0

Compare Source

  • Added LineFormatter->setBasePath(...) that allows removing the project's path from the stack trace output (#​1873)
    • Added $includeExtra option in PsrHandler to also use extra data to replace placeholder values in the message (#​1852)
    • Added ability to customize what is a duplicated message by extending the DeduplicationHandler (#​1879)
    • Added handling for using GelfMessageFormatter together with the AmqpHandler (#​1869)
    • Added ability to extend GoogleCloudLoggingFormatter (#​1859)
    • Fixed __toString failures in context data crashing the normalization process (#​1868)
    • Fixed PHP 8.4 deprecation warnings (#​1874)

v3.5.0

Compare Source

  • Added ability to indent stack traces in LineFormatter via e.g. indentStacktraces(' ') (#​1835)
    • Added ability to configure a max level name length in LineFormatter via e.g. setMaxLevelNameLength(3) (#​1850)
    • Added support for indexed arrays (i.e. [] and not {} arrays once json serialized) containing inline linebreaks in LineFormatter (#​1818)
    • Added WithMonologChannel attribute for integrators to use to configure autowiring (#​1847)
    • Fixed log record extra data leaking between handlers that have handler-specific processors set (#​1819)
    • Fixed LogglyHandler issue with record level filtering (#​1841)
    • Fixed display_errors parsing in ErrorHandler which did not support string values (#​1804)
    • Fixed bug where the previous error handler would not be restored in some cases where StreamHandler fails (#​1815)
    • Fixed normalization error when normalizing incomplete classes (#​1833)

v3.4.0

Compare Source

  • Added LoadAverageProcessor to track one of the 1, 5 or 15min load averages (#​1803)
    • Added support for priority to the AsMonologProcessor attribute (#​1797)
    • Added TelegramBotHandler topic/message_thread_id support (#​1802)
    • Fixed FingersCrossedHandler passthruLevel checking (#​1801)
    • Fixed support of yearly and monthly rotation log file to rotate only once a month/year (#​1805)
    • Fixed TestHandler method docs (#​1794)
    • Fixed handling of falsey display_errors string values (#​1804)

v3.3.1

Compare Source

  • Fixed Logger not being serializable anymore (#​1792)

v3.3.0

Compare Source

  • Deprecated FlowdockHandler & Formatter as the flowdock service was shutdown (#​1748)
    • Added ClosureContextProcessor to allow delaying the creation of context data by setting a Closure in context which is called when the log record is used (#​1745)
    • Added an ElasticsearchHandler option to set the op_type to create instead of the default index (#​1766)
    • Added support for enum context values in PsrLogMessageProcessor (#​1773)
    • Added graylog2/gelf-php 2.x support (#​1747)
    • Improved BrowserConsoleHandler logging to use more appropriate methods than just console.log in the browser (#​1739)
    • Fixed GitProcessor not filtering correctly based on Level (#​1749)
    • Fixed WhatFailureGroupHandler not catching errors happening inside close() (#​1791)
    • Fixed datetime field in GoogleCloudLoggingFormatter (#​1758)
    • Fixed infinite loop detection within Fibers (#​1753)
    • Fixed AmqpHandler->setExtraAttributes not working with buffering handler wrappers (#​1781)

v3.2.0

Compare Source

  • Deprecated CubeHandler and PHPConsoleHandler as both projects are abandoned and those should not be used anymore (#​1734)
    • Marked Logger @final as it should not be extended, prefer composition or talk to us if you are missing something
    • Added RFC 5424 level (7 to 0) support to Logger::log and Logger::addRecord to increase interoperability (#​1723)
    • Added SyslogFormatter to output syslog-like files which can be consumed by tools like lnav (#​1689)
    • Added support for __toString for objects which are not json serializable in JsonFormatter (#​1733)
    • Added GoogleCloudLoggingFormatter (#​1719)
    • Added support for Predis 2.x (#​1732)
    • Added AmqpHandler->setExtraAttributes to allow configuring attributes when using an AMQPExchange (#​1724)
    • Fixed serialization/unserialization of handlers to make sure private properties are included (#​1727)
    • Fixed allowInlineLineBreaks in LineFormatter causing issues with windows paths containing \n or \r sequences (#​1720)
    • Fixed max normalization depth not being taken into account when formatting exceptions with a deep chain of previous exceptions (#​1726)
    • Fixed PHP 8.2 deprecation warnings (#​1722)
    • Fixed rare race condition or filesystem issue where StreamHandler is unable to create the directory the log should go into yet it exists already (#​1678)

v3.1.0

Compare Source

  • Added $datetime parameter to Logger::addRecord as low level API to allow logging into the past or future (#​1682)
    • Added Logger::useLoggingLoopDetection to allow disabling cyclic logging detection in concurrent frameworks (#​1681)
    • Fixed handling of fatal errors if callPrevious is disabled in ErrorHandler (#​1670)
    • Fixed interop issue by removing the need for a return type in ProcessorInterface (#​1680)
    • Marked the reusable Monolog\Test\TestCase class as @internal to make sure PHPStorm does not show it above PHPUnit, you may still use it to test your own handlers/etc though (#​1677)
    • Fixed RotatingFileHandler issue when the date format contained slashes (#​1671)

v3.0.0

Compare Source

Changes from RC1

  • The Monolog\LevelName enum does not exist anymore, use Monolog\Level->getName() instead.

v2.9.3

Compare Source

  • Fixed PHP 8.4 deprecation warnings (#​1874)

v2.9.2

Compare Source

  • Fixed display_errors parsing in ErrorHandler which did not support string values (#​1804)
    • Fixed bug where the previous error handler would not be restored in some cases where StreamHandler fails (#​1815)
    • Fixed normalization error when normalizing incomplete classes (#​1833)

v2.9.1

Compare Source

  • Fixed Logger not being serializable anymore (#​1792)

v2.9.0

Compare Source

  • Deprecated FlowdockHandler & Formatter as the flowdock service was shutdown (#​1748)
    • Added support for enum context values in PsrLogMessageProcessor (#​1773)
    • Added graylog2/gelf-php 2.x support (#​1747)
    • Improved BrowserConsoleHandler logging to use more appropriate methods than just console.log in the browser (#​1739)
    • Fixed WhatFailureGroupHandler not catching errors happening inside close() (#​1791)
    • Fixed datetime field in GoogleCloudLoggingFormatter (#​1758)
    • Fixed infinite loop detection within Fibers (#​1753)
    • Fixed AmqpHandler->setExtraAttributes not working with buffering handler wrappers (#​1781)

v2.8.0

Compare Source

  • Deprecated CubeHandler and PHPConsoleHandler as both projects are abandoned and those should not be used anymore (#​1734)
    • Added RFC 5424 level (7 to 0) support to Logger::log and Logger::addRecord to increase interoperability (#​1723)
    • Added support for __toString for objects which are not json serializable in JsonFormatter (#​1733)
    • Added GoogleCloudLoggingFormatter (#​1719)
    • Added support for Predis 2.x (#​1732)
    • Added AmqpHandler->setExtraAttributes to allow configuring attributes when using an AMQPExchange (#​1724)
    • Fixed serialization/unserialization of handlers to make sure private properties are included (#​1727)
    • Fixed allowInlineLineBreaks in LineFormatter causing issues with windows paths containing \n or \r sequences (#​1720)
    • Fixed max normalization depth not being taken into account when formatting exceptions with a deep chain of previous exceptions (#​1726)
    • Fixed PHP 8.2 deprecation warnings (#​1722)
    • Fixed rare race condition or filesystem issue where StreamHandler is unable to create the directory the log should go into yet it exists already (#​1678)

v2.7.0

Compare Source

  • Added $datetime parameter to Logger::addRecord as low level API to allow logging into the past or future (#​1682)
    • Added Logger::useLoggingLoopDetection to allow disabling cyclic logging detection in concurrent frameworks (#​1681)
    • Fixed handling of fatal errors if callPrevious is disabled in ErrorHandler (#​1670)
    • Marked the reusable Monolog\Test\TestCase class as @internal to make sure PHPStorm does not show it above PHPUnit, you may still use it to test your own handlers/etc though (#​1677)
    • Fixed RotatingFileHandler issue when the date format contained slashes (#​1671)

v2.6.0

Compare Source

  • Deprecated SwiftMailerHandler, use SymfonyMailerHandler instead
    • Added SymfonyMailerHandler (#​1663)
    • Added ElasticSearch 8.x support to the ElasticsearchHandler (#​1662)
    • Added a way to filter/modify stack traces in LineFormatter (#​1665)
    • Fixed UdpSocket not being able to reopen/reconnect after close()
    • Fixed infinite loops if a Handler is triggering logging while handling log records

v2.5.0

Compare Source

  • Added callType to IntrospectionProcessor (#​1612)
    • Fixed AsMonologProcessor syntax to be compatible with PHP 7.2 (#​1651)

v2.4.0

Compare Source

  • Added Monolog\LogRecord interface that can be used to type-hint records like array|\Monolog\LogRecord $record to be forward compatible with the upcoming Monolog 3 changes
    • Added includeStacktraces constructor params to LineFormatter & JsonFormatter (#​1603)
    • Added persistent, timeout, writingTimeout, connectionTimeout, chunkSize constructor params to SocketHandler and derivatives (#​1600)
    • Added AsMonologProcessor PHP attribute which can help autowiring / autoconfiguration of processors if frameworks / integrations decide to make use of it. This is useless when used purely with Monolog (#​1637)
    • Added support for keeping native BSON types as is in MongoDBFormatter (#​1620)
    • Added support for a user_agent key in WebProcessor, disabled by default but you can use it by configuring the $extraFields you want (#​1613)
    • Added support for username/userIcon in SlackWebhookHandler (#​1617)
    • Added extension points to BrowserConsoleHandler (#​1593)
    • Added record message/context/extra info to exceptions thrown when a StreamHandler cannot open its stream to avoid completely losing the data logged (#​1630)
    • Fixed error handler signature to accept a null $context which happens with internal PHP errors (#​1614)
    • Fixed a few setter methods not returning self (#​1609)
    • Fixed handling of records going over the max Telegram message length (#​1616)

v2.3.5

Compare Source

  • Fixed regression in StreamHandler since 2.3.3 on systems with the memory_limit set to >=20GB (#​1592)

v2.3.4

Compare Source

  • Fixed support for psr/log 3.x (#​1589)

v2.3.3

Compare Source

  • Fixed memory usage when using StreamHandler and calling stream_get_contents on the resource you passed to it (#​1578, #​1577)
    • Fixed support for psr/log 2.x (#​1587)
    • Fixed some type annotations

v2.3.2

Compare Source

  • Fixed compatibility with PHP 7.2 - 7.4 when experiencing PCRE errors (#​1568)

v2.3.1

Compare Source

  • Fixed Utils::getClass handling of anonymous classes not being fully compatible with PHP 8 (#​1563)
    • Fixed some @inheritDoc annotations having the wrong case

v2.3.0

Compare Source

  • Added a ton of PHPStan type annotations as well as type aliases on Monolog\Logger for Record, Level and LevelName that you can import (#​1557)
    • Added ability to customize date format when using JsonFormatter (#​1561)
    • Fixed FilterHandler not calling reset on its internal handler when reset() is called on it (#​1531)
    • Fixed SyslogUdpHandler not setting the timezone correctly on DateTimeImmutable instances (#​1540)
    • Fixed StreamHandler thread safety - chunk size set to 2GB now to avoid interlacing when doing concurrent writes (#​1553)

v2.2.0

Compare Source

  • Added JSON_PARTIAL_OUTPUT_ON_ERROR to default json encoding flags, to avoid dropping entire context data or even records due to an invalid subset of it somewhere
    • Added setDateFormat to NormalizerFormatter (and Line/Json formatters by extension) to allow changing this after object creation
    • Added RedisPubSubHandler to log records to a Redis channel using PUBLISH
    • Added support for Elastica 7, and deprecated the $type argument of ElasticaFormatter which is not in use anymore as of Elastica 7
    • Added support for millisecond write timeouts in SocketHandler, you can now pass floats to setWritingTimeout, e.g. 0.2 is 200ms
    • Added support for unix sockets in SyslogUdpHandler (set $port to 0 to make the $host a unix socket)
    • Added handleBatch support for TelegramBotHandler
    • Added RFC5424e extended date format including milliseconds to SyslogUdpHandler
    • Added support for configuring handlers with numeric level values in strings (coming from e.g. env vars)
    • Fixed Wildfire/FirePHP/ChromePHP handling of unicode characters
    • Fixed PHP 8 issues in SyslogUdpHandler
    • Fixed internal type error when mbstring is missing

v2.1.1

Compare Source

  • Fixed removing of json encoding options
    • Fixed type hint of $level not accepting strings in SendGridHandler and OverflowHandler
    • Fixed SwiftMailerHandler not accepting email templates with an empty subject
    • Fixed array access on null in RavenHandler
    • Fixed unique_id in WebProcessor not being disableable

v2.1.0

Compare Source

  • Added JSON_INVALID_UTF8_SUBSTITUTE to default json flags, so that invalid UTF8 characters now get converted to instead of being converted from ISO-8859-15 to UTF8 as it was before, which was hardly a comprehensive solution
    • Added $ignoreEmptyContextAndExtra option to JsonFormatter to skip empty context/extra entirely from the output
    • Added $parseMode, $disableWebPagePreview and $disableNotification options to TelegramBotHandler
    • Added tentative support for PHP 8
    • NormalizerFormatter::addJsonEncodeOption and removeJsonEncodeOption are now public to allow modifying default json flags
    • Fixed GitProcessor type error when there is no git repo present
    • Fixed normalization of SoapFault objects containing deeply nested objects as "detail"
    • Fixed support for relative paths in RotatingFileHandler

v2.0.2

Compare Source

  • Fixed ElasticsearchHandler swallowing exceptions details when failing to index log records
    • Fixed normalization of SoapFault objects containing non-strings as "detail" in LineFormatter
    • Fixed formatting of resources in JsonFormatter
    • Fixed RedisHandler failing to use MULTI properly when passed a proxied Redis instance (e.g. in Symfony with lazy services)
    • Fixed FilterHandler triggering a notice when handleBatch was filtering all records passed to it
    • Fixed Turkish locale messing up the conversion of level names to their constant values

v2.0.1

Compare Source

  • Fixed normalization of Traversables to avoid traversing them as not all of them are rewindable
    • Fixed setFormatter/getFormatter to forward to the nested handler in FilterHandler, FingersCrossedHandler, BufferHandler, OverflowHandler and SamplingHandler
    • Fixed BrowserConsoleHandler formatting when using multiple styles
    • Fixed normalization of exception codes to be always integers even for PDOException which have them as numeric strings
    • Fixed normalization of SoapFault objects containing non-strings as "detail"
    • Fixed json encoding across all handlers to always attempt recovery of non-UTF-8 strings instead of failing the whole encoding
    • Fixed ChromePHPHandler to avoid sending more data than latest Chrome versions allow in headers (4KB down from 256KB).
    • Fixed type error in BrowserConsoleHandler when the context array of log records was not associative.

v2.0.0

Compare Source

  • BC Break: This is a major release, see UPGRADE.md for details if you are coming from a 1.x release
    • BC Break: Logger methods log/debug/info/notice/warning/error/critical/alert/emergency now have explicit void return types
    • Added FallbackGroupHandler which works like the WhatFailureGroupHandler but stops dispatching log records as soon as one handler accepted it
    • Fixed support for UTF-8 when cutting strings to avoid cutting a multibyte-character in half
    • Fixed normalizers handling of exception backtraces to avoid serializing arguments in some cases
    • Fixed date timezone handling in SyslogUdpHandler

v1.27.1

Compare Source

  • Fixed MandrillHandler support for SwiftMailer 6 (#​1676)
    • Fixed StreamHandler chunk size (backport from #​1552)

v1.27.0

Compare Source

  • Added $maxDepth / setMaxDepth to NormalizerFormatter / JsonFormatter to configure the maximum depth if the default of 9 does not work for you (#​1633)

v1.26.1

Compare Source

  • Fixed PHP 8.1 deprecation warning

v1.26.0

Compare Source

  • Added $dateFormat and $removeUsedContextFields arguments to PsrLogMessageProcessor (backport from 2.x)

v1.25.5

Compare Source

  • Fixed array access on null in RavenHandler
    • Fixed unique_id in WebProcessor not being disableable

v1.25.4

Compare Source

  • Fixed GitProcessor type error when there is no git repo present
    • Fixed normalization of SoapFault objects containing deeply nested objects as "detail"
    • Fixed support for relative paths in RotatingFileHandler

v1.25.3

Compare Source

  • Fixed formatting of resources in JsonFormatter
    • Fixed RedisHandler failing to use MULTI properly when passed a proxied Redis instance (e.g. in Symfony with lazy services)
    • Fixed FilterHandler triggering a notice when handleBatch was filtering all records passed to it
    • Fixed Turkish locale messing up the conversion of level names to their constant values

v1.25.2

Compare Source

  • Fixed normalization of Traversables to avoid traversing them as not all of them are rewindable
    • Fixed setFormatter/getFormatter to forward to the nested handler in FilterHandler, FingersCrossedHandler, BufferHandler and SamplingHandler
    • Fixed BrowserConsoleHandler formatting when using multiple styles
    • Fixed normalization of exception codes to be always integers even for PDOException which have them as numeric strings
    • Fixed normalization of SoapFault objects containing non-strings as "detail"
    • Fixed json encoding across all handlers to always attempt recovery of non-UTF-8 strings instead of failing the whole encoding

v1.25.1

Compare Source

  • Fixed forward-compatible interfaces to be compatible with Monolog 1.x too.

v1.25.0

Compare Source

  • Deprecated SlackbotHandler, use SlackWebhookHandler or SlackHandler instead
    • Deprecated RavenHandler, use sentry/sentry 2.x and their Sentry\Monolog\Handler instead
    • Deprecated HipChatHandler, migrate to Slack and use SlackWebhookHandler or SlackHandler instead
    • Added forward-compatible interfaces and traits FormattableHandlerInterface, FormattableHandlerTrait, ProcessableHandlerInterface, ProcessableHandlerTrait. If you use modern PHP and want to make code compatible with Monolog 1 and 2 this can help. You will have to require at least Monolog 1.25 though.
    • Added support for RFC3164 (outdated BSD syslog protocol) to SyslogUdpHandler
    • Fixed issue in GroupHandler and WhatFailureGroupHandler where setting multiple processors would duplicate records
    • Fixed issue in SignalHandler restarting syscalls functionality
    • Fixed normalizers handling of exception backtraces to avoid serializing arguments in some cases
    • Fixed ZendMonitorHandler to work with the latest Zend Server versions
    • Fixed ChromePHPHandler to avoid sending more data than latest Chrome versions allow in headers (4KB down from 256KB).

v1.24.0

Compare Source

  • BC Notice: If you are extending any of the Monolog's Formatters' normalize method, make sure you add the new $depth = 0 argument to your function signature to avoid strict PHP warnings.
    • Added a ResettableInterface in order to reset/reset/clear/flush handlers and processors
    • Added a ProcessorInterface as an optional way to label a class as being a processor (mostly useful for autowiring dependency containers)
    • Added a way to log signals being received using Monolog\SignalHandler
    • Added ability to customize error handling at the Logger level using Logger::setExceptionHandler
    • Added InsightOpsHandler to migrate users of the LogEntriesHandler
    • Added protection to NormalizerFormatter against circular and very deep structures, it now stops normalizing at a depth of 9
    • Added capture of stack traces to ErrorHandler when logging PHP errors
    • Added RavenHandler support for a contexts context or extra key to forward that to Sentry's contexts
    • Added forwarding of context info to FluentdFormatter
    • Added SocketHandler::setChunkSize to override the default chunk size in case you must send large log lines to rsyslog for example
    • Added ability to extend/override BrowserConsoleHandler
    • Added SlackWebhookHandler::getWebhookUrl and SlackHandler::getToken to enable class extensibility
    • Added SwiftMailerHandler::getSubjectFormatter to enable class extensibility
    • Dropped official support for HHVM in test builds
    • Fixed normalization of exception traces when call_user_func is used to avoid serializing objects and the data they contain
    • Fixed naming of fields in Slack handler, all field names are now capitalized in all cases
    • Fixed HipChatHandler bug where slack dropped messages randomly
    • Fixed normalization of objects in Slack handlers
    • Fixed support for PHP7's Throwable in NewRelicHandler
    • Fixed race bug when StreamHandler sometimes incorrectly reported it failed to create a directory
    • Fixed table row styling issues in HtmlFormatter
    • Fixed RavenHandler dropping the message when logging exception
    • Fixed WhatFailureGroupHandler skipping processors when using handleBatch
      and implement it where possible
    • Fixed display of anonymous class names

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), 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 was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/monolog-monolog-3.x branch from 59fafe6 to 8841c17 Compare November 20, 2022 08:19
@renovate renovate bot force-pushed the renovate/monolog-monolog-3.x branch from 8841c17 to 069b6a7 Compare March 16, 2023 23:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants