Statistics (detailed ones)
Total 304 packages analyzed and 4743 Go files
(1577143 lines of code) parsed. On average,
* each Go source file imports 7.18 packages
and contains 333 lines of code.
* each package depends on 6.68 other packages,
contains 15.90 source code files, and exports
- 18.74 type names,
- 4.32 variables,
- 27.35 constants,
- 13.55 functions.
All Packages (sort packages by: | | | )
3
1. bufio (14) (1269) (10) (4) - 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.
9. context (31) (806) (11) (2) - defines the Context type, which carries deadlines, cancellation signals, and other request-scoped values across API boundaries and between processes.
11. crypto/aes (9) (48) (19) (3) - implements AES encryption (formerly Rijndael), as defined in U.S. Federal Information Processing Standards Publication 197.
3
12. crypto/cipher (17) (1040) (17) (3) - implements standard block cipher modes that can be wrapped around low-level block cipher implementations.
3
13. crypto/des (3) (556) (18) (4) - 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
14. crypto/dsa (1) (330) (20) (4) - implements the Digital Signature Algorithm, as defined in FIPS 186-3.
3
15. crypto/ecdh (6) (551) (20) (4) - implements Elliptic Curve Diffie-Hellman over NIST curves and Curve25519.
3
16. crypto/ecdsa (3) (868) (21) (4) - implements the Elliptic Curve Digital Signature Algorithm, as defined in [FIPS 186-5].
18. crypto/elliptic (4) (884) (16) (4) - implements the standard NIST P-224, P-256, P-384, and P-521 elliptic curves over prime fields.
3
19. crypto/fips140 (6) (93) (14) (4) - provides information about the FIPS 140-3 Go Cryptographic Module and FIPS 140-3 mode.
3
20. crypto/hkdf (4) (84) (17) (5) - implements the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) as defined in RFC 5869.
3
21. crypto/hmac (5) (65) (19) (5) - implements the Keyed-Hash Message Authentication Code (HMAC) as defined in U.S. Federal Information Processing Standards Publication 198.
3
22. crypto/hpke (1) (1482) (21) (5) - implements Hybrid Public Key Encryption (HPKE) as defined in [RFC 9180].
25. crypto/internal/boring/sig (1) (17) (1) (4) - holds “code signatures” that can be called and will result in certain code sequences being linked into the final binary.
42. crypto/internal/fips140/mlkem (1) (1573) (16) (6) - implements the quantum-resistant key encapsulation method ML-KEM (formerly known as Kyber), as specified in [NIST FIPS 203].
47. crypto/internal/fips140/sha256 (9) (440) (11) (4) - implements the SHA-224 and SHA-256 hash algorithms as defined in FIPS 180-4.
3
48. crypto/internal/fips140/sha3 (6) (933) (11) (4) - 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
49. crypto/internal/fips140/sha512 (7) (515) (11) (4) - implements the SHA-384, SHA-512, SHA-512/224, and SHA-512/256 hash algorithms as defined in FIPS 180-4.
52. crypto/internal/fips140/tls13 (1) (215) (15) (5) - 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
53. crypto/internal/fips140cache (2) (52) (7) (5) - provides a weak map that associates the lifetime of values with the lifetime of keys.
60. crypto/internal/impl (6) (107) (10) (4) - is a registry of alternative implementations of cryptographic primitives, to allow selecting them for testing.
62. crypto/internal/randutil (1) (26) (9) (4) - contains internal randomness utilities for various crypto packages.
3
63. crypto/internal/sysrand (1) (144) (14) (5) - rand provides cryptographically secure random bytes from the operating system.
3
64. crypto/md5 (4) (347) (17) (4) - implements the MD5 hash algorithm as defined in RFC 1321.
3
65. crypto/mlkem (3) (221) (17) (5) - implements the quantum-resistant key encapsulation method ML-KEM (formerly known as Kyber), as specified in [NIST FIPS 203].
3
66. crypto/pbkdf2 (1) (54) (17) (5) - implements the key derivation function PBKDF2 as defined in RFC 8018 (PKCS #5 v2.1).
3
67. crypto/rand (11) (198) (20) (3) - implements a cryptographically secure random number generator.
3
68. crypto/rc4 (2) (83) (17) (5) - implements RC4 encryption, as defined in Bruce Schneier's Applied Cryptography.
3
69. crypto/rsa (7) (1441) (21) (2) - implements RSA encryption as specified in PKCS #1 and RFC 8017.
3
70. crypto/sha1 (6) (413) (19) (3) - implements the SHA-1 hash algorithm as defined in RFC 3174.
3
71. crypto/sha256 (8) (74) (19) (3) - implements the SHA224 and SHA256 hash algorithms as defined in FIPS 180-4.
3
72. crypto/sha3 (3) (274) (12) (4) - implements the SHA-3 hash algorithms and the SHAKE extendable output functions defined in FIPS 202.
3
73. crypto/sha512 (7) (123) (19) (4) - implements the SHA-384, SHA-512, SHA-512/224, and SHA-512/256 hash algorithms as defined in FIPS 180-4.
3
74. crypto/subtle (11) (134) (4) (3) - implements functions that are often useful in cryptographic code but require careful thought to use correctly.
3
75. crypto/tls (2) (14413) (23) (4) - partially implements TLS 1.2, as specified in RFC 5246, and TLS 1.3, as specified in RFC 8446.
77. crypto/x509 (3) (7765) (22) (3) - implements a subset of the X.509 standard.
3
78. crypto/x509/pkix (1) (320) (17) (4) - contains shared, low level structures used for ASN.1 parsing and serialization of X.509 certificates, CRL and OCSP.
3
79. embed (1) (436) (12) (3) - provides access to files embedded in the running Go program.
3
80. encoding (1) (78) (1) (4) - defines interfaces shared by other packages that convert data to and from byte-level and textual representations.
3
81. encoding/asn1 (4) (2107) (16) (4) - implements parsing of DER-encoded ASN.1 data structures, as defined in ITU-T Rec X.690.
3
82. encoding/base64 (14) (665) (9) (3) - implements base64 encoding as specified by RFC 4648.
3
83. encoding/binary (32) (1214) (10) (3) - implements simple translation between numbers and byte sequences and encoding and decoding of varints.
92. github.com/cespare/xxhash/v2 (1) (316) (11) (3) - implements the 64-bit variant of xxHash (XXH64) as described at http://cyan4973.github.io/xxHash/.
101. github.com/gotd/log (8) (421) (15) (1) - defines a minimal, dependency-free logging port for gotd libraries.
3
102. github.com/gotd/neo (1) (538) (15) (2) - implements side effects simulation for testing.
3
103. github.com/gotd/td/ascii (1) (19) (1) (2) - provides data and functions to test some properties of ASCII code points.
3
104. github.com/gotd/td/bin (17) (742) (16) (1) - implements binary serialization and deserialization for TL, providing Buffer that can decode and encode basic Type Language types.
144. github.com/klauspost/compress/gzip (1) (670) (17) (2) - implements reading and writing of gzip format compressed files, as specified in RFC 1952.
3
145. github.com/klauspost/compress/huff0 (1) (2788) (16) (6) - This file contains the specialisation of Decoder.Decompress4X and Decoder.Decompress1X that use an asm implementation of thir main loops.
151. github.com/refraction-networking/utls (1) (25388) (28) (4) - partially implements TLS 1.2, as specified in RFC 5246, and TLS 1.3, as specified in RFC 8446.
178. go.uber.org/atomic (3) (1716) (16) (1) - provides simple wrappers around numerics to enforce atomic access.
3
179. go.uber.org/multierr (9) (694) (15) (1) - allows combining one or more errors together.
3
180. golang.org/x/crypto/chacha20 (1) (453) (18) (6) - implements the ChaCha20 and XChaCha20 encryption algorithms as specified in RFC 8439 and draft-irtf-cfrg-xchacha-01.
3
181. golang.org/x/crypto/chacha20poly1305 (2) (380) (19) (5) - implements the ChaCha20-Poly1305 AEAD and its extended nonce variant XChaCha20-Poly1305, as specified in RFC 8439 and draft-irtf-cfrg-xchacha-01.
3
182. golang.org/x/crypto/cryptobyte (2) (1358) (17) (5) - contains types that help with parsing and constructing length-prefixed, binary messages, including ASN.1 DER.
3
183. golang.org/x/crypto/cryptobyte/asn1 (1) (46) (1) (6) - contains supporting types for parsing and building ASN.1 messages with the cryptobyte package.
3
184. golang.org/x/crypto/hkdf (1) (100) (20) (5) - implements the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) as defined in RFC 5869.
190. golang.org/x/net/proxy (1) (429) (16) (1) - provides support for a variety of protocols to proxy network data.
3
191. golang.org/x/sync/errgroup (1) (151) (15) (2) - provides synchronization, error propagation, and Context cancellation for groups of goroutines working on subtasks of a common task.
210. internal/godebug (13) (316) (8) (3) - makes the settings in the $GODEBUG environment variable available to other packages.
3
211. internal/godebugs (2) (114) (1) (4) - 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
212. internal/goexperiment (1) (291) (1) (4) - implements support for toolchain experiments.
214. internal/msan (2) (37) (2) (4) - contains helper functions for manually instrumenting code for the memory sanitizer.
3
215. internal/nettrace (2) (46) (1) (4) - contains internal hooks for tracing activity in the net package.
3
216. internal/oserror (2) (18) (8) (4) - defines errors values used in the os package.
3
217. internal/poll (3) (2390) (11) (3) - supports non-blocking I/O on file descriptors with polling.
3
218. internal/profilerecord (1) (28) (1) (4) - holds internal types used to represent profiling records with deep stack traces.
3
219. internal/race (6) (66) (3) (3) - contains helper functions for manually instrumenting code for the race detector.
3
220. internal/reflectlite (3) (1201) (6) (3) - implements lightweight version of reflect, not using any package except for "runtime", "unsafe", and "internal/abi"
3
221. internal/runtime/atomic (2) (876) (2) (4) - provides atomic operations, independent of sync/atomic, to the runtime.
234. internal/stringslite (10) (150) (4) (3) - implements a subset of strings, only using packages that may be imported by "os".
3
235. 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
236. internal/synctest (1) (105) (3) (3) - provides support for testing concurrent code.
239. internal/testlog (1) (113) (7) (3) - 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
240. internal/trace/tracev2 (1) (707) (1) (4) - contains definitions for the v2 execution trace wire format.
3
241. internal/unsafeheader (2) (37) (2) (4) - contains header declarations for the Go runtime's slice and string implementations.
250. math/bits (48) (693) (2) (2) - implements bit counting and manipulation functions for the predeclared unsigned integer types.
3
251. math/rand (4) (1265) (9) (3) - implements pseudo-random number generators suitable for tasks such as simulation, but it should not be used for security-sensitive work.
3
252. math/rand/v2 (2) (1046) (8) (5) - implements pseudo-random number generators suitable for tasks such as simulation, but it should not be used for security-sensitive work.
3
253. mime (2) (1295) (15) (4) - implements parts of the MIME spec.
3
254. mime/multipart (1) (1023) (21) (4) - implements MIME multipart parsing, as defined in RFC 2046.
3
255. mime/quotedprintable (1) (312) (15) (5) - implements quoted-printable encoding as specified by RFC 2045.
3
256. net (19) (12982) (14) (3) - provides a portable interface for network I/O, including TCP/IP, UDP, domain name resolution, and Unix domain sockets.
3
257. net/http (3) (29491) (26) (3) - provides HTTP client and server implementations.
3
258. net/http/httptrace (2) (255) (24) (4) - provides mechanisms to trace the events within HTTP client requests.
3
259. net/http/internal (1) (300) (15) (4) - contains HTTP internals shared by net/http and net/http/httputil.
267. path/filepath (5) (1039) (14) (2) - implements utility routines for manipulating filename paths in a way compatible with the target operating system-defined file paths.
3
268. reflect (15) (8694) (9) (3) - implements run-time reflection, allowing a program to manipulate objects with arbitrary types.
3
269. rsc.io/qr (1) (516) (16) (2) - encodes QR codes.
281. syscall (9) (8451) (9) (3) - contains an interface to the low-level operating system primitives.
3
282. time (44) (5623) (10) (2) - provides functionality for measuring and displaying time.
3
283. unicode (8) (10330) (1) (3) - provides data and functions to test some properties of Unicode code points.
3
284. unicode/utf16 (4) (144) (1) (3) - implements encoding and decoding of UTF-16 sequences.
3
285. unicode/utf8 (25) (578) (1) (3) - implements functions and constants to support text encoded in UTF-8.
3
286. unique (1) (552) (7) (4) - The unique package provides facilities for canonicalizing ("interning") comparable values.
3
287. unsafe (81) (271) (1) (3) - contains operations that step around the type safety of Go programs.
3
288. vendor/golang.org/x/crypto/chacha20 (1) (453) (18) (6) - implements the ChaCha20 and XChaCha20 encryption algorithms as specified in RFC 8439 and draft-irtf-cfrg-xchacha-01.
3
289. vendor/golang.org/x/crypto/chacha20poly1305 (2) (380) (19) (5) - implements the ChaCha20-Poly1305 AEAD and its extended nonce variant XChaCha20-Poly1305, as specified in RFC 8439 and draft-irtf-cfrg-xchacha-01.
3
290. vendor/golang.org/x/crypto/cryptobyte (3) (1358) (17) (4) - contains types that help with parsing and constructing length-prefixed, binary messages, including ASN.1 DER.
296. vendor/golang.org/x/net/http/httpproxy (1) (373) (19) (4) - provides support for HTTP proxy determination based on environment variables, as provided by net/http's ProxyFromEnvironment function.
3
297. vendor/golang.org/x/net/http2/hpack (2) (1585) (15) (4) - implements HPACK, a compression format for efficiently representing HTTP header fields in the context of HTTP/2.
3
298. vendor/golang.org/x/net/idna (3) (6341) (18) (4) - implements IDNA2008 using the compatibility processing defined by UTS (Unicode Technical Standard) #46, which defines a standard to deal with the transition from IDNA2003.
3
299. vendor/golang.org/x/sys/cpu (1) (759) (14) (6) - implements processor feature detection for various CPU architectures.
301. vendor/golang.org/x/text/transform (2) (709) (10) (6) - provides reader and writer wrappers that transform the bytes passing through as well as various transformations.
304. weak (4) (107) (6) (5) - provides ways to safely reference memory weakly, that is, without preventing its reclamation.
The pages are generated with Goldsv0.8.4. (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.