summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorPatrick Norton <patrick.147.norton@gmail.com>2026-01-05 16:50:15 -0500
committerSharlatan Hellseher <sharlatanus@gmail.com>2026-04-30 21:34:01 +0100
commit13864ffdc1a40c2613480093791c07844a045c3a (patch)
tree0b48c145de4691f24985bb5479d9b0328ecc51f0 /gnu
parent7f9082b9865fbcff04cff96ee993facf13e79c11 (diff)
gnu: Add go-github-com-ghostiam-protogetter.
* gnu/packages/golang-check.scm (go-github-com-ghostiam-protogetter, protogetter): New variables. Relates-to: https://codeberg.org/guix/guix/pulls/5417 Change-Id: I391d68c9bb610334bac4e427e833a9c07ef7d95a Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me> Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/golang-check.scm54
1 files changed, 54 insertions, 0 deletions
diff --git a/gnu/packages/golang-check.scm b/gnu/packages/golang-check.scm
index ceb48568d8..85870d5434 100644
--- a/gnu/packages/golang-check.scm
+++ b/gnu/packages/golang-check.scm
@@ -996,6 +996,45 @@ tests.")
tests.")
(license license:expat)))
+(define-public go-github-com-ghostiam-protogetter
+ (package
+ (name "go-github-com-ghostiam-protogetter")
+ (version "0.3.20")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ghostiam/protogetter")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1hap2ykmlnan5vz8sczdpiv93iidbgl13mlcdx468nhfprg2hbbm"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:tests? #f ;"module lookup disabled by GOPROXY=off"
+ #:import-path "github.com/ghostiam/protogetter"))
+ (propagated-inputs
+ (list go-golang-org-x-tools
+ go-github-com-gobwas-glob))
+ (home-page "https://github.com/ghostiam/protogetter")
+ (synopsis "Protobuf Golang linter")
+ (description
+ "This package is a linter developed specifically for Go programmers
+working with nested @code{protobuf} types. It's designed to aid developers in
+preventing invalid memory address or nil pointer dereference errors arising
+from direct access of nested protobuf fields.
+
+When working with protobuf, it's quite common to have complex structures where
+a message field is contained within another message, which itself can be part
+of another message, and so on. If these fields are accessed directly and some
+field in the call chain will not be initialized, it can result in application
+panic.
+
+Protogetter addresses this issue by suggesting use of getter methods for field
+access.")
+ (license license:expat)))
+
(define-public go-github-com-gkampitakis-ciinfo
(package
(name "go-github-com-gkampitakis-ciinfo")
@@ -4162,6 +4201,21 @@ prints an ASCII fraphic representing the memory layout.")))
" This package provides an command line interface (CLI)
tool."))))
+(define-public protogetter
+ (package/inherit go-github-com-ghostiam-protogetter
+ (name "protogetter")
+ (arguments
+ (substitute-keyword-arguments arguments
+ ((#:tests? _ #f) #f)
+ ((#:skip-build? _ #t) #f)
+ ((#:install-source? _ #t) #f)
+ ((#:import-path _) "github.com/ghostiam/protogetter/cmd/protogetter")
+ ((#:unpack-path _ "") "github.com/ghostiam/protogetter")))
+ (native-inputs
+ (package-propagated-inputs go-github-com-ghostiam-protogetter))
+ (propagated-inputs '())
+ (inputs '())))
+
(define-public unparam
(package
(inherit go-mvdan-cc-unparam)