Releases: goforj/godump
Releases · goforj/godump
v1.1.0
v1.0.6
Changes
- Added codecov badge to readme
- 100% test coverage
- fix: prevent panic when dumping structs with promoted fields Addressed #6
- fix: better custom types handling Addressed #2
v1.0.5
- Support for unexported
fmt.Stringer
values viaforceExported()
andasStringer()
logic - Automatic pointer wrapping in
writeDump()
to ensure fields are addressable when passed by value - Cleaner handling of zero and nil values, with
<invalid>
safely rendered for uninitialized fields - Redundant
time.Time
special-case removed, now universally handled by generalizedStringer
logic - No more panic fallbacks - all access is guarded, safe, and cleanly formatted
- Invoke .String() if exists - On custom types
- Test Coverage - Hitting around 94%
v1.0.0 — Initial Stable Release
🎉 First stable release of godump
— a developer-friendly pretty-printer for Go structs and values.
Inspired by Symfony’s VarDumper (Laravel's dump/dd), godump
brings expressive debug output to Go projects, with no dependencies and intuitive formatting.
✨ Features
- 🧠 Field visibility markers:
+
(exported),-
(unexported via reflection) - 📍 Prints the file and line number where the dump was invoked
- 🔄 Cycle-safe reference detection (
↩︎ &1
) - 🧪 Supports structs, maps, slices, arrays, pointers, time.Time, and functions
- 🎨 Colorized terminal output (ANSI-safe)
- 🌐
DumpHTML()
for HTML-rendered debug output in web UIs - 🪄 Control character escaping for strings (
\n
,\t
, etc.) - 📦 Lightweight: zero dependencies, ~350 LOC core
📦 Install
go get github.com/goforj/[email protected]
Thanks to everyone who helped test and refine the output. Feedback and PRs welcome 🙌