Skip to content
This repository has been archived by the owner on Nov 10, 2021. It is now read-only.

Update dependency pino to v7 #972

Closed
wants to merge 1 commit into from
Closed

Update dependency pino to v7 #972

wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 27, 2021

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
pino (source) ~6.13.0 -> ~7.1.0 age adoption passing confidence

Release Notes

pinojs/pino

v7.1.0

Compare Source

What's Changed

New Contributors

Full Changelog: pinojs/pino@v7.0.5...v7.1.0

v7.0.5

Compare Source

What's Changed

Full Changelog: pinojs/pino@v7.0.4...v7.0.5

v7.0.4

Compare Source

What's Changed

New Contributors

Full Changelog: pinojs/pino@v7.0.3...v7.0.4

v7.0.3

Compare Source

What's Changed

New Contributors

Full Changelog: pinojs/pino@v7.0.2...v7.0.3

v7.0.2

Compare Source

What's Changed
New Contributors

Full Changelog: pinojs/pino@v7.0.1...v7.0.2

v7.0.1

Compare Source

Updated install instructions

Full Changelog: pinojs/pino@v7.0.0...v7.0.1

v7.0.0

Compare Source

New Features

pino.transport()

Create a a stream that routes logs to a worker thread that
wraps around a Pino Transport.

const pino = require('pino')
const transport = pino.transport({
  target: 'some-transport',
  options: { some: 'options for', the: 'transport' }
})
pino(transport)

Multiple transports may also be defined, and specific levels can be logged to each transport:

const pino = require('pino')
const transports = pino.transport({
  targets: [{
    level: 'info',
    target: 'pino-pretty'
  }, {
    level: 'trace',
    target: 'pino/file',
    options: { destination: '/path/to/store/logs' }
  }]
})
pino(transports)

Transports may alternatively be arranged in a pipeline:

const logger = pino({
  transport: {
    pipeline: [{
      target: './my-transform.js'
    }, {
      // Use target: 'pino/file' to write to stdout
      // without any change.
      target: 'pino-pretty'
    }]
  }
})

logger.info('hello world')

For more on transports, how they work, and how to create them see the Transports documentation.

The internal implementation is based on thread-stream.

`pino.multistream()``

We have embedded a part of pino-multi-stream into pino itself, so you would be able to write to multiple streams from the same pino instance:

var fs = require('fs')
var pino = require('pino')
var streams = [
  {stream: fs.createWriteStream('/tmp/info.stream.out')},
  {level: 'debug', stream: fs.createWriteStream('/tmp/debug.stream.out')},
  {level: 'fatal', stream: fs.createWriteStream('/tmp/fatal.stream.out')}
]

var log = pino({
  level: 'debug' // this MUST be set at the lowest level of all the destinations
}, pino.multistream(streams))

log.debug('this will be written to /tmp/debug.stream.out')
log.info('this will be written to /tmp/debug.stream.out and /tmp/info.stream.out')
log.fatal('this will be written to /tmp/debug.stream.out, /tmp/info.stream.out and /tmp/fatal.stream.out')

This differs from pino.transport() as all the streams will be executed within the main thread, i.e. the one that created the pino instance.

Added TypeScript types

Types have been added to the the project, so you can now use pino with TypeScript without downloading any additional types: you should remove @types/pino from your project. The following typescript example would now work correctly:

import { pino } from "pino";

const log = pino();

log.info("hello world");
log.error("this is at error level");
log.info("the answer is %d", 42);
log.info({ obj: 42 }, "hello world");
log.info({ obj: 42, b: 2 }, "hello world");
log. info({ obj: { aa: "bbb" } }, "another");
Updated sonic-boom

sonic-boom, our fs.createWriteStream() replacement has become safer to use in v2.x.

A few selected changes:

Solved "exit" problem for sync: false destinations and transports

Thanks to the addition of WeakRef and FinalizationRegistry to JavaScript (available in Node.js v14+) we can automatically flush asynchronous streams when the processes exits without leaking memory.

Check out https://github.com/mcollina/on-exit-leak-free.

Breaking Changes

Deprecation of prettyPrint option

The prettyPrint option has been deprecated in favor of the new transport system.

Dropped Node.js v10.x

Node.js v10 went out of LTS/Maintenance in April 2021.
We are dropping support.

Apply err serializer everywhere

We will start applying the err serializer also to Error objects passed in as first argument to log methods, e.g. log.info(new Error('kaboom')) will pass through the serializer.

Removal of extreme mode

Extreme mode has been deprecated in previous release cycle and it has now been removed.

Pull Requests


Configuration

📅 Schedule: 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, click this checkbox.

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

@codecov
Copy link

codecov bot commented Oct 27, 2021

Codecov Report

Merging #972 (3e52310) into master (577c3d5) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #972   +/-   ##
=======================================
  Coverage   95.06%   95.06%           
=======================================
  Files           6        6           
  Lines         162      162           
  Branches       41       41           
=======================================
  Hits          154      154           
  Misses          7        7           
  Partials        1        1           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 577c3d5...3e52310. Read the comment docs.

@renovate renovate bot force-pushed the renovate/pino-7.x branch 4 times, most recently from f10e5a4 to 2139256 Compare October 28, 2021 14:30
@renovate renovate bot force-pushed the renovate/pino-7.x branch from 2139256 to 3e52310 Compare November 3, 2021 19:32
@willdurand willdurand closed this Nov 9, 2021
@renovate
Copy link
Contributor Author

renovate bot commented Nov 9, 2021

Renovate Ignore Notification

As this PR has been closed unmerged, Renovate will ignore this upgrade and you will not receive PRs for any future 7.x releases. However, if you upgrade to 7.x manually then Renovate will then reenable updates for minor and patch updates automatically.

If this PR was closed by mistake or you changed your mind, you can simply rename this PR and you will soon get a fresh replacement PR opened.

@renovate renovate bot deleted the renovate/pino-7.x branch November 9, 2021 11:24
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants