| # panicparse |
| |
| Run `make help` for available targets. Before committing, run `make fix`, |
| `make verify`, and `make test`. Install Git hooks with `make git-hooks`. |
| |
| `make test` runs coverage and benchmark smoke checks. |
| Use `make test-race` for race checks. |
| |
| Run Python tools and scripts with `uv run --locked`. |
| |
| <!-- BEGIN FILE INDEX --> |
| ## File Index |
| |
| Autogenerated from first-line comments. Run scripts/update_agents_file_index.py to refresh. |
| |
| - `.github/workflows/test.yml`: CI checks for tests, coverage, static analysis, and generated files. |
| - `.golangci.yml`: Go formatting and static analysis configuration. |
| - `Makefile`: Repository development targets and pinned static analysis tools. |
| - `README.md`: panicparse |
| - `cmd/panic/internal/incorrect/correct.go`: Package correct is in directory incorrect. If the call stack is |
| - `cmd/panic/internal/internal.go`: Package internal is for use for panic. |
| - `cmd/panic/internal/utf8/utf8.go`: Package รนtf8 tests a package and function with non-ASCII names. |
| - `cmd/panic/main.go`: panic crashes in various ways. |
| - `cmd/panic/main_no_race.go`: Disable intentional race scenarios in builds without race instrumentation. |
| - `cmd/panic/main_race.go`: Enable intentional race scenarios in race-instrumented builds. |
| - `cmd/panic/main_test.go`: Tests panic scenarios and trusted executable restart behavior. |
| - `cmd/panicweb/internal/internal.go`: Package internal implements the handlers for panicweb so they are in a |
| - `cmd/panicweb/main.go`: panicweb implements a simulation of a web server that panics. |
| - `cmd/panicweb/main_others.go`: Unsupported-platform fallback for the blocked-system-call scenario. |
| - `cmd/panicweb/main_unix.go`: Create a long nanosleep system call for Unix goroutine snapshots. |
| - `cmd/panicweb/main_windows.go`: Create a blocked system call for Windows goroutine snapshots. |
| - `cmd/pp/main.go`: pp: analyzes stack dump of Go processes and simplifies it. |
| - `codecov.yml`: https://docs.codecov.io/docs/codecovyml-reference |
| - `internal/internaltest/internaltest.go`: Compile and run panic fixtures and retrieve recorded goroutine snapshots. |
| - `internal/internaltest/static_panic_race.go`: Recorded race-detector output for stack parsing tests. |
| - `internal/internaltest/static_panicweb.go`: Recorded panicweb goroutine output for stack parsing tests. |
| - `internal/internaltest/static_panicweb.sh`: Capture panicweb goroutine output and normalize local toolchain paths. |
| - `internal/main.go`: Package internal implements panicparse |
| - `internal/main_test.go`: Tests CLI options, snapshot processing, and consecutive snapshots. |
| - `internal/ui.go`: Format stack buckets, goroutines, paths, and colors for terminal output. |
| - `internal/ui_test.go`: Tests terminal bucket headers, stack lines, and column widths. |
| - `main.go`: panicparse: analyzes stack dump of Go processes and simplifies it. |
| - `pyproject.toml`: Locked Python development tools and repository script checks. |
| - `scripts/AGENTS.md`: Development scripts |
| - `stack/README.md`: Templates |
| - `stack/bucket.go`: Group goroutines by stack signatures and argument similarity. |
| - `stack/bucket_test.go`: Tests and benchmarks goroutine grouping and argument matching. |
| - `stack/context.go`: Read goroutine snapshots, infer source roots, and augment stack information. |
| - `stack/context_test.go`: Tests snapshot scanning, module paths, source roots, and panic integration. |
| - `stack/data.go`: Code generated by regen.go. DO NOT EDIT. |
| - `stack/example_test.go`: Examples rendering text and HTML snapshots and capturing HTTP panics. |
| - `stack/html.go`: Render snapshots and aggregated goroutines as HTML with source links. |
| - `stack/html_test.go`: Tests HTML rendering, source links, symbol names, and snapshot output. |
| - `stack/reader.go`: Buffered line reading for goroutine snapshot parsing. |
| - `stack/regen.go`: Generate the embedded HTML stack template and favicon. |
| - `stack/source.go`: This file contains the code to process sources, to be able to deduct the |
| - `stack/source_test.go`: Tests source augmentation, argument decoding, and native panic fixtures. |
| - `stack/stack.go`: Package stack analyzes stack dump of Go processes and simplifies it. |
| - `stack/stack_test.go`: Tests stack functions, call signatures, arguments, and goroutine comparisons. |
| - `stack/webstack/example_test.go`: Examples exposing goroutine snapshots through an HTTP handler. |
| - `stack/webstack/webstack.go`: Package webstack provides a http.HandlerFunc that serves a snapshot similar |
| - `stack/webstack/webstack_test.go`: Tests and benchmarks HTTP snapshots, errors, methods, and memory limits. |
| <!-- END FILE INDEX --> |