planetscale 0.2.0 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (365) hide show
  1. checksums.yaml +4 -4
  2. data/.buildkite/pipeline.yml +21 -0
  3. data/.github/workflows/ci.yml +9 -1
  4. data/.github/workflows/gem-push.yml +9 -2
  5. data/.licenses/go/github.com/matoous/go-nanoid/v2.dep.yml +34 -0
  6. data/.licenses/go/github.com/planetscale/planetscale-go/planetscale.dep.yml +56 -3
  7. data/.licenses/go/github.com/planetscale/sql-proxy/proxy.dep.yml +205 -172
  8. data/.licenses/go/go.uber.org/zap/buffer.dep.yml +1 -1
  9. data/.licenses/go/go.uber.org/zap/internal/bufferpool.dep.yml +1 -1
  10. data/.licenses/go/go.uber.org/zap/internal/color.dep.yml +1 -1
  11. data/.licenses/go/go.uber.org/zap/internal/exit.dep.yml +1 -1
  12. data/.licenses/go/go.uber.org/zap/zapcore.dep.yml +1 -1
  13. data/.licenses/go/go.uber.org/zap.dep.yml +1 -1
  14. data/README.md +11 -8
  15. data/controller.go +24 -26
  16. data/go.mod +4 -3
  17. data/go.sum +42 -27
  18. data/lib/generators/planetscale/install_generator.rb +8 -6
  19. data/lib/planetscale/version.rb +1 -1
  20. data/lib/planetscale.rb +14 -15
  21. data/planetscale.gemspec +2 -2
  22. data/proxy/planetscale-darwin.h +1 -1
  23. data/proxy/planetscale-darwin.so +0 -0
  24. data/proxy/planetscale-linux.h +1 -1
  25. data/proxy/planetscale-linux.so +0 -0
  26. data/proxy.go +1 -5
  27. metadata +6 -342
  28. data/vendor/github.com/armon/circbuf/.gitignore +0 -22
  29. data/vendor/github.com/armon/circbuf/LICENSE +0 -20
  30. data/vendor/github.com/armon/circbuf/README.md +0 -28
  31. data/vendor/github.com/armon/circbuf/circbuf.go +0 -92
  32. data/vendor/github.com/armon/circbuf/go.mod +0 -1
  33. data/vendor/github.com/golang/protobuf/AUTHORS +0 -3
  34. data/vendor/github.com/golang/protobuf/CONTRIBUTORS +0 -3
  35. data/vendor/github.com/golang/protobuf/LICENSE +0 -28
  36. data/vendor/github.com/golang/protobuf/proto/buffer.go +0 -324
  37. data/vendor/github.com/golang/protobuf/proto/defaults.go +0 -63
  38. data/vendor/github.com/golang/protobuf/proto/deprecated.go +0 -113
  39. data/vendor/github.com/golang/protobuf/proto/discard.go +0 -58
  40. data/vendor/github.com/golang/protobuf/proto/extensions.go +0 -356
  41. data/vendor/github.com/golang/protobuf/proto/properties.go +0 -306
  42. data/vendor/github.com/golang/protobuf/proto/proto.go +0 -167
  43. data/vendor/github.com/golang/protobuf/proto/registry.go +0 -317
  44. data/vendor/github.com/golang/protobuf/proto/text_decode.go +0 -801
  45. data/vendor/github.com/golang/protobuf/proto/text_encode.go +0 -560
  46. data/vendor/github.com/golang/protobuf/proto/wire.go +0 -78
  47. data/vendor/github.com/golang/protobuf/proto/wrappers.go +0 -34
  48. data/vendor/github.com/gorilla/mux/AUTHORS +0 -8
  49. data/vendor/github.com/gorilla/mux/LICENSE +0 -27
  50. data/vendor/github.com/gorilla/mux/README.md +0 -805
  51. data/vendor/github.com/gorilla/mux/doc.go +0 -306
  52. data/vendor/github.com/gorilla/mux/go.mod +0 -3
  53. data/vendor/github.com/gorilla/mux/middleware.go +0 -74
  54. data/vendor/github.com/gorilla/mux/mux.go +0 -606
  55. data/vendor/github.com/gorilla/mux/regexp.go +0 -388
  56. data/vendor/github.com/gorilla/mux/route.go +0 -736
  57. data/vendor/github.com/gorilla/mux/test_helpers.go +0 -19
  58. data/vendor/github.com/hashicorp/go-cleanhttp/LICENSE +0 -363
  59. data/vendor/github.com/hashicorp/go-cleanhttp/README.md +0 -30
  60. data/vendor/github.com/hashicorp/go-cleanhttp/cleanhttp.go +0 -58
  61. data/vendor/github.com/hashicorp/go-cleanhttp/doc.go +0 -20
  62. data/vendor/github.com/hashicorp/go-cleanhttp/go.mod +0 -3
  63. data/vendor/github.com/hashicorp/go-cleanhttp/handlers.go +0 -48
  64. data/vendor/github.com/mitchellh/go-homedir/LICENSE +0 -21
  65. data/vendor/github.com/mitchellh/go-homedir/README.md +0 -14
  66. data/vendor/github.com/mitchellh/go-homedir/go.mod +0 -1
  67. data/vendor/github.com/mitchellh/go-homedir/homedir.go +0 -167
  68. data/vendor/github.com/pkg/errors/.gitignore +0 -24
  69. data/vendor/github.com/pkg/errors/.travis.yml +0 -10
  70. data/vendor/github.com/pkg/errors/LICENSE +0 -23
  71. data/vendor/github.com/pkg/errors/Makefile +0 -44
  72. data/vendor/github.com/pkg/errors/README.md +0 -59
  73. data/vendor/github.com/pkg/errors/appveyor.yml +0 -32
  74. data/vendor/github.com/pkg/errors/errors.go +0 -288
  75. data/vendor/github.com/pkg/errors/go113.go +0 -38
  76. data/vendor/github.com/pkg/errors/stack.go +0 -177
  77. data/vendor/github.com/planetscale/planetscale-go/planetscale/backups.go +0 -139
  78. data/vendor/github.com/planetscale/planetscale-go/planetscale/branches.go +0 -258
  79. data/vendor/github.com/planetscale/planetscale-go/planetscale/certs.go +0 -142
  80. data/vendor/github.com/planetscale/planetscale-go/planetscale/client.go +0 -305
  81. data/vendor/github.com/planetscale/planetscale-go/planetscale/databases.go +0 -131
  82. data/vendor/github.com/planetscale/planetscale-go/planetscale/deploy_requests.go +0 -368
  83. data/vendor/github.com/planetscale/planetscale-go/planetscale/organizations.go +0 -78
  84. data/vendor/github.com/planetscale/planetscale-go/planetscale/service_tokens.go +0 -163
  85. data/vendor/github.com/planetscale/sql-proxy/proxy/client.go +0 -467
  86. data/vendor/github.com/planetscale/sql-proxy/proxy/tls_cache.go +0 -73
  87. data/vendor/go.uber.org/atomic/.codecov.yml +0 -19
  88. data/vendor/go.uber.org/atomic/.gitignore +0 -12
  89. data/vendor/go.uber.org/atomic/.travis.yml +0 -27
  90. data/vendor/go.uber.org/atomic/CHANGELOG.md +0 -76
  91. data/vendor/go.uber.org/atomic/LICENSE.txt +0 -19
  92. data/vendor/go.uber.org/atomic/Makefile +0 -78
  93. data/vendor/go.uber.org/atomic/README.md +0 -63
  94. data/vendor/go.uber.org/atomic/bool.go +0 -81
  95. data/vendor/go.uber.org/atomic/bool_ext.go +0 -53
  96. data/vendor/go.uber.org/atomic/doc.go +0 -23
  97. data/vendor/go.uber.org/atomic/duration.go +0 -82
  98. data/vendor/go.uber.org/atomic/duration_ext.go +0 -40
  99. data/vendor/go.uber.org/atomic/error.go +0 -51
  100. data/vendor/go.uber.org/atomic/error_ext.go +0 -39
  101. data/vendor/go.uber.org/atomic/float64.go +0 -76
  102. data/vendor/go.uber.org/atomic/float64_ext.go +0 -47
  103. data/vendor/go.uber.org/atomic/gen.go +0 -26
  104. data/vendor/go.uber.org/atomic/go.mod +0 -8
  105. data/vendor/go.uber.org/atomic/go.sum +0 -9
  106. data/vendor/go.uber.org/atomic/int32.go +0 -102
  107. data/vendor/go.uber.org/atomic/int64.go +0 -102
  108. data/vendor/go.uber.org/atomic/nocmp.go +0 -35
  109. data/vendor/go.uber.org/atomic/string.go +0 -54
  110. data/vendor/go.uber.org/atomic/string_ext.go +0 -43
  111. data/vendor/go.uber.org/atomic/uint32.go +0 -102
  112. data/vendor/go.uber.org/atomic/uint64.go +0 -102
  113. data/vendor/go.uber.org/atomic/value.go +0 -31
  114. data/vendor/go.uber.org/multierr/.codecov.yml +0 -15
  115. data/vendor/go.uber.org/multierr/.gitignore +0 -4
  116. data/vendor/go.uber.org/multierr/.travis.yml +0 -23
  117. data/vendor/go.uber.org/multierr/CHANGELOG.md +0 -60
  118. data/vendor/go.uber.org/multierr/LICENSE.txt +0 -19
  119. data/vendor/go.uber.org/multierr/Makefile +0 -42
  120. data/vendor/go.uber.org/multierr/README.md +0 -23
  121. data/vendor/go.uber.org/multierr/error.go +0 -449
  122. data/vendor/go.uber.org/multierr/glide.yaml +0 -8
  123. data/vendor/go.uber.org/multierr/go.mod +0 -8
  124. data/vendor/go.uber.org/multierr/go.sum +0 -11
  125. data/vendor/go.uber.org/multierr/go113.go +0 -52
  126. data/vendor/go.uber.org/zap/.codecov.yml +0 -17
  127. data/vendor/go.uber.org/zap/.gitignore +0 -32
  128. data/vendor/go.uber.org/zap/.readme.tmpl +0 -109
  129. data/vendor/go.uber.org/zap/.travis.yml +0 -23
  130. data/vendor/go.uber.org/zap/CHANGELOG.md +0 -432
  131. data/vendor/go.uber.org/zap/CODE_OF_CONDUCT.md +0 -75
  132. data/vendor/go.uber.org/zap/CONTRIBUTING.md +0 -81
  133. data/vendor/go.uber.org/zap/FAQ.md +0 -156
  134. data/vendor/go.uber.org/zap/LICENSE.txt +0 -19
  135. data/vendor/go.uber.org/zap/Makefile +0 -63
  136. data/vendor/go.uber.org/zap/README.md +0 -134
  137. data/vendor/go.uber.org/zap/array.go +0 -320
  138. data/vendor/go.uber.org/zap/buffer/buffer.go +0 -123
  139. data/vendor/go.uber.org/zap/buffer/pool.go +0 -49
  140. data/vendor/go.uber.org/zap/checklicense.sh +0 -17
  141. data/vendor/go.uber.org/zap/config.go +0 -264
  142. data/vendor/go.uber.org/zap/doc.go +0 -113
  143. data/vendor/go.uber.org/zap/encoder.go +0 -79
  144. data/vendor/go.uber.org/zap/error.go +0 -80
  145. data/vendor/go.uber.org/zap/field.go +0 -539
  146. data/vendor/go.uber.org/zap/flag.go +0 -39
  147. data/vendor/go.uber.org/zap/glide.yaml +0 -34
  148. data/vendor/go.uber.org/zap/global.go +0 -168
  149. data/vendor/go.uber.org/zap/global_go112.go +0 -26
  150. data/vendor/go.uber.org/zap/global_prego112.go +0 -26
  151. data/vendor/go.uber.org/zap/go.mod +0 -13
  152. data/vendor/go.uber.org/zap/go.sum +0 -56
  153. data/vendor/go.uber.org/zap/http_handler.go +0 -81
  154. data/vendor/go.uber.org/zap/internal/bufferpool/bufferpool.go +0 -31
  155. data/vendor/go.uber.org/zap/internal/color/color.go +0 -44
  156. data/vendor/go.uber.org/zap/internal/exit/exit.go +0 -64
  157. data/vendor/go.uber.org/zap/level.go +0 -132
  158. data/vendor/go.uber.org/zap/logger.go +0 -344
  159. data/vendor/go.uber.org/zap/options.go +0 -140
  160. data/vendor/go.uber.org/zap/sink.go +0 -161
  161. data/vendor/go.uber.org/zap/stacktrace.go +0 -85
  162. data/vendor/go.uber.org/zap/sugar.go +0 -304
  163. data/vendor/go.uber.org/zap/time.go +0 -27
  164. data/vendor/go.uber.org/zap/writer.go +0 -99
  165. data/vendor/go.uber.org/zap/zapcore/console_encoder.go +0 -161
  166. data/vendor/go.uber.org/zap/zapcore/core.go +0 -113
  167. data/vendor/go.uber.org/zap/zapcore/doc.go +0 -24
  168. data/vendor/go.uber.org/zap/zapcore/encoder.go +0 -443
  169. data/vendor/go.uber.org/zap/zapcore/entry.go +0 -264
  170. data/vendor/go.uber.org/zap/zapcore/error.go +0 -115
  171. data/vendor/go.uber.org/zap/zapcore/field.go +0 -227
  172. data/vendor/go.uber.org/zap/zapcore/hook.go +0 -68
  173. data/vendor/go.uber.org/zap/zapcore/increase_level.go +0 -66
  174. data/vendor/go.uber.org/zap/zapcore/json_encoder.go +0 -534
  175. data/vendor/go.uber.org/zap/zapcore/level.go +0 -175
  176. data/vendor/go.uber.org/zap/zapcore/level_strings.go +0 -46
  177. data/vendor/go.uber.org/zap/zapcore/marshaler.go +0 -61
  178. data/vendor/go.uber.org/zap/zapcore/memory_encoder.go +0 -179
  179. data/vendor/go.uber.org/zap/zapcore/sampler.go +0 -208
  180. data/vendor/go.uber.org/zap/zapcore/tee.go +0 -81
  181. data/vendor/go.uber.org/zap/zapcore/write_syncer.go +0 -123
  182. data/vendor/golang.org/x/net/AUTHORS +0 -3
  183. data/vendor/golang.org/x/net/CONTRIBUTORS +0 -3
  184. data/vendor/golang.org/x/net/LICENSE +0 -27
  185. data/vendor/golang.org/x/net/PATENTS +0 -22
  186. data/vendor/golang.org/x/net/context/context.go +0 -56
  187. data/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go +0 -71
  188. data/vendor/golang.org/x/net/context/go17.go +0 -73
  189. data/vendor/golang.org/x/net/context/go19.go +0 -21
  190. data/vendor/golang.org/x/net/context/pre_go17.go +0 -301
  191. data/vendor/golang.org/x/net/context/pre_go19.go +0 -110
  192. data/vendor/golang.org/x/oauth2/.travis.yml +0 -13
  193. data/vendor/golang.org/x/oauth2/AUTHORS +0 -3
  194. data/vendor/golang.org/x/oauth2/CONTRIBUTING.md +0 -26
  195. data/vendor/golang.org/x/oauth2/CONTRIBUTORS +0 -3
  196. data/vendor/golang.org/x/oauth2/LICENSE +0 -27
  197. data/vendor/golang.org/x/oauth2/README.md +0 -36
  198. data/vendor/golang.org/x/oauth2/go.mod +0 -9
  199. data/vendor/golang.org/x/oauth2/go.sum +0 -361
  200. data/vendor/golang.org/x/oauth2/internal/client_appengine.go +0 -14
  201. data/vendor/golang.org/x/oauth2/internal/doc.go +0 -6
  202. data/vendor/golang.org/x/oauth2/internal/oauth2.go +0 -37
  203. data/vendor/golang.org/x/oauth2/internal/token.go +0 -294
  204. data/vendor/golang.org/x/oauth2/internal/transport.go +0 -33
  205. data/vendor/golang.org/x/oauth2/oauth2.go +0 -381
  206. data/vendor/golang.org/x/oauth2/token.go +0 -178
  207. data/vendor/golang.org/x/oauth2/transport.go +0 -89
  208. data/vendor/google.golang.org/appengine/LICENSE +0 -202
  209. data/vendor/google.golang.org/appengine/internal/api.go +0 -678
  210. data/vendor/google.golang.org/appengine/internal/api_classic.go +0 -169
  211. data/vendor/google.golang.org/appengine/internal/api_common.go +0 -123
  212. data/vendor/google.golang.org/appengine/internal/app_id.go +0 -28
  213. data/vendor/google.golang.org/appengine/internal/base/api_base.pb.go +0 -308
  214. data/vendor/google.golang.org/appengine/internal/base/api_base.proto +0 -33
  215. data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.pb.go +0 -4367
  216. data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.proto +0 -551
  217. data/vendor/google.golang.org/appengine/internal/identity.go +0 -55
  218. data/vendor/google.golang.org/appengine/internal/identity_classic.go +0 -61
  219. data/vendor/google.golang.org/appengine/internal/identity_flex.go +0 -11
  220. data/vendor/google.golang.org/appengine/internal/identity_vm.go +0 -134
  221. data/vendor/google.golang.org/appengine/internal/internal.go +0 -110
  222. data/vendor/google.golang.org/appengine/internal/log/log_service.pb.go +0 -1313
  223. data/vendor/google.golang.org/appengine/internal/log/log_service.proto +0 -150
  224. data/vendor/google.golang.org/appengine/internal/main.go +0 -16
  225. data/vendor/google.golang.org/appengine/internal/main_common.go +0 -7
  226. data/vendor/google.golang.org/appengine/internal/main_vm.go +0 -69
  227. data/vendor/google.golang.org/appengine/internal/metadata.go +0 -60
  228. data/vendor/google.golang.org/appengine/internal/net.go +0 -56
  229. data/vendor/google.golang.org/appengine/internal/regen.sh +0 -40
  230. data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.pb.go +0 -361
  231. data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.proto +0 -44
  232. data/vendor/google.golang.org/appengine/internal/transaction.go +0 -115
  233. data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.pb.go +0 -527
  234. data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.proto +0 -64
  235. data/vendor/google.golang.org/appengine/urlfetch/urlfetch.go +0 -210
  236. data/vendor/google.golang.org/protobuf/AUTHORS +0 -3
  237. data/vendor/google.golang.org/protobuf/CONTRIBUTORS +0 -3
  238. data/vendor/google.golang.org/protobuf/LICENSE +0 -27
  239. data/vendor/google.golang.org/protobuf/PATENTS +0 -22
  240. data/vendor/google.golang.org/protobuf/encoding/prototext/decode.go +0 -773
  241. data/vendor/google.golang.org/protobuf/encoding/prototext/doc.go +0 -7
  242. data/vendor/google.golang.org/protobuf/encoding/prototext/encode.go +0 -371
  243. data/vendor/google.golang.org/protobuf/encoding/protowire/wire.go +0 -538
  244. data/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go +0 -318
  245. data/vendor/google.golang.org/protobuf/internal/descopts/options.go +0 -29
  246. data/vendor/google.golang.org/protobuf/internal/detrand/rand.go +0 -69
  247. data/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go +0 -213
  248. data/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go +0 -241
  249. data/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go +0 -207
  250. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go +0 -665
  251. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go +0 -190
  252. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go +0 -161
  253. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go +0 -373
  254. data/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go +0 -29
  255. data/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go +0 -265
  256. data/vendor/google.golang.org/protobuf/internal/errors/errors.go +0 -89
  257. data/vendor/google.golang.org/protobuf/internal/errors/is_go112.go +0 -39
  258. data/vendor/google.golang.org/protobuf/internal/errors/is_go113.go +0 -12
  259. data/vendor/google.golang.org/protobuf/internal/filedesc/build.go +0 -158
  260. data/vendor/google.golang.org/protobuf/internal/filedesc/desc.go +0 -631
  261. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go +0 -471
  262. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go +0 -704
  263. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go +0 -450
  264. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go +0 -356
  265. data/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go +0 -107
  266. data/vendor/google.golang.org/protobuf/internal/filetype/build.go +0 -297
  267. data/vendor/google.golang.org/protobuf/internal/flags/flags.go +0 -24
  268. data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go +0 -9
  269. data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go +0 -9
  270. data/vendor/google.golang.org/protobuf/internal/genid/any_gen.go +0 -34
  271. data/vendor/google.golang.org/protobuf/internal/genid/api_gen.go +0 -106
  272. data/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +0 -829
  273. data/vendor/google.golang.org/protobuf/internal/genid/doc.go +0 -11
  274. data/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go +0 -34
  275. data/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go +0 -19
  276. data/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go +0 -31
  277. data/vendor/google.golang.org/protobuf/internal/genid/goname.go +0 -25
  278. data/vendor/google.golang.org/protobuf/internal/genid/map_entry.go +0 -16
  279. data/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go +0 -31
  280. data/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go +0 -116
  281. data/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go +0 -34
  282. data/vendor/google.golang.org/protobuf/internal/genid/type_gen.go +0 -184
  283. data/vendor/google.golang.org/protobuf/internal/genid/wrappers.go +0 -13
  284. data/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go +0 -175
  285. data/vendor/google.golang.org/protobuf/internal/impl/api_export.go +0 -177
  286. data/vendor/google.golang.org/protobuf/internal/impl/checkinit.go +0 -141
  287. data/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go +0 -223
  288. data/vendor/google.golang.org/protobuf/internal/impl/codec_field.go +0 -830
  289. data/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go +0 -5637
  290. data/vendor/google.golang.org/protobuf/internal/impl/codec_map.go +0 -388
  291. data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go +0 -37
  292. data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go +0 -11
  293. data/vendor/google.golang.org/protobuf/internal/impl/codec_message.go +0 -217
  294. data/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go +0 -123
  295. data/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go +0 -209
  296. data/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go +0 -557
  297. data/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go +0 -17
  298. data/vendor/google.golang.org/protobuf/internal/impl/convert.go +0 -496
  299. data/vendor/google.golang.org/protobuf/internal/impl/convert_list.go +0 -141
  300. data/vendor/google.golang.org/protobuf/internal/impl/convert_map.go +0 -121
  301. data/vendor/google.golang.org/protobuf/internal/impl/decode.go +0 -276
  302. data/vendor/google.golang.org/protobuf/internal/impl/encode.go +0 -201
  303. data/vendor/google.golang.org/protobuf/internal/impl/enum.go +0 -21
  304. data/vendor/google.golang.org/protobuf/internal/impl/extension.go +0 -156
  305. data/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go +0 -219
  306. data/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go +0 -92
  307. data/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go +0 -176
  308. data/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go +0 -81
  309. data/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go +0 -558
  310. data/vendor/google.golang.org/protobuf/internal/impl/merge.go +0 -176
  311. data/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go +0 -209
  312. data/vendor/google.golang.org/protobuf/internal/impl/message.go +0 -276
  313. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go +0 -465
  314. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go +0 -543
  315. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go +0 -249
  316. data/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go +0 -178
  317. data/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go +0 -174
  318. data/vendor/google.golang.org/protobuf/internal/impl/validate.go +0 -576
  319. data/vendor/google.golang.org/protobuf/internal/impl/weak.go +0 -74
  320. data/vendor/google.golang.org/protobuf/internal/order/order.go +0 -89
  321. data/vendor/google.golang.org/protobuf/internal/order/range.go +0 -115
  322. data/vendor/google.golang.org/protobuf/internal/pragma/pragma.go +0 -29
  323. data/vendor/google.golang.org/protobuf/internal/set/ints.go +0 -58
  324. data/vendor/google.golang.org/protobuf/internal/strs/strings.go +0 -196
  325. data/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go +0 -27
  326. data/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go +0 -94
  327. data/vendor/google.golang.org/protobuf/internal/version/version.go +0 -79
  328. data/vendor/google.golang.org/protobuf/proto/checkinit.go +0 -71
  329. data/vendor/google.golang.org/protobuf/proto/decode.go +0 -278
  330. data/vendor/google.golang.org/protobuf/proto/decode_gen.go +0 -603
  331. data/vendor/google.golang.org/protobuf/proto/doc.go +0 -94
  332. data/vendor/google.golang.org/protobuf/proto/encode.go +0 -319
  333. data/vendor/google.golang.org/protobuf/proto/encode_gen.go +0 -97
  334. data/vendor/google.golang.org/protobuf/proto/equal.go +0 -167
  335. data/vendor/google.golang.org/protobuf/proto/extension.go +0 -92
  336. data/vendor/google.golang.org/protobuf/proto/merge.go +0 -139
  337. data/vendor/google.golang.org/protobuf/proto/messageset.go +0 -93
  338. data/vendor/google.golang.org/protobuf/proto/proto.go +0 -43
  339. data/vendor/google.golang.org/protobuf/proto/proto_methods.go +0 -19
  340. data/vendor/google.golang.org/protobuf/proto/proto_reflect.go +0 -19
  341. data/vendor/google.golang.org/protobuf/proto/reset.go +0 -43
  342. data/vendor/google.golang.org/protobuf/proto/size.go +0 -97
  343. data/vendor/google.golang.org/protobuf/proto/size_gen.go +0 -55
  344. data/vendor/google.golang.org/protobuf/proto/wrappers.go +0 -29
  345. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc.go +0 -276
  346. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.go +0 -248
  347. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_resolve.go +0 -286
  348. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_validate.go +0 -374
  349. data/vendor/google.golang.org/protobuf/reflect/protodesc/proto.go +0 -252
  350. data/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go +0 -77
  351. data/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go +0 -504
  352. data/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go +0 -128
  353. data/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +0 -461
  354. data/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go +0 -665
  355. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go +0 -285
  356. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go +0 -59
  357. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go +0 -411
  358. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go +0 -98
  359. data/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go +0 -869
  360. data/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go +0 -15
  361. data/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go +0 -167
  362. data/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go +0 -44
  363. data/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go +0 -56
  364. data/vendor/google.golang.org/protobuf/types/descriptorpb/descriptor.pb.go +0 -4039
  365. data/vendor/modules.txt +0 -79
