Statistics (detailed ones)
Total 360 packages analyzed and 1659 Go files
(535092 lines of code) parsed. On average,
* each Go source file imports 3.16 packages
and contains 323 lines of code.
* each package depends on 7.01 other packages,
contains 4.79 source code files, and exports
- 4.64 type names,
- 1.81 variables,
- 16.19 constants,
- 7.77 functions.
All Packages (sort packages by: | | | )
3
1. go101.org/nstd (0) (743) (16) (0) - package provides some missing types and functions in the standard library.
/* */
3
2. archive/tar (0) (3089) (16) (6) - implements access to tar archives.
3
3. archive/zip (0) (2249) (16) (6) - provides support for reading and writing ZIP archives.
3
4. arena (1) (108) (7) (3) - The arena package provides the ability to allocate memory for a collection of Go values and free that space manually all at once, safely.
3
5. bufio (41) (1272) (10) (2) - implements buffered I/O. It wraps an io.Reader or io.Writer object, creating another object (Reader or Writer) that also implements the interface but provides buffering and some help for textual I/O.
10. compress/flate (3) (3203) (15) (2) - implements the DEFLATE compressed data format, described in RFC 1951.
3
11. compress/gzip (3) (540) (16) (3) - implements reading and writing of gzip format compressed files, as specified in RFC 1952.
3
12. compress/lzw (1) (583) (15) (2) - implements the Lempel-Ziv-Welch compressed data format, described in T. A. Welch, “A Technique for High-Performance Data Compression”, Computer, 17(6) (June 1984), pp 8-19.
3
13. compress/zlib (4) (374) (16) (2) - implements reading and writing of zlib format compressed data, as specified in RFC 1950.
3
14. container/heap (2) (118) (9) (3) - provides heap operations for any type that implements heap.Interface.
17. context (22) (804) (11) (2) - defines the Context type, which carries deadlines, cancellation signals, and other request-scoped values across API boundaries and between processes.
19. crypto/aes (3) (48) (20) (3) - implements AES encryption (formerly Rijndael), as defined in U.S. Federal Information Processing Standards Publication 197.
3
20. crypto/cipher (9) (1040) (18) (2) - implements standard block cipher modes that can be wrapped around low-level block cipher implementations.
3
21. crypto/des (2) (556) (19) (3) - implements the Data Encryption Standard (DES) and the Triple Data Encryption Algorithm (TDEA) as defined in U.S. Federal Information Processing Standards Publication 46-3.
3
22. crypto/dsa (1) (326) (18) (3) - implements the Digital Signature Algorithm, as defined in FIPS 186-3.
3
23. crypto/ecdh (4) (536) (20) (3) - implements Elliptic Curve Diffie-Hellman over NIST curves and Curve25519.
3
24. crypto/ecdsa (2) (864) (21) (3) - implements the Elliptic Curve Digital Signature Algorithm, as defined in [FIPS 186-5].
28. crypto/hkdf (2) (84) (18) (3) - implements the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) as defined in RFC 5869.
3
29. crypto/hmac (2) (65) (20) (2) - implements the Keyed-Hash Message Authentication Code (HMAC) as defined in U.S. Federal Information Processing Standards Publication 198.
33. crypto/internal/boring/sig (1) (17) (1) (3) - holds “code signatures” that can be called and will result in certain code sequences being linked into the final binary.
51. crypto/internal/fips140/mlkem (2) (1578) (17) (2) - implements the quantum-resistant key encapsulation method ML-KEM (formerly known as Kyber), as specified in [NIST FIPS 203].
56. crypto/internal/fips140/sha256 (9) (443) (11) (3) - implements the SHA-224 and SHA-256 hash algorithms as defined in FIPS 180-4.
3
57. crypto/internal/fips140/sha3 (6) (928) (11) (3) - implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length functions defined by [FIPS 202], as well as the cSHAKE extendable-output-length functions defined by [SP 800-185].
3
58. crypto/internal/fips140/sha512 (7) (516) (11) (3) - implements the SHA-384, SHA-512, SHA-512/224, and SHA-512/256 hash algorithms as defined in FIPS 180-4.
3
59. crypto/internal/fips140/ssh (0) (55) (14) (6) - implements the SSH KDF as specified in RFC 4253, Section 7.2 and allowed by SP 800-135 Revision 1.
62. crypto/internal/fips140/tls13 (1) (215) (15) (3) - implements the TLS 1.3 Key Schedule as specified in RFC 8446, Section 7.1 and allowed by FIPS 140-3 IG 2.4.B Resolution 7.
3
63. crypto/internal/fips140cache (2) (52) (7) (4) - provides a weak map that associates the lifetime of values with the lifetime of keys.
3
64. crypto/internal/fips140deps (0) (9) (1) (6) - contains wrapper packages for internal APIs that are exposed to the FIPS module.
72. crypto/internal/impl (7) (107) (10) (2) - is a registry of alternative implementations of cryptographic primitives, to allow selecting them for testing.
3
73. crypto/internal/randutil (6) (26) (9) (4) - contains internal randomness utilities for various crypto packages.
3
74. crypto/internal/sysrand (3) (141) (14) (4) - rand provides cryptographically secure random bytes from the operating system.
76. crypto/md5 (3) (347) (18) (2) - implements the MD5 hash algorithm as defined in RFC 1321.
3
77. crypto/mlkem (0) (192) (18) (6) - implements the quantum-resistant key encapsulation method ML-KEM (formerly known as Kyber), as specified in [NIST FIPS 203].
3
78. crypto/pbkdf2 (0) (54) (18) (6) - implements the key derivation function PBKDF2 as defined in RFC 8018 (PKCS #5 v2.1).
3
79. crypto/rand (6) (209) (20) (3) - implements a cryptographically secure random number generator.
3
80. crypto/rc4 (1) (85) (18) (3) - implements RC4 encryption, as defined in Bruce Schneier's Applied Cryptography.
3
81. crypto/rsa (2) (1363) (21) (3) - implements RSA encryption as specified in PKCS #1 and RFC 8017.
3
82. crypto/sha1 (2) (413) (20) (3) - implements the SHA-1 hash algorithm as defined in RFC 3174.
3
83. crypto/sha256 (4) (74) (20) (3) - implements the SHA224 and SHA256 hash algorithms as defined in FIPS 180-4.
3
84. crypto/sha3 (1) (245) (12) (3) - implements the SHA-3 hash algorithms and the SHAKE extendable output functions defined in FIPS 202.
3
85. crypto/sha512 (3) (123) (20) (3) - implements the SHA-384, SHA-512, SHA-512/224, and SHA-512/256 hash algorithms as defined in FIPS 180-4.
3
86. crypto/subtle (9) (115) (6) (2) - implements functions that are often useful in cryptographic code but require careful thought to use correctly.
3
87. crypto/tls (5) (14090) (23) (2) - partially implements TLS 1.2, as specified in RFC 5246, and TLS 1.3, as specified in RFC 8446.
89. crypto/x509 (2) (7192) (22) (2) - implements a subset of the X.509 standard.
3
90. crypto/x509/pkix (1) (320) (17) (3) - contains shared, low level structures used for ASN.1 parsing and serialization of X.509 certificates, CRL and OCSP.
3
91. database/sql (0) (4424) (16) (6) - provides a generic interface around SQL (or SQL-like) databases.
3
92. database/sql/driver (1) (855) (15) (2) - defines interfaces to be implemented by database drivers as used by package sql.
3
93. debug/buildinfo (0) (599) (18) (6) - provides access to information embedded in a Go binary about how it was built.
3
94. debug/dwarf (4) (4495) (15) (3) - provides access to DWARF debugging information loaded from executable files, as defined in the DWARF 2.0 Standard at http://dwarfstd.org/doc/dwarf-2.0.0.pdf.
102. encoding (6) (78) (1) (2) - defines interfaces shared by other packages that convert data to and from byte-level and textual representations.
3
103. encoding/ascii85 (0) (307) (9) (6) - implements the ascii85 data encoding as used in the btoa tool and Adobe's PostScript and PDF document formats.
3
104. encoding/asn1 (3) (2095) (16) (3) - implements parsing of DER-encoded ASN.1 data structures, as defined in ITU-T Rec X.690.
3
105. encoding/base32 (1) (587) (9) (4) - implements base32 encoding as specified by RFC 4648.
3
106. encoding/base64 (6) (665) (9) (2) - implements base64 encoding as specified by RFC 4648.
3
107. encoding/binary (35) (1214) (10) (2) - implements simple translation between numbers and byte sequences and encoding and decoding of varints.
109. encoding/gob (1) (4710) (15) (3) - manages streams of gobs - binary values exchanged between an [Encoder] (transmitter) and a [Decoder] (receiver).
122. expvar (0) (417) (27) (6) - provides a standardized interface to public variables, such as operation counters in servers.
3
123. flag (4) (1238) (15) (2) - implements command-line flag parsing.
3
124. fmt (123) (3524) (14) (2) - implements formatted I/O with functions analogous to C's printf and scanf.
3
125. go/ast (8) (3261) (17) (2) - declares the types used to represent syntax trees for Go packages.
3
126. go/build (3) (2796) (19) (2) - gathers information about Go packages.
3
127. go/build/constraint (3) (693) (10) (3) - implements parsing and evaluation of build constraint lines.
3
128. go/constant (3) (1438) (16) (3) - implements Values representing untyped Go constants and their corresponding operations.
3
129. go/doc (1) (2656) (18) (3) - extracts source code documentation from a Go AST.
3
130. go/doc/comment (2) (2329) (15) (3) - implements parsing and reformatting of Go doc comments, (documentation comments), which are comments that immediately precede a top-level declaration of a package, const, func, type, or var.
3
131. go/format (0) (309) (19) (6) - implements standard formatting of Go source.
3
132. go/importer (0) (137) (23) (6) - provides access to export data importers.
138. go/scanner (3) (1094) (16) (3) - implements a scanner for Go source text.
3
139. go/token (16) (1453) (15) (2) - defines constants representing the lexical tokens of the Go programming language and basic operations on tokens (printing, predicates).
3
140. go/types (4) (23721) (19) (2) - declares the data types and implements the algorithms for type-checking of Go packages.
3
141. go/version (1) (64) (10) (3) - provides operations on [Go versions] in [Go toolchain name syntax]: strings like "go1.20", "go1.21.0", "go1.22rc2", and "go1.23.4-bigcorp".
188. internal/exportdata (1) (387) (20) (3) - implements common utilities for finding and reading gc-generated object files.
3
189. internal/filepathlite (2) (326) (12) (3) - implements a subset of path/filepath, only using packages which may be imported by "os".
3
190. internal/fmtsort (2) (154) (10) (3) - provides a general stable ordering mechanism for maps, on behalf of the fmt and text/template packages.
3
191. internal/fuzz (1) (4003) (21) (2) - provides common fuzzing functionality for tests built with "go test" and for programs that use fuzzing functionality in the testing package.
193. internal/godebug (20) (316) (8) (2) - makes the settings in the $GODEBUG environment variable available to other packages.
3
194. internal/godebugs (3) (97) (1) (2) - provides a table of known GODEBUG settings, for use by a variety of other packages, including internal/godebug, runtime, runtime/metrics, and cmd/go/internal/load.
3
195. internal/goexperiment (3) (292) (1) (2) - implements support for toolchain experiments.
201. internal/lazyregexp (1) (78) (14) (4) - is a thin wrapper over regexp, allowing the use of global regexp variables without forcing them to be compiled at init.
3
202. internal/lazytemplate (0) (52) (17) (6) - is a thin wrapper over text/template, allowing the use of global template variables without forcing them to be parsed at init.
3
203. internal/msan (3) (37) (2) (2) - contains helper functions for manually instrumenting code for the memory sanitizer.
3
204. internal/nettrace (2) (46) (1) (3) - contains internal hooks for tracing activity in the net package.
3
205. internal/obscuretestdata (0) (65) (14) (6) - contains functionality used by tests to more easily work with testdata that must be obscured primarily due to golang.org/issue/34986.
3
206. internal/oserror (2) (18) (8) (3) - defines errors values used in the os package.
3
207. internal/pkgbits (1) (1551) (21) (3) - implements low-level coding abstractions for Unified IR's (UIR) binary export data format.
209. internal/poll (3) (2354) (11) (3) - supports non-blocking I/O on file descriptors with polling.
3
210. internal/profile (2) (2533) (17) (2) - represents a pprof profile as a directed graph.
3
211. internal/profilerecord (2) (28) (1) (3) - holds internal types used to represent profiling records with deep stack traces.
3
212. internal/race (8) (66) (3) (2) - contains helper functions for manually instrumenting code for the race detector.
3
213. internal/reflectlite (4) (1199) (6) (3) - implements lightweight version of reflect, not using any package except for "runtime", "unsafe", and "internal/abi"
3
214. internal/runtime/atomic (3) (876) (2) (3) - provides atomic operations, independent of sync/atomic, to the runtime.
225. internal/saferio (8) (132) (9) (2) - provides I/O functions that avoid allocating large amounts of memory unnecessarily.
3
226. internal/singleflight (1) (123) (7) (3) - provides a duplicate function call suppression mechanism.
3
227. internal/stringslite (9) (150) (4) (3) - implements a subset of strings, only using packages that may be imported by "os".
3
228. internal/sync (2) (1010) (4) (3) - provides basic synchronization primitives such as mutual exclusion locks to internal packages (including ones that depend on sync).
3
229. internal/synctest (2) (105) (3) (2) - provides support for testing concurrent code.
234. internal/testenv (1) (887) (17) (2) - provides information about what functionality is available in different testing environments run by the Go team.
236. internal/testlog (2) (113) (7) (2) - provides a back-channel communication path between tests and package os, so that cmd/go can see which environment variables and files a test consults.
3
237. internal/testpty (0) (51) (15) (6) - is a simple pseudo-terminal package for Unix systems, implemented by calling C functions via cgo.
245. internal/trace/traceviewer/format (1) (79) (1) (2) - traceviewer provides definitions of the JSON data structures used by the Chrome trace viewer.
257. log/internal (2) (12) (1) (3) - contains definitions used by both log and log/slog.
3
258. log/slog (2) (2882) (18) (2) - provides structured logging, in which log records include a message, a severity level, and various other attributes expressed as key-value pairs.
267. math/bits (40) (693) (2) (2) - implements bit counting and manipulation functions for the predeclared unsigned integer types.
3
268. math/cmplx (0) (1131) (4) (6) - provides basic constants and mathematical functions for complex numbers.
3
269. math/rand (7) (1265) (9) (2) - implements pseudo-random number generators suitable for tasks such as simulation, but it should not be used for security-sensitive work.
3
270. math/rand/v2 (3) (1046) (8) (2) - implements pseudo-random number generators suitable for tasks such as simulation, but it should not be used for security-sensitive work.
3
271. mime (4) (1217) (15) (2) - implements parts of the MIME spec.
3
272. mime/multipart (1) (1011) (21) (3) - implements MIME multipart parsing, as defined in RFC 2046.
3
273. mime/quotedprintable (1) (312) (15) (4) - implements quoted-printable encoding as specified by RFC 2045.
3
274. net (18) (12056) (14) (2) - provides a portable interface for network I/O, including TCP/IP, UDP, domain name resolution, and Unix domain sockets.
3
275. net/http (9) (28449) (26) (2) - provides HTTP client and server implementations.
3
276. net/http/cgi (1) (767) (27) (2) - implements CGI (Common Gateway Interface) as specified in RFC 3875.
302. path/filepath (25) (1050) (14) (2) - implements utility routines for manipulating filename paths in a way compatible with the target operating system-defined file paths.
3
303. plugin (0) (141) (8) (6) - implements loading and symbol resolution of Go plugins.
3
304. reflect (29) (8577) (9) (2) - implements run-time reflection, allowing a program to manipulate objects with arbitrary types.
308. regexp/syntax (1) (3815) (10) (3) - parses regular expressions into parse trees and compiles parse trees into programs.
3
309. runtime (56) (71498) (5) (2) - contains operations that interact with Go's runtime system, such as functions to control goroutines.
3
310. runtime/coverage (0) (68) (19) (6) - contains APIs for writing coverage profile data at runtime from long-running and/or server programs that do not terminate via os.Exit.
3
311. runtime/debug (2) (644) (15) (2) - contains facilities for programs to debug themselves while they are running.
3
312. runtime/metrics (0) (1153) (6) (6) - provides a stable interface to access implementation-defined metrics exported by the Go runtime.
3
313. runtime/pprof (2) (2480) (17) (2) - writes runtime profiling data in the format expected by the pprof visualization tool.
335. text/template/parse (2) (2547) (15) (3) - builds parse trees for templates as defined by text/template and html/template.
3
336. time (53) (5609) (10) (2) - provides functionality for measuring and displaying time.
3
337. time/tzdata (0) (115) (10) (6) - provides an embedded copy of the timezone database.
3
338. unicode (30) (10330) (1) (2) - provides data and functions to test some properties of Unicode code points.
3
339. unicode/utf16 (3) (144) (1) (3) - implements encoding and decoding of UTF-16 sequences.
3
340. unicode/utf8 (53) (540) (1) (2) - implements functions and constants to support text encoded in UTF-8.
3
341. unique (2) (552) (7) (2) - The unique package provides facilities for canonicalizing ("interning") comparable values.
3
342. unsafe (88) (271) (1) (2) - contains operations that step around the type safety of Go programs.
3
343. vendor/golang.org/x/crypto/chacha20 (1) (453) (19) (4) - implements the ChaCha20 and XChaCha20 encryption algorithms as specified in RFC 8439 and draft-irtf-cfrg-xchacha-01.
3
344. vendor/golang.org/x/crypto/chacha20poly1305 (2) (351) (20) (3) - implements the ChaCha20-Poly1305 AEAD and its extended nonce variant XChaCha20-Poly1305, as specified in RFC 8439 and draft-irtf-cfrg-xchacha-01.
3
345. vendor/golang.org/x/crypto/cryptobyte (3) (1358) (17) (3) - contains types that help with parsing and constructing length-prefixed, binary messages, including ASN.1 DER.
351. vendor/golang.org/x/net/http/httpproxy (1) (373) (19) (3) - provides support for HTTP proxy determination based on environment variables, as provided by net/http's ProxyFromEnvironment function.
3
352. vendor/golang.org/x/net/http2/hpack (2) (1585) (15) (3) - implements HPACK, a compression format for efficiently representing HTTP header fields in the context of HTTP/2.
3
353. vendor/golang.org/x/net/idna (3) (6341) (18) (3) - implements IDNA2008 using the compatibility processing defined by UTS (Unicode Technical Standard) #46, which defines a standard to deal with the transition from IDNA2003.
357. vendor/golang.org/x/text/transform (2) (709) (10) (5) - provides reader and writer wrappers that transform the bytes passing through as well as various transformations.
360. weak (3) (107) (6) (3) - provides ways to safely reference memory weakly, that is, without preventing its reclamation.
The pages are generated with Goldsv0.7.7-preview. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds.