NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #1708 most downloaded on npm
A logger for just about everything.
Last release 10 months ago
07 Dec 2025
Release timing varies
gaps range from 8 days to 11 months
Some releases are documented
notes for 35 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
15 years old
94 releases · first in 2011
Don't include jest.config.js in npm package 5a63c8c
logger.child() (#2467) e74a7aeOne column per quarter.
Update diagnostics dependency (removes fix-esm transitive dependency) a15a9e9
Bump diagnostics package to resolve #2583 (again) f4582c3
Bump diagnostics package to resolve #2583 e668c2c
Update diagnostics package to latest version to remove vulnerability 376e331
Try winston-transport 4.9.0 3e87128
Feature - optionally include Error.cause property ( #2447 ) 201b6f1
Note: we removed LogCallback from the TS definitions because the underlying library didn't actually support these. If this causes issues in your apps,
Note: we removed LogCallback from the TS definitions because the underlying library didn't actually support these. If this causes issues in your apps, we recommend you remove references to LogCallbacks, since such code was not being executed anyways. See #2513 and the issue linked therein.
Move initialization to constructor ( #2503 ) 2458ba6
Save a reference to console methods in console transport ( #2498 ) e82752f
Add option forceConsole (#2276) b2098fd
https://github.com/winstonjs/winston/compare/v3.13.1...v3.14.0
revert to rimraf 5.0.1, last known version to work with node 18 for now 1b3a500
https://github.com/winstonjs/winston/compare/v3.13.0...v3.13.1
fix(http): allow passing maximumDepth to prevent big object being stringified (#2425) a237865
https://github.com/winstonjs/winston/compare/v3.12.1...v3.13.0
Bump @types/node from 20.11.24 to 20.11.29 (#2431) b10b98f
https://github.com/winstonjs/winston/compare/v3.12.0...v3.12.1
missing timestamp format in ready-to-use-pattern example (#2421) 9e5b407
https://github.com/winstonjs/winston/compare/v3.11.0...v3.12.0
Bump split2 from 4.1.0 to 4.2.0 (#2336) 37f4282
https://github.com/winstonjs/winston/compare/v3.10.0...v3.11.0
Avoid potential github issues - relax engines node requirement in package.json fc9c83d
https://github.com/winstonjs/winston/compare/v3.9.0...v3.10.0
Handle undefined errors in getAllInfo in exception-handler in https://github.com/winstonjs/winston/pull/2208; thanks to new contributor @eivindrs
Add .js to main entry point in package.json in https://github.com/winstonjs/winston/pull/2177; thanks to new contributor @rumanbsl
.js to main entry point in package.json in https://github.com/winstonjs/winston/pull/2177; thanks to new contributor @rumanbslUpdate types to match in-code definitions in https://github.com/winstonjs/winston/pull/2157; thanks to new contributor @flappyBug
Full Changelog: https://github.com/winstonjs/winston/compare/v3.8.0...v3.8.1
Add the stringify replacer option to the HTTP transport by @domiins in https://github.com/winstonjs/winston/pull/2155
Full Changelog: https://github.com/winstonjs/winston/compare/v3.7.2...v3.8.0
Revert for #2103 in https://github.com/winstonjs/winston/pull/2104
Full Changelog: https://github.com/winstonjs/winston/compare/v3.7.1...v3.7.2
The release announcement on GitHub is 24 days behind the NPM release in this case, sorry for the confusion!
This change includes some minor updates to package-lock.json resolving npm audit failures: one in ansi-regex and another in minimist.
This change includes some minor updates to package-lock.json resolving npm audit failures: one in ansi-regex and another in minimist.
Full Changelog: https://github.com/winstonjs/winston/compare/v3.7.0...v3.7.1
Changelog updates for v3.6.0 5e72485
process.nextTick to clear pending callbacks (#2057) f741383https://github.com/winstonjs/winston/compare/v3.5.1...v3.6.0
This release reverts the changes made in PR #1896 which added stricter typing to the available log levels, and inadvertently broke use of custom level
This release reverts the changes made in PR #1896 which added stricter typing to the available log levels, and inadvertently broke use of custom levels with TypeScript (Issue #2047). Apologies for that!
Add a channel for reporting security vulnerabilities (#2024, thanks @JamieSlome!)
This release includes the following, in sequence by first merge in group:
Feature updates:
Patch-level updates:
.rejections (#1842, #1929, #2021; thanks @vanflux, @svaj, @glensc, & others!)stringify, e.g. to avoid issues from circular structures, in the http transport (#2043, thanks @karlwir!)Updates to the repo & project which don’t actually affect the running code:
Thanks also to maintainers @DABH, @fearphage, @Maverick1872, and @wbt for issue/PR shepherding and help across multiple parts of the release!
If somebody got missed in the list of thanks, please forgive the accidental oversight and/or feel free to open a PR on the changelog.
Yesterday's release was done with a higher sense of urgency than usual due to vandalism in the colors package. This release:
Yesterday's release was done with a higher sense of urgency than usual due to vandalism in the colors package. This release:
The biggest change in this release, motivating the feature-level update, is [#2006] Make winston more ESM friendly, thanks to @miguelcobain.
Thanks also to @DABH, @wbt, and @fearphage for contributions and reviews!
Compared to v3.3.3, this version fixes some issues and includes some updates to project infrastructure, such as replacing Travis with Github CI and de
Compared to v3.3.3, this version fixes some issues and includes some updates to project infrastructure,
such as replacing Travis with Github CI and dependabot configuration.
There have also been several relatively minor improvements to documentation, and incorporation of some updated dependencies.
Dependency updates include a critical bug fix [#2008] in response to self-vandalism by the author of a dependency.
revert Fix bugs in type (#1807) (#1820) 35b0774
https://github.com/winstonjs/winston/compare/v3.3.2...v3.3.3
[#1814] Use fork of diagnostics on NPM to avoid making Docker images require git 0752614
https://github.com/winstonjs/winston/compare/v3.3.1...v3.3.2
Add space between info.message and meta.message (#1740) 227ca0a
info.message and meta.message (#1740) 227ca0acreateLogger type (#1807) ef97171https://github.com/winstonjs/winston/compare/v3.3.0...v3.3.1
doc: fix whitespace and trailing comma. (#1778) 9354721
require change (#1754) 73ae01fnpm logging levels on README.md (#1737) 7bb258cLogDNA Winston Transport (#1610) 8f4cddcchild on default logger (#1603) 80d3439https://github.com/winstonjs/winston/compare/3.2.1...v3.3.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
[x] Add friendly(ish) deprecation notices for common changes.
silent support.3.0.0 upgrade guide: https://github.com/winstonjs/winston/blob/master/UPGRADE-3.0.mdwinston. If we cannot log at high-volume we cannot ship out of RC. There was [test coverage for this][stress-test] that should be failing, but isnt. (Fixed by #1291).docs/transports.md.winston-transport, logformwinston itselfLogger.prototype.level and Transport.level play nice(r) together.new winston.Logger in favor of winston.createLogger.TransportStream and LegacyTransportStream.TransportStream and LegacyTransportStream into winston-transport.winston/config.js to winston/config/index.jswinston.clonewinston-transportvows-based tests.
test/*-test.jstest/formats/*-test.jstest/transports/*-test.jswinston.config into triple-beam around a base Levels class.
(Fixed in triple-beam@1.2.0)npm levels (e.g. including http).winston (currently ~72%).winston-transport.logformabstract-winston-transport.winston-compat.stream.Writable.writev in TransportStream.winston.format.colorize() format.winston.format.prettyPrint() format.winston.format.uncolorize() format.winston.format.logstash() format.winston.format.cli()ConsoleFileinfo objects
– Use triple-beam and Symbol.for('level').
winston.formats.colorize().Symbol.for('message')winston.format.padLevels() format.humanReadableUnhandledException should be the defaultwinston-compat to help with backwards compatibility for transport authors.README.md in winston.README.md for winston-transport.README.md for logform.examples/*.js to the new API.LogStream back to Logger.winston@2.0.0winston.Container instances no longer add any transports by default.( ) from all occurances of new winston.transports.*)winston@1.0.0 in logmark.winston@2.0.0 in logmark.bunyan in logmark.pino in logmark.pino benchmarks.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Utilizing async 2.6.4 for node 4 compatibility by @ansmithf5 in https://github.com/winstonjs/winston/pull/2166
Full Changelog: https://github.com/winstonjs/winston/compare/v2.4.6...v2.4.7
This updates a dependency to address https://security.snyk.io/vuln/SNYK-JS-ASYNC-2441827. See #2112 by @bacali95.
This updates a dependency to address https://security.snyk.io/vuln/SNYK-JS-ASYNC-2441827. See #2112 by @bacali95.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →