guix_mirror_bot pushed a commit to branch master
in repository guix.

commit 4e746f05dae74c7a979de6f44a5577b6658c9d1b
Author: Patrick Norton <[email protected]>
AuthorDate: Mon Nov 24 19:25:08 2025 -0500

    gnu: Add go-storj-io-common.
    
    * gnu/packages/golang-web.scm (go-storj-io-common): New variable.
    
    Change-Id: I0daa442599ec544691ba28402f2cbf174da72583
    Co-authored-by: Sharlatan Hellseher <[email protected]>
    Signed-off-by: Sharlatan Hellseher <[email protected]>
---
 gnu/packages/golang-web.scm | 171 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 171 insertions(+)

diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm
index 2def9e40d9..cec5634a83 100644
--- a/gnu/packages/golang-web.scm
+++ b/gnu/packages/golang-web.scm
@@ -16712,6 +16712,177 @@ support arbitrary use cases, but instead specifically 
focuses on supporting
 Kubernetes components which are using nftables.")
     (license license:asl2.0)))
 
+(define-public go-storj-io-common
+  (package
+    (name "go-storj-io-common")
+    (version "0.0.0-20251120170554-032ced125058")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url "https://github.com/storj/common";)
+              (commit (go-version->git-ref version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "11aiwpr34z3x2nx5qbj5cr21676abnbrlwhw3h8lficr66rlx1a4"))))
+    ;; TODO: Remove vendored code <github.com/btcsuite/btcd/btcutil/base58>.
+    (build-system go-build-system)
+    (arguments
+     (list
+      #:skip-build? #t
+      #:import-path "storj.io/common"
+      #:test-flags
+      #~(list "-skip" (string-join
+                       (list "TestLookupNodeAddress_Host"
+                             "TestLookupNodeAddress_HostAndPort"
+                             "TestFromBuild")
+                       "|"))
+      #:test-subdirs
+      ;; XXX: Remove when all missing dependencies are packaged.
+      #~(list "accesslogs/..."
+              "base58/..."
+              "bloomfilter/..."
+              "cfgstruct/..."
+              "context2/..."
+              "currency/..."
+              "debug/..."
+              "errs2/..."
+              "eventstat/..."
+              "experiment/..."
+              "fpath/..."
+              "grant/..."
+              "http/requestid/..."
+              "identity/..."
+              "leak/..."
+              "macaroon/..."
+              "memory/..."
+              "metrics/..."
+              "nodetag/..."
+              "paths/..."
+              "pb/..."
+              "peertls/..."
+              "pkcrypto/..."
+              "process/gcloudlogging/..."
+              "processgroup/..."
+              "ranger/..."
+              "rpc/..."
+              "signing/..."
+              "storj/..."
+              "strictcsv/..."
+              "sync2/..."
+              "telemetry/..."
+              "testrand/..."
+              "testtrace/..."
+              "time2/..."
+              "useragent/..."
+              "uuid/..."
+              "version/...")))
+    (native-inputs
+     (list go-github-com-stretchr-testify
+           go-go-uber-org-zap))
+    (propagated-inputs
+     (list ;; go-cloud-google-com-go-profiler ; 100+ go-cloud-google-com*
+           go-github-com-blang-semver-v4
+           go-github-com-bmkessler-fastdiv
+           go-github-com-calebcase-tmpfile
+           go-github-com-flynn-noise
+           go-github-com-gogo-protobuf
+           go-github-com-google-gopacket
+           go-github-com-google-pprof
+           go-github-com-jtolds-tracetagger-v2
+           go-github-com-jtolio-crawlspace
+           go-github-com-jtolio-crawlspace-tools
+           go-github-com-jtolio-noiseconn
+           go-github-com-quic-go-quic-go
+           go-github-com-shopspring-decimal
+           go-github-com-spacemonkeygo-monkit-v3
+           go-github-com-spf13-cast
+           go-github-com-spf13-cobra
+           go-github-com-spf13-pflag
+           go-github-com-spf13-viper
+           go-github-com-zeebo-admission-v3
+           go-github-com-zeebo-blake3
+           go-github-com-zeebo-errs
+           go-github-com-zeebo-structs
+           go-golang-org-x-crypto
+           go-golang-org-x-mod
+           go-golang-org-x-sync
+           go-golang-org-x-sys
+           go-gopkg-in-yaml-v2
+           go-storj-io-drpc
+           go-storj-io-eventkit
+           ;; go-storj-io-monkit-jaeger ; cycles
+           go-storj-io-picobuf))
+    (home-page "https://storj.io/common";)
+    (synopsis "Common web and networking Golang utilities")
+    (description
+     "This package provides a collection of Golang utilities maintained by
+Storj project:
+
+@itemize
+@item accesslogs can handle collection and upload of arbitrarily formatted
+server access logs in the fashion of S3's server access logging
+@item bloomfilter implements a bloom-filter for pieces that need to be
+preserved
+@item cfgstruct
+@item context2 contains utilities for contexts
+@item currency
+@item debug implements debug server for satellite, storage node, and edge
+services
+@item encryption collects common cryptographic primitives needed for path and
+data encryption
+@item errs2 collects common error handling functions
+@item eventstat contains helper to create statistics about events with
+unbounded cardinality
+@item experiment implements feature flag propagation.
+@item fpath implements cross-platform file and object path handling
+@item grant
+@item http
+@item identity implements CA and Peer identity management and generation.
+@item leak provides a way to track resources when race detector is enabled
+@item macaroon implements contextual caveats and authorization
+@item memory contains byte size types and manipulation
+@item metrics implements a server which displays only read-only monitoring
+data
+@item netutil
+@item nodetag
+@item paths implements wrappers for handling encrypted and unencrypted paths
+safely
+@item peertls manages TLS configuration for peers.
+@item pkcrypto contains a set of helper functions and constants to perform
+common cryptographic operations
+@item process
+@item processgroup implements process-grouping commands.
+@item ranger implements lazy @code{io.Reader} and @code{io.Writer} interfaces
+@item readcloser implements utilities for @code{io.ReadClosers}
+@item rpc implements dialing on Storj Network
+@item signing implements consistent signing and verifying protobuf messages
+@item socket implements @url{https://tools.ietf.org/html/rfc4594#section-2.3,
+RFC4594}
+@item storj contains the types which represent the main entities of the Storj
+domain
+@item strictcsv
+@item sync2 provides a set of functions and types for having context aware
+functionalities, offloading memory through the file system, and to control
+execution of tasks which can run repetitively, concurrently or asynchronously.
+@item telemetry
+@item testcontext implements convenience context for testing.
+@item testrand implements generating random base types for testing.
+@item testtrace provides profiling debugging utilities for writing the state
+of all goroutines
+@item time2 provides time related functionality that can be manipulated to
+facilite deterministic testing
+@item traces
+@item tracing
+@item useragent implements parts of
+@url{https://tools.ietf.org/html/rfc7231#section-5.5, RFC7231} and
+@url{https://tools.ietf.org/html/rfc2616#section-14.43, RFC2616}
+@item uuid implements UUID v4 based on
+@url{https://www.rfc-editor.org/rfc/rfc4122, RFC4122}.
+@item version
+@end itemize")
+    (license license:expat)))
+
 (define-public go-storj-io-drpc
   (package
     (name "go-storj-io-drpc")

Reply via email to