Skip to content
forked from jondot/goweight

A tool to analyze and troubleshoot a Go binary size.

License

Notifications You must be signed in to change notification settings

paralin/goweight

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goweight

A tool to analyze and troubleshoot a Go binary size.

This is a fork of the upstream project.

For more, see this blog post

Features:

✅ Get a breakdown of all modules inside a binary ✅ Supports Go 1.11 modules ✅ Output as JSON for tracking and/or monitoring as part of CI

Quick Start

With Go Modules - Go 1.11 or higher

$ go get github.com/jondot/goweight
$ cd current-project
$ goweight

# Set GOOS
$ GOOS=js GOARCH=wasm goweight

Without Go Modules - Before Go 1.11

$ git clone https://github.com/jondot/goweight
$ cd goweight
$ go install

$ cd current-project
$ goweight

As an example, here's what goweight has to say about itself:

$ ./goweight
  3.0 MB runtime
  1.6 MB net
  1.4 MB reflect
  1.3 MB gopkg.in/alecthomas/kingpin.v2
  870 kB math/big
  668 kB github.com/alecthomas/template
  628 kB syscall
  626 kB text/template
  550 kB go/ast
  546 kB encoding/json
  509 kB text/template/parse
  495 kB github.com/alecthomas/template/parse
  424 kB time
  402 kB regexp/syntax
  395 kB golang_org/x/net/dns/dnsmessage
  388 kB fmt

Thanks:

To all Contributors - you make this happen, thanks!

Copyright

Copyright (c) 2018 @jondot. See LICENSE for further details.

About

A tool to analyze and troubleshoot a Go binary size.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 86.0%
  • Makefile 14.0%