zipp.foundation

module
v0.1.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2023 License: Apache-2.0, BSD-2-Clause

README

A utility library for the GoShimmer and Hornet node software

Discord StackExchange Apache 2.0 license

AboutPrerequisitesInstallationGetting startedSupporting the projectJoining the discussion


About

Hive.go is a shared library that is used in the GoShimmer and Hornet node software. This library contains shared:

  • Data structures
  • Utility methods
  • Abstractions

This is beta software, so there may be performance and stability issues. Please report any issues in our issue tracker.

Prerequisites

To use the library, you need to have at least version 1.13 of Go installed on your device.

To check if you have Go installed, run the following command:

go version

If Go is installed, you should see the version that's installed.

Installation

To install Hive.go and its dependencies, you can use one of the following options:

  • If you use Go modules, just import the packages that you want to use

    import (
    "github.com/iotaledger/hive.go/logger"
    "github.com/iotaledger/hive.go/node"
    )
    
  • To download the library from GitHub, use the go get command

    go get github.com/iotaledger/hive.go
    

Getting started

After you've installed the library, you can use it in your project.

For example, to create a new logger instance:

import "github.com/iotaledger/hive.go/logger"

log = logger.NewLogger('myNewLoggerName')

Activating deadlock detection

To replace the mutexes in the syncutils package with Go deadlock, use the deadlock build flag when compiling your program.

Supporting the project

If this library has been useful to you and you feel like contributing, consider submitting a bug report, feature request or a pull request.

See our contributing guidelines for more information.

Joining the discussion

If you want to get involved in the community, need help with getting set up, have any issues related to the library or just want to discuss IOTA, Distributed Registry Technology (DRT), and IoT with other people, feel free to join our Discord.

Directories

Path Synopsis
app
apputils module
autopeering module
netutil
Package netutil provides utility functions extending the stdnet package.
Package netutil provides utility functions extending the stdnet package.
peer/peertest
Package peertest provides utilities for writing tests with the peer package.
Package peertest provides utilities for writing tests with the peer package.
variadic/example
Code generated by go generate; DO NOT EDIT.
Code generated by go generate; DO NOT EDIT.
core module
bls
identity
Package identity implements a node's identity, consisting out of id and public key.
Package identity implements a node's identity, consisting out of id and public key.
p2p
pem
ds module
set
ierrors package provides a wrapper around the "errors" package from the standard library of Go.
ierrors package provides a wrapper around the "errors" package from the standard library of Go.
mapdb
Package mapdb provides a map implementation of a key value store.
Package mapdb provides a map implementation of a key value store.
Code generated by go generate; DO NOT EDIT.
Code generated by go generate; DO NOT EDIT.
runtime module
backoff
Package backoff implements backoff algorithms for retrying operations.
Package backoff implements backoff algorithms for retrying operations.
event
Code generated by go generate; DO NOT EDIT.
Code generated by go generate; DO NOT EDIT.
serix
Package serix serializes and deserializes complex Go objects into/from bytes using reflection.
Package serix serializes and deserializes complex Go objects into/from bytes using reflection.
web module
subscriptionmanager
SubscriptionManager keeps track of subscribed topics of clients.
SubscriptionManager keeps track of subscribed topics of clients.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL