Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
92aa993
chore: 0.37.0-dev
lidel Jun 18, 2025
ace0b0b
Replace use of go-car v1 with go-car/v2 (#10845)
gammazero Jun 23, 2025
be24176
docs: fix minor typos (#10849)
gammazero Jun 25, 2025
839023c
chore: p2p-forge v0.6.0 + go-libp2p 0.42.0 (#10840)
sukunrt Jun 26, 2025
024225e
core:constructor: add a log line about http retrieval
hsanjuan Jun 26, 2025
a0632aa
Merge pull request #10852 from ipfs/httpretrieval-logging-core-constr…
hsanjuan Jun 27, 2025
6f0c1de
chore: Upgrade github.com/cockroachdb/pebble/v2 to v2.0.6 for Go 1.25…
stefanb Jul 2, 2025
738d523
Upgrade to Boxo v0.33.0 (#10857)
gammazero Jul 8, 2025
b95845e
refactor: use slices.Sort where appropriate (#10858)
gammazero Jul 8, 2025
4195a1d
fix: handling of EDITOR env var (#10855)
gammazero Jul 8, 2025
b4e6769
docs(config): add network exposure considerations (#10856)
lidel Jul 11, 2025
475e2ba
docs: release checklist fixes from 0.36 (#10861)
lidel Jul 14, 2025
780b207
chore: changelog 0.37
lidel Jul 14, 2025
8589296
Merge remote-tracking branch 'origin/master' into merge-release-v0.36.0
lidel Jul 14, 2025
1131dde
Merge pull request #10868 from ipfs/merge-release-v0.36.0
lidel Jul 14, 2025
d80e85f
Update dependencies (#10860)
gammazero Jul 15, 2025
a22efea
provider: clear provide queue when reprovide strategy changes (#10863)
gammazero Jul 16, 2025
bb58ca4
remove unneeded thirdparty packages (#10871)
gammazero Jul 16, 2025
2a5b53c
Update to latest boxo PR #976
gammazero Jul 29, 2025
fde0f8d
Revert "Update to latest boxo PR #976"
gammazero Jul 29, 2025
02cf751
Upgrade to Boxo v0.33.1 (#10888)
gammazero Jul 31, 2025
017d500
Bitswap: use a single ConnectEventManager.
hsanjuan Jul 31, 2025
8862a5e
chore: update go-libp2p and p2p-forge (#10887)
sukunrt Jul 31, 2025
19300f2
core: Add a ContentDiscovery field
hsanjuan Aug 1, 2025
5fdaad5
Merge pull request #10890 from ipfs/fx-separate-discovery
hsanjuan Aug 5, 2025
458ad45
docs:added GOLOG_LOG_LEVEL to debug-guide for logging more info (#10894)
SAHU-01 Aug 5, 2025
47b31fe
feat(daemon): accelerated client startup note (#10859)
lidel Aug 5, 2025
90b73d2
refactor: remove goprocess (#10872)
gammazero Aug 5, 2025
10abb90
feat(add): add support for naming pinned CIDs (#10877)
KapilSareen Aug 6, 2025
58ad11b
Merge pull request #10889 from ipfs/reuse-connevtmanager
hsanjuan Aug 6, 2025
918aa07
refactor: move `ipfs stat provide/reprovide` to `ipfs provide stat` (…
gammazero Aug 8, 2025
cfbc648
feat: ipfs-webui v4.8.0 (#10902)
lidel Aug 8, 2025
a673c2e
fix: Provide according to Reprovider.Strategy (#10886)
hsanjuan Aug 8, 2025
6e039a4
client/rpc: re-enable tests on windows. (#10895)
hsanjuan Aug 8, 2025
1c9fe27
fix: `ipfs cid` without repo (#10897)
lidel Aug 8, 2025
b139df1
feat: go-libp2p v0.43.0 (#10892)
sukunrt Aug 8, 2025
d4ab512
fix(cmd): exit 1 on error (#10903)
gammazero Aug 9, 2025
06abadc
Fix failing FUSE test (#10904)
gammazero Aug 9, 2025
6e3ae8f
fix(ci): switch to debian:bookworm-slim
lidel Aug 11, 2025
d3cc4ff
feat: add query functionality to log level command (#10885)
SgtPooki Aug 11, 2025
c08e24b
fix(sharness): no blocking on unclean FUSE unmount (#10906)
lidel Aug 11, 2025
c513e1a
fix(relay): feed connected peers to AutoRelay discovery (#10901)
lidel Aug 11, 2025
7250eb8
bump go-libp2p-kad-dht (#10911)
guillaumemichel Aug 13, 2025
d81f524
feat(ipns): support passing custom sequence number during publishing …
gsergey418 Aug 13, 2025
a3b01cd
Replace `uber-go/multierr` with `errors.Join` (#10912)
gammazero Aug 13, 2025
abe6d9d
chore(deps): bump actions/download-artifact from 4 to 5 (#10908)
dependabot[bot] Aug 13, 2025
8e5ef55
fix(ci): docker build (#10914)
lidel Aug 13, 2025
2b858bb
feat(ci): reusable spellcheck from unified CI (#10873)
galargh Aug 14, 2025
501b1f8
feat: require go1.25 for building kubo (#10913)
gammazero Aug 14, 2025
b8a1aa4
chore: replace random test utils with equivalents in go-test/random (…
gammazero Aug 14, 2025
5cb0943
chore(deps): bump actions/checkout from 4 to 5 (#10907)
dependabot[bot] Aug 14, 2025
64c47c3
feat(config): `Gateway.RetrievalTimeout|MaxConcurrentRequests` (#10905)
lidel Aug 15, 2025
1ca5c9d
test: fix flaky repo verify (#10743)
lidel Aug 15, 2025
7109534
Upgrade to Boxo v0.34.0 (#10917)
gammazero Aug 15, 2025
187fce7
fix typos in docs and comments (#10920)
gammazero Aug 18, 2025
4255cc3
feat: telemetry plugin (#10866)
hsanjuan Aug 18, 2025
c5b13b1
docs: fix broadcast control release docs (#10919)
hsanjuan Aug 18, 2025
a81cc29
fix: resolve TestAddMultipleGCLive race condition (#10916)
lidel Aug 18, 2025
4bafb22
fix(ci): make NewRandPort thread-safe (#10921)
lidel Aug 18, 2025
c468f44
upgrade to go-test v0.2.3 (#10923)
gammazero Aug 19, 2025
ccb49de
feat(config): AutoConf with "auto" placeholders (#10883)
lidel Aug 20, 2025
c12d249
feat: optimize docker builds (#10925)
lidel Aug 21, 2025
426477e
docs: improve `ipfs add --help` (#10926)
lidel Aug 21, 2025
846e219
feat: Reprovider.Strategy: rename "flat" to "all" (#10928)
hsanjuan Aug 21, 2025
255bc88
chore: v0.37.0-rc1
lidel Aug 21, 2025
fae08d6
fix: harness tests random panic (#10933)
gammazero Aug 22, 2025
46324f0
fix: disable telemetry in test profile (#10931)
hsanjuan Aug 24, 2025
21e9f27
feat(ci): docker linting (#10927)
lidel Aug 26, 2025
53702e4
chore: set version to v0.37.0
lidel Aug 27, 2025
67f7129
chore: update v0.37.0 changelog
lidel Aug 27, 2025
20092c5
docs: update v0.37.0 dependency versions
lidel Aug 27, 2025
5661dfd
docs: improve v0.37 changelog
lidel Aug 27, 2025
6971f9f
docs(config): clarify Ipns.DelegatedPublishers auto behavior
lidel Aug 27, 2025
b2f50ec
docs: fix typo in v0.37 changelog
lidel Aug 27, 2025
9cb1d10
docs: add v0.38 changelog template
lidel Aug 27, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat: add query functionality to log level command (#10885)
* feat: update log level command to show log levels
* test: add log level tests
* update TestCommands test
* docs: relation to GOLOG_LOG_LEVEL
* chore: update to latest go-log
* fix: do not output single subsystem name in CLI
* test: explicit subsystem request dont output subsystem
* LevelFromString renamed to Parse
* Modify `ipfs log level` 
* Denote default level with sdubsystem name '(defult)'.
* make "*" an dalias for "all".  Test to make sure both work the same.
  • Loading branch information
SgtPooki authored Aug 11, 2025
commit d3cc4ff587e70848bbbf206dc119922791692993
4 changes: 2 additions & 2 deletions cmd/ipfs/kubo/start.go
Original file line number Diff line number Diff line change
Expand Up @@ -214,8 +214,8 @@ func insideGUI() bool {
func checkDebug(req *cmds.Request) {
// check if user wants to debug. option OR env var.
debug, _ := req.Options["debug"].(bool)
ipfsLogLevel, _ := logging.LevelFromString(os.Getenv("IPFS_LOGGING")) // IPFS_LOGGING is deprecated
goLogLevel, _ := logging.LevelFromString(os.Getenv("GOLOG_LOG_LEVEL"))
ipfsLogLevel, _ := logging.Parse(os.Getenv("IPFS_LOGGING")) // IPFS_LOGGING is deprecated
goLogLevel, _ := logging.Parse(os.Getenv("GOLOG_LOG_LEVEL"))

if debug || goLogLevel == logging.LevelDebug || ipfsLogLevel == logging.LevelDebug {
u.Debug = true
Expand Down
194 changes: 164 additions & 30 deletions core/commands/log.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,37 @@ package commands
import (
"fmt"
"io"
"slices"

cmds "github.com/ipfs/go-ipfs-cmds"
logging "github.com/ipfs/go-log/v2"
)

// Golang os.Args overrides * and replaces the character argument with
// an array which includes every file in the user's CWD. As a
// workaround, we use 'all' instead. The util library still uses * so
// we convert it at this step.
var logAllKeyword = "all"
const (
// allLogSubsystems is used to specify all log subsystems when setting the
// log level.
allLogSubsystems = "*"
// allLogSubsystemsAlias is a convenience alias for allLogSubsystems that
// doesn't require shell escaping.
allLogSubsystemsAlias = "all"
// defaultLogLevel is used to request and to identify the default log
// level.
defaultLogLevel = "default"
// defaultSubsystemKey is the subsystem name that is used to denote the
// default log level. We use parentheses for UI clarity to distinguish it
// from regular subsystem names.
defaultSubsystemKey = "(default)"
// logLevelOption is an option for the tail subcommand to select the log
// level to output.
logLevelOption = "log-level"
// noSubsystemSpecified is used when no subsystem argument is provided
noSubsystemSpecified = ""
)

type logLevelOutput struct {
Levels map[string]string `json:",omitempty"`
Message string `json:",omitempty"`
}

var LogCmd = &cmds.Command{
Helptext: cmds.HelpText{
Expand All @@ -39,46 +60,161 @@ system (not just for the daemon logs, but all commands):

var logLevelCmd = &cmds.Command{
Helptext: cmds.HelpText{
Tagline: "Change the logging level.",
Tagline: "Change or get the logging level.",
ShortDescription: `
Change the verbosity of one or all subsystems log output. This does not affect
the event log.
Get or change the logging level of one or all logging subsystems.

This command provides a runtime alternative to the GOLOG_LOG_LEVEL
environment variable for debugging and troubleshooting.

UNDERSTANDING DEFAULT vs '*':

The "default" level is the fallback used by unconfigured subsystems.
You cannot set the default level directly - it only changes when you use '*'.

The '*' wildcard represents ALL subsystems including the default level.
Setting '*' changes everything at once, including the default.

EXAMPLES - Getting levels:

ipfs log level # Show only the default fallback level
ipfs log level all # Show all subsystem levels (100+ lines)
ipfs log level core # Show level for 'core' subsystem only

EXAMPLES - Setting levels:

ipfs log level core debug # Set 'core' to 'debug' (default unchanged)
ipfs log level all info # Set ALL to 'info' (including default)
ipfs log level core default # Reset 'core' to use current default level

WILDCARD OPTIONS:

Use 'all' (convenient) or '*' (requires escaping) to affect all subsystems:
ipfs log level all debug # Convenient - no shell escaping needed
ipfs log level '*' debug # Equivalent but needs quotes: '*' or "*" or \*

BEHAVIOR EXAMPLES:

Initial state (all using default 'error'):
$ ipfs log level => error
$ ipfs log level core => error

After setting one subsystem:
$ ipfs log level core debug
$ ipfs log level => error (default unchanged!)
$ ipfs log level core => debug (explicitly set)
$ ipfs log level dht => error (still uses default)

After setting everything with 'all':
$ ipfs log level all info
$ ipfs log level => info (default changed!)
$ ipfs log level core => info (all changed)
$ ipfs log level dht => info (all changed)

The 'default' keyword always refers to the current default level:
$ ipfs log level => error
$ ipfs log level core default # Sets core to 'error'
$ ipfs log level all info # Changes default to 'info'
$ ipfs log level core default # Now sets core to 'info'
`,
},

Arguments: []cmds.Argument{
// TODO use a different keyword for 'all' because all can theoretically
// clash with a subsystem name
cmds.StringArg("subsystem", true, false, fmt.Sprintf("The subsystem logging identifier. Use '%s' for all subsystems.", logAllKeyword)),
cmds.StringArg("level", true, false, `The log level, with 'debug' the most verbose and 'fatal' the least verbose.
One of: debug, info, warn, error, dpanic, panic, fatal.
`),
cmds.StringArg("subsystem", false, false, fmt.Sprintf("The subsystem logging identifier. Use '%s' or '%s' to get or set the log level of all subsystems including the default. If not specified, only show the default log level.", allLogSubsystemsAlias, allLogSubsystems)),
cmds.StringArg("level", false, false, fmt.Sprintf("The log level, with 'debug' as the most verbose and 'fatal' the least verbose. Use '%s' to set to the current default level. One of: debug, info, warn, error, dpanic, panic, fatal, %s", defaultLogLevel, defaultLogLevel)),
},
NoLocal: true,
Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) error {
args := req.Arguments
subsystem, level := args[0], args[1]
var level, subsystem string

if subsystem == logAllKeyword {
subsystem = "*"
if len(req.Arguments) > 0 {
subsystem = req.Arguments[0]
if len(req.Arguments) > 1 {
level = req.Arguments[1]
}

// Normalize aliases to the canonical "*" form
if subsystem == allLogSubsystems || subsystem == allLogSubsystemsAlias {
subsystem = "*"
}
}

if err := logging.SetLogLevel(subsystem, level); err != nil {
return err
// If a level is specified, then set the log level.
if level != "" {
if level == defaultLogLevel {
level = logging.DefaultLevel().String()
}

if err := logging.SetLogLevel(subsystem, level); err != nil {
return err
}

s := fmt.Sprintf("Changed log level of '%s' to '%s'\n", subsystem, level)
log.Info(s)

return cmds.EmitOnce(res, &logLevelOutput{Message: s})
}

s := fmt.Sprintf("Changed log level of '%s' to '%s'\n", subsystem, level)
log.Info(s)
// Get the level for the requested subsystem.
switch subsystem {
case noSubsystemSpecified:
// Return the default log level
levelMap := map[string]string{logging.DefaultName: logging.DefaultLevel().String()}
return cmds.EmitOnce(res, &logLevelOutput{Levels: levelMap})
case allLogSubsystems, allLogSubsystemsAlias:
// Return levels for all subsystems (default behavior)
levels := logging.SubsystemLevelNames()

// Replace default subsystem key with defaultSubsystemKey.
levels[defaultSubsystemKey] = levels[logging.DefaultName]
delete(levels, logging.DefaultName)
return cmds.EmitOnce(res, &logLevelOutput{Levels: levels})
default:
// Return level for a specific subsystem.
level, err := logging.SubsystemLevelName(subsystem)
if err != nil {
return err
}
levelMap := map[string]string{subsystem: level}
return cmds.EmitOnce(res, &logLevelOutput{Levels: levelMap})
}

return cmds.EmitOnce(res, &MessageOutput{s})
},
Encoders: cmds.EncoderMap{
cmds.Text: cmds.MakeTypedEncoder(func(req *cmds.Request, w io.Writer, out *MessageOutput) error {
fmt.Fprint(w, out.Message)
cmds.Text: cmds.MakeTypedEncoder(func(req *cmds.Request, w io.Writer, out *logLevelOutput) error {
if out.Message != "" {
fmt.Fprint(w, out.Message)
return nil
}

// Check if this is an RPC call by looking for the encoding option
encoding, _ := req.Options["encoding"].(string)
isRPC := encoding == "json"

// Determine whether to show subsystem names in output.
// Show subsystem names when:
// 1. It's an RPC call (needs JSON structure with named fields)
// 2. Multiple subsystems are displayed (for clarity when showing many levels)
showNames := isRPC || len(out.Levels) > 1

levelNames := make([]string, 0, len(out.Levels))
for subsystem, level := range out.Levels {
if showNames {
// Show subsystem name when it's RPC or when showing multiple subsystems
levelNames = append(levelNames, fmt.Sprintf("%s: %s", subsystem, level))
} else {
// For CLI calls with single subsystem, only show the level
levelNames = append(levelNames, level)
}
}
slices.Sort(levelNames)
for _, ln := range levelNames {
fmt.Fprintln(w, ln)
}
return nil
}),
},
Type: MessageOutput{},
Type: logLevelOutput{},
}

var logLsCmd = &cmds.Command{
Expand All @@ -103,12 +239,10 @@ subsystems of a running daemon.
Type: stringList{},
}

const logLevelOption = "log-level"

var logTailCmd = &cmds.Command{
Status: cmds.Experimental,
Helptext: cmds.HelpText{
Tagline: "Read and outpt log messages.",
Tagline: "Read and output log messages.",
ShortDescription: `
Outputs log messages as they are generated.

Expand All @@ -130,7 +264,7 @@ This will only return 'info' logs from bitswap and skip 'debug'.
var pipeReader *logging.PipeReader
logLevelString, _ := req.Options[logLevelOption].(string)
if logLevelString != "" {
logLevel, err := logging.LevelFromString(logLevelString)
logLevel, err := logging.Parse(logLevelString)
if err != nil {
return fmt.Errorf("setting log level %s: %w", logLevelString, err)
}
Expand Down
23 changes: 22 additions & 1 deletion docs/changelogs/v0.37.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ This release was brought to you by the [Shipyard](https://ipshipyard.com/) team.
- [Overview](#overview)
- [🔦 Highlights](#-highlights)
- [Clear provide queue when reprovide strategy changes](#clear-provide-queue-when-reprovide-strategy-changes)
- [Named pins in `ipfs add` command](#-named-pins-in-ipfs-add-command)
- [🪵 Revamped `ipfs log level` command](#-revamped-ipfs-log-level-command)
- [📌 Named pins in `ipfs add` command](#-named-pins-in-ipfs-add-command)
- [⚙️ `Reprovider.Strategy` is now consistently respected](#-reprovider-strategy-is-now-consistently-respected)
- [Removed unnecessary dependencies](#removed-unnecessary-dependencies)
- [Deprecated `ipfs stats reprovide`](#deprecated-ipfs-stats-reprovide)
Expand All @@ -34,6 +35,26 @@ A new `ipfs provide clear` command also allows manual queue clearing for debuggi
> [!NOTE]
> Upgrading to Kubo 0.37 will automatically clear any preexisting provide queue. The next time `Reprovider.Interval` hits, `Reprovider.Strategy` will be executed on a clean slate, ensuring consistent behavior with your current configuration.

#### 🪵 Revamped `ipfs log level` command

The `ipfs log level` command has been completely revamped to support both getting and setting log levels with a unified interface.

**New: Getting log levels**

- `ipfs log level` - Shows default level only
- `ipfs log level all` - Shows log level for every subsystem, including default level
- `ipfs log level foo` - Shows log level for a specific subsystem only
- Kubo RPC API: `POST /api/v0/log/level?arg=<subsystem>`

**Enhanced: Setting log levels**

- `ipfs log level foo debug` - Sets "foo" subsystem to "debug" level
- `ipfs log level all info` - Sets all subsystems to "info" level (convenient, no escaping)
- `ipfs log level '*' info` - Equivalent to above but requires shell escaping
- `ipfs log level foo default` - Sets "foo" subsystem to current default level

The command now provides full visibility into your current logging configuration while maintaining full backward compatibility. Both `all` and `*` work for specifying all subsystems, with `all` being more convenient since it doesn't require shell escaping.

#### 🧷 Named pins in `ipfs add` command

Added `--pin-name` flag to `ipfs add` for assigning names to pins.
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/kubo-as-a-library/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ require (
github.com/ipfs/go-ipld-format v0.6.2 // indirect
github.com/ipfs/go-ipld-git v0.1.1 // indirect
github.com/ipfs/go-ipld-legacy v0.2.2 // indirect
github.com/ipfs/go-log/v2 v2.6.0 // indirect
github.com/ipfs/go-log/v2 v2.8.0 // indirect
github.com/ipfs/go-metrics-interface v0.3.0 // indirect
github.com/ipfs/go-peertaskqueue v0.8.2 // indirect
github.com/ipfs/go-unixfsnode v1.10.1 // indirect
Expand Down
4 changes: 2 additions & 2 deletions docs/examples/kubo-as-a-library/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -345,8 +345,8 @@ github.com/ipfs/go-ipld-legacy v0.2.2/go.mod h1:hhkj+b3kG9b2BcUNw8IFYAsfeNo8E3U7
github.com/ipfs/go-log v0.0.1/go.mod h1:kL1d2/hzSpI0thNYjiKfjanbVNU+IIGA/WnNESY9leM=
github.com/ipfs/go-log v1.0.5 h1:2dOuUCB1Z7uoczMWgAyDck5JLb72zHzrMnGnCNNbvY8=
github.com/ipfs/go-log v1.0.5/go.mod h1:j0b8ZoR+7+R99LD9jZ6+AJsrzkPbSXbZfGakb5JPtIo=
github.com/ipfs/go-log/v2 v2.6.0 h1:2Nu1KKQQ2ayonKp4MPo6pXCjqw1ULc9iohRqWV5EYqg=
github.com/ipfs/go-log/v2 v2.6.0/go.mod h1:p+Efr3qaY5YXpx9TX7MoLCSEZX5boSWj9wh86P5HJa8=
github.com/ipfs/go-log/v2 v2.8.0 h1:SptNTPJQV3s5EF4FdrTu/yVdOKfGbDgn1EBZx4til2o=
github.com/ipfs/go-log/v2 v2.8.0/go.mod h1:2LEEhdv8BGubPeSFTyzbqhCqrwqxCbuTNTLWqgNAipo=
github.com/ipfs/go-metrics-interface v0.3.0 h1:YwG7/Cy4R94mYDUuwsBfeziJCVm9pBMJ6q/JR9V40TU=
github.com/ipfs/go-metrics-interface v0.3.0/go.mod h1:OxxQjZDGocXVdyTPocns6cOLwHieqej/jos7H4POwoY=
github.com/ipfs/go-peertaskqueue v0.8.2 h1:PaHFRaVFdxQk1Qo3OKiHPYjmmusQy7gKQUaL8JDszAU=
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ require (
github.com/ipfs/go-ipld-format v0.6.2
github.com/ipfs/go-ipld-git v0.1.1
github.com/ipfs/go-ipld-legacy v0.2.2
github.com/ipfs/go-log/v2 v2.6.0
github.com/ipfs/go-log/v2 v2.8.0
github.com/ipfs/go-metrics-interface v0.3.0
github.com/ipfs/go-metrics-prometheus v0.1.0
github.com/ipfs/go-test v0.2.2
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -414,8 +414,8 @@ github.com/ipfs/go-ipld-legacy v0.2.2/go.mod h1:hhkj+b3kG9b2BcUNw8IFYAsfeNo8E3U7
github.com/ipfs/go-log v0.0.1/go.mod h1:kL1d2/hzSpI0thNYjiKfjanbVNU+IIGA/WnNESY9leM=
github.com/ipfs/go-log v1.0.5 h1:2dOuUCB1Z7uoczMWgAyDck5JLb72zHzrMnGnCNNbvY8=
github.com/ipfs/go-log v1.0.5/go.mod h1:j0b8ZoR+7+R99LD9jZ6+AJsrzkPbSXbZfGakb5JPtIo=
github.com/ipfs/go-log/v2 v2.6.0 h1:2Nu1KKQQ2ayonKp4MPo6pXCjqw1ULc9iohRqWV5EYqg=
github.com/ipfs/go-log/v2 v2.6.0/go.mod h1:p+Efr3qaY5YXpx9TX7MoLCSEZX5boSWj9wh86P5HJa8=
github.com/ipfs/go-log/v2 v2.8.0 h1:SptNTPJQV3s5EF4FdrTu/yVdOKfGbDgn1EBZx4til2o=
github.com/ipfs/go-log/v2 v2.8.0/go.mod h1:2LEEhdv8BGubPeSFTyzbqhCqrwqxCbuTNTLWqgNAipo=
github.com/ipfs/go-metrics-interface v0.3.0 h1:YwG7/Cy4R94mYDUuwsBfeziJCVm9pBMJ6q/JR9V40TU=
github.com/ipfs/go-metrics-interface v0.3.0/go.mod h1:OxxQjZDGocXVdyTPocns6cOLwHieqej/jos7H4POwoY=
github.com/ipfs/go-metrics-prometheus v0.1.0 h1:bApWOHkrH3VTBHzTHrZSfq4n4weOZDzZFxUXv+HyKcA=
Expand Down
Loading
Loading