@@ -1,81 +0,0 @@
1
- # Contributing
2
-
3
- We'd love your help making zap the very best structured logging library in Go!
4
-
5
- If you'd like to add new exported APIs, please [open an issue][open-issue]
6
- describing your proposal — discussing API changes ahead of time makes
7
- pull request review much smoother. In your issue, pull request, and any other
8
- communications, please remember to treat your fellow contributors with
9
- respect! We take our [code of conduct](CODE_OF_CONDUCT.md) seriously.
10
-
11
- Note that you'll need to sign [Uber's Contributor License Agreement][cla]
12
- before we can accept any of your contributions. If necessary, a bot will remind
13
- you to accept the CLA when you open your pull request.
14
-
15
- ## Setup
16
-
17
- [Fork][fork], then clone the repository:
18
-
19
- ```
20
- mkdir -p $GOPATH/src/go.uber.org
21
- cd $GOPATH/src/go.uber.org
22
- git clone git@github.com:your_github_username/zap.git
23
- cd zap
24
- git remote add upstream https://github.com/uber-go/zap.git
25
- git fetch upstream
26
- ```
27
-
28
- Install zap's dependencies:
29
-
30
- ```
31
- make dependencies
32
- ```
33
-
34
- Make sure that the tests and the linters pass:
35
-
36
- ```
37
- make test
38
- make lint
39
- ```
40
-
41
- If you're not using the minor version of Go specified in the Makefile's
42
- `LINTABLE_MINOR_VERSIONS` variable, `make lint` doesn't do anything. This is
43
- fine, but it means that you'll only discover lint failures after you open your
44
- pull request.
45
-
46
- ## Making Changes
47
-
48
- Start by creating a new branch for your changes:
49
-
50
- ```
51
- cd $GOPATH/src/go.uber.org/zap
52
- git checkout master
53
- git fetch upstream
54
- git rebase upstream/master
55
- git checkout -b cool_new_feature
56
- ```
57
-
58
- Make your changes, then ensure that `make lint` and `make test` still pass. If
59
- you're satisfied with your changes, push them to your fork.
60
-
61
- ```
62
- git push origin cool_new_feature
63
- ```
64
-
65
- Then use the GitHub UI to open a pull request.
66
-
67
- At this point, you're waiting on us to review your changes. We *try* to respond
68
- to issues and pull requests within a few business days, and we may suggest some
69
- improvements or alternatives. Once your changes are approved, one of the
70
- project maintainers will merge them.
71
-
72
- We're much more likely to approve your changes if you:
73
-
74
- * Add tests for new functionality.
75
- * Write a [good commit message][commit-message].
76
- * Maintain backward compatibility.
77
-
78
- [fork]: https://github.com/uber-go/zap/fork
79
- [open-issue]: https://github.com/uber-go/zap/issues/new
80
- [cla]: https://cla-assistant.io/uber-go/zap
81
- [commit-message]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
@@ -1,156 +0,0 @@
1
- # Frequently Asked Questions
2
-
3
- ## Design
4
-
5
- ### Why spend so much effort on logger performance?
6
-
7
- Of course, most applications won't notice the impact of a slow logger: they
8
- already take tens or hundreds of milliseconds for each operation, so an extra
9
- millisecond doesn't matter.
10
-
11
- On the other hand, why *not* make structured logging fast? The `SugaredLogger`
12
- isn't any harder to use than other logging packages, and the `Logger` makes
13
- structured logging possible in performance-sensitive contexts. Across a fleet
14
- of Go microservices, making each application even slightly more efficient adds
15
- up quickly.
16
-
17
- ### Why aren't `Logger` and `SugaredLogger` interfaces?
18
-
19
- Unlike the familiar `io.Writer` and `http.Handler`, `Logger` and
20
- `SugaredLogger` interfaces would include *many* methods. As [Rob Pike points
21
- out][go-proverbs], "The bigger the interface, the weaker the abstraction."
22
- Interfaces are also rigid — *any* change requires releasing a new major
23
- version, since it breaks all third-party implementations.
24
-
25
- Making the `Logger` and `SugaredLogger` concrete types doesn't sacrifice much
26
- abstraction, and it lets us add methods without introducing breaking changes.
27
- Your applications should define and depend upon an interface that includes
28
- just the methods you use.
29
-
30
- ### Why sample application logs?
31
-
32
- Applications often experience runs of errors, either because of a bug or
33
- because of a misbehaving user. Logging errors is usually a good idea, but it
34
- can easily make this bad situation worse: not only is your application coping
35
- with a flood of errors, it's also spending extra CPU cycles and I/O logging
36
- those errors. Since writes are typically serialized, logging limits throughput
37
- when you need it most.
38
-
39
- Sampling fixes this problem by dropping repetitive log entries. Under normal
40
- conditions, your application writes out every entry. When similar entries are
41
- logged hundreds or thousands of times each second, though, zap begins dropping
42
- duplicates to preserve throughput.
43
-
44
- ### Why do the structured logging APIs take a message in addition to fields?
45
-
46
- Subjectively, we find it helpful to accompany structured context with a brief
47
- description. This isn't critical during development, but it makes debugging
48
- and operating unfamiliar systems much easier.
49
-
50
- More concretely, zap's sampling algorithm uses the message to identify
51
- duplicate entries. In our experience, this is a practical middle ground
52
- between random sampling (which often drops the exact entry that you need while
53
- debugging) and hashing the complete entry (which is prohibitively expensive).
54
-
55
- ### Why include package-global loggers?
56
-
57
- Since so many other logging packages include a global logger, many
58
- applications aren't designed to accept loggers as explicit parameters.
59
- Changing function signatures is often a breaking change, so zap includes
60
- global loggers to simplify migration.
61
-
62
- Avoid them where possible.
63
-
64
- ### Why include dedicated Panic and Fatal log levels?
65
-
66
- In general, application code should handle errors gracefully instead of using
67
- `panic` or `os.Exit`. However, every rule has exceptions, and it's common to
68
- crash when an error is truly unrecoverable. To avoid losing any information
69
- — especially the reason for the crash — the logger must flush any
70
- buffered entries before the process exits.
71
-
72
- Zap makes this easy by offering `Panic` and `Fatal` logging methods that
73
- automatically flush before exiting. Of course, this doesn't guarantee that
74
- logs will never be lost, but it eliminates a common error.
75
-
76
- See the discussion in uber-go/zap#207 for more details.
77
-
78
- ### What's `DPanic`?
79
-
80
- `DPanic` stands for "panic in development." In development, it logs at
81
- `PanicLevel`; otherwise, it logs at `ErrorLevel`. `DPanic` makes it easier to
82
- catch errors that are theoretically possible, but shouldn't actually happen,
83
- *without* crashing in production.
84
-
85
- If you've ever written code like this, you need `DPanic`:
86
-
87
- ```go
88
- if err != nil {
89
- panic(fmt.Sprintf("shouldn't ever get here: %v", err))
90
- }
91
- ```
92
-
93
- ## Installation
94
-
95
- ### What does the error `expects import "go.uber.org/zap"` mean?
96
-
97
- Either zap was installed incorrectly or you're referencing the wrong package
98
- name in your code.
99
-
100
- Zap's source code happens to be hosted on GitHub, but the [import
101
- path][import-path] is `go.uber.org/zap`. This gives us, the project
102
- maintainers, the freedom to move the source code if necessary. However, it
103
- means that you need to take a little care when installing and using the
104
- package.
105
-
106
- If you follow two simple rules, everything should work: install zap with `go
107
- get -u go.uber.org/zap`, and always import it in your code with `import
108
- "go.uber.org/zap"`. Your code shouldn't contain *any* references to
109
- `github.com/uber-go/zap`.
110
-
111
- ## Usage
112
-
113
- ### Does zap support log rotation?
114
-
115
- Zap doesn't natively support rotating log files, since we prefer to leave this
116
- to an external program like `logrotate`.
117
-
118
- However, it's easy to integrate a log rotation package like
119
- [`gopkg.in/natefinch/lumberjack.v2`][lumberjack] as a `zapcore.WriteSyncer`.
120
-
121
- ```go
122
- // lumberjack.Logger is already safe for concurrent use, so we don't need to
123
- // lock it.
124
- w := zapcore.AddSync(&lumberjack.Logger{
125
- Filename: "/var/log/myapp/foo.log",
126
- MaxSize: 500, // megabytes
127
- MaxBackups: 3,
128
- MaxAge: 28, // days
129
- })
130
- core := zapcore.NewCore(
131
- zapcore.NewJSONEncoder(zap.NewProductionEncoderConfig()),
132
- w,
133
- zap.InfoLevel,
134
- )
135
- logger := zap.New(core)
136
- ```
137
-
138
- ## Extensions
139
-
140
- We'd love to support every logging need within zap itself, but we're only
141
- familiar with a handful of log ingestion systems, flag-parsing packages, and
142
- the like. Rather than merging code that we can't effectively debug and
143
- support, we'd rather grow an ecosystem of zap extensions.
144
-
145
- We're aware of the following extensions, but haven't used them ourselves:
146
-
147
- | Package | Integration |
148
- | --- | --- |
149
- | `github.com/tchap/zapext` | Sentry, syslog |
150
- | `github.com/fgrosse/zaptest` | Ginkgo |
151
- | `github.com/blendle/zapdriver` | Stackdriver |
152
- | `github.com/moul/zapgorm` | Gorm |
153
-
154
- [go-proverbs]: https://go-proverbs.github.io/
155
- [import-path]: https://golang.org/cmd/go/#hdr-Remote_import_paths
156
- [lumberjack]: https://godoc.org/gopkg.in/natefinch/lumberjack.v2
@@ -1,19 +0,0 @@
1
- Copyright (c) 2016-2017 Uber Technologies, Inc.
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.
@@ -1,63 +0,0 @@
1
- export GOBIN ?= $(shell pwd)/bin
2
-
3
- GOLINT = $(GOBIN)/golint
4
- STATICCHECK = $(GOBIN)/staticcheck
5
- BENCH_FLAGS ?= -cpuprofile=cpu.pprof -memprofile=mem.pprof -benchmem
6
-
7
- # Directories containing independent Go modules.
8
- #
9
- # We track coverage only for the main module.
10
- MODULE_DIRS = . ./benchmarks
11
-
12
- # Many Go tools take file globs or directories as arguments instead of packages.
13
- GO_FILES := $(shell \
14
- find . '(' -path '*/.*' -o -path './vendor' ')' -prune \
15
- -o -name '*.go' -print | cut -b3-)
16
-
17
- .PHONY: all
18
- all: lint test
19
-
20
- .PHONY: lint
21
- lint: $(GOLINT) $(STATICCHECK)
22
- @rm -rf lint.log
23
- @echo "Checking formatting..."
24
- @gofmt -d -s $(GO_FILES) 2>&1 | tee lint.log
25
- @echo "Checking vet..."
26
- @$(foreach dir,$(MODULE_DIRS),(cd $(dir) && go vet ./... 2>&1) &&) true | tee -a lint.log
27
- @echo "Checking lint..."
28
- @$(foreach dir,$(MODULE_DIRS),(cd $(dir) && $(GOLINT) ./... 2>&1) &&) true | tee -a lint.log
29
- @echo "Checking staticcheck..."
30
- @$(foreach dir,$(MODULE_DIRS),(cd $(dir) && $(STATICCHECK) ./... 2>&1) &&) true | tee -a lint.log
31
- @echo "Checking for unresolved FIXMEs..."
32
- @git grep -i fixme | grep -v -e Makefile | tee -a lint.log
33
- @echo "Checking for license headers..."
34
- @./checklicense.sh | tee -a lint.log
35
- @[ ! -s lint.log ]
36
-
37
- $(GOLINT):
38
- go install golang.org/x/lint/golint
39
-
40
- $(STATICCHECK):
41
- go install honnef.co/go/tools/cmd/staticcheck
42
-
43
- .PHONY: test
44
- test:
45
- @$(foreach dir,$(MODULE_DIRS),(cd $(dir) && go test -race ./...) &&) true
46
-
47
- .PHONY: cover
48
- cover:
49
- go test -race -coverprofile=cover.out -coverpkg=./... ./...
50
- go tool cover -html=cover.out -o cover.html
51
-
52
- .PHONY: bench
53
- BENCH ?= .
54
- bench:
55
- @$(foreach dir,$(MODULE_DIRS), ( \
56
- cd $(dir) && \
57
- go list ./... | xargs -n1 go test -bench=$(BENCH) -run="^$$" $(BENCH_FLAGS) \
58
- ) &&) true
59
-
60
- .PHONY: updatereadme
61
- updatereadme:
62
- rm -f README.md
63
- cat .readme.tmpl | go run internal/readme/readme.go > README.md
@@ -1,134 +0,0 @@
1
- # :zap: zap [![GoDoc][doc-img]][doc] [![Build Status][ci-img]][ci] [![Coverage Status][cov-img]][cov]
2
-
3
- Blazing fast, structured, leveled logging in Go.
4
-
5
- ## Installation
6
-
7
- `go get -u go.uber.org/zap`
8
-
9
- Note that zap only supports the two most recent minor versions of Go.
10
-
11
- ## Quick Start
12
-
13
- In contexts where performance is nice, but not critical, use the
14
- `SugaredLogger`. It's 4-10x faster than other structured logging
15
- packages and includes both structured and `printf`-style APIs.
16
-
17
- ```go
18
- logger, _ := zap.NewProduction()
19
- defer logger.Sync() // flushes buffer, if any
20
- sugar := logger.Sugar()
21
- sugar.Infow("failed to fetch URL",
22
- // Structured context as loosely typed key-value pairs.
23
- "url", url,
24
- "attempt", 3,
25
- "backoff", time.Second,
26
- )
27
- sugar.Infof("Failed to fetch URL: %s", url)
28
- ```
29
-
30
- When performance and type safety are critical, use the `Logger`. It's even
31
- faster than the `SugaredLogger` and allocates far less, but it only supports
32
- structured logging.
33
-
34
- ```go
35
- logger, _ := zap.NewProduction()
36
- defer logger.Sync()
37
- logger.Info("failed to fetch URL",
38
- // Structured context as strongly typed Field values.
39
- zap.String("url", url),
40
- zap.Int("attempt", 3),
41
- zap.Duration("backoff", time.Second),
42
- )
43
- ```
44
-
45
- See the [documentation][doc] and [FAQ](FAQ.md) for more details.
46
-
47
- ## Performance
48
-
49
- For applications that log in the hot path, reflection-based serialization and
50
- string formatting are prohibitively expensive — they're CPU-intensive
51
- and make many small allocations. Put differently, using `encoding/json` and
52
- `fmt.Fprintf` to log tons of `interface{}`s makes your application slow.
53
-
54
- Zap takes a different approach. It includes a reflection-free, zero-allocation
55
- JSON encoder, and the base `Logger` strives to avoid serialization overhead
56
- and allocations wherever possible. By building the high-level `SugaredLogger`
57
- on that foundation, zap lets users *choose* when they need to count every
58
- allocation and when they'd prefer a more familiar, loosely typed API.
59
-
60
- As measured by its own [benchmarking suite][], not only is zap more performant
61
- than comparable structured logging packages — it's also faster than the
62
- standard library. Like all benchmarks, take these with a grain of salt.<sup
63
- id="anchor-versions">[1](#footnote-versions)</sup>
64
-
65
- Log a message and 10 fields:
66
-
67
- | Package | Time | Time % to zap | Objects Allocated |
68
- | :------ | :--: | :-----------: | :---------------: |
69
- | :zap: zap | 862 ns/op | +0% | 5 allocs/op
70
- | :zap: zap (sugared) | 1250 ns/op | +45% | 11 allocs/op
71
- | zerolog | 4021 ns/op | +366% | 76 allocs/op
72
- | go-kit | 4542 ns/op | +427% | 105 allocs/op
73
- | apex/log | 26785 ns/op | +3007% | 115 allocs/op
74
- | logrus | 29501 ns/op | +3322% | 125 allocs/op
75
- | log15 | 29906 ns/op | +3369% | 122 allocs/op
76
-
77
- Log a message with a logger that already has 10 fields of context:
78
-
79
- | Package | Time | Time % to zap | Objects Allocated |
80
- | :------ | :--: | :-----------: | :---------------: |
81
- | :zap: zap | 126 ns/op | +0% | 0 allocs/op
82
- | :zap: zap (sugared) | 187 ns/op | +48% | 2 allocs/op
83
- | zerolog | 88 ns/op | -30% | 0 allocs/op
84
- | go-kit | 5087 ns/op | +3937% | 103 allocs/op
85
- | log15 | 18548 ns/op | +14621% | 73 allocs/op
86
- | apex/log | 26012 ns/op | +20544% | 104 allocs/op
87
- | logrus | 27236 ns/op | +21516% | 113 allocs/op
88
-
89
- Log a static string, without any context or `printf`-style templating:
90
-
91
- | Package | Time | Time % to zap | Objects Allocated |
92
- | :------ | :--: | :-----------: | :---------------: |
93
- | :zap: zap | 118 ns/op | +0% | 0 allocs/op
94
- | :zap: zap (sugared) | 191 ns/op | +62% | 2 allocs/op
95
- | zerolog | 93 ns/op | -21% | 0 allocs/op
96
- | go-kit | 280 ns/op | +137% | 11 allocs/op
97
- | standard library | 499 ns/op | +323% | 2 allocs/op
98
- | apex/log | 1990 ns/op | +1586% | 10 allocs/op
99
- | logrus | 3129 ns/op | +2552% | 24 allocs/op
100
- | log15 | 3887 ns/op | +3194% | 23 allocs/op
101
-
102
- ## Development Status: Stable
103
-
104
- All APIs are finalized, and no breaking changes will be made in the 1.x series
105
- of releases. Users of semver-aware dependency management systems should pin
106
- zap to `^1`.
107
-
108
- ## Contributing
109
-
110
- We encourage and support an active, healthy community of contributors &mdash;
111
- including you! Details are in the [contribution guide](CONTRIBUTING.md) and
112
- the [code of conduct](CODE_OF_CONDUCT.md). The zap maintainers keep an eye on
113
- issues and pull requests, but you can also report any negative conduct to
114
- oss-conduct@uber.com. That email list is a private, safe space; even the zap
115
- maintainers don't have access, so don't hesitate to hold us to a high
116
- standard.
117
-
118
- <hr>
119
-
120
- Released under the [MIT License](LICENSE.txt).
121
-
122
- <sup id="footnote-versions">1</sup> In particular, keep in mind that we may be
123
- benchmarking against slightly older versions of other packages. Versions are
124
- pinned in the [benchmarks/go.mod][] file. [↩](#anchor-versions)
125
-
126
- [doc-img]: https://godoc.org/go.uber.org/zap?status.svg
127
- [doc]: https://godoc.org/go.uber.org/zap
128
- [ci-img]: https://travis-ci.com/uber-go/zap.svg?branch=master
129
- [ci]: https://travis-ci.com/uber-go/zap
130
- [cov-img]: https://codecov.io/gh/uber-go/zap/branch/master/graph/badge.svg
131
- [cov]: https://codecov.io/gh/uber-go/zap
132
- [benchmarking suite]: https://github.com/uber-go/zap/tree/master/benchmarks
133
- [benchmarks/go.mod]: https://github.com/uber-go/zap/blob/master/benchmarks/go.mod
134
-