Skip to content

Commit f17766d

Browse files
obalunenkoCopilot
andauthored
feat: Add panicparse and tbls tools support (#431)
* feat: Add panicparse and tbls tools support * Update README.md Co-authored-by: Copilot <[email protected]> --------- Co-authored-by: Copilot <[email protected]>
1 parent db59299 commit f17766d

File tree

8 files changed

+2238
-13
lines changed

8 files changed

+2238
-13
lines changed

.github/dependabot.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,15 @@ updates:
2323
- /tools/mockery
2424
- /tools/mockgen
2525
- /tools/oapi-codegen
26+
- /tools/panicparse
2627
- /tools/pkgsite
2728
- /tools/sqlc
2829
- /tools/stringer
2930
- /tools/svu
3031
- /tools/swag
3132
- /tools/swagger
3233
- /tools/tparse
34+
- /tools/tbls
3335
schedule:
3436
interval: "daily"
3537
allow:

README.md

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
[![Latest release artifacts](https://img.shields.io/github/v/release/obalunenko/go-tools)](https://github.com/obalunenko/go-tools/releases/latest)
2-
31
# Go Tools
42

3+
[![Latest release artifacts](https://img.shields.io/github/v/release/obalunenko/go-tools)](https://github.com/obalunenko/go-tools/releases/latest)
4+
55
This repository, **go-tools**,
66
includes a compilation of common tools used across various projects by the repository owner.
77

8-
These accompany a Docker image, which you can swiftly pull using the following command:
8+
These accompany a Docker image, which you can swiftly pull using the following command:
99

1010
```shell
1111
docker pull ghcr.io/obalunenko/go-tools:latest
@@ -17,17 +17,15 @@ docker pull ghcr.io/obalunenko/go-tools:latest
1717

1818
The base image is built on top of the official image [golang:1.25.1-alpine3.22](https://hub.docker.com/_/golang) and includes the following tools:
1919

20-
21-
##### Below is a full manifest of the tools available
22-
20+
#### Below is a full manifest of the tools available
2321

2422
| Tool | Version | Description |
2523
|--------------------------------------------------------------|------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
2624
| [buf](https://github.com/bufbuild/buf) | v1.57.0 | The buf CLI is the best tool for working with Protocol Buffers |
2725
| [coverbadger](https://github.com/obalunenko/coverbadger) | v1.4.0 | Generate coverage badge images for Markdown files using Go |
2826
| [enumer](https://github.com/alvaroloes/enumer) | v1.1.2 | A Go tool to auto generate methods for your enums |
2927
| [envdoc](https://github.com/g4s8/envdoc) | v1.6.0 | Go tool to generate documentation for environment variables |
30-
| [fiximports](https://golang.org/x/tools/cmd/fiximports) | v0.36.0 | The fiximports command fixes import declarations to use the canonical import path for packages that have an "import comment" as defined by https://golang.org/s/go14customimport. |
28+
| [fiximports](https://golang.org/x/tools/cmd/fiximports) | v0.36.0 | The fiximports command fixes import declarations to use the canonical import path for packages that have an "import comment" as defined by <https://golang.org/s/go14customimport>. |
3129
| [go-enum](https://github.com/abice/go-enum) | v0.9.1 | An enum generator for go |
3230
| [gocov](https://github.com/axw/gocov) | v1.2.1 | Coverage testing tool for The Go Programming Language |
3331
| [gocov-html](https://github.com/matm/gocov-html) | v1.4.0 | Make pretty HTML output from gocov, a coverage testing tool for Go |
@@ -44,23 +42,23 @@ The base image is built on top of the official image [golang:1.25.1-alpine3.22](
4442
| [mockery](https://github.com/vektra/mockery) | v3.5.4 | A mock code autogenerator for Go |
4543
| [mockgen](https://github.com/uber-go/mock) | v0.6.0 | GoMock is a mocking framework for the Go programming language. |
4644
| [oapi-codegen](https://github.com/oapi-codegen/oapi-codegen) | v2.5.0 | Generate Go client and server boilerplate from OpenAPI 3 specifications |
45+
| [pp](https://github.com/maruel/panicparse/v2) | v2.5.0 | Panicparse Parses panic stack traces, densifies and deduplicates goroutines with similar stack traces. Helps debugging crashes and deadlocks in heavily parallelized processes. |
4746
| [pkgsite](https://golang.org/x/pkgsite/cmd/pkgsite) | v0.0.0-20250606033525-6805ff32e9c8 | Pkgsite extracts and generates documentation for Go programs. It runs as a web server and presents the documentation as a web page. |
4847
| [sqlc](https://github.com/sqlc-dev/sqlc) | v1.30.0 | Generate type-safe code from SQL |
4948
| [stringer](https://golang.org/x/tools/cmd/stringer) | v0.36.0 | Stringer is a tool to automate the creation of methods that satisfy the fmt.Stringer interface. |
5049
| [svu](https://github.com/caarlos0/svu) | v3.2.3 | Semantic Version Util |
5150
| [swag](github.com/swaggo/swag/cmd/swag) | v2.0.0-rc4 | Automatically generate RESTful API documentation with Swagger 2.0 for Go |
5251
| [swagger](https://github.com/go-swagger/go-swagger) | v0.32.3 | Client/Server from OpenAPI docs generation tool |
52+
| [tbls](https://github.com/k1LoW/tbls) | v1.88.0 | tbls is a CI-Friendly tool to document a database, written in Go. |
5353
| [tparse](https://github.com/mfridman/tparse) | v0.17.0 | CLI tool for summarizing go test output. Pipe friendly. CI/CD friendly. |
5454

55-
5655
## How to Use
5756

5857
The go-tools Docker image is engineered to allow for seamless implementation with your code.
5958

60-
- Pull the image
61-
- Run the image with your code mounted as a volume
62-
- Execute the desired commands.
59+
- Pull the image
60+
- Run the image with your code mounted as a volume
61+
- Execute the desired commands.
6362

64-
This container is available at
63+
This container is available at
6564
[go-tools container on GitHub Packages](https://github.com/obalunenko/go-tools/pkgs/container/go-tools)
66-

tools/panicparse/go.mod

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
module panicparse
2+
3+
go 1.25.1
4+
5+
require github.com/maruel/panicparse/v2 v2.5.0
6+
7+
require (
8+
github.com/mattn/go-colorable v0.1.14 // indirect
9+
github.com/mattn/go-isatty v0.0.20 // indirect
10+
github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d // indirect
11+
golang.org/x/sys v0.31.0 // indirect
12+
)

tools/panicparse/go.sum

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
2+
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
3+
github.com/maruel/panicparse/v2 v2.5.0 h1:yCtuS0FWjfd0RTYMXGpDvWcb0kINm8xJGu18/xMUh00=
4+
github.com/maruel/panicparse/v2 v2.5.0/go.mod h1:DA2fDiBk63bKfBf4CVZP9gb4fuvzdPbLDsSI873hweQ=
5+
github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE=
6+
github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8=
7+
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
8+
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
9+
github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d h1:5PJl274Y63IEHC+7izoQE9x6ikvDFZS2mDVS3drnohI=
10+
github.com/mgutz/ansi v0.0.0-20200706080929-d51e80ef957d/go.mod h1:01TrycV0kFyexm33Z7vhZRXopbI8J3TDReVlkTgMUxE=
11+
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
12+
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
13+
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=

tools/panicparse/tools.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
//go:build tools
2+
3+
package panicparse
4+
5+
import (
6+
_ "github.com/maruel/panicparse/v2/cmd/pp"
7+
)

0 commit comments

Comments
 (0)