planetscale 0.1.0

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 (378) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/ci.yml +24 -0
  3. data/.github/workflows/gem-push.yml +38 -0
  4. data/.github/workflows/licensed.yml +43 -0
  5. data/.gitignore +10 -0
  6. data/.licensed.yml +9 -0
  7. data/.licenses/go/github.com/armon/circbuf.dep.yml +31 -0
  8. data/.licenses/go/github.com/gorilla/mux.dep.yml +41 -0
  9. data/.licenses/go/github.com/hashicorp/go-cleanhttp.dep.yml +375 -0
  10. data/.licenses/go/github.com/mitchellh/go-homedir.dep.yml +32 -0
  11. data/.licenses/go/github.com/pkg/errors.dep.yml +36 -0
  12. data/.licenses/go/github.com/planetscale/planetscale-go/planetscale.dep.yml +160 -0
  13. data/.licenses/go/github.com/planetscale/sql-proxy/proxy.dep.yml +180 -0
  14. data/.licenses/go/go.uber.org/atomic.dep.yml +31 -0
  15. data/.licenses/go/go.uber.org/multierr.dep.yml +30 -0
  16. data/.licenses/go/go.uber.org/zap.dep.yml +30 -0
  17. data/.licenses/go/go.uber.org/zap/buffer.dep.yml +30 -0
  18. data/.licenses/go/go.uber.org/zap/internal/bufferpool.dep.yml +30 -0
  19. data/.licenses/go/go.uber.org/zap/internal/color.dep.yml +30 -0
  20. data/.licenses/go/go.uber.org/zap/internal/exit.dep.yml +31 -0
  21. data/.licenses/go/go.uber.org/zap/zapcore.dep.yml +31 -0
  22. data/.licenses/go/golang.org/x/net/context/ctxhttp.dep.yml +63 -0
  23. data/.licenses/go/golang.org/x/oauth2.dep.yml +44 -0
  24. data/.licenses/go/golang.org/x/oauth2/internal.dep.yml +38 -0
  25. data/.ruby_version +1 -0
  26. data/Gemfile +8 -0
  27. data/LICENSE +201 -0
  28. data/README.md +88 -0
  29. data/Rakefile +10 -0
  30. data/bin/console +15 -0
  31. data/bin/setup +17 -0
  32. data/controller.go +255 -0
  33. data/go.mod +16 -0
  34. data/go.sum +428 -0
  35. data/lib/generators/planetscale/install_generator.rb +58 -0
  36. data/lib/planetscale.rb +137 -0
  37. data/lib/planetscale/version.rb +5 -0
  38. data/planetscale.gemspec +44 -0
  39. data/proxy.go +128 -0
  40. data/vendor/github.com/armon/circbuf/.gitignore +22 -0
  41. data/vendor/github.com/armon/circbuf/LICENSE +20 -0
  42. data/vendor/github.com/armon/circbuf/README.md +28 -0
  43. data/vendor/github.com/armon/circbuf/circbuf.go +92 -0
  44. data/vendor/github.com/armon/circbuf/go.mod +1 -0
  45. data/vendor/github.com/golang/protobuf/AUTHORS +3 -0
  46. data/vendor/github.com/golang/protobuf/CONTRIBUTORS +3 -0
  47. data/vendor/github.com/golang/protobuf/LICENSE +28 -0
  48. data/vendor/github.com/golang/protobuf/proto/buffer.go +324 -0
  49. data/vendor/github.com/golang/protobuf/proto/defaults.go +63 -0
  50. data/vendor/github.com/golang/protobuf/proto/deprecated.go +113 -0
  51. data/vendor/github.com/golang/protobuf/proto/discard.go +58 -0
  52. data/vendor/github.com/golang/protobuf/proto/extensions.go +356 -0
  53. data/vendor/github.com/golang/protobuf/proto/properties.go +306 -0
  54. data/vendor/github.com/golang/protobuf/proto/proto.go +167 -0
  55. data/vendor/github.com/golang/protobuf/proto/registry.go +317 -0
  56. data/vendor/github.com/golang/protobuf/proto/text_decode.go +801 -0
  57. data/vendor/github.com/golang/protobuf/proto/text_encode.go +560 -0
  58. data/vendor/github.com/golang/protobuf/proto/wire.go +78 -0
  59. data/vendor/github.com/golang/protobuf/proto/wrappers.go +34 -0
  60. data/vendor/github.com/gorilla/mux/AUTHORS +8 -0
  61. data/vendor/github.com/gorilla/mux/LICENSE +27 -0
  62. data/vendor/github.com/gorilla/mux/README.md +805 -0
  63. data/vendor/github.com/gorilla/mux/doc.go +306 -0
  64. data/vendor/github.com/gorilla/mux/go.mod +3 -0
  65. data/vendor/github.com/gorilla/mux/middleware.go +74 -0
  66. data/vendor/github.com/gorilla/mux/mux.go +606 -0
  67. data/vendor/github.com/gorilla/mux/regexp.go +388 -0
  68. data/vendor/github.com/gorilla/mux/route.go +736 -0
  69. data/vendor/github.com/gorilla/mux/test_helpers.go +19 -0
  70. data/vendor/github.com/hashicorp/go-cleanhttp/LICENSE +363 -0
  71. data/vendor/github.com/hashicorp/go-cleanhttp/README.md +30 -0
  72. data/vendor/github.com/hashicorp/go-cleanhttp/cleanhttp.go +58 -0
  73. data/vendor/github.com/hashicorp/go-cleanhttp/doc.go +20 -0
  74. data/vendor/github.com/hashicorp/go-cleanhttp/go.mod +3 -0
  75. data/vendor/github.com/hashicorp/go-cleanhttp/handlers.go +48 -0
  76. data/vendor/github.com/mitchellh/go-homedir/LICENSE +21 -0
  77. data/vendor/github.com/mitchellh/go-homedir/README.md +14 -0
  78. data/vendor/github.com/mitchellh/go-homedir/go.mod +1 -0
  79. data/vendor/github.com/mitchellh/go-homedir/homedir.go +167 -0
  80. data/vendor/github.com/pkg/errors/.gitignore +24 -0
  81. data/vendor/github.com/pkg/errors/.travis.yml +10 -0
  82. data/vendor/github.com/pkg/errors/LICENSE +23 -0
  83. data/vendor/github.com/pkg/errors/Makefile +44 -0
  84. data/vendor/github.com/pkg/errors/README.md +59 -0
  85. data/vendor/github.com/pkg/errors/appveyor.yml +32 -0
  86. data/vendor/github.com/pkg/errors/errors.go +288 -0
  87. data/vendor/github.com/pkg/errors/go113.go +38 -0
  88. data/vendor/github.com/pkg/errors/stack.go +177 -0
  89. data/vendor/github.com/planetscale/planetscale-go/planetscale/backups.go +139 -0
  90. data/vendor/github.com/planetscale/planetscale-go/planetscale/branches.go +258 -0
  91. data/vendor/github.com/planetscale/planetscale-go/planetscale/certs.go +142 -0
  92. data/vendor/github.com/planetscale/planetscale-go/planetscale/client.go +305 -0
  93. data/vendor/github.com/planetscale/planetscale-go/planetscale/databases.go +131 -0
  94. data/vendor/github.com/planetscale/planetscale-go/planetscale/deploy_requests.go +368 -0
  95. data/vendor/github.com/planetscale/planetscale-go/planetscale/organizations.go +78 -0
  96. data/vendor/github.com/planetscale/planetscale-go/planetscale/service_tokens.go +163 -0
  97. data/vendor/github.com/planetscale/sql-proxy/proxy/client.go +467 -0
  98. data/vendor/github.com/planetscale/sql-proxy/proxy/tls_cache.go +73 -0
  99. data/vendor/go.uber.org/atomic/.codecov.yml +19 -0
  100. data/vendor/go.uber.org/atomic/.gitignore +12 -0
  101. data/vendor/go.uber.org/atomic/.travis.yml +27 -0
  102. data/vendor/go.uber.org/atomic/CHANGELOG.md +76 -0
  103. data/vendor/go.uber.org/atomic/LICENSE.txt +19 -0
  104. data/vendor/go.uber.org/atomic/Makefile +78 -0
  105. data/vendor/go.uber.org/atomic/README.md +63 -0
  106. data/vendor/go.uber.org/atomic/bool.go +81 -0
  107. data/vendor/go.uber.org/atomic/bool_ext.go +53 -0
  108. data/vendor/go.uber.org/atomic/doc.go +23 -0
  109. data/vendor/go.uber.org/atomic/duration.go +82 -0
  110. data/vendor/go.uber.org/atomic/duration_ext.go +40 -0
  111. data/vendor/go.uber.org/atomic/error.go +51 -0
  112. data/vendor/go.uber.org/atomic/error_ext.go +39 -0
  113. data/vendor/go.uber.org/atomic/float64.go +76 -0
  114. data/vendor/go.uber.org/atomic/float64_ext.go +47 -0
  115. data/vendor/go.uber.org/atomic/gen.go +26 -0
  116. data/vendor/go.uber.org/atomic/go.mod +8 -0
  117. data/vendor/go.uber.org/atomic/go.sum +9 -0
  118. data/vendor/go.uber.org/atomic/int32.go +102 -0
  119. data/vendor/go.uber.org/atomic/int64.go +102 -0
  120. data/vendor/go.uber.org/atomic/nocmp.go +35 -0
  121. data/vendor/go.uber.org/atomic/string.go +54 -0
  122. data/vendor/go.uber.org/atomic/string_ext.go +43 -0
  123. data/vendor/go.uber.org/atomic/uint32.go +102 -0
  124. data/vendor/go.uber.org/atomic/uint64.go +102 -0
  125. data/vendor/go.uber.org/atomic/value.go +31 -0
  126. data/vendor/go.uber.org/multierr/.codecov.yml +15 -0
  127. data/vendor/go.uber.org/multierr/.gitignore +4 -0
  128. data/vendor/go.uber.org/multierr/.travis.yml +23 -0
  129. data/vendor/go.uber.org/multierr/CHANGELOG.md +60 -0
  130. data/vendor/go.uber.org/multierr/LICENSE.txt +19 -0
  131. data/vendor/go.uber.org/multierr/Makefile +42 -0
  132. data/vendor/go.uber.org/multierr/README.md +23 -0
  133. data/vendor/go.uber.org/multierr/error.go +449 -0
  134. data/vendor/go.uber.org/multierr/glide.yaml +8 -0
  135. data/vendor/go.uber.org/multierr/go.mod +8 -0
  136. data/vendor/go.uber.org/multierr/go.sum +11 -0
  137. data/vendor/go.uber.org/multierr/go113.go +52 -0
  138. data/vendor/go.uber.org/zap/.codecov.yml +17 -0
  139. data/vendor/go.uber.org/zap/.gitignore +32 -0
  140. data/vendor/go.uber.org/zap/.readme.tmpl +109 -0
  141. data/vendor/go.uber.org/zap/.travis.yml +23 -0
  142. data/vendor/go.uber.org/zap/CHANGELOG.md +432 -0
  143. data/vendor/go.uber.org/zap/CODE_OF_CONDUCT.md +75 -0
  144. data/vendor/go.uber.org/zap/CONTRIBUTING.md +81 -0
  145. data/vendor/go.uber.org/zap/FAQ.md +156 -0
  146. data/vendor/go.uber.org/zap/LICENSE.txt +19 -0
  147. data/vendor/go.uber.org/zap/Makefile +63 -0
  148. data/vendor/go.uber.org/zap/README.md +134 -0
  149. data/vendor/go.uber.org/zap/array.go +320 -0
  150. data/vendor/go.uber.org/zap/buffer/buffer.go +123 -0
  151. data/vendor/go.uber.org/zap/buffer/pool.go +49 -0
  152. data/vendor/go.uber.org/zap/checklicense.sh +17 -0
  153. data/vendor/go.uber.org/zap/config.go +264 -0
  154. data/vendor/go.uber.org/zap/doc.go +113 -0
  155. data/vendor/go.uber.org/zap/encoder.go +79 -0
  156. data/vendor/go.uber.org/zap/error.go +80 -0
  157. data/vendor/go.uber.org/zap/field.go +539 -0
  158. data/vendor/go.uber.org/zap/flag.go +39 -0
  159. data/vendor/go.uber.org/zap/glide.yaml +34 -0
  160. data/vendor/go.uber.org/zap/global.go +168 -0
  161. data/vendor/go.uber.org/zap/global_go112.go +26 -0
  162. data/vendor/go.uber.org/zap/global_prego112.go +26 -0
  163. data/vendor/go.uber.org/zap/go.mod +13 -0
  164. data/vendor/go.uber.org/zap/go.sum +56 -0
  165. data/vendor/go.uber.org/zap/http_handler.go +81 -0
  166. data/vendor/go.uber.org/zap/internal/bufferpool/bufferpool.go +31 -0
  167. data/vendor/go.uber.org/zap/internal/color/color.go +44 -0
  168. data/vendor/go.uber.org/zap/internal/exit/exit.go +64 -0
  169. data/vendor/go.uber.org/zap/level.go +132 -0
  170. data/vendor/go.uber.org/zap/logger.go +344 -0
  171. data/vendor/go.uber.org/zap/options.go +140 -0
  172. data/vendor/go.uber.org/zap/sink.go +161 -0
  173. data/vendor/go.uber.org/zap/stacktrace.go +85 -0
  174. data/vendor/go.uber.org/zap/sugar.go +304 -0
  175. data/vendor/go.uber.org/zap/time.go +27 -0
  176. data/vendor/go.uber.org/zap/writer.go +99 -0
  177. data/vendor/go.uber.org/zap/zapcore/console_encoder.go +161 -0
  178. data/vendor/go.uber.org/zap/zapcore/core.go +113 -0
  179. data/vendor/go.uber.org/zap/zapcore/doc.go +24 -0
  180. data/vendor/go.uber.org/zap/zapcore/encoder.go +443 -0
  181. data/vendor/go.uber.org/zap/zapcore/entry.go +264 -0
  182. data/vendor/go.uber.org/zap/zapcore/error.go +115 -0
  183. data/vendor/go.uber.org/zap/zapcore/field.go +227 -0
  184. data/vendor/go.uber.org/zap/zapcore/hook.go +68 -0
  185. data/vendor/go.uber.org/zap/zapcore/increase_level.go +66 -0
  186. data/vendor/go.uber.org/zap/zapcore/json_encoder.go +534 -0
  187. data/vendor/go.uber.org/zap/zapcore/level.go +175 -0
  188. data/vendor/go.uber.org/zap/zapcore/level_strings.go +46 -0
  189. data/vendor/go.uber.org/zap/zapcore/marshaler.go +61 -0
  190. data/vendor/go.uber.org/zap/zapcore/memory_encoder.go +179 -0
  191. data/vendor/go.uber.org/zap/zapcore/sampler.go +208 -0
  192. data/vendor/go.uber.org/zap/zapcore/tee.go +81 -0
  193. data/vendor/go.uber.org/zap/zapcore/write_syncer.go +123 -0
  194. data/vendor/golang.org/x/net/AUTHORS +3 -0
  195. data/vendor/golang.org/x/net/CONTRIBUTORS +3 -0
  196. data/vendor/golang.org/x/net/LICENSE +27 -0
  197. data/vendor/golang.org/x/net/PATENTS +22 -0
  198. data/vendor/golang.org/x/net/context/context.go +56 -0
  199. data/vendor/golang.org/x/net/context/ctxhttp/ctxhttp.go +71 -0
  200. data/vendor/golang.org/x/net/context/go17.go +73 -0
  201. data/vendor/golang.org/x/net/context/go19.go +21 -0
  202. data/vendor/golang.org/x/net/context/pre_go17.go +301 -0
  203. data/vendor/golang.org/x/net/context/pre_go19.go +110 -0
  204. data/vendor/golang.org/x/oauth2/.travis.yml +13 -0
  205. data/vendor/golang.org/x/oauth2/AUTHORS +3 -0
  206. data/vendor/golang.org/x/oauth2/CONTRIBUTING.md +26 -0
  207. data/vendor/golang.org/x/oauth2/CONTRIBUTORS +3 -0
  208. data/vendor/golang.org/x/oauth2/LICENSE +27 -0
  209. data/vendor/golang.org/x/oauth2/README.md +36 -0
  210. data/vendor/golang.org/x/oauth2/go.mod +9 -0
  211. data/vendor/golang.org/x/oauth2/go.sum +361 -0
  212. data/vendor/golang.org/x/oauth2/internal/client_appengine.go +14 -0
  213. data/vendor/golang.org/x/oauth2/internal/doc.go +6 -0
  214. data/vendor/golang.org/x/oauth2/internal/oauth2.go +37 -0
  215. data/vendor/golang.org/x/oauth2/internal/token.go +294 -0
  216. data/vendor/golang.org/x/oauth2/internal/transport.go +33 -0
  217. data/vendor/golang.org/x/oauth2/oauth2.go +381 -0
  218. data/vendor/golang.org/x/oauth2/token.go +178 -0
  219. data/vendor/golang.org/x/oauth2/transport.go +89 -0
  220. data/vendor/google.golang.org/appengine/LICENSE +202 -0
  221. data/vendor/google.golang.org/appengine/internal/api.go +678 -0
  222. data/vendor/google.golang.org/appengine/internal/api_classic.go +169 -0
  223. data/vendor/google.golang.org/appengine/internal/api_common.go +123 -0
  224. data/vendor/google.golang.org/appengine/internal/app_id.go +28 -0
  225. data/vendor/google.golang.org/appengine/internal/base/api_base.pb.go +308 -0
  226. data/vendor/google.golang.org/appengine/internal/base/api_base.proto +33 -0
  227. data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.pb.go +4367 -0
  228. data/vendor/google.golang.org/appengine/internal/datastore/datastore_v3.proto +551 -0
  229. data/vendor/google.golang.org/appengine/internal/identity.go +55 -0
  230. data/vendor/google.golang.org/appengine/internal/identity_classic.go +61 -0
  231. data/vendor/google.golang.org/appengine/internal/identity_flex.go +11 -0
  232. data/vendor/google.golang.org/appengine/internal/identity_vm.go +134 -0
  233. data/vendor/google.golang.org/appengine/internal/internal.go +110 -0
  234. data/vendor/google.golang.org/appengine/internal/log/log_service.pb.go +1313 -0
  235. data/vendor/google.golang.org/appengine/internal/log/log_service.proto +150 -0
  236. data/vendor/google.golang.org/appengine/internal/main.go +16 -0
  237. data/vendor/google.golang.org/appengine/internal/main_common.go +7 -0
  238. data/vendor/google.golang.org/appengine/internal/main_vm.go +69 -0
  239. data/vendor/google.golang.org/appengine/internal/metadata.go +60 -0
  240. data/vendor/google.golang.org/appengine/internal/net.go +56 -0
  241. data/vendor/google.golang.org/appengine/internal/regen.sh +40 -0
  242. data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.pb.go +361 -0
  243. data/vendor/google.golang.org/appengine/internal/remote_api/remote_api.proto +44 -0
  244. data/vendor/google.golang.org/appengine/internal/transaction.go +115 -0
  245. data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.pb.go +527 -0
  246. data/vendor/google.golang.org/appengine/internal/urlfetch/urlfetch_service.proto +64 -0
  247. data/vendor/google.golang.org/appengine/urlfetch/urlfetch.go +210 -0
  248. data/vendor/google.golang.org/protobuf/AUTHORS +3 -0
  249. data/vendor/google.golang.org/protobuf/CONTRIBUTORS +3 -0
  250. data/vendor/google.golang.org/protobuf/LICENSE +27 -0
  251. data/vendor/google.golang.org/protobuf/PATENTS +22 -0
  252. data/vendor/google.golang.org/protobuf/encoding/prototext/decode.go +773 -0
  253. data/vendor/google.golang.org/protobuf/encoding/prototext/doc.go +7 -0
  254. data/vendor/google.golang.org/protobuf/encoding/prototext/encode.go +371 -0
  255. data/vendor/google.golang.org/protobuf/encoding/protowire/wire.go +538 -0
  256. data/vendor/google.golang.org/protobuf/internal/descfmt/stringer.go +318 -0
  257. data/vendor/google.golang.org/protobuf/internal/descopts/options.go +29 -0
  258. data/vendor/google.golang.org/protobuf/internal/detrand/rand.go +69 -0
  259. data/vendor/google.golang.org/protobuf/internal/encoding/defval/default.go +213 -0
  260. data/vendor/google.golang.org/protobuf/internal/encoding/messageset/messageset.go +241 -0
  261. data/vendor/google.golang.org/protobuf/internal/encoding/tag/tag.go +207 -0
  262. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode.go +665 -0
  263. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_number.go +190 -0
  264. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_string.go +161 -0
  265. data/vendor/google.golang.org/protobuf/internal/encoding/text/decode_token.go +373 -0
  266. data/vendor/google.golang.org/protobuf/internal/encoding/text/doc.go +29 -0
  267. data/vendor/google.golang.org/protobuf/internal/encoding/text/encode.go +265 -0
  268. data/vendor/google.golang.org/protobuf/internal/errors/errors.go +89 -0
  269. data/vendor/google.golang.org/protobuf/internal/errors/is_go112.go +39 -0
  270. data/vendor/google.golang.org/protobuf/internal/errors/is_go113.go +12 -0
  271. data/vendor/google.golang.org/protobuf/internal/filedesc/build.go +158 -0
  272. data/vendor/google.golang.org/protobuf/internal/filedesc/desc.go +631 -0
  273. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_init.go +471 -0
  274. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_lazy.go +704 -0
  275. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list.go +450 -0
  276. data/vendor/google.golang.org/protobuf/internal/filedesc/desc_list_gen.go +356 -0
  277. data/vendor/google.golang.org/protobuf/internal/filedesc/placeholder.go +107 -0
  278. data/vendor/google.golang.org/protobuf/internal/filetype/build.go +297 -0
  279. data/vendor/google.golang.org/protobuf/internal/flags/flags.go +24 -0
  280. data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_disable.go +9 -0
  281. data/vendor/google.golang.org/protobuf/internal/flags/proto_legacy_enable.go +9 -0
  282. data/vendor/google.golang.org/protobuf/internal/genid/any_gen.go +34 -0
  283. data/vendor/google.golang.org/protobuf/internal/genid/api_gen.go +106 -0
  284. data/vendor/google.golang.org/protobuf/internal/genid/descriptor_gen.go +829 -0
  285. data/vendor/google.golang.org/protobuf/internal/genid/doc.go +11 -0
  286. data/vendor/google.golang.org/protobuf/internal/genid/duration_gen.go +34 -0
  287. data/vendor/google.golang.org/protobuf/internal/genid/empty_gen.go +19 -0
  288. data/vendor/google.golang.org/protobuf/internal/genid/field_mask_gen.go +31 -0
  289. data/vendor/google.golang.org/protobuf/internal/genid/goname.go +25 -0
  290. data/vendor/google.golang.org/protobuf/internal/genid/map_entry.go +16 -0
  291. data/vendor/google.golang.org/protobuf/internal/genid/source_context_gen.go +31 -0
  292. data/vendor/google.golang.org/protobuf/internal/genid/struct_gen.go +116 -0
  293. data/vendor/google.golang.org/protobuf/internal/genid/timestamp_gen.go +34 -0
  294. data/vendor/google.golang.org/protobuf/internal/genid/type_gen.go +184 -0
  295. data/vendor/google.golang.org/protobuf/internal/genid/wrappers.go +13 -0
  296. data/vendor/google.golang.org/protobuf/internal/genid/wrappers_gen.go +175 -0
  297. data/vendor/google.golang.org/protobuf/internal/impl/api_export.go +177 -0
  298. data/vendor/google.golang.org/protobuf/internal/impl/checkinit.go +141 -0
  299. data/vendor/google.golang.org/protobuf/internal/impl/codec_extension.go +223 -0
  300. data/vendor/google.golang.org/protobuf/internal/impl/codec_field.go +830 -0
  301. data/vendor/google.golang.org/protobuf/internal/impl/codec_gen.go +5637 -0
  302. data/vendor/google.golang.org/protobuf/internal/impl/codec_map.go +388 -0
  303. data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go111.go +37 -0
  304. data/vendor/google.golang.org/protobuf/internal/impl/codec_map_go112.go +11 -0
  305. data/vendor/google.golang.org/protobuf/internal/impl/codec_message.go +217 -0
  306. data/vendor/google.golang.org/protobuf/internal/impl/codec_messageset.go +123 -0
  307. data/vendor/google.golang.org/protobuf/internal/impl/codec_reflect.go +209 -0
  308. data/vendor/google.golang.org/protobuf/internal/impl/codec_tables.go +557 -0
  309. data/vendor/google.golang.org/protobuf/internal/impl/codec_unsafe.go +17 -0
  310. data/vendor/google.golang.org/protobuf/internal/impl/convert.go +496 -0
  311. data/vendor/google.golang.org/protobuf/internal/impl/convert_list.go +141 -0
  312. data/vendor/google.golang.org/protobuf/internal/impl/convert_map.go +121 -0
  313. data/vendor/google.golang.org/protobuf/internal/impl/decode.go +276 -0
  314. data/vendor/google.golang.org/protobuf/internal/impl/encode.go +201 -0
  315. data/vendor/google.golang.org/protobuf/internal/impl/enum.go +21 -0
  316. data/vendor/google.golang.org/protobuf/internal/impl/extension.go +156 -0
  317. data/vendor/google.golang.org/protobuf/internal/impl/legacy_enum.go +219 -0
  318. data/vendor/google.golang.org/protobuf/internal/impl/legacy_export.go +92 -0
  319. data/vendor/google.golang.org/protobuf/internal/impl/legacy_extension.go +176 -0
  320. data/vendor/google.golang.org/protobuf/internal/impl/legacy_file.go +81 -0
  321. data/vendor/google.golang.org/protobuf/internal/impl/legacy_message.go +558 -0
  322. data/vendor/google.golang.org/protobuf/internal/impl/merge.go +176 -0
  323. data/vendor/google.golang.org/protobuf/internal/impl/merge_gen.go +209 -0
  324. data/vendor/google.golang.org/protobuf/internal/impl/message.go +276 -0
  325. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect.go +465 -0
  326. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_field.go +543 -0
  327. data/vendor/google.golang.org/protobuf/internal/impl/message_reflect_gen.go +249 -0
  328. data/vendor/google.golang.org/protobuf/internal/impl/pointer_reflect.go +178 -0
  329. data/vendor/google.golang.org/protobuf/internal/impl/pointer_unsafe.go +174 -0
  330. data/vendor/google.golang.org/protobuf/internal/impl/validate.go +576 -0
  331. data/vendor/google.golang.org/protobuf/internal/impl/weak.go +74 -0
  332. data/vendor/google.golang.org/protobuf/internal/order/order.go +89 -0
  333. data/vendor/google.golang.org/protobuf/internal/order/range.go +115 -0
  334. data/vendor/google.golang.org/protobuf/internal/pragma/pragma.go +29 -0
  335. data/vendor/google.golang.org/protobuf/internal/set/ints.go +58 -0
  336. data/vendor/google.golang.org/protobuf/internal/strs/strings.go +196 -0
  337. data/vendor/google.golang.org/protobuf/internal/strs/strings_pure.go +27 -0
  338. data/vendor/google.golang.org/protobuf/internal/strs/strings_unsafe.go +94 -0
  339. data/vendor/google.golang.org/protobuf/internal/version/version.go +79 -0
  340. data/vendor/google.golang.org/protobuf/proto/checkinit.go +71 -0
  341. data/vendor/google.golang.org/protobuf/proto/decode.go +278 -0
  342. data/vendor/google.golang.org/protobuf/proto/decode_gen.go +603 -0
  343. data/vendor/google.golang.org/protobuf/proto/doc.go +94 -0
  344. data/vendor/google.golang.org/protobuf/proto/encode.go +319 -0
  345. data/vendor/google.golang.org/protobuf/proto/encode_gen.go +97 -0
  346. data/vendor/google.golang.org/protobuf/proto/equal.go +167 -0
  347. data/vendor/google.golang.org/protobuf/proto/extension.go +92 -0
  348. data/vendor/google.golang.org/protobuf/proto/merge.go +139 -0
  349. data/vendor/google.golang.org/protobuf/proto/messageset.go +93 -0
  350. data/vendor/google.golang.org/protobuf/proto/proto.go +43 -0
  351. data/vendor/google.golang.org/protobuf/proto/proto_methods.go +19 -0
  352. data/vendor/google.golang.org/protobuf/proto/proto_reflect.go +19 -0
  353. data/vendor/google.golang.org/protobuf/proto/reset.go +43 -0
  354. data/vendor/google.golang.org/protobuf/proto/size.go +97 -0
  355. data/vendor/google.golang.org/protobuf/proto/size_gen.go +55 -0
  356. data/vendor/google.golang.org/protobuf/proto/wrappers.go +29 -0
  357. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc.go +276 -0
  358. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_init.go +248 -0
  359. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_resolve.go +286 -0
  360. data/vendor/google.golang.org/protobuf/reflect/protodesc/desc_validate.go +374 -0
  361. data/vendor/google.golang.org/protobuf/reflect/protodesc/proto.go +252 -0
  362. data/vendor/google.golang.org/protobuf/reflect/protoreflect/methods.go +77 -0
  363. data/vendor/google.golang.org/protobuf/reflect/protoreflect/proto.go +504 -0
  364. data/vendor/google.golang.org/protobuf/reflect/protoreflect/source.go +128 -0
  365. data/vendor/google.golang.org/protobuf/reflect/protoreflect/source_gen.go +461 -0
  366. data/vendor/google.golang.org/protobuf/reflect/protoreflect/type.go +665 -0
  367. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value.go +285 -0
  368. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_pure.go +59 -0
  369. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_union.go +411 -0
  370. data/vendor/google.golang.org/protobuf/reflect/protoreflect/value_unsafe.go +98 -0
  371. data/vendor/google.golang.org/protobuf/reflect/protoregistry/registry.go +869 -0
  372. data/vendor/google.golang.org/protobuf/runtime/protoiface/legacy.go +15 -0
  373. data/vendor/google.golang.org/protobuf/runtime/protoiface/methods.go +167 -0
  374. data/vendor/google.golang.org/protobuf/runtime/protoimpl/impl.go +44 -0
  375. data/vendor/google.golang.org/protobuf/runtime/protoimpl/version.go +56 -0
  376. data/vendor/google.golang.org/protobuf/types/descriptorpb/descriptor.pb.go +4039 -0
  377. data/vendor/modules.txt +79 -0
  378. metadata +495 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: '08676f6db7d2320ebf4bdcc91fe73d5232154cad5034eccc4cc33d4785210e10'
4
+ data.tar.gz: efc1fcab97e5988842003792217056782a9a910977bb7b5a6532dc3f73c25f28
5
+ SHA512:
6
+ metadata.gz: 52a7c7101a2852f7844cba913a90cccb11b9b0601b7de3ca98d0167cf00606cd598489c58f5070f3e77d0f1ccb534d2a55b56b70ce015ef3577557e4ae2c4017
7
+ data.tar.gz: 9ee252ca561dca3d4a3d6dbb863dc01941bc88458ca8f4078d3a3ef319c78437ef04ba6fe7b29d7b56dfddbffe38bdb1e0ce18a05cd8fc83bd6e3a10d79d16b4
@@ -0,0 +1,24 @@
1
+ name: Ruby Gem
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+ pull_request:
7
+ branches: [ main ]
8
+
9
+ jobs:
10
+ build:
11
+ name: Run Tests
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v2
15
+ - name: Set up Ruby 2.7
16
+ uses: actions/setup-ruby@v1
17
+ with:
18
+ ruby-version: 2.7.x
19
+ - name: Bundle and Test
20
+ run: |
21
+ gem install bundler
22
+ bundle install
23
+ go build -v -buildmode=c-shared -o proxy/planetscale-linux.so
24
+ bundle exec rake test
@@ -0,0 +1,38 @@
1
+ name: Ruby Gem
2
+
3
+ on:
4
+ push:
5
+ branches: [ main ]
6
+
7
+ jobs:
8
+ build:
9
+ name: Build + Publish
10
+ runs-on: macos-latest
11
+ timeout-minutes: 25
12
+
13
+ steps:
14
+ - uses: actions/checkout@v2
15
+ - uses: nickvanw/actions-setup-docker@master
16
+
17
+ - name: Set up Ruby 2.7
18
+ uses: actions/setup-ruby@v1
19
+ with:
20
+ ruby-version: 2.7.x
21
+
22
+ - name: Add SHORT_SHA env property with commit short sha
23
+ run: echo "SHORT_SHA=`echo ${GITHUB_SHA} | cut -c1-8`" >> $GITHUB_ENV
24
+
25
+ - name: Build shared library on OS X
26
+ run: go build -v -buildmode=c-shared -o proxy/planetscale-darwin.so
27
+
28
+ - name: Build shared library on Linux
29
+ run: docker run -v $(pwd):/planetscale-ruby golang sh -c 'cd /planetscale-ruby && go build -v -buildmode=c-shared -o proxy/planetscale-linux.so'
30
+
31
+ - name: Publish to GPR
32
+ run: |
33
+ gem build *.gemspec
34
+ gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
35
+ env:
36
+ GEM_BUILD: 1
37
+ GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
38
+ OWNER: ${{ github.repository_owner }}
@@ -0,0 +1,43 @@
1
+ name: licensed-ci
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+ - main
8
+ pull_request:
9
+
10
+ jobs:
11
+ licensed:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Checkout repository
15
+ uses: actions/checkout@v2
16
+
17
+ - name: Install licensed
18
+ uses: jonabc/setup-licensed@v1
19
+ with:
20
+ version: 2.x
21
+
22
+ - name: Install go
23
+ uses: actions/setup-go@v2
24
+ with:
25
+ go-version: ^1.16
26
+
27
+ - name: Run licensed
28
+ id: licensed
29
+ uses: jonabc/licensed-ci@v1
30
+ with:
31
+ github_token: ${{ secrets.GITHUB_TOKEN }}
32
+
33
+ - name: Report licensed activity
34
+ uses: actions/github-script@0.2.0
35
+ if: always() && steps.licensed.outputs.pr_number
36
+ with:
37
+ script: |
38
+ github.issues.createComment({
39
+ owner: context.repo.owner,
40
+ repo: context.repo.repo,
41
+ issue_number: ${{ steps.licensed.outputs.pr_number }},
42
+ body: 'licensed has detected incompatible changes'
43
+ })
data/.gitignore ADDED
@@ -0,0 +1,10 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /_yardoc/
4
+ /coverage/
5
+ /doc/
6
+ /pkg/
7
+ /proxy/
8
+ /spec/reports/
9
+ /tmp/
10
+ Gemfile.lock
data/.licensed.yml ADDED
@@ -0,0 +1,9 @@
1
+ sources:
2
+ go: true
3
+
4
+ allowed:
5
+ - mit
6
+ - apache-2.0
7
+ - bsd-2-clause
8
+ - bsd-3-clause
9
+ - mpl-2.0
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: github.com/armon/circbuf
3
+ version: v0.0.0-20190214190532-5111143e8da2
4
+ type: go
5
+ summary:
6
+ homepage: https://godoc.org/github.com/armon/circbuf
7
+ license: mit
8
+ licenses:
9
+ - sources: LICENSE
10
+ text: |
11
+ The MIT License (MIT)
12
+
13
+ Copyright (c) 2013 Armon Dadgar
14
+
15
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
16
+ this software and associated documentation files (the "Software"), to deal in
17
+ the Software without restriction, including without limitation the rights to
18
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
19
+ the Software, and to permit persons to whom the Software is furnished to do so,
20
+ subject to the following conditions:
21
+
22
+ The above copyright notice and this permission notice shall be included in all
23
+ copies or substantial portions of the Software.
24
+
25
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
26
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
27
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
28
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
29
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
30
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
+ notices: []
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: github.com/gorilla/mux
3
+ version: v1.8.0
4
+ type: go
5
+ summary: Package mux implements a request router and dispatcher.
6
+ homepage: https://godoc.org/github.com/gorilla/mux
7
+ license: bsd-3-clause
8
+ licenses:
9
+ - sources: LICENSE
10
+ text: "Copyright (c) 2012-2018 The Gorilla Authors. All rights reserved.\n\nRedistribution
11
+ and use in source and binary forms, with or without\nmodification, are permitted
12
+ provided that the following conditions are\nmet:\n\n\t * Redistributions of source
13
+ code must retain the above copyright\nnotice, this list of conditions and the
14
+ following disclaimer.\n\t * Redistributions in binary form must reproduce the
15
+ above\ncopyright notice, this list of conditions and the following disclaimer\nin
16
+ the documentation and/or other materials provided with the\ndistribution.\n\t
17
+ * Neither the name of Google Inc. nor the names of its\ncontributors may be used
18
+ to endorse or promote products derived from\nthis software without specific prior
19
+ written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
20
+ CONTRIBUTORS\n\"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
21
+ NOT\nLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\nA
22
+ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\nOWNER OR CONTRIBUTORS
23
+ BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\nSPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24
+ DAMAGES (INCLUDING, BUT NOT\nLIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25
+ LOSS OF USE,\nDATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
26
+ ANY\nTHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING
27
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE,
28
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
29
+ - sources: README.md
30
+ text: BSD licensed. See the LICENSE file for details.
31
+ notices:
32
+ - sources: AUTHORS
33
+ text: |-
34
+ # This is the official list of gorilla/mux authors for copyright purposes.
35
+ #
36
+ # Please keep the list sorted.
37
+
38
+ Google LLC (https://opensource.google.com/)
39
+ Kamil Kisielk <kamil@kamilkisiel.net>
40
+ Matt Silverlock <matt@eatsleeprepeat.net>
41
+ Rodrigo Moraes (https://github.com/moraes)
@@ -0,0 +1,375 @@
1
+ ---
2
+ name: github.com/hashicorp/go-cleanhttp
3
+ version: v0.5.2
4
+ type: go
5
+ summary: Package cleanhttp offers convenience utilities for acquiring "clean" http.Transport
6
+ and http.Client structs.
7
+ homepage: https://godoc.org/github.com/hashicorp/go-cleanhttp
8
+ license: mpl-2.0
9
+ licenses:
10
+ - sources: LICENSE
11
+ text: |+
12
+ Mozilla Public License, version 2.0
13
+
14
+ 1. Definitions
15
+
16
+ 1.1. "Contributor"
17
+
18
+ means each individual or legal entity that creates, contributes to the
19
+ creation of, or owns Covered Software.
20
+
21
+ 1.2. "Contributor Version"
22
+
23
+ means the combination of the Contributions of others (if any) used by a
24
+ Contributor and that particular Contributor's Contribution.
25
+
26
+ 1.3. "Contribution"
27
+
28
+ means Covered Software of a particular Contributor.
29
+
30
+ 1.4. "Covered Software"
31
+
32
+ means Source Code Form to which the initial Contributor has attached the
33
+ notice in Exhibit A, the Executable Form of such Source Code Form, and
34
+ Modifications of such Source Code Form, in each case including portions
35
+ thereof.
36
+
37
+ 1.5. "Incompatible With Secondary Licenses"
38
+ means
39
+
40
+ a. that the initial Contributor has attached the notice described in
41
+ Exhibit B to the Covered Software; or
42
+
43
+ b. that the Covered Software was made available under the terms of
44
+ version 1.1 or earlier of the License, but not also under the terms of
45
+ a Secondary License.
46
+
47
+ 1.6. "Executable Form"
48
+
49
+ means any form of the work other than Source Code Form.
50
+
51
+ 1.7. "Larger Work"
52
+
53
+ means a work that combines Covered Software with other material, in a
54
+ separate file or files, that is not Covered Software.
55
+
56
+ 1.8. "License"
57
+
58
+ means this document.
59
+
60
+ 1.9. "Licensable"
61
+
62
+ means having the right to grant, to the maximum extent possible, whether
63
+ at the time of the initial grant or subsequently, any and all of the
64
+ rights conveyed by this License.
65
+
66
+ 1.10. "Modifications"
67
+
68
+ means any of the following:
69
+
70
+ a. any file in Source Code Form that results from an addition to,
71
+ deletion from, or modification of the contents of Covered Software; or
72
+
73
+ b. any new file in Source Code Form that contains any Covered Software.
74
+
75
+ 1.11. "Patent Claims" of a Contributor
76
+
77
+ means any patent claim(s), including without limitation, method,
78
+ process, and apparatus claims, in any patent Licensable by such
79
+ Contributor that would be infringed, but for the grant of the License,
80
+ by the making, using, selling, offering for sale, having made, import,
81
+ or transfer of either its Contributions or its Contributor Version.
82
+
83
+ 1.12. "Secondary License"
84
+
85
+ means either the GNU General Public License, Version 2.0, the GNU Lesser
86
+ General Public License, Version 2.1, the GNU Affero General Public
87
+ License, Version 3.0, or any later versions of those licenses.
88
+
89
+ 1.13. "Source Code Form"
90
+
91
+ means the form of the work preferred for making modifications.
92
+
93
+ 1.14. "You" (or "Your")
94
+
95
+ means an individual or a legal entity exercising rights under this
96
+ License. For legal entities, "You" includes any entity that controls, is
97
+ controlled by, or is under common control with You. For purposes of this
98
+ definition, "control" means (a) the power, direct or indirect, to cause
99
+ the direction or management of such entity, whether by contract or
100
+ otherwise, or (b) ownership of more than fifty percent (50%) of the
101
+ outstanding shares or beneficial ownership of such entity.
102
+
103
+
104
+ 2. License Grants and Conditions
105
+
106
+ 2.1. Grants
107
+
108
+ Each Contributor hereby grants You a world-wide, royalty-free,
109
+ non-exclusive license:
110
+
111
+ a. under intellectual property rights (other than patent or trademark)
112
+ Licensable by such Contributor to use, reproduce, make available,
113
+ modify, display, perform, distribute, and otherwise exploit its
114
+ Contributions, either on an unmodified basis, with Modifications, or
115
+ as part of a Larger Work; and
116
+
117
+ b. under Patent Claims of such Contributor to make, use, sell, offer for
118
+ sale, have made, import, and otherwise transfer either its
119
+ Contributions or its Contributor Version.
120
+
121
+ 2.2. Effective Date
122
+
123
+ The licenses granted in Section 2.1 with respect to any Contribution
124
+ become effective for each Contribution on the date the Contributor first
125
+ distributes such Contribution.
126
+
127
+ 2.3. Limitations on Grant Scope
128
+
129
+ The licenses granted in this Section 2 are the only rights granted under
130
+ this License. No additional rights or licenses will be implied from the
131
+ distribution or licensing of Covered Software under this License.
132
+ Notwithstanding Section 2.1(b) above, no patent license is granted by a
133
+ Contributor:
134
+
135
+ a. for any code that a Contributor has removed from Covered Software; or
136
+
137
+ b. for infringements caused by: (i) Your and any other third party's
138
+ modifications of Covered Software, or (ii) the combination of its
139
+ Contributions with other software (except as part of its Contributor
140
+ Version); or
141
+
142
+ c. under Patent Claims infringed by Covered Software in the absence of
143
+ its Contributions.
144
+
145
+ This License does not grant any rights in the trademarks, service marks,
146
+ or logos of any Contributor (except as may be necessary to comply with
147
+ the notice requirements in Section 3.4).
148
+
149
+ 2.4. Subsequent Licenses
150
+
151
+ No Contributor makes additional grants as a result of Your choice to
152
+ distribute the Covered Software under a subsequent version of this
153
+ License (see Section 10.2) or under the terms of a Secondary License (if
154
+ permitted under the terms of Section 3.3).
155
+
156
+ 2.5. Representation
157
+
158
+ Each Contributor represents that the Contributor believes its
159
+ Contributions are its original creation(s) or it has sufficient rights to
160
+ grant the rights to its Contributions conveyed by this License.
161
+
162
+ 2.6. Fair Use
163
+
164
+ This License is not intended to limit any rights You have under
165
+ applicable copyright doctrines of fair use, fair dealing, or other
166
+ equivalents.
167
+
168
+ 2.7. Conditions
169
+
170
+ Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted in
171
+ Section 2.1.
172
+
173
+
174
+ 3. Responsibilities
175
+
176
+ 3.1. Distribution of Source Form
177
+
178
+ All distribution of Covered Software in Source Code Form, including any
179
+ Modifications that You create or to which You contribute, must be under
180
+ the terms of this License. You must inform recipients that the Source
181
+ Code Form of the Covered Software is governed by the terms of this
182
+ License, and how they can obtain a copy of this License. You may not
183
+ attempt to alter or restrict the recipients' rights in the Source Code
184
+ Form.
185
+
186
+ 3.2. Distribution of Executable Form
187
+
188
+ If You distribute Covered Software in Executable Form then:
189
+
190
+ a. such Covered Software must also be made available in Source Code Form,
191
+ as described in Section 3.1, and You must inform recipients of the
192
+ Executable Form how they can obtain a copy of such Source Code Form by
193
+ reasonable means in a timely manner, at a charge no more than the cost
194
+ of distribution to the recipient; and
195
+
196
+ b. You may distribute such Executable Form under the terms of this
197
+ License, or sublicense it under different terms, provided that the
198
+ license for the Executable Form does not attempt to limit or alter the
199
+ recipients' rights in the Source Code Form under this License.
200
+
201
+ 3.3. Distribution of a Larger Work
202
+
203
+ You may create and distribute a Larger Work under terms of Your choice,
204
+ provided that You also comply with the requirements of this License for
205
+ the Covered Software. If the Larger Work is a combination of Covered
206
+ Software with a work governed by one or more Secondary Licenses, and the
207
+ Covered Software is not Incompatible With Secondary Licenses, this
208
+ License permits You to additionally distribute such Covered Software
209
+ under the terms of such Secondary License(s), so that the recipient of
210
+ the Larger Work may, at their option, further distribute the Covered
211
+ Software under the terms of either this License or such Secondary
212
+ License(s).
213
+
214
+ 3.4. Notices
215
+
216
+ You may not remove or alter the substance of any license notices
217
+ (including copyright notices, patent notices, disclaimers of warranty, or
218
+ limitations of liability) contained within the Source Code Form of the
219
+ Covered Software, except that You may alter any license notices to the
220
+ extent required to remedy known factual inaccuracies.
221
+
222
+ 3.5. Application of Additional Terms
223
+
224
+ You may choose to offer, and to charge a fee for, warranty, support,
225
+ indemnity or liability obligations to one or more recipients of Covered
226
+ Software. However, You may do so only on Your own behalf, and not on
227
+ behalf of any Contributor. You must make it absolutely clear that any
228
+ such warranty, support, indemnity, or liability obligation is offered by
229
+ You alone, and You hereby agree to indemnify every Contributor for any
230
+ liability incurred by such Contributor as a result of warranty, support,
231
+ indemnity or liability terms You offer. You may include additional
232
+ disclaimers of warranty and limitations of liability specific to any
233
+ jurisdiction.
234
+
235
+ 4. Inability to Comply Due to Statute or Regulation
236
+
237
+ If it is impossible for You to comply with any of the terms of this License
238
+ with respect to some or all of the Covered Software due to statute,
239
+ judicial order, or regulation then You must: (a) comply with the terms of
240
+ this License to the maximum extent possible; and (b) describe the
241
+ limitations and the code they affect. Such description must be placed in a
242
+ text file included with all distributions of the Covered Software under
243
+ this License. Except to the extent prohibited by statute or regulation,
244
+ such description must be sufficiently detailed for a recipient of ordinary
245
+ skill to be able to understand it.
246
+
247
+ 5. Termination
248
+
249
+ 5.1. The rights granted under this License will terminate automatically if You
250
+ fail to comply with any of its terms. However, if You become compliant,
251
+ then the rights granted under this License from a particular Contributor
252
+ are reinstated (a) provisionally, unless and until such Contributor
253
+ explicitly and finally terminates Your grants, and (b) on an ongoing
254
+ basis, if such Contributor fails to notify You of the non-compliance by
255
+ some reasonable means prior to 60 days after You have come back into
256
+ compliance. Moreover, Your grants from a particular Contributor are
257
+ reinstated on an ongoing basis if such Contributor notifies You of the
258
+ non-compliance by some reasonable means, this is the first time You have
259
+ received notice of non-compliance with this License from such
260
+ Contributor, and You become compliant prior to 30 days after Your receipt
261
+ of the notice.
262
+
263
+ 5.2. If You initiate litigation against any entity by asserting a patent
264
+ infringement claim (excluding declaratory judgment actions,
265
+ counter-claims, and cross-claims) alleging that a Contributor Version
266
+ directly or indirectly infringes any patent, then the rights granted to
267
+ You by any and all Contributors for the Covered Software under Section
268
+ 2.1 of this License shall terminate.
269
+
270
+ 5.3. In the event of termination under Sections 5.1 or 5.2 above, all end user
271
+ license agreements (excluding distributors and resellers) which have been
272
+ validly granted by You or Your distributors under this License prior to
273
+ termination shall survive termination.
274
+
275
+ 6. Disclaimer of Warranty
276
+
277
+ Covered Software is provided under this License on an "as is" basis,
278
+ without warranty of any kind, either expressed, implied, or statutory,
279
+ including, without limitation, warranties that the Covered Software is free
280
+ of defects, merchantable, fit for a particular purpose or non-infringing.
281
+ The entire risk as to the quality and performance of the Covered Software
282
+ is with You. Should any Covered Software prove defective in any respect,
283
+ You (not any Contributor) assume the cost of any necessary servicing,
284
+ repair, or correction. This disclaimer of warranty constitutes an essential
285
+ part of this License. No use of any Covered Software is authorized under
286
+ this License except under this disclaimer.
287
+
288
+ 7. Limitation of Liability
289
+
290
+ Under no circumstances and under no legal theory, whether tort (including
291
+ negligence), contract, or otherwise, shall any Contributor, or anyone who
292
+ distributes Covered Software as permitted above, be liable to You for any
293
+ direct, indirect, special, incidental, or consequential damages of any
294
+ character including, without limitation, damages for lost profits, loss of
295
+ goodwill, work stoppage, computer failure or malfunction, or any and all
296
+ other commercial damages or losses, even if such party shall have been
297
+ informed of the possibility of such damages. This limitation of liability
298
+ shall not apply to liability for death or personal injury resulting from
299
+ such party's negligence to the extent applicable law prohibits such
300
+ limitation. Some jurisdictions do not allow the exclusion or limitation of
301
+ incidental or consequential damages, so this exclusion and limitation may
302
+ not apply to You.
303
+
304
+ 8. Litigation
305
+
306
+ Any litigation relating to this License may be brought only in the courts
307
+ of a jurisdiction where the defendant maintains its principal place of
308
+ business and such litigation shall be governed by laws of that
309
+ jurisdiction, without reference to its conflict-of-law provisions. Nothing
310
+ in this Section shall prevent a party's ability to bring cross-claims or
311
+ counter-claims.
312
+
313
+ 9. Miscellaneous
314
+
315
+ This License represents the complete agreement concerning the subject
316
+ matter hereof. If any provision of this License is held to be
317
+ unenforceable, such provision shall be reformed only to the extent
318
+ necessary to make it enforceable. Any law or regulation which provides that
319
+ the language of a contract shall be construed against the drafter shall not
320
+ be used to construe this License against a Contributor.
321
+
322
+
323
+ 10. Versions of the License
324
+
325
+ 10.1. New Versions
326
+
327
+ Mozilla Foundation is the license steward. Except as provided in Section
328
+ 10.3, no one other than the license steward has the right to modify or
329
+ publish new versions of this License. Each version will be given a
330
+ distinguishing version number.
331
+
332
+ 10.2. Effect of New Versions
333
+
334
+ You may distribute the Covered Software under the terms of the version
335
+ of the License under which You originally received the Covered Software,
336
+ or under the terms of any subsequent version published by the license
337
+ steward.
338
+
339
+ 10.3. Modified Versions
340
+
341
+ If you create software not governed by this License, and you want to
342
+ create a new license for such software, you may create and use a
343
+ modified version of this License if you rename the license and remove
344
+ any references to the name of the license steward (except to note that
345
+ such modified license differs from this License).
346
+
347
+ 10.4. Distributing Source Code Form that is Incompatible With Secondary
348
+ Licenses If You choose to distribute Source Code Form that is
349
+ Incompatible With Secondary Licenses under the terms of this version of
350
+ the License, the notice described in Exhibit B of this License must be
351
+ attached.
352
+
353
+ Exhibit A - Source Code Form License Notice
354
+
355
+ This Source Code Form is subject to the
356
+ terms of the Mozilla Public License, v.
357
+ 2.0. If a copy of the MPL was not
358
+ distributed with this file, You can
359
+ obtain one at
360
+ http://mozilla.org/MPL/2.0/.
361
+
362
+ If it is not possible or desirable to put the notice in a particular file,
363
+ then You may include the notice in a location (such as a LICENSE file in a
364
+ relevant directory) where a recipient would be likely to look for such a
365
+ notice.
366
+
367
+ You may add additional accurate notices of copyright ownership.
368
+
369
+ Exhibit B - "Incompatible With Secondary Licenses" Notice
370
+
371
+ This Source Code Form is "Incompatible
372
+ With Secondary Licenses", as defined by
373
+ the Mozilla Public License, v. 2.0.
374
+
375
+ notices: []