Update client-go to v10.0.0 (Kubernetes 1.13) (#2382)
* Update client-go to v10.0.0 (Kubernetes 1.13) This fix updates client-go to v10.0.0 which matches Kubernetes 1.13 (released several days ago). Other changes in Gopkg.yaml: - Updated apimachinary, api, klog, yaml associated with k8s version go dep will not automatically match the version. - Added [prune] field (otherwise go dep will not prune automatically) Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Updated Gopkg.lock Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Updated vendor for client-go v10.0.0 Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
This commit is contained in:
parent
c8f0e94026
commit
6b8c154441
996 changed files with 29842 additions and 101899 deletions
286
Gopkg.lock
generated
286
Gopkg.lock
generated
|
@ -2,42 +2,42 @@
|
||||||
|
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:1acadbbc24182315b628f727b2e9ac653266d1644ca4007e0766c28110afc072"
|
digest = "1:5c3894b2aa4d6bead0ceeea6831b305d62879c871780e7b76296ded1b004bc57"
|
||||||
name = "cloud.google.com/go"
|
name = "cloud.google.com/go"
|
||||||
packages = ["compute/metadata"]
|
packages = ["compute/metadata"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "97efc2c9ffd9fe8ef47f7f3203dc60bbca547374"
|
revision = "97efc2c9ffd9fe8ef47f7f3203dc60bbca547374"
|
||||||
version = "v0.28.0"
|
version = "v0.28.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:6aa683f91e93784ec7b76fe1568492f419aa3aa0b72f2087912c8c2cada7a375"
|
digest = "1:f7a3877d7116adfcdcd641f9f6ad18fc2126bd5c080d8854cc3b395a01e0b7f3"
|
||||||
name = "github.com/DataDog/dd-trace-go"
|
name = "github.com/DataDog/dd-trace-go"
|
||||||
packages = [
|
packages = [
|
||||||
"opentracing",
|
"opentracing",
|
||||||
"tracer",
|
"tracer",
|
||||||
"tracer/ext",
|
"tracer/ext",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "27617015d45e6cd550b9a7ac7715c37cc2f7d020"
|
revision = "27617015d45e6cd550b9a7ac7715c37cc2f7d020"
|
||||||
version = "v0.6.1"
|
version = "v0.6.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:9362b2212139b7821f73a86169bf80ce6b0264956f87d82ab3aeedb2b5c08fea"
|
digest = "1:9c883d2e7fd391fbc7db7536863cc4cd181a97646b4659e9a7e7aa583c411885"
|
||||||
name = "github.com/Shopify/sarama"
|
name = "github.com/Shopify/sarama"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "35324cf48e33d8260e1c7c18854465a904ade249"
|
revision = "35324cf48e33d8260e1c7c18854465a904ade249"
|
||||||
version = "v1.17.0"
|
version = "v1.17.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:58a1a132df6267aff83b2bf0ab62f42571695e6e74335107deafbb7ca55db4fc"
|
digest = "1:eee9386329f4fcdf8d6c0def0c9771b634bdd5ba460d888aa98c17d59b37a76c"
|
||||||
name = "github.com/apache/thrift"
|
name = "github.com/apache/thrift"
|
||||||
packages = ["lib/go/thrift"]
|
packages = ["lib/go/thrift"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "e59b73d3c2bf1c328ccb78e683c0462fa1a473c7"
|
revision = "e59b73d3c2bf1c328ccb78e683c0462fa1a473c7"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:8a047cbc1be2f1578abaa9ba4daf4c87992de1121149632ad9147ee536b53031"
|
digest = "1:7943d65eade11f12eda6d0c0e681197e26cad6bdc0105a0a28c3c5c761c00589"
|
||||||
name = "github.com/aws/aws-sdk-go"
|
name = "github.com/aws/aws-sdk-go"
|
||||||
packages = [
|
packages = [
|
||||||
"aws",
|
"aws",
|
||||||
|
@ -70,12 +70,12 @@
|
||||||
"service/route53/route53iface",
|
"service/route53/route53iface",
|
||||||
"service/sts",
|
"service/sts",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "852052a10992d92f68b9a60862a3312292524903"
|
revision = "852052a10992d92f68b9a60862a3312292524903"
|
||||||
version = "v1.14.17"
|
version = "v1.14.17"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:96637fd1b47c35bd2fc49969138b40ad6b66166e2e36664ac5ffd97c93542e62"
|
digest = "1:c2f7fb4667999c4a5c90ef00a6762cf186e6ec8a822e6780a354e1cc94682eab"
|
||||||
name = "github.com/coreos/etcd"
|
name = "github.com/coreos/etcd"
|
||||||
packages = [
|
packages = [
|
||||||
"auth/authpb",
|
"auth/authpb",
|
||||||
|
@ -85,84 +85,84 @@
|
||||||
"mvcc/mvccpb",
|
"mvcc/mvccpb",
|
||||||
"pkg/types",
|
"pkg/types",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "33245c6b5b49130ca99280408fadfab01aac0e48"
|
revision = "33245c6b5b49130ca99280408fadfab01aac0e48"
|
||||||
version = "v3.3.8"
|
version = "v3.3.8"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:56c130d885a4aacae1dd9c7b71cfe39912c7ebc1ff7d2b46083c8812996dc43b"
|
digest = "1:a2c1d0e43bd3baaa071d1b9ed72c27d78169b2b269f71c105ac4ba34b1be4a39"
|
||||||
name = "github.com/davecgh/go-spew"
|
name = "github.com/davecgh/go-spew"
|
||||||
packages = ["spew"]
|
packages = ["spew"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "346938d642f2ec3594ed81d874461961cd0faa76"
|
revision = "346938d642f2ec3594ed81d874461961cd0faa76"
|
||||||
version = "v1.1.0"
|
version = "v1.1.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:1376ae7eff7cb0f47cf003d1ce49202dad343a7494e97bb6a54aff1ae5eb9397"
|
digest = "1:1276a1b387cedc23233635146ead785e5438c82526a2ccec4d714b5a0e7883e2"
|
||||||
name = "github.com/dnstap/golang-dnstap"
|
name = "github.com/dnstap/golang-dnstap"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "2cf77a2b5e11ac8d0ba3892772ac8e1f7b528344"
|
revision = "2cf77a2b5e11ac8d0ba3892772ac8e1f7b528344"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:6d6672f85a84411509885eaa32f597577873de00e30729b9bb0eb1e1faa49c12"
|
digest = "1:08143362be979b087c2c1bae5dde986e988d3d5d4dc661727cbe436411b3f33a"
|
||||||
name = "github.com/eapache/go-resiliency"
|
name = "github.com/eapache/go-resiliency"
|
||||||
packages = ["breaker"]
|
packages = ["breaker"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "ea41b0fad31007accc7f806884dcdf3da98b79ce"
|
revision = "ea41b0fad31007accc7f806884dcdf3da98b79ce"
|
||||||
version = "v1.1.0"
|
version = "v1.1.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:1f7503fa58a852a1416556ae2ddb219b49a1304fd408391948e2e3676514c48d"
|
digest = "1:0b70d299db64766a4ee7128f0f94944f2356ca9d3499c79123dbc3a1d2ba803e"
|
||||||
name = "github.com/eapache/go-xerial-snappy"
|
name = "github.com/eapache/go-xerial-snappy"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "bb955e01b9346ac19dc29eb16586c90ded99a98c"
|
revision = "bb955e01b9346ac19dc29eb16586c90ded99a98c"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:d8d46d21073d0f65daf1740ebf4629c65e04bf92e14ce93c2201e8624843c3d3"
|
digest = "1:0d36a2b325b9e75f8057f7f9fbe778d348d70ba652cb9335485b69d1a5c4e038"
|
||||||
name = "github.com/eapache/queue"
|
name = "github.com/eapache/queue"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "44cc805cf13205b55f69e14bcb69867d1ae92f98"
|
revision = "44cc805cf13205b55f69e14bcb69867d1ae92f98"
|
||||||
version = "v1.1.0"
|
version = "v1.1.0"
|
||||||
|
|
||||||
|
[[projects]]
|
||||||
|
digest = "1:32598368f409bbee79deb9d43569fcd92b9fb27f39155f5e166b3371217f051f"
|
||||||
|
name = "github.com/evanphx/json-patch"
|
||||||
|
packages = ["."]
|
||||||
|
pruneopts = "NUT"
|
||||||
|
revision = "72bf35d0ff611848c1dc9df0f976c81192392fa5"
|
||||||
|
version = "v4.1.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:3ef2b40796b5a4ac1b0da237c6e1bc31aae513d3b86cdb0506198ba49f33b458"
|
digest = "1:5bb547db6b473fe900e68ffbcaf1626d1c7825374cba9b5dd52d5209fd89cca1"
|
||||||
name = "github.com/farsightsec/golang-framestream"
|
name = "github.com/farsightsec/golang-framestream"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "c06a5734334d9629b3db143d74b47eb94ea68612"
|
revision = "c06a5734334d9629b3db143d74b47eb94ea68612"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:b13707423743d41665fd23f0c36b2f37bb49c30e94adb813319c44188a51ba22"
|
digest = "1:30b09d75e7e16119e85020374df10ea06f263c9bdff72afdc1522838b9609375"
|
||||||
name = "github.com/ghodss/yaml"
|
|
||||||
packages = ["."]
|
|
||||||
pruneopts = ""
|
|
||||||
revision = "0ca9ea5df5451ffdf184b4428c902747c2c11cd7"
|
|
||||||
version = "v1.0.0"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
digest = "1:617b3e0f5989d4ff866a1820480990c65dfc9257eb080da749a45e2d76681b02"
|
|
||||||
name = "github.com/go-ini/ini"
|
name = "github.com/go-ini/ini"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "06f5f3d67269ccec1fe5fe4134ba6e982984f7f5"
|
revision = "06f5f3d67269ccec1fe5fe4134ba6e982984f7f5"
|
||||||
version = "v1.37.0"
|
version = "v1.37.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:6a4a01d58b227c4b6b11111b9f172ec5c17682b82724e58e6daf3f19f4faccd8"
|
digest = "1:341a7df38da99fe91ed40e4008c13cc5d02dcc98ed1a094360cb7d5df26d6d26"
|
||||||
name = "github.com/go-logfmt/logfmt"
|
name = "github.com/go-logfmt/logfmt"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "390ab7935ee28ec6b286364bba9b4dd6410cb3d5"
|
revision = "390ab7935ee28ec6b286364bba9b4dd6410cb3d5"
|
||||||
version = "v0.3.0"
|
version = "v0.3.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:0a3f6a0c68ab8f3d455f8892295503b179e571b7fefe47cc6c556405d1f83411"
|
digest = "1:acba7f3d06725b78c6999c2ba6c40b80539c10346fe37b4681072f1666c87d0c"
|
||||||
name = "github.com/gogo/protobuf"
|
name = "github.com/gogo/protobuf"
|
||||||
packages = [
|
packages = [
|
||||||
"gogoproto",
|
"gogoproto",
|
||||||
|
@ -170,20 +170,12 @@
|
||||||
"protoc-gen-gogo/descriptor",
|
"protoc-gen-gogo/descriptor",
|
||||||
"sortkeys",
|
"sortkeys",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "1adfc126b41513cc696b209667c8656ea7aac67c"
|
revision = "1adfc126b41513cc696b209667c8656ea7aac67c"
|
||||||
version = "v1.0.0"
|
version = "v1.0.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
digest = "1:03e14cff610a8a58b774e36bd337fa979482be86aab01be81fb8bbd6d0f07fc8"
|
||||||
digest = "1:107b233e45174dbab5b1324201d092ea9448e58243ab9f039e4c0f332e121e3a"
|
|
||||||
name = "github.com/golang/glog"
|
|
||||||
packages = ["."]
|
|
||||||
pruneopts = ""
|
|
||||||
revision = "23def4e6c14b4da8ac2ed8007337bc5eb5007998"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
digest = "1:f958a1c137db276e52f0b50efee41a1a389dcdded59a69711f3e872757dab34b"
|
|
||||||
name = "github.com/golang/protobuf"
|
name = "github.com/golang/protobuf"
|
||||||
packages = [
|
packages = [
|
||||||
"proto",
|
"proto",
|
||||||
|
@ -192,49 +184,49 @@
|
||||||
"ptypes/duration",
|
"ptypes/duration",
|
||||||
"ptypes/timestamp",
|
"ptypes/timestamp",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
revision = "b4deda0973fb4c70b50d226b1af49f3da59f5265"
|
||||||
version = "v1.1.0"
|
version = "v1.1.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:2a5888946cdbc8aa360fd43301f9fc7869d663f60d5eedae7d4e6e5e4f06f2bf"
|
digest = "1:7f114b78210bf5b75f307fc97cff293633c835bab1e0ea8a744a44b39c042dfe"
|
||||||
name = "github.com/golang/snappy"
|
name = "github.com/golang/snappy"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "2e65f85255dbc3072edf28d6b5b8efc472979f5a"
|
revision = "2e65f85255dbc3072edf28d6b5b8efc472979f5a"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:be28c0531a755f2178acf1e327e6f5a8a3968feb5f2567cdc968064253141751"
|
digest = "1:245bd4eb633039cd66106a5d340ae826d87f4e36a8602fcc940e14176fd26ea7"
|
||||||
name = "github.com/google/btree"
|
name = "github.com/google/btree"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "e89373fe6b4a7413d7acd6da1725b83ef713e6e4"
|
revision = "e89373fe6b4a7413d7acd6da1725b83ef713e6e4"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:754f77e9c839b24778a4b64422236d38515301d2baeb63113aa3edc42e6af692"
|
digest = "1:52c5834e2bebac9030c97cc0798ac11c3aa8a39f098aeb419f142533da6cd3cc"
|
||||||
name = "github.com/google/gofuzz"
|
name = "github.com/google/gofuzz"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "24818f796faf91cd76ec7bddd72458fbced7a6c1"
|
revision = "24818f796faf91cd76ec7bddd72458fbced7a6c1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:16b2837c8b3cf045fa2cdc82af0cf78b19582701394484ae76b2c3bc3c99ad73"
|
digest = "1:06a7dadb7b760767341ffb6c8d377238d68a1226f2b21b5d497d2e3f6ecf6b4e"
|
||||||
name = "github.com/googleapis/gnostic"
|
name = "github.com/googleapis/gnostic"
|
||||||
packages = [
|
packages = [
|
||||||
"OpenAPIv2",
|
"OpenAPIv2",
|
||||||
"compiler",
|
"compiler",
|
||||||
"extensions",
|
"extensions",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "7c663266750e7d82587642f65e60bc4083f1f84e"
|
revision = "7c663266750e7d82587642f65e60bc4083f1f84e"
|
||||||
version = "v0.2.0"
|
version = "v0.2.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:c29d304a0d86a51588fe4a90e7e891a11877ebd31f6f263304f8d463bbeeed96"
|
digest = "1:8ccbd0e8ef8b6e59b331991fcb5477fb5e6c51b7d1be09789d7dc0a33e95bf6a"
|
||||||
name = "github.com/gophercloud/gophercloud"
|
name = "github.com/gophercloud/gophercloud"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
|
@ -245,104 +237,104 @@
|
||||||
"openstack/utils",
|
"openstack/utils",
|
||||||
"pagination",
|
"pagination",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "bfc006765209a570e9a783bd7e4372e24fb72781"
|
revision = "bfc006765209a570e9a783bd7e4372e24fb72781"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:009a1928b8c096338b68b5822d838a72b4d8520715c1463614476359f3282ec8"
|
digest = "1:7fdf3223c7372d1ced0b98bf53457c5e89d89aecbad9a77ba9fcc6e01f9e5621"
|
||||||
name = "github.com/gregjones/httpcache"
|
name = "github.com/gregjones/httpcache"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
"diskcache",
|
"diskcache",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "9cad4c3443a7200dd6400aef47183728de563a38"
|
revision = "9cad4c3443a7200dd6400aef47183728de563a38"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:0c93b4970c254d3f8f76c3e8eb72571d6f24a15415f9c418ecb0801ba5765a90"
|
digest = "1:7b760aa6dbe426378f54934270dde1b176fda379111da2154748f030fffe4d3f"
|
||||||
name = "github.com/grpc-ecosystem/grpc-opentracing"
|
name = "github.com/grpc-ecosystem/grpc-opentracing"
|
||||||
packages = ["go/otgrpc"]
|
packages = ["go/otgrpc"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "8e809c8a86450a29b90dcc9efbf062d0fe6d9746"
|
revision = "8e809c8a86450a29b90dcc9efbf062d0fe6d9746"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:9c776d7d9c54b7ed89f119e449983c3f24c0023e75001d6092442412ebca6b94"
|
digest = "1:13e2fa5735a82a5fb044f290cfd0dba633d1c5e516b27da0509e0dbb3515a18e"
|
||||||
name = "github.com/hashicorp/golang-lru"
|
name = "github.com/hashicorp/golang-lru"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
"simplelru",
|
"simplelru",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "0fb14efe8c47ae851c0034ed7a448854d3d34cf3"
|
revision = "0fb14efe8c47ae851c0034ed7a448854d3d34cf3"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:302c6eb8e669c997bec516a138b8fc496018faa1ece4c13e445a2749fbe079bb"
|
digest = "1:65300ccc4bcb38b107b868155c303312978981e56bca707c81efec57575b5e06"
|
||||||
name = "github.com/imdario/mergo"
|
name = "github.com/imdario/mergo"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "9316a62528ac99aaecb4e47eadd6dc8aa6533d58"
|
revision = "9316a62528ac99aaecb4e47eadd6dc8aa6533d58"
|
||||||
version = "v0.3.5"
|
version = "v0.3.5"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:6f49eae0c1e5dab1dafafee34b207aeb7a42303105960944828c2079b92fc88e"
|
digest = "1:ac6d01547ec4f7f673311b4663909269bfb8249952de3279799289467837c3cc"
|
||||||
name = "github.com/jmespath/go-jmespath"
|
name = "github.com/jmespath/go-jmespath"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "0b12d6b5"
|
revision = "0b12d6b5"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:53ac4e911e12dde0ab68655e2006449d207a5a681f084974da2b06e5dbeaca72"
|
digest = "1:0243cffa4a3410f161ee613dfdd903a636d07e838a42d341da95d81f42cd1d41"
|
||||||
name = "github.com/json-iterator/go"
|
name = "github.com/json-iterator/go"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "ab8a2e0c74be9d3be70b3184d9acc634935ded82"
|
revision = "ab8a2e0c74be9d3be70b3184d9acc634935ded82"
|
||||||
version = "1.1.4"
|
version = "1.1.4"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:1ed9eeebdf24aadfbca57eb50e6455bd1d2474525e0f0d4454de8c8e9bc7ee9a"
|
digest = "1:f91bb67d051a94cf6ab2cf07eee0550432afc31655838d42cdec258db4b348f0"
|
||||||
name = "github.com/kr/logfmt"
|
name = "github.com/kr/logfmt"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "b84e30acd515aadc4b783ad4ff83aff3299bdfe0"
|
revision = "b84e30acd515aadc4b783ad4ff83aff3299bdfe0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:63722a4b1e1717be7b98fc686e0b30d5e7f734b9e93d7dee86293b6deab7ea28"
|
digest = "1:5985ef4caf91ece5d54817c11ea25f182697534f8ae6521eadcd628c142ac4b6"
|
||||||
name = "github.com/matttproud/golang_protobuf_extensions"
|
name = "github.com/matttproud/golang_protobuf_extensions"
|
||||||
packages = ["pbutil"]
|
packages = ["pbutil"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "c12348ce28de40eed0136aa2b644d0ee0650e56c"
|
revision = "c12348ce28de40eed0136aa2b644d0ee0650e56c"
|
||||||
version = "v1.0.1"
|
version = "v1.0.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:0c0ff2a89c1bb0d01887e1dac043ad7efbf3ec77482ef058ac423d13497e16fd"
|
digest = "1:2f42fa12d6911c7b7659738758631bec870b7e9b4c6be5444f963cdcfccc191f"
|
||||||
name = "github.com/modern-go/concurrent"
|
name = "github.com/modern-go/concurrent"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "bacd9c7ef1dd9b15be4a9909b8ac7a4e313eec94"
|
revision = "bacd9c7ef1dd9b15be4a9909b8ac7a4e313eec94"
|
||||||
version = "1.0.3"
|
version = "1.0.3"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:e32bdbdb7c377a07a9a46378290059822efdce5c8d96fe71940d87cb4f918855"
|
digest = "1:c6aca19413b13dc59c220ad7430329e2ec454cc310bc6d8de2c7e2b93c18a0f6"
|
||||||
name = "github.com/modern-go/reflect2"
|
name = "github.com/modern-go/reflect2"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd"
|
revision = "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd"
|
||||||
version = "1.0.1"
|
version = "1.0.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:2da0e5077ed40453dc281b9a2428d84cf6ad14063aed189f6296ca5dd25cf13d"
|
digest = "1:b4f46325dbc2a7489ba33b4bd3cce542a1721611e857c1cb0b0c57775b2ad130"
|
||||||
name = "github.com/opentracing-contrib/go-observer"
|
name = "github.com/opentracing-contrib/go-observer"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "a52f2342449246d5bcc273e65cbdcfa5f7d6c63c"
|
revision = "a52f2342449246d5bcc273e65cbdcfa5f7d6c63c"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:78fb99d6011c2ae6c72f3293a83951311147b12b06a5ffa43abf750c4fab6ac5"
|
digest = "1:6e36c3eab25478d363e7eb669f253d9f9a620e640b0e1d86d3e909cbb1a56ab6"
|
||||||
name = "github.com/opentracing/opentracing-go"
|
name = "github.com/opentracing/opentracing-go"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
|
@ -350,12 +342,12 @@
|
||||||
"log",
|
"log",
|
||||||
"mocktracer",
|
"mocktracer",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "1949ddbfd147afd4d964a9f00b24eb291e0e7c38"
|
revision = "1949ddbfd147afd4d964a9f00b24eb291e0e7c38"
|
||||||
version = "v1.0.2"
|
version = "v1.0.2"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:fea0e67285d900e5a0a7ec19ff4b4c82865a28dddbee8454c5360ad908f7069c"
|
digest = "1:bf3b3b697c848612d4c87121b189c37f7a7a7b6b7e1ae3bbfbe12574cbebec3d"
|
||||||
name = "github.com/openzipkin/zipkin-go-opentracing"
|
name = "github.com/openzipkin/zipkin-go-opentracing"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
|
@ -365,91 +357,91 @@
|
||||||
"types",
|
"types",
|
||||||
"wire",
|
"wire",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "26cf9707480e6b90e5eff22cf0bbf05319154232"
|
revision = "26cf9707480e6b90e5eff22cf0bbf05319154232"
|
||||||
version = "v0.3.4"
|
version = "v0.3.4"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:c24598ffeadd2762552269271b3b1510df2d83ee6696c1e543a0ff653af494bc"
|
digest = "1:3bf17a6e6eaa6ad24152148a631d18662f7212e21637c2699bff3369b7f00fa2"
|
||||||
name = "github.com/petar/GoLLRB"
|
name = "github.com/petar/GoLLRB"
|
||||||
packages = ["llrb"]
|
packages = ["llrb"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "53be0d36a84c2a886ca057d34b6aa4468df9ccb4"
|
revision = "53be0d36a84c2a886ca057d34b6aa4468df9ccb4"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:b46305723171710475f2dd37547edd57b67b9de9f2a6267cafdd98331fd6897f"
|
digest = "1:6c6d91dc326ed6778783cff869c49fb2f61303cdd2ebbcf90abe53505793f3b6"
|
||||||
name = "github.com/peterbourgon/diskv"
|
name = "github.com/peterbourgon/diskv"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "5f041e8faa004a95c88a202771f4cc3e991971e6"
|
revision = "5f041e8faa004a95c88a202771f4cc3e991971e6"
|
||||||
version = "v2.0.1"
|
version = "v2.0.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:29e34e58f26655c4d73135cdfc0517ea2ff1483eff34e5d5ef4b6fddbb81e31b"
|
digest = "1:bf8b95442fa2d448bde39997d6fde56de40344b422d93cea4deead8de699e190"
|
||||||
name = "github.com/pierrec/lz4"
|
name = "github.com/pierrec/lz4"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
"internal/xxh32",
|
"internal/xxh32",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "1958fd8fff7f115e79725b1288e0b878b3e06b00"
|
revision = "1958fd8fff7f115e79725b1288e0b878b3e06b00"
|
||||||
version = "v2.0.3"
|
version = "v2.0.3"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:60aca47f4eeeb972f1b9da7e7db51dee15ff6c59f7b401c1588b8e6771ba15ef"
|
digest = "1:32d10bdfa8f09ecf13598324dba86ab891f11db3c538b6a34d1c3b5b99d7c36b"
|
||||||
name = "github.com/prometheus/client_model"
|
name = "github.com/prometheus/client_model"
|
||||||
packages = ["go"]
|
packages = ["go"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c"
|
revision = "99fa1f4be8e564e8a6b613da7fa6f46c9edafc6c"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:bfbc121ef802d245ef67421cff206615357d9202337a3d492b8f668906b485a8"
|
digest = "1:768b555b86742de2f28beb37f1dedce9a75f91f871d75b5717c96399c1a78c08"
|
||||||
name = "github.com/prometheus/common"
|
name = "github.com/prometheus/common"
|
||||||
packages = [
|
packages = [
|
||||||
"expfmt",
|
"expfmt",
|
||||||
"internal/bitbucket.org/ww/goautoneg",
|
"internal/bitbucket.org/ww/goautoneg",
|
||||||
"model",
|
"model",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "7600349dcfe1abd18d72d3a1770870d9800a7801"
|
revision = "7600349dcfe1abd18d72d3a1770870d9800a7801"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:15bcdc717654ef21128e8af3a63eec39a6d08a830e297f93d65163f87c8eb523"
|
digest = "1:7c522337040d4ec9a136cd9d64fe4677ee1d3eae4a7f8831c2108f9bec43fa48"
|
||||||
name = "github.com/rcrowley/go-metrics"
|
name = "github.com/rcrowley/go-metrics"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "e2704e165165ec55d062f5919b4b29494e9fa790"
|
revision = "e2704e165165ec55d062f5919b4b29494e9fa790"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:8e243c568f36b09031ec18dff5f7d2769dcf5ca4d624ea511c8e3197dc3d352d"
|
digest = "1:15e5c398fbd9d2c439b635a08ac161b13d04f0c2aa587fe256b65dc0c3efe8b7"
|
||||||
name = "github.com/spf13/pflag"
|
name = "github.com/spf13/pflag"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "583c0c0531f06d5278b7d917446061adc344b5cd"
|
revision = "583c0c0531f06d5278b7d917446061adc344b5cd"
|
||||||
version = "v1.0.1"
|
version = "v1.0.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:bfc538280d91f15c117ed9cd9c1c24ced21999c2945c6982d338a6fd207592ce"
|
digest = "1:5751632e81f26941863b0aaf0f33d55cb89898a49ba8d5574eb4d97e9291810d"
|
||||||
name = "github.com/ugorji/go"
|
name = "github.com/ugorji/go"
|
||||||
packages = ["codec"]
|
packages = ["codec"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "f3cacc17c85ecb7f1b6a9e373ee85d1480919868"
|
revision = "f3cacc17c85ecb7f1b6a9e373ee85d1480919868"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:6ef14be530be39b6b9d75d54ce1d546ae9231e652d9e3eef198cbb19ce8ed3e7"
|
digest = "1:3f3a05ae0b95893d90b9b3b5afdb79a9b3d96e4e36e099d841ae602e4aca0da8"
|
||||||
name = "golang.org/x/crypto"
|
name = "golang.org/x/crypto"
|
||||||
packages = ["ssh/terminal"]
|
packages = ["ssh/terminal"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "a49355c7e3f8fe157a85be2f77e6e269a0f89602"
|
revision = "a49355c7e3f8fe157a85be2f77e6e269a0f89602"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:cef4c63f5c97c27ab65498fd8de6661df17b31e40cd3b4f6f1e217e97f0e23f3"
|
digest = "1:915e6387683239c2d703df757841d080b2bb08b2a2ddd15592533778acbcbe34"
|
||||||
name = "golang.org/x/net"
|
name = "golang.org/x/net"
|
||||||
packages = [
|
packages = [
|
||||||
"context",
|
"context",
|
||||||
|
@ -461,12 +453,12 @@
|
||||||
"internal/timeseries",
|
"internal/timeseries",
|
||||||
"trace",
|
"trace",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "4cb1c02c05b0e749b0365f61ae859a8e0cfceed9"
|
revision = "4cb1c02c05b0e749b0365f61ae859a8e0cfceed9"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:b697592485cb412be4188c08ca0beed9aab87f36b86418e21acc4a3998f63734"
|
digest = "1:bc2b221d465bb28ce46e8d472ecdc424b9a9b541bd61d8c311c5f29c8dd75b1b"
|
||||||
name = "golang.org/x/oauth2"
|
name = "golang.org/x/oauth2"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
|
@ -475,22 +467,22 @@
|
||||||
"jws",
|
"jws",
|
||||||
"jwt",
|
"jwt",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "d2e6202438beef2727060aa7cabdd924d92ebfd9"
|
revision = "d2e6202438beef2727060aa7cabdd924d92ebfd9"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:274e6fab68b7f298bf3f70bd60d4ba0c55284d1d2034175fb3324924268ccd9e"
|
digest = "1:baa3044d8a33b3cd690c16fd555c5a543f980206cd1a696f7902307f57f911ec"
|
||||||
name = "golang.org/x/sys"
|
name = "golang.org/x/sys"
|
||||||
packages = [
|
packages = [
|
||||||
"unix",
|
"unix",
|
||||||
"windows",
|
"windows",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "7138fd3d9dc8335c567ca206f4333fb75eb05d56"
|
revision = "7138fd3d9dc8335c567ca206f4333fb75eb05d56"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:5acd3512b047305d49e8763eef7ba423901e85d5dd2fd1e71778a0ea8de10bd4"
|
digest = "1:e7071ed636b5422cc51c0e3a6cebc229d6c9fffc528814b519a980641422d619"
|
||||||
name = "golang.org/x/text"
|
name = "golang.org/x/text"
|
||||||
packages = [
|
packages = [
|
||||||
"collate",
|
"collate",
|
||||||
|
@ -508,20 +500,20 @@
|
||||||
"unicode/norm",
|
"unicode/norm",
|
||||||
"unicode/rangetable",
|
"unicode/rangetable",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "f21a4dfb5e38f5895301dc265a8def02365cc3d0"
|
revision = "f21a4dfb5e38f5895301dc265a8def02365cc3d0"
|
||||||
version = "v0.3.0"
|
version = "v0.3.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:55a681cb66f28755765fa5fa5104cbd8dc85c55c02d206f9f89566451e3fe1aa"
|
digest = "1:c9e7a4b4d47c0ed205d257648b0e5b0440880cb728506e318f8ac7cd36270bc4"
|
||||||
name = "golang.org/x/time"
|
name = "golang.org/x/time"
|
||||||
packages = ["rate"]
|
packages = ["rate"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "fbb02b2291d28baffd63558aa44b4b56f178d650"
|
revision = "fbb02b2291d28baffd63558aa44b4b56f178d650"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:8c432632a230496c35a15cfdf441436f04c90e724ad99c8463ef0c82bbe93edb"
|
digest = "1:e2da54c7866453ac5831c61c7ec5d887f39328cac088c806553303bff4048e6f"
|
||||||
name = "google.golang.org/appengine"
|
name = "google.golang.org/appengine"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
|
@ -535,20 +527,20 @@
|
||||||
"internal/urlfetch",
|
"internal/urlfetch",
|
||||||
"urlfetch",
|
"urlfetch",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "ae0ab99deb4dc413a2b4bd6c8bdd0eb67f1e4d06"
|
revision = "ae0ab99deb4dc413a2b4bd6c8bdd0eb67f1e4d06"
|
||||||
version = "v1.2.0"
|
version = "v1.2.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:a5959f4640612317b0d3122569b7c02565ba6277aa0374cff2ed610c81ef8d74"
|
digest = "1:601e63e7d4577f907118bec825902505291918859d223bce015539e79f1160e3"
|
||||||
name = "google.golang.org/genproto"
|
name = "google.golang.org/genproto"
|
||||||
packages = ["googleapis/rpc/status"]
|
packages = ["googleapis/rpc/status"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "ff3583edef7de132f219f0efc00e097cabcc0ec0"
|
revision = "ff3583edef7de132f219f0efc00e097cabcc0ec0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:5f31b45ee9da7a87f140bef3ed0a7ca34ea2a6d38eb888123b8e28170e8aa4f2"
|
digest = "1:6bf78c43ce1ac3523e4923465454a82135eb9b3a4eb9356e1e75a36c416aeaa8"
|
||||||
name = "google.golang.org/grpc"
|
name = "google.golang.org/grpc"
|
||||||
packages = [
|
packages = [
|
||||||
".",
|
".",
|
||||||
|
@ -578,28 +570,28 @@
|
||||||
"tap",
|
"tap",
|
||||||
"transport",
|
"transport",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "168a6198bcb0ef175f7dacec0b8691fc141dc9b8"
|
revision = "168a6198bcb0ef175f7dacec0b8691fc141dc9b8"
|
||||||
version = "v1.13.0"
|
version = "v1.13.0"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:75fb3fcfc73a8c723efde7777b40e8e8ff9babf30d8c56160d01beffea8a95a6"
|
digest = "1:2d1fbdc6777e5408cabeb02bf336305e724b925ff4546ded0fa8715a7267922a"
|
||||||
name = "gopkg.in/inf.v0"
|
name = "gopkg.in/inf.v0"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "d2d2541c53f18d2a059457998ce2876cc8e67cbf"
|
revision = "d2d2541c53f18d2a059457998ce2876cc8e67cbf"
|
||||||
version = "v0.9.1"
|
version = "v0.9.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:f0620375dd1f6251d9973b5f2596228cc8042e887cd7f827e4220bc1ce8c30e2"
|
digest = "1:7c95b35057a0ff2e19f707173cc1a947fa43a6eb5c4d300d196ece0334046082"
|
||||||
name = "gopkg.in/yaml.v2"
|
name = "gopkg.in/yaml.v2"
|
||||||
packages = ["."]
|
packages = ["."]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "5420a8b6744d3b0345ab293f6fcba19c978f1183"
|
revision = "5420a8b6744d3b0345ab293f6fcba19c978f1183"
|
||||||
version = "v2.2.1"
|
version = "v2.2.1"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:f420c8548c93242d8e5dcfa5b34e0243883b4e660f65076e869daafac877144d"
|
digest = "1:c453ddc26bdab1e4267683a588ad9046e48d803a73f124fe2927adbab6ff02a5"
|
||||||
name = "k8s.io/api"
|
name = "k8s.io/api"
|
||||||
packages = [
|
packages = [
|
||||||
"admissionregistration/v1alpha1",
|
"admissionregistration/v1alpha1",
|
||||||
|
@ -607,16 +599,19 @@
|
||||||
"apps/v1",
|
"apps/v1",
|
||||||
"apps/v1beta1",
|
"apps/v1beta1",
|
||||||
"apps/v1beta2",
|
"apps/v1beta2",
|
||||||
|
"auditregistration/v1alpha1",
|
||||||
"authentication/v1",
|
"authentication/v1",
|
||||||
"authentication/v1beta1",
|
"authentication/v1beta1",
|
||||||
"authorization/v1",
|
"authorization/v1",
|
||||||
"authorization/v1beta1",
|
"authorization/v1beta1",
|
||||||
"autoscaling/v1",
|
"autoscaling/v1",
|
||||||
"autoscaling/v2beta1",
|
"autoscaling/v2beta1",
|
||||||
|
"autoscaling/v2beta2",
|
||||||
"batch/v1",
|
"batch/v1",
|
||||||
"batch/v1beta1",
|
"batch/v1beta1",
|
||||||
"batch/v2alpha1",
|
"batch/v2alpha1",
|
||||||
"certificates/v1beta1",
|
"certificates/v1beta1",
|
||||||
|
"coordination/v1beta1",
|
||||||
"core/v1",
|
"core/v1",
|
||||||
"events/v1beta1",
|
"events/v1beta1",
|
||||||
"extensions/v1beta1",
|
"extensions/v1beta1",
|
||||||
|
@ -632,11 +627,11 @@
|
||||||
"storage/v1alpha1",
|
"storage/v1alpha1",
|
||||||
"storage/v1beta1",
|
"storage/v1beta1",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "072894a440bdee3a891dea811fe42902311cd2a3"
|
revision = "89a74a8d264df0e993299876a8cde88379b940ee"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:b6b2fb7b4da1ac973b64534ace2299a02504f16bc7820cb48edb8ca4077183e1"
|
digest = "1:faec2ad757dee14d4e0416d199aeda57f2a9ab1d3bebb5aa63f18e26f7b6ade4"
|
||||||
name = "k8s.io/apimachinery"
|
name = "k8s.io/apimachinery"
|
||||||
packages = [
|
packages = [
|
||||||
"pkg/api/errors",
|
"pkg/api/errors",
|
||||||
|
@ -668,6 +663,7 @@
|
||||||
"pkg/util/intstr",
|
"pkg/util/intstr",
|
||||||
"pkg/util/json",
|
"pkg/util/json",
|
||||||
"pkg/util/mergepatch",
|
"pkg/util/mergepatch",
|
||||||
|
"pkg/util/naming",
|
||||||
"pkg/util/net",
|
"pkg/util/net",
|
||||||
"pkg/util/runtime",
|
"pkg/util/runtime",
|
||||||
"pkg/util/sets",
|
"pkg/util/sets",
|
||||||
|
@ -681,11 +677,11 @@
|
||||||
"third_party/forked/golang/json",
|
"third_party/forked/golang/json",
|
||||||
"third_party/forked/golang/reflect",
|
"third_party/forked/golang/reflect",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "103fd098999dc9c0c88536f5c9ad2e5da39373ae"
|
revision = "2b1284ed4c93a43499e781493253e2ac5959c4fd"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
digest = "1:d04779a8de7d5465e0463bd986506348de5e89677c74777f695d3145a7a8d15e"
|
digest = "1:0035d9ccabe66fa3b7aba7c6c9b656e9910ed462f38992db445e194e8cb27be9"
|
||||||
name = "k8s.io/client-go"
|
name = "k8s.io/client-go"
|
||||||
packages = [
|
packages = [
|
||||||
"discovery",
|
"discovery",
|
||||||
|
@ -703,6 +699,8 @@
|
||||||
"kubernetes/typed/apps/v1beta1/fake",
|
"kubernetes/typed/apps/v1beta1/fake",
|
||||||
"kubernetes/typed/apps/v1beta2",
|
"kubernetes/typed/apps/v1beta2",
|
||||||
"kubernetes/typed/apps/v1beta2/fake",
|
"kubernetes/typed/apps/v1beta2/fake",
|
||||||
|
"kubernetes/typed/auditregistration/v1alpha1",
|
||||||
|
"kubernetes/typed/auditregistration/v1alpha1/fake",
|
||||||
"kubernetes/typed/authentication/v1",
|
"kubernetes/typed/authentication/v1",
|
||||||
"kubernetes/typed/authentication/v1/fake",
|
"kubernetes/typed/authentication/v1/fake",
|
||||||
"kubernetes/typed/authentication/v1beta1",
|
"kubernetes/typed/authentication/v1beta1",
|
||||||
|
@ -715,6 +713,8 @@
|
||||||
"kubernetes/typed/autoscaling/v1/fake",
|
"kubernetes/typed/autoscaling/v1/fake",
|
||||||
"kubernetes/typed/autoscaling/v2beta1",
|
"kubernetes/typed/autoscaling/v2beta1",
|
||||||
"kubernetes/typed/autoscaling/v2beta1/fake",
|
"kubernetes/typed/autoscaling/v2beta1/fake",
|
||||||
|
"kubernetes/typed/autoscaling/v2beta2",
|
||||||
|
"kubernetes/typed/autoscaling/v2beta2/fake",
|
||||||
"kubernetes/typed/batch/v1",
|
"kubernetes/typed/batch/v1",
|
||||||
"kubernetes/typed/batch/v1/fake",
|
"kubernetes/typed/batch/v1/fake",
|
||||||
"kubernetes/typed/batch/v1beta1",
|
"kubernetes/typed/batch/v1beta1",
|
||||||
|
@ -723,6 +723,8 @@
|
||||||
"kubernetes/typed/batch/v2alpha1/fake",
|
"kubernetes/typed/batch/v2alpha1/fake",
|
||||||
"kubernetes/typed/certificates/v1beta1",
|
"kubernetes/typed/certificates/v1beta1",
|
||||||
"kubernetes/typed/certificates/v1beta1/fake",
|
"kubernetes/typed/certificates/v1beta1/fake",
|
||||||
|
"kubernetes/typed/coordination/v1beta1",
|
||||||
|
"kubernetes/typed/coordination/v1beta1/fake",
|
||||||
"kubernetes/typed/core/v1",
|
"kubernetes/typed/core/v1",
|
||||||
"kubernetes/typed/core/v1/fake",
|
"kubernetes/typed/core/v1/fake",
|
||||||
"kubernetes/typed/events/v1beta1",
|
"kubernetes/typed/events/v1beta1",
|
||||||
|
@ -782,18 +784,32 @@
|
||||||
"util/jsonpath",
|
"util/jsonpath",
|
||||||
"util/retry",
|
"util/retry",
|
||||||
]
|
]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "7d04d0e2a0a1a4d4a1cd6baa432a2301492e4e65"
|
revision = "e64494209f554a6723674bd494d69445fb76a1d4"
|
||||||
version = "v8.0.0"
|
version = "v10.0.0"
|
||||||
|
|
||||||
|
[[projects]]
|
||||||
|
digest = "1:9cc257b3c9ff6a0158c9c661ab6eebda1fe8a4a4453cd5c4044dc9a2ebfb992b"
|
||||||
|
name = "k8s.io/klog"
|
||||||
|
packages = ["."]
|
||||||
|
pruneopts = "NUT"
|
||||||
|
revision = "8139d8cb77af419532b33dfa7dd09fbc5f1d344f"
|
||||||
|
|
||||||
[[projects]]
|
[[projects]]
|
||||||
branch = "master"
|
branch = "master"
|
||||||
digest = "1:7b06ff480fd71dead51f0f243b573c448c372ec086b790ec7ed4f8a78f2c1cbf"
|
digest = "1:a2c842a1e0aed96fd732b535514556323a6f5edfded3b63e5e0ab1bce188aa54"
|
||||||
name = "k8s.io/kube-openapi"
|
name = "k8s.io/kube-openapi"
|
||||||
packages = ["pkg/util/proto"]
|
packages = ["pkg/util/proto"]
|
||||||
pruneopts = ""
|
pruneopts = "NUT"
|
||||||
revision = "9dfdf9be683f61f82cda12362c44c784e0778b56"
|
revision = "9dfdf9be683f61f82cda12362c44c784e0778b56"
|
||||||
|
|
||||||
|
[[projects]]
|
||||||
|
digest = "1:8730e0150dfb2b7e173890c8b9868e7a273082ef8e39f4940e3506a481cf895c"
|
||||||
|
name = "sigs.k8s.io/yaml"
|
||||||
|
packages = ["."]
|
||||||
|
pruneopts = "NUT"
|
||||||
|
revision = "fd68e9863619f6ec2fdd8625fe1f02e7c877e480"
|
||||||
|
|
||||||
[solve-meta]
|
[solve-meta]
|
||||||
analyzer-name = "dep"
|
analyzer-name = "dep"
|
||||||
analyzer-version = 1
|
analyzer-version = 1
|
||||||
|
@ -826,6 +842,8 @@
|
||||||
"k8s.io/apimachinery/pkg/apis/meta/v1",
|
"k8s.io/apimachinery/pkg/apis/meta/v1",
|
||||||
"k8s.io/apimachinery/pkg/labels",
|
"k8s.io/apimachinery/pkg/labels",
|
||||||
"k8s.io/apimachinery/pkg/runtime",
|
"k8s.io/apimachinery/pkg/runtime",
|
||||||
|
"k8s.io/apimachinery/pkg/runtime/schema",
|
||||||
|
"k8s.io/apimachinery/pkg/types",
|
||||||
"k8s.io/apimachinery/pkg/watch",
|
"k8s.io/apimachinery/pkg/watch",
|
||||||
"k8s.io/client-go/kubernetes",
|
"k8s.io/client-go/kubernetes",
|
||||||
"k8s.io/client-go/kubernetes/fake",
|
"k8s.io/client-go/kubernetes/fake",
|
||||||
|
|
25
Gopkg.toml
25
Gopkg.toml
|
@ -8,18 +8,31 @@ ignored = [
|
||||||
"github.com/prometheus/client_golang/prometheus/promhttp",
|
"github.com/prometheus/client_golang/prometheus/promhttp",
|
||||||
]
|
]
|
||||||
|
|
||||||
# client-go v8.0.0 uses apimachinery 103fd098999dc9c0c88536f5c9ad2e5da39373ae
|
[prune]
|
||||||
# and api 072894a440bdee3a891dea811fe42902311cd2a3 (see Godep.json). go dep
|
go-tests = true
|
||||||
# is unable to match Godep.json automatically so have to specify here.
|
non-go = true
|
||||||
|
unused-packages = true
|
||||||
|
|
||||||
|
# client-go v10.0.0 uses apimachinery 2b1284ed4c93a43499e781493253e2ac5959c4fd
|
||||||
|
# and api 89a74a8d264df0e993299876a8cde88379b940ee,
|
||||||
|
# and introduced klog 8139d8cb77af419532b33dfa7dd09fbc5f1d344f
|
||||||
|
# and yaml fd68e9863619f6ec2fdd8625fe1f02e7c877e480 (see Godep.json).
|
||||||
|
# go dep is unable to match Godep.json automatically so have to specify here.
|
||||||
[[constraint]]
|
[[constraint]]
|
||||||
name = "k8s.io/client-go"
|
name = "k8s.io/client-go"
|
||||||
version = "v8.0.0"
|
version = "v10.0.0"
|
||||||
[[override]]
|
[[override]]
|
||||||
name = "k8s.io/apimachinery"
|
name = "k8s.io/apimachinery"
|
||||||
revision = "103fd098999dc9c0c88536f5c9ad2e5da39373ae"
|
revision = "2b1284ed4c93a43499e781493253e2ac5959c4fd"
|
||||||
[[override]]
|
[[override]]
|
||||||
name = "k8s.io/api"
|
name = "k8s.io/api"
|
||||||
revision = "072894a440bdee3a891dea811fe42902311cd2a3"
|
revision = "89a74a8d264df0e993299876a8cde88379b940ee"
|
||||||
|
[[override]]
|
||||||
|
name = "k8s.io/klog"
|
||||||
|
revision = "8139d8cb77af419532b33dfa7dd09fbc5f1d344f"
|
||||||
|
[[override]]
|
||||||
|
name = "sigs.k8s.io/yaml"
|
||||||
|
revision = "fd68e9863619f6ec2fdd8625fe1f02e7c877e480"
|
||||||
|
|
||||||
[[override]]
|
[[override]]
|
||||||
name = "github.com/apache/thrift"
|
name = "github.com/apache/thrift"
|
||||||
|
|
25
vendor/cloud.google.com/go/.travis.yml
generated
vendored
25
vendor/cloud.google.com/go/.travis.yml
generated
vendored
|
@ -1,25 +0,0 @@
|
||||||
sudo: false
|
|
||||||
language: go
|
|
||||||
go:
|
|
||||||
- 1.6.x
|
|
||||||
- 1.7.x
|
|
||||||
- 1.8.x
|
|
||||||
- 1.9.x
|
|
||||||
- 1.10.x
|
|
||||||
- 1.11.x
|
|
||||||
install:
|
|
||||||
- go get -v cloud.google.com/go/...
|
|
||||||
script:
|
|
||||||
- openssl aes-256-cbc -K $encrypted_a8b3f4fc85f4_key -iv $encrypted_a8b3f4fc85f4_iv -in keys.tar.enc -out keys.tar -d
|
|
||||||
- tar xvf keys.tar
|
|
||||||
- GCLOUD_TESTS_GOLANG_PROJECT_ID="dulcet-port-762"
|
|
||||||
GCLOUD_TESTS_GOLANG_KEY="$(pwd)/dulcet-port-762-key.json"
|
|
||||||
GCLOUD_TESTS_GOLANG_FIRESTORE_PROJECT_ID="gcloud-golang-firestore-tests"
|
|
||||||
GCLOUD_TESTS_GOLANG_FIRESTORE_KEY="$(pwd)/gcloud-golang-firestore-tests-key.json"
|
|
||||||
GCLOUD_TESTS_GOLANG_KEYRING="projects/dulcet-port-762/locations/us/keyRings/go-integration-test"
|
|
||||||
GCLOUD_TESTS_GOLANG_ENABLE_REPLAY=yes
|
|
||||||
travis_wait ./run-tests.sh $TRAVIS_COMMIT
|
|
||||||
env:
|
|
||||||
matrix:
|
|
||||||
# The GCLOUD_TESTS_API_KEY environment variable.
|
|
||||||
secure: VdldogUOoubQ60LhuHJ+g/aJoBiujkSkWEWl79Zb8cvQorcQbxISS+JsOOp4QkUOU4WwaHAm8/3pIH1QMWOR6O78DaLmDKi5Q4RpkVdCpUXy+OAfQaZIcBsispMrjxLXnqFjo9ELnrArfjoeCTzaX0QTCfwQwVmigC8rR30JBKI=
|
|
915
vendor/cloud.google.com/go/CHANGES.md
generated
vendored
915
vendor/cloud.google.com/go/CHANGES.md
generated
vendored
|
@ -1,915 +0,0 @@
|
||||||
# Changes
|
|
||||||
|
|
||||||
## v0.28.0
|
|
||||||
|
|
||||||
- bigtable:
|
|
||||||
- Emulator returns Unimplemented for snapshot RPCs.
|
|
||||||
- bigquery:
|
|
||||||
- Support zero-length repeated, nested fields.
|
|
||||||
- cloud assets:
|
|
||||||
- Add v1beta client.
|
|
||||||
- datastore:
|
|
||||||
- Don't nil out transaction ID on retry.
|
|
||||||
- firestore:
|
|
||||||
- BREAKING CHANGE: When watching a query with Query.Snapshots, QuerySnapshotIterator.Next
|
|
||||||
returns a QuerySnapshot which contains read time, result size, change list and the DocumentIterator
|
|
||||||
(previously, QuerySnapshotIterator.Next returned just the DocumentIterator). See: https://godoc.org/cloud.google.com/go/firestore#Query.Snapshots.
|
|
||||||
- Add array-contains operator.
|
|
||||||
- IAM:
|
|
||||||
- Add iam/credentials/apiv1 client.
|
|
||||||
- pubsub:
|
|
||||||
- Canceling the context passed to Subscription.Receive causes Receive to return when
|
|
||||||
processing finishes on all messages currently in progress, even if new messages are arriving.
|
|
||||||
- redis:
|
|
||||||
- Add redis/apiv1 client.
|
|
||||||
- storage:
|
|
||||||
- Add Reader.Attrs.
|
|
||||||
- Deprecate several Reader getter methods: please use Reader.Attrs for these instead.
|
|
||||||
- Add ObjectHandle.Bucket and ObjectHandle.Object methods.
|
|
||||||
|
|
||||||
## v0.27.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Allow modification of encryption configuration and partitioning options to a table via the Update call.
|
|
||||||
- Add a SchemaFromJSON function that converts a JSON table schema.
|
|
||||||
- bigtable:
|
|
||||||
- Restore cbt count functionality.
|
|
||||||
- containeranalysis:
|
|
||||||
- Add v1beta client.
|
|
||||||
- spanner:
|
|
||||||
- Fix a case where an iterator might not be closed correctly.
|
|
||||||
- storage:
|
|
||||||
- Add ServiceAccount method https://godoc.org/cloud.google.com/go/storage#Client.ServiceAccount.
|
|
||||||
- Add a method to Reader that returns the parsed value of the Last-Modified header.
|
|
||||||
|
|
||||||
## v0.26.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Support filtering listed jobs by min/max creation time.
|
|
||||||
- Support data clustering (https://godoc.org/cloud.google.com/go/bigquery#Clustering).
|
|
||||||
- Include job creator email in Job struct.
|
|
||||||
- bigtable:
|
|
||||||
- Add `RowSampleFilter`.
|
|
||||||
- emulator: BREAKING BEHAVIOR CHANGE: Regexps in row, family, column and value filters
|
|
||||||
must match the entire target string to succeed. Previously, the emulator was
|
|
||||||
succeeding on partial matches.
|
|
||||||
NOTE: As of this release, this change only affects the emulator when run
|
|
||||||
from this repo (bigtable/cmd/emulator/cbtemulator.go). The version launched
|
|
||||||
from `gcloud` will be updated in a subsequent `gcloud` release.
|
|
||||||
- dataproc: Add apiv1beta2 client.
|
|
||||||
- datastore: Save non-nil pointer fields on omitempty.
|
|
||||||
- logging: populate Entry.Trace from the HTTP X-Cloud-Trace-Context header.
|
|
||||||
- logging/logadmin: Support writer_identity and include_children.
|
|
||||||
- pubsub:
|
|
||||||
- Support labels on topics and subscriptions.
|
|
||||||
- Support message storage policy for topics.
|
|
||||||
- Use the distribution of ack times to determine when to extend ack deadlines.
|
|
||||||
The only user-visible effect of this change should be that programs that
|
|
||||||
call only `Subscription.Receive` need no IAM permissions other than `Pub/Sub
|
|
||||||
Subscriber`.
|
|
||||||
- storage:
|
|
||||||
- Support predefined ACLs.
|
|
||||||
- Support additional ACL fields other than Entity and Role.
|
|
||||||
- Support bucket websites.
|
|
||||||
- Support bucket logging.
|
|
||||||
|
|
||||||
|
|
||||||
## v0.25.0
|
|
||||||
|
|
||||||
- Added [Code of Conduct](https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/CODE_OF_CONDUCT.md)
|
|
||||||
- bigtable:
|
|
||||||
- cbt: Support a GC policy of "never".
|
|
||||||
- errorreporting:
|
|
||||||
- Support User.
|
|
||||||
- Close now calls Flush.
|
|
||||||
- Use OnError (previously ignored).
|
|
||||||
- Pass through the RPC error as-is to OnError.
|
|
||||||
- httpreplay: A tool for recording and replaying HTTP requests
|
|
||||||
(for the bigquery and storage clients in this repo).
|
|
||||||
- kms: v1 client added
|
|
||||||
- logging: add SourceLocation to Entry.
|
|
||||||
- storage: improve CRC checking on read.
|
|
||||||
|
|
||||||
## v0.24.0
|
|
||||||
|
|
||||||
- bigquery: Support for the NUMERIC type.
|
|
||||||
- bigtable:
|
|
||||||
- cbt: Optionally specify columns for read/lookup
|
|
||||||
- Support instance-level administration.
|
|
||||||
- oslogin: New client for the OS Login API.
|
|
||||||
- pubsub:
|
|
||||||
- The package is now stable. There will be no further breaking changes.
|
|
||||||
- Internal changes to improve Subscription.Receive behavior.
|
|
||||||
- storage: Support updating bucket lifecycle config.
|
|
||||||
- spanner: Support struct-typed parameter bindings.
|
|
||||||
- texttospeech: New client for the Text-to-Speech API.
|
|
||||||
|
|
||||||
## v0.23.0
|
|
||||||
|
|
||||||
- bigquery: Add DDL stats to query statistics.
|
|
||||||
- bigtable:
|
|
||||||
- cbt: Add cells-per-column limit for row lookup.
|
|
||||||
- cbt: Make it possible to combine read filters.
|
|
||||||
- dlp: v2beta2 client removed. Use the v2 client instead.
|
|
||||||
- firestore, spanner: Fix compilation errors due to protobuf changes.
|
|
||||||
|
|
||||||
## v0.22.0
|
|
||||||
|
|
||||||
- bigtable:
|
|
||||||
- cbt: Support cells per column limit for row read.
|
|
||||||
- bttest: Correctly handle empty RowSet.
|
|
||||||
- Fix ReadModifyWrite operation in emulator.
|
|
||||||
- Fix API path in GetCluster.
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- BEHAVIOR CHANGE: Retry on 503 status code.
|
|
||||||
- Add dataset.DeleteWithContents.
|
|
||||||
- Add SchemaUpdateOptions for query jobs.
|
|
||||||
- Add Timeline to QueryStatistics.
|
|
||||||
- Add more stats to ExplainQueryStage.
|
|
||||||
- Support Parquet data format.
|
|
||||||
|
|
||||||
- datastore:
|
|
||||||
- Support omitempty for times.
|
|
||||||
|
|
||||||
- dlp:
|
|
||||||
- **BREAKING CHANGE:** Remove v1beta1 client. Please migrate to the v2 client,
|
|
||||||
which is now out of beta.
|
|
||||||
- Add v2 client.
|
|
||||||
|
|
||||||
- firestore:
|
|
||||||
- BEHAVIOR CHANGE: Treat set({}, MergeAll) as valid.
|
|
||||||
|
|
||||||
- iam:
|
|
||||||
- Support JWT signing via SignJwt callopt.
|
|
||||||
|
|
||||||
- profiler:
|
|
||||||
- BEHAVIOR CHANGE: PollForSerialOutput returns an error when context.Done.
|
|
||||||
- BEHAVIOR CHANGE: Increase the initial backoff to 1 minute.
|
|
||||||
- Avoid returning empty serial port output.
|
|
||||||
|
|
||||||
- pubsub:
|
|
||||||
- BEHAVIOR CHANGE: Don't backoff during next retryable error once stream is healthy.
|
|
||||||
- BEHAVIOR CHANGE: Don't backoff on EOF.
|
|
||||||
- pstest: Support Acknowledge and ModifyAckDeadline RPCs.
|
|
||||||
|
|
||||||
- redis:
|
|
||||||
- Add v1 beta Redis client.
|
|
||||||
|
|
||||||
- spanner:
|
|
||||||
- Support SessionLabels.
|
|
||||||
|
|
||||||
- speech:
|
|
||||||
- Add api v1 beta1 client.
|
|
||||||
|
|
||||||
- storage:
|
|
||||||
- BEHAVIOR CHANGE: Retry reads when retryable error occurs.
|
|
||||||
- Fix delete of object in requester-pays bucket.
|
|
||||||
- Support KMS integration.
|
|
||||||
|
|
||||||
## v0.21.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Add OpenCensus tracing.
|
|
||||||
|
|
||||||
- firestore:
|
|
||||||
- **BREAKING CHANGE:** If a document does not exist, return a DocumentSnapshot
|
|
||||||
whose Exists method returns false. DocumentRef.Get and Transaction.Get
|
|
||||||
return the non-nil DocumentSnapshot in addition to a NotFound error.
|
|
||||||
**DocumentRef.GetAll and Transaction.GetAll return a non-nil
|
|
||||||
DocumentSnapshot instead of nil.**
|
|
||||||
- Add DocumentIterator.Stop. **Call Stop whenever you are done with a
|
|
||||||
DocumentIterator.**
|
|
||||||
- Added Query.Snapshots and DocumentRef.Snapshots, which provide realtime
|
|
||||||
notification of updates. See https://cloud.google.com/firestore/docs/query-data/listen.
|
|
||||||
- Canceling an RPC now always returns a grpc.Status with codes.Canceled.
|
|
||||||
|
|
||||||
- spanner:
|
|
||||||
- Add `CommitTimestamp`, which supports inserting the commit timestamp of a
|
|
||||||
transaction into a column.
|
|
||||||
|
|
||||||
## v0.20.0
|
|
||||||
|
|
||||||
- bigquery: Support SchemaUpdateOptions for load jobs.
|
|
||||||
|
|
||||||
- bigtable:
|
|
||||||
- Add SampleRowKeys.
|
|
||||||
- cbt: Support union, intersection GCPolicy.
|
|
||||||
- Retry admin RPCS.
|
|
||||||
- Add trace spans to retries.
|
|
||||||
|
|
||||||
- datastore: Add OpenCensus tracing.
|
|
||||||
|
|
||||||
- firestore:
|
|
||||||
- Fix queries involving Null and NaN.
|
|
||||||
- Allow Timestamp protobuffers for time values.
|
|
||||||
|
|
||||||
- logging: Add a WriteTimeout option.
|
|
||||||
|
|
||||||
- spanner: Support Batch API.
|
|
||||||
|
|
||||||
- storage: Add OpenCensus tracing.
|
|
||||||
|
|
||||||
## v0.19.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Support customer-managed encryption keys.
|
|
||||||
|
|
||||||
- bigtable:
|
|
||||||
- Improved emulator support.
|
|
||||||
- Support GetCluster.
|
|
||||||
|
|
||||||
- datastore:
|
|
||||||
- Add general mutations.
|
|
||||||
- Support pointer struct fields.
|
|
||||||
- Support transaction options.
|
|
||||||
|
|
||||||
- firestore:
|
|
||||||
- Add Transaction.GetAll.
|
|
||||||
- Support document cursors.
|
|
||||||
|
|
||||||
- logging:
|
|
||||||
- Support concurrent RPCs to the service.
|
|
||||||
- Support per-entry resources.
|
|
||||||
|
|
||||||
- profiler:
|
|
||||||
- Add config options to disable heap and thread profiling.
|
|
||||||
- Read the project ID from $GOOGLE_CLOUD_PROJECT when it's set.
|
|
||||||
|
|
||||||
- pubsub:
|
|
||||||
- BEHAVIOR CHANGE: Release flow control after ack/nack (instead of after the
|
|
||||||
callback returns).
|
|
||||||
- Add SubscriptionInProject.
|
|
||||||
- Add OpenCensus instrumentation for streaming pull.
|
|
||||||
|
|
||||||
- storage:
|
|
||||||
- Support CORS.
|
|
||||||
|
|
||||||
## v0.18.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Marked stable.
|
|
||||||
- Schema inference of nullable fields supported.
|
|
||||||
- Added TimePartitioning to QueryConfig.
|
|
||||||
|
|
||||||
- firestore: Data provided to DocumentRef.Set with a Merge option can contain
|
|
||||||
Delete sentinels.
|
|
||||||
|
|
||||||
- logging: Clients can accept parent resources other than projects.
|
|
||||||
|
|
||||||
- pubsub:
|
|
||||||
- pubsub/pstest: A lighweight fake for pubsub. Experimental; feedback welcome.
|
|
||||||
- Support updating more subscription metadata: AckDeadline,
|
|
||||||
RetainAckedMessages and RetentionDuration.
|
|
||||||
|
|
||||||
- oslogin/apiv1beta: New client for the Cloud OS Login API.
|
|
||||||
|
|
||||||
- rpcreplay: A package for recording and replaying gRPC traffic.
|
|
||||||
|
|
||||||
- spanner:
|
|
||||||
- Add a ReadWithOptions that supports a row limit, as well as an index.
|
|
||||||
- Support query plan and execution statistics.
|
|
||||||
- Added [OpenCensus](http://opencensus.io) support.
|
|
||||||
|
|
||||||
- storage: Clarify checksum validation for gzipped files (it is not validated
|
|
||||||
when the file is served uncompressed).
|
|
||||||
|
|
||||||
|
|
||||||
## v0.17.0
|
|
||||||
|
|
||||||
- firestore BREAKING CHANGES:
|
|
||||||
- Remove UpdateMap and UpdateStruct; rename UpdatePaths to Update.
|
|
||||||
Change
|
|
||||||
`docref.UpdateMap(ctx, map[string]interface{}{"a.b", 1})`
|
|
||||||
to
|
|
||||||
`docref.Update(ctx, []firestore.Update{{Path: "a.b", Value: 1}})`
|
|
||||||
|
|
||||||
Change
|
|
||||||
`docref.UpdateStruct(ctx, []string{"Field"}, aStruct)`
|
|
||||||
to
|
|
||||||
`docref.Update(ctx, []firestore.Update{{Path: "Field", Value: aStruct.Field}})`
|
|
||||||
- Rename MergePaths to Merge; require args to be FieldPaths
|
|
||||||
- A value stored as an integer can be read into a floating-point field, and vice versa.
|
|
||||||
- bigtable/cmd/cbt:
|
|
||||||
- Support deleting a column.
|
|
||||||
- Add regex option for row read.
|
|
||||||
- spanner: Mark stable.
|
|
||||||
- storage:
|
|
||||||
- Add Reader.ContentEncoding method.
|
|
||||||
- Fix handling of SignedURL headers.
|
|
||||||
- bigquery:
|
|
||||||
- If Uploader.Put is called with no rows, it returns nil without making a
|
|
||||||
call.
|
|
||||||
- Schema inference supports the "nullable" option in struct tags for
|
|
||||||
non-required fields.
|
|
||||||
- TimePartitioning supports "Field".
|
|
||||||
|
|
||||||
|
|
||||||
## v0.16.0
|
|
||||||
|
|
||||||
- Other bigquery changes:
|
|
||||||
- `JobIterator.Next` returns `*Job`; removed `JobInfo` (BREAKING CHANGE).
|
|
||||||
- UseStandardSQL is deprecated; set UseLegacySQL to true if you need
|
|
||||||
Legacy SQL.
|
|
||||||
- Uploader.Put will generate a random insert ID if you do not provide one.
|
|
||||||
- Support time partitioning for load jobs.
|
|
||||||
- Support dry-run queries.
|
|
||||||
- A `Job` remembers its last retrieved status.
|
|
||||||
- Support retrieving job configuration.
|
|
||||||
- Support labels for jobs and tables.
|
|
||||||
- Support dataset access lists.
|
|
||||||
- Improve support for external data sources, including data from Bigtable and
|
|
||||||
Google Sheets, and tables with external data.
|
|
||||||
- Support updating a table's view configuration.
|
|
||||||
- Fix uploading civil times with nanoseconds.
|
|
||||||
|
|
||||||
- storage:
|
|
||||||
- Support PubSub notifications.
|
|
||||||
- Support Requester Pays buckets.
|
|
||||||
|
|
||||||
- profiler: Support goroutine and mutex profile types.
|
|
||||||
|
|
||||||
## v0.15.0
|
|
||||||
|
|
||||||
- firestore: beta release. See the
|
|
||||||
[announcement](https://firebase.googleblog.com/2017/10/introducing-cloud-firestore.html).
|
|
||||||
|
|
||||||
- errorreporting: The existing package has been redesigned.
|
|
||||||
|
|
||||||
- errors: This package has been removed. Use errorreporting.
|
|
||||||
|
|
||||||
|
|
||||||
## v0.14.0
|
|
||||||
|
|
||||||
- bigquery BREAKING CHANGES:
|
|
||||||
- Standard SQL is the default for queries and views.
|
|
||||||
- `Table.Create` takes `TableMetadata` as a second argument, instead of
|
|
||||||
options.
|
|
||||||
- `Dataset.Create` takes `DatasetMetadata` as a second argument.
|
|
||||||
- `DatasetMetadata` field `ID` renamed to `FullID`
|
|
||||||
- `TableMetadata` field `ID` renamed to `FullID`
|
|
||||||
|
|
||||||
- Other bigquery changes:
|
|
||||||
- The client will append a random suffix to a provided job ID if you set
|
|
||||||
`AddJobIDSuffix` to true in a job config.
|
|
||||||
- Listing jobs is supported.
|
|
||||||
- Better retry logic.
|
|
||||||
|
|
||||||
- vision, language, speech: clients are now stable
|
|
||||||
|
|
||||||
- monitoring: client is now beta
|
|
||||||
|
|
||||||
- profiler:
|
|
||||||
- Rename InstanceName to Instance, ZoneName to Zone
|
|
||||||
- Auto-detect service name and version on AppEngine.
|
|
||||||
|
|
||||||
## v0.13.0
|
|
||||||
|
|
||||||
- bigquery: UseLegacySQL options for CreateTable and QueryConfig. Use these
|
|
||||||
options to continue using Legacy SQL after the client switches its default
|
|
||||||
to Standard SQL.
|
|
||||||
|
|
||||||
- bigquery: Support for updating dataset labels.
|
|
||||||
|
|
||||||
- bigquery: Set DatasetIterator.ProjectID to list datasets in a project other
|
|
||||||
than the client's. DatasetsInProject is no longer needed and is deprecated.
|
|
||||||
|
|
||||||
- bigtable: Fail ListInstances when any zones fail.
|
|
||||||
|
|
||||||
- spanner: support decoding of slices of basic types (e.g. []string, []int64,
|
|
||||||
etc.)
|
|
||||||
|
|
||||||
- logging/logadmin: UpdateSink no longer creates a sink if it is missing
|
|
||||||
(actually a change to the underlying service, not the client)
|
|
||||||
|
|
||||||
- profiler: Service and ServiceVersion replace Target in Config.
|
|
||||||
|
|
||||||
## v0.12.0
|
|
||||||
|
|
||||||
- pubsub: Subscription.Receive now uses streaming pull.
|
|
||||||
|
|
||||||
- pubsub: add Client.TopicInProject to access topics in a different project
|
|
||||||
than the client.
|
|
||||||
|
|
||||||
- errors: renamed errorreporting. The errors package will be removed shortly.
|
|
||||||
|
|
||||||
- datastore: improved retry behavior.
|
|
||||||
|
|
||||||
- bigquery: support updates to dataset metadata, with etags.
|
|
||||||
|
|
||||||
- bigquery: add etag support to Table.Update (BREAKING: etag argument added).
|
|
||||||
|
|
||||||
- bigquery: generate all job IDs on the client.
|
|
||||||
|
|
||||||
- storage: support bucket lifecycle configurations.
|
|
||||||
|
|
||||||
|
|
||||||
## v0.11.0
|
|
||||||
|
|
||||||
- Clients for spanner, pubsub and video are now in beta.
|
|
||||||
|
|
||||||
- New client for DLP.
|
|
||||||
|
|
||||||
- spanner: performance and testing improvements.
|
|
||||||
|
|
||||||
- storage: requester-pays buckets are supported.
|
|
||||||
|
|
||||||
- storage, profiler, bigtable, bigquery: bug fixes and other minor improvements.
|
|
||||||
|
|
||||||
- pubsub: bug fixes and other minor improvements
|
|
||||||
|
|
||||||
## v0.10.0
|
|
||||||
|
|
||||||
- pubsub: Subscription.ModifyPushConfig replaced with Subscription.Update.
|
|
||||||
|
|
||||||
- pubsub: Subscription.Receive now runs concurrently for higher throughput.
|
|
||||||
|
|
||||||
- vision: cloud.google.com/go/vision is deprecated. Use
|
|
||||||
cloud.google.com/go/vision/apiv1 instead.
|
|
||||||
|
|
||||||
- translation: now stable.
|
|
||||||
|
|
||||||
- trace: several changes to the surface. See the link below.
|
|
||||||
|
|
||||||
### Code changes required from v0.9.0
|
|
||||||
|
|
||||||
- pubsub: Replace
|
|
||||||
|
|
||||||
```
|
|
||||||
sub.ModifyPushConfig(ctx, pubsub.PushConfig{Endpoint: "https://example.com/push"})
|
|
||||||
```
|
|
||||||
|
|
||||||
with
|
|
||||||
|
|
||||||
```
|
|
||||||
sub.Update(ctx, pubsub.SubscriptionConfigToUpdate{
|
|
||||||
PushConfig: &pubsub.PushConfig{Endpoint: "https://example.com/push"},
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
- trace: traceGRPCServerInterceptor will be provided from *trace.Client.
|
|
||||||
Given an initialized `*trace.Client` named `tc`, instead of
|
|
||||||
|
|
||||||
```
|
|
||||||
s := grpc.NewServer(grpc.UnaryInterceptor(trace.GRPCServerInterceptor(tc)))
|
|
||||||
```
|
|
||||||
|
|
||||||
write
|
|
||||||
|
|
||||||
```
|
|
||||||
s := grpc.NewServer(grpc.UnaryInterceptor(tc.GRPCServerInterceptor()))
|
|
||||||
```
|
|
||||||
|
|
||||||
- trace trace.GRPCClientInterceptor will also provided from *trace.Client.
|
|
||||||
Instead of
|
|
||||||
|
|
||||||
```
|
|
||||||
conn, err := grpc.Dial(srv.Addr, grpc.WithUnaryInterceptor(trace.GRPCClientInterceptor()))
|
|
||||||
```
|
|
||||||
|
|
||||||
write
|
|
||||||
|
|
||||||
```
|
|
||||||
conn, err := grpc.Dial(srv.Addr, grpc.WithUnaryInterceptor(tc.GRPCClientInterceptor()))
|
|
||||||
```
|
|
||||||
|
|
||||||
- trace: We removed the deprecated `trace.EnableGRPCTracing`. Use the gRPC
|
|
||||||
interceptor as a dial option as shown below when initializing Cloud package
|
|
||||||
clients:
|
|
||||||
|
|
||||||
```
|
|
||||||
c, err := pubsub.NewClient(ctx, "project-id", option.WithGRPCDialOption(grpc.WithUnaryInterceptor(tc.GRPCClientInterceptor())))
|
|
||||||
if err != nil {
|
|
||||||
...
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
## v0.9.0
|
|
||||||
|
|
||||||
- Breaking changes to some autogenerated clients.
|
|
||||||
- rpcreplay package added.
|
|
||||||
|
|
||||||
## v0.8.0
|
|
||||||
|
|
||||||
- profiler package added.
|
|
||||||
- storage:
|
|
||||||
- Retry Objects.Insert call.
|
|
||||||
- Add ProgressFunc to WRiter.
|
|
||||||
- pubsub: breaking changes:
|
|
||||||
- Publish is now asynchronous ([announcement](https://groups.google.com/d/topic/google-api-go-announce/aaqRDIQ3rvU/discussion)).
|
|
||||||
- Subscription.Pull replaced by Subscription.Receive, which takes a callback ([announcement](https://groups.google.com/d/topic/google-api-go-announce/8pt6oetAdKc/discussion)).
|
|
||||||
- Message.Done replaced with Message.Ack and Message.Nack.
|
|
||||||
|
|
||||||
## v0.7.0
|
|
||||||
|
|
||||||
- Release of a client library for Spanner. See
|
|
||||||
the
|
|
||||||
[blog
|
|
||||||
post](https://cloudplatform.googleblog.com/2017/02/introducing-Cloud-Spanner-a-global-database-service-for-mission-critical-applications.html).
|
|
||||||
Note that although the Spanner service is beta, the Go client library is alpha.
|
|
||||||
|
|
||||||
## v0.6.0
|
|
||||||
|
|
||||||
- Beta release of BigQuery, DataStore, Logging and Storage. See the
|
|
||||||
[blog post](https://cloudplatform.googleblog.com/2016/12/announcing-new-google-cloud-client.html).
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- struct support. Read a row directly into a struct with
|
|
||||||
`RowIterator.Next`, and upload a row directly from a struct with `Uploader.Put`.
|
|
||||||
You can also use field tags. See the [package documentation][cloud-bigquery-ref]
|
|
||||||
for details.
|
|
||||||
|
|
||||||
- The `ValueList` type was removed. It is no longer necessary. Instead of
|
|
||||||
```go
|
|
||||||
var v ValueList
|
|
||||||
... it.Next(&v) ..
|
|
||||||
```
|
|
||||||
use
|
|
||||||
|
|
||||||
```go
|
|
||||||
var v []Value
|
|
||||||
... it.Next(&v) ...
|
|
||||||
```
|
|
||||||
|
|
||||||
- Previously, repeatedly calling `RowIterator.Next` on the same `[]Value` or
|
|
||||||
`ValueList` would append to the slice. Now each call resets the size to zero first.
|
|
||||||
|
|
||||||
- Schema inference will infer the SQL type BYTES for a struct field of
|
|
||||||
type []byte. Previously it inferred STRING.
|
|
||||||
|
|
||||||
- The types `uint`, `uint64` and `uintptr` are no longer supported in schema
|
|
||||||
inference. BigQuery's integer type is INT64, and those types may hold values
|
|
||||||
that are not correctly represented in a 64-bit signed integer.
|
|
||||||
|
|
||||||
## v0.5.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- The SQL types DATE, TIME and DATETIME are now supported. They correspond to
|
|
||||||
the `Date`, `Time` and `DateTime` types in the new `cloud.google.com/go/civil`
|
|
||||||
package.
|
|
||||||
- Support for query parameters.
|
|
||||||
- Support deleting a dataset.
|
|
||||||
- Values from INTEGER columns will now be returned as int64, not int. This
|
|
||||||
will avoid errors arising from large values on 32-bit systems.
|
|
||||||
- datastore:
|
|
||||||
- Nested Go structs encoded as Entity values, instead of a
|
|
||||||
flattened list of the embedded struct's fields. This means that you may now have twice-nested slices, eg.
|
|
||||||
```go
|
|
||||||
type State struct {
|
|
||||||
Cities []struct{
|
|
||||||
Populations []int
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
See [the announcement](https://groups.google.com/forum/#!topic/google-api-go-announce/79jtrdeuJAg) for
|
|
||||||
more details.
|
|
||||||
- Contexts no longer hold namespaces; instead you must set a key's namespace
|
|
||||||
explicitly. Also, key functions have been changed and renamed.
|
|
||||||
- The WithNamespace function has been removed. To specify a namespace in a Query, use the Query.Namespace method:
|
|
||||||
```go
|
|
||||||
q := datastore.NewQuery("Kind").Namespace("ns")
|
|
||||||
```
|
|
||||||
- All the fields of Key are exported. That means you can construct any Key with a struct literal:
|
|
||||||
```go
|
|
||||||
k := &Key{Kind: "Kind", ID: 37, Namespace: "ns"}
|
|
||||||
```
|
|
||||||
- As a result of the above, the Key methods Kind, ID, d.Name, Parent, SetParent and Namespace have been removed.
|
|
||||||
- `NewIncompleteKey` has been removed, replaced by `IncompleteKey`. Replace
|
|
||||||
```go
|
|
||||||
NewIncompleteKey(ctx, kind, parent)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
IncompleteKey(kind, parent)
|
|
||||||
```
|
|
||||||
and if you do use namespaces, make sure you set the namespace on the returned key.
|
|
||||||
- `NewKey` has been removed, replaced by `NameKey` and `IDKey`. Replace
|
|
||||||
```go
|
|
||||||
NewKey(ctx, kind, name, 0, parent)
|
|
||||||
NewKey(ctx, kind, "", id, parent)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
NameKey(kind, name, parent)
|
|
||||||
IDKey(kind, id, parent)
|
|
||||||
```
|
|
||||||
and if you do use namespaces, make sure you set the namespace on the returned key.
|
|
||||||
- The `Done` variable has been removed. Replace `datastore.Done` with `iterator.Done`, from the package `google.golang.org/api/iterator`.
|
|
||||||
- The `Client.Close` method will have a return type of error. It will return the result of closing the underlying gRPC connection.
|
|
||||||
- See [the announcement](https://groups.google.com/forum/#!topic/google-api-go-announce/hqXtM_4Ix-0) for
|
|
||||||
more details.
|
|
||||||
|
|
||||||
## v0.4.0
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
-`NewGCSReference` is now a function, not a method on `Client`.
|
|
||||||
- `Table.LoaderFrom` now accepts a `ReaderSource`, enabling
|
|
||||||
loading data into a table from a file or any `io.Reader`.
|
|
||||||
* Client.Table and Client.OpenTable have been removed.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.OpenTable("project", "dataset", "table")
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
client.DatasetInProject("project", "dataset").Table("table")
|
|
||||||
```
|
|
||||||
|
|
||||||
* Client.CreateTable has been removed.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.CreateTable(ctx, "project", "dataset", "table")
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
client.DatasetInProject("project", "dataset").Table("table").Create(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* Dataset.ListTables have been replaced with Dataset.Tables.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
tables, err := ds.ListTables(ctx)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
it := ds.Tables(ctx)
|
|
||||||
for {
|
|
||||||
table, err := it.Next()
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// TODO: use table.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
* Client.Read has been replaced with Job.Read, Table.Read and Query.Read.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
it, err := client.Read(ctx, job)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
it, err := job.Read(ctx)
|
|
||||||
```
|
|
||||||
and similarly for reading from tables or queries.
|
|
||||||
|
|
||||||
* The iterator returned from the Read methods is now named RowIterator. Its
|
|
||||||
behavior is closer to the other iterators in these libraries. It no longer
|
|
||||||
supports the Schema method; see the next item.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
for it.Next(ctx) {
|
|
||||||
var vals ValueList
|
|
||||||
if err := it.Get(&vals); err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// TODO: use vals.
|
|
||||||
}
|
|
||||||
if err := it.Err(); err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```
|
|
||||||
for {
|
|
||||||
var vals ValueList
|
|
||||||
err := it.Next(&vals)
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// TODO: use vals.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
Instead of the `RecordsPerRequest(n)` option, write
|
|
||||||
```go
|
|
||||||
it.PageInfo().MaxSize = n
|
|
||||||
```
|
|
||||||
Instead of the `StartIndex(i)` option, write
|
|
||||||
```go
|
|
||||||
it.StartIndex = i
|
|
||||||
```
|
|
||||||
|
|
||||||
* ValueLoader.Load now takes a Schema in addition to a slice of Values.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
func (vl *myValueLoader) Load(v []bigquery.Value)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
func (vl *myValueLoader) Load(v []bigquery.Value, s bigquery.Schema)
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
* Table.Patch is replace by Table.Update.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
p := table.Patch()
|
|
||||||
p.Description("new description")
|
|
||||||
metadata, err := p.Apply(ctx)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
metadata, err := table.Update(ctx, bigquery.TableMetadataToUpdate{
|
|
||||||
Description: "new description",
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
* Client.Copy is replaced by separate methods for each of its four functions.
|
|
||||||
All options have been replaced by struct fields.
|
|
||||||
|
|
||||||
* To load data from Google Cloud Storage into a table, use Table.LoaderFrom.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, table, gcsRef)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
table.LoaderFrom(gcsRef).Run(ctx)
|
|
||||||
```
|
|
||||||
Instead of passing options to Copy, set fields on the Loader:
|
|
||||||
```go
|
|
||||||
loader := table.LoaderFrom(gcsRef)
|
|
||||||
loader.WriteDisposition = bigquery.WriteTruncate
|
|
||||||
```
|
|
||||||
|
|
||||||
* To extract data from a table into Google Cloud Storage, use
|
|
||||||
Table.ExtractorTo. Set fields on the returned Extractor instead of
|
|
||||||
passing options.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, gcsRef, table)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
table.ExtractorTo(gcsRef).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* To copy data into a table from one or more other tables, use
|
|
||||||
Table.CopierFrom. Set fields on the returned Copier instead of passing options.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, dstTable, srcTable)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
dst.Table.CopierFrom(srcTable).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* To start a query job, create a Query and call its Run method. Set fields
|
|
||||||
on the query instead of passing options.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, table, query)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
query.Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* Table.NewUploader has been renamed to Table.Uploader. Instead of options,
|
|
||||||
configure an Uploader by setting its fields.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
u := table.NewUploader(bigquery.UploadIgnoreUnknownValues())
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
u := table.NewUploader(bigquery.UploadIgnoreUnknownValues())
|
|
||||||
u.IgnoreUnknownValues = true
|
|
||||||
```
|
|
||||||
|
|
||||||
- pubsub: remove `pubsub.Done`. Use `iterator.Done` instead, where `iterator` is the package
|
|
||||||
`google.golang.org/api/iterator`.
|
|
||||||
|
|
||||||
## v0.3.0
|
|
||||||
|
|
||||||
- storage:
|
|
||||||
* AdminClient replaced by methods on Client.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
adminClient.CreateBucket(ctx, bucketName, attrs)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
client.Bucket(bucketName).Create(ctx, projectID, attrs)
|
|
||||||
```
|
|
||||||
|
|
||||||
* BucketHandle.List replaced by BucketHandle.Objects.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
for query != nil {
|
|
||||||
objs, err := bucket.List(d.ctx, query)
|
|
||||||
if err != nil { ... }
|
|
||||||
query = objs.Next
|
|
||||||
for _, obj := range objs.Results {
|
|
||||||
fmt.Println(obj)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
iter := bucket.Objects(d.ctx, query)
|
|
||||||
for {
|
|
||||||
obj, err := iter.Next()
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil { ... }
|
|
||||||
fmt.Println(obj)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
(The `iterator` package is at `google.golang.org/api/iterator`.)
|
|
||||||
|
|
||||||
Replace `Query.Cursor` with `ObjectIterator.PageInfo().Token`.
|
|
||||||
|
|
||||||
Replace `Query.MaxResults` with `ObjectIterator.PageInfo().MaxSize`.
|
|
||||||
|
|
||||||
|
|
||||||
* ObjectHandle.CopyTo replaced by ObjectHandle.CopierFrom.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := src.CopyTo(ctx, dst, nil)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
attrs, err := dst.CopierFrom(src).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := src.CopyTo(ctx, dst, &storage.ObjectAttrs{ContextType: "text/html"})
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
c := dst.CopierFrom(src)
|
|
||||||
c.ContextType = "text/html"
|
|
||||||
attrs, err := c.Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* ObjectHandle.ComposeFrom replaced by ObjectHandle.ComposerFrom.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := dst.ComposeFrom(ctx, []*storage.ObjectHandle{src1, src2}, nil)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
attrs, err := dst.ComposerFrom(src1, src2).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* ObjectHandle.Update's ObjectAttrs argument replaced by ObjectAttrsToUpdate.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := obj.Update(ctx, &storage.ObjectAttrs{ContextType: "text/html"})
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
attrs, err := obj.Update(ctx, storage.ObjectAttrsToUpdate{ContextType: "text/html"})
|
|
||||||
```
|
|
||||||
|
|
||||||
* ObjectHandle.WithConditions replaced by ObjectHandle.If.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
obj.WithConditions(storage.Generation(gen), storage.IfMetaGenerationMatch(mgen))
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
obj.Generation(gen).If(storage.Conditions{MetagenerationMatch: mgen})
|
|
||||||
```
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
obj.WithConditions(storage.IfGenerationMatch(0))
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
obj.If(storage.Conditions{DoesNotExist: true})
|
|
||||||
```
|
|
||||||
|
|
||||||
* `storage.Done` replaced by `iterator.Done` (from package `google.golang.org/api/iterator`).
|
|
||||||
|
|
||||||
- Package preview/logging deleted. Use logging instead.
|
|
||||||
|
|
||||||
## v0.2.0
|
|
||||||
|
|
||||||
- Logging client replaced with preview version (see below).
|
|
||||||
|
|
||||||
- New clients for some of Google's Machine Learning APIs: Vision, Speech, and
|
|
||||||
Natural Language.
|
|
||||||
|
|
||||||
- Preview version of a new [Stackdriver Logging][cloud-logging] client in
|
|
||||||
[`cloud.google.com/go/preview/logging`](https://godoc.org/cloud.google.com/go/preview/logging).
|
|
||||||
This client uses gRPC as its transport layer, and supports log reading, sinks
|
|
||||||
and metrics. It will replace the current client at `cloud.google.com/go/logging` shortly.
|
|
||||||
|
|
||||||
|
|
44
vendor/cloud.google.com/go/CODE_OF_CONDUCT.md
generated
vendored
44
vendor/cloud.google.com/go/CODE_OF_CONDUCT.md
generated
vendored
|
@ -1,44 +0,0 @@
|
||||||
# Contributor Code of Conduct
|
|
||||||
|
|
||||||
As contributors and maintainers of this project,
|
|
||||||
and in the interest of fostering an open and welcoming community,
|
|
||||||
we pledge to respect all people who contribute through reporting issues,
|
|
||||||
posting feature requests, updating documentation,
|
|
||||||
submitting pull requests or patches, and other activities.
|
|
||||||
|
|
||||||
We are committed to making participation in this project
|
|
||||||
a harassment-free experience for everyone,
|
|
||||||
regardless of level of experience, gender, gender identity and expression,
|
|
||||||
sexual orientation, disability, personal appearance,
|
|
||||||
body size, race, ethnicity, age, religion, or nationality.
|
|
||||||
|
|
||||||
Examples of unacceptable behavior by participants include:
|
|
||||||
|
|
||||||
* The use of sexualized language or imagery
|
|
||||||
* Personal attacks
|
|
||||||
* Trolling or insulting/derogatory comments
|
|
||||||
* Public or private harassment
|
|
||||||
* Publishing other's private information,
|
|
||||||
such as physical or electronic
|
|
||||||
addresses, without explicit permission
|
|
||||||
* Other unethical or unprofessional conduct.
|
|
||||||
|
|
||||||
Project maintainers have the right and responsibility to remove, edit, or reject
|
|
||||||
comments, commits, code, wiki edits, issues, and other contributions
|
|
||||||
that are not aligned to this Code of Conduct.
|
|
||||||
By adopting this Code of Conduct,
|
|
||||||
project maintainers commit themselves to fairly and consistently
|
|
||||||
applying these principles to every aspect of managing this project.
|
|
||||||
Project maintainers who do not follow or enforce the Code of Conduct
|
|
||||||
may be permanently removed from the project team.
|
|
||||||
|
|
||||||
This code of conduct applies both within project spaces and in public spaces
|
|
||||||
when an individual is representing the project or its community.
|
|
||||||
|
|
||||||
Instances of abusive, harassing, or otherwise unacceptable behavior
|
|
||||||
may be reported by opening an issue
|
|
||||||
or contacting one or more of the project maintainers.
|
|
||||||
|
|
||||||
This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0,
|
|
||||||
available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/)
|
|
||||||
|
|
174
vendor/cloud.google.com/go/CONTRIBUTING.md
generated
vendored
174
vendor/cloud.google.com/go/CONTRIBUTING.md
generated
vendored
|
@ -1,174 +0,0 @@
|
||||||
# Contributing
|
|
||||||
|
|
||||||
1. Sign one of the contributor license agreements below.
|
|
||||||
1. `go get golang.org/x/review/git-codereview` to install the code reviewing tool.
|
|
||||||
1. You will need to ensure that your `GOBIN` directory (by default
|
|
||||||
`$GOPATH/bin`) is in your `PATH` so that git can find the command.
|
|
||||||
1. If you would like, you may want to set up aliases for git-codereview,
|
|
||||||
such that `git codereview change` becomes `git change`. See the
|
|
||||||
[godoc](https://godoc.org/golang.org/x/review/git-codereview) for details.
|
|
||||||
1. Should you run into issues with the git-codereview tool, please note
|
|
||||||
that all error messages will assume that you have set up these
|
|
||||||
aliases.
|
|
||||||
1. Get the cloud package by running `go get -d cloud.google.com/go`.
|
|
||||||
1. If you have already checked out the source, make sure that the remote git
|
|
||||||
origin is https://code.googlesource.com/gocloud:
|
|
||||||
|
|
||||||
git remote set-url origin https://code.googlesource.com/gocloud
|
|
||||||
1. Make sure your auth is configured correctly by visiting
|
|
||||||
https://code.googlesource.com, clicking "Generate Password", and following
|
|
||||||
the directions.
|
|
||||||
1. Make changes and create a change by running `git codereview change <name>`,
|
|
||||||
provide a commit message, and use `git codereview mail` to create a Gerrit CL.
|
|
||||||
1. Keep amending to the change with `git codereview change` and mail as your receive
|
|
||||||
feedback. Each new mailed amendment will create a new patch set for your change in Gerrit.
|
|
||||||
|
|
||||||
## Integration Tests
|
|
||||||
|
|
||||||
In addition to the unit tests, you may run the integration test suite.
|
|
||||||
|
|
||||||
To run the integrations tests, creating and configuration of a project in the
|
|
||||||
Google Developers Console is required.
|
|
||||||
|
|
||||||
After creating a project, you must [create a service account](https://developers.google.com/identity/protocols/OAuth2ServiceAccount#creatinganaccount).
|
|
||||||
Ensure the project-level **Owner**
|
|
||||||
[IAM role](console.cloud.google.com/iam-admin/iam/project) role is added to the
|
|
||||||
service account. Alternatively, the account can be granted all of the following roles:
|
|
||||||
- **Editor**
|
|
||||||
- **Logs Configuration Writer**
|
|
||||||
- **PubSub Admin**
|
|
||||||
|
|
||||||
Once you create a project, set the following environment variables to be able to
|
|
||||||
run the against the actual APIs.
|
|
||||||
|
|
||||||
- **GCLOUD_TESTS_GOLANG_PROJECT_ID**: Developers Console project's ID (e.g. bamboo-shift-455)
|
|
||||||
- **GCLOUD_TESTS_GOLANG_KEY**: The path to the JSON key file.
|
|
||||||
|
|
||||||
Some packages require additional environment variables to be set:
|
|
||||||
|
|
||||||
- firestore
|
|
||||||
- **GCLOUD_TESTS_GOLANG_FIRESTORE_PROJECT_ID**: project ID for Firestore.
|
|
||||||
- **GCLOUD_TESTS_GOLANG_FIRESTORE_KEY**: The path to the JSON key file.
|
|
||||||
- storage
|
|
||||||
- **GCLOUD_TESTS_GOLANG_KEYRING**: The full name of the keyring for the tests, in the
|
|
||||||
form "projects/P/locations/L/keyRings/R".
|
|
||||||
- translate
|
|
||||||
- **GCLOUD_TESTS_API_KEY**: API key for using the Translate API.
|
|
||||||
- profiler
|
|
||||||
- **GCLOUD_TESTS_GOLANG_ZONE**: Compute Engine zone.
|
|
||||||
|
|
||||||
Some packages can record the RPCs during integration tests to a file for
|
|
||||||
subsequent replay. To record, pass the `-record` flag to `go test`. The
|
|
||||||
recording will be saved to the _package_`.replay` file. To replay integration
|
|
||||||
tests from a saved recording, the replay file must be present, the `-short` flag
|
|
||||||
must be passed to `go test`, and the **GCLOUD_TESTS_GOLANG_ENABLE_REPLAY**
|
|
||||||
environment variable must have a non-empty value.
|
|
||||||
|
|
||||||
Install the [gcloud command-line tool][gcloudcli] to your machine and use it
|
|
||||||
to create some resources used in integration tests.
|
|
||||||
|
|
||||||
From the project's root directory:
|
|
||||||
|
|
||||||
``` sh
|
|
||||||
# Set the default project in your env.
|
|
||||||
$ gcloud config set project $GCLOUD_TESTS_GOLANG_PROJECT_ID
|
|
||||||
|
|
||||||
# Authenticate the gcloud tool with your account.
|
|
||||||
$ gcloud auth login
|
|
||||||
|
|
||||||
# Create the indexes used in the datastore integration tests.
|
|
||||||
$ gcloud preview datastore create-indexes datastore/testdata/index.yaml
|
|
||||||
|
|
||||||
# Create a Google Cloud storage bucket with the same name as your test project,
|
|
||||||
# and with the Stackdriver Logging service account as owner, for the sink
|
|
||||||
# integration tests in logging.
|
|
||||||
$ gsutil mb gs://$GCLOUD_TESTS_GOLANG_PROJECT_ID
|
|
||||||
$ gsutil acl ch -g cloud-logs@google.com:O gs://$GCLOUD_TESTS_GOLANG_PROJECT_ID
|
|
||||||
|
|
||||||
# Create a PubSub topic for integration tests of storage notifications.
|
|
||||||
$ gcloud beta pubsub topics create go-storage-notification-test
|
|
||||||
|
|
||||||
# Create a Spanner instance for the spanner integration tests.
|
|
||||||
$ gcloud beta spanner instances create go-integration-test --config regional-us-central1 --nodes 1 --description 'Instance for go client test'
|
|
||||||
# NOTE: Spanner instances are priced by the node-hour, so you may want to delete
|
|
||||||
# the instance after testing with 'gcloud beta spanner instances delete'.
|
|
||||||
|
|
||||||
# For Storage integration tests:
|
|
||||||
# Enable KMS for your project in the Cloud Console.
|
|
||||||
# Create a KMS keyring, in the same location as the default location for your project's buckets.
|
|
||||||
$ gcloud kms keyrings create MY_KEYRING --location MY_LOCATION
|
|
||||||
# Create two keys in the keyring, named key1 and key2.
|
|
||||||
$ gcloud kms keys create key1 --keyring MY_KEYRING --location MY_LOCATION --purpose encryption
|
|
||||||
$ gcloud kms keys create key2 --keyring MY_KEYRING --location MY_LOCATION --purpose encryption
|
|
||||||
# As mentioned above, set the GCLOUD_TESTS_GOLANG_KEYRING environment variable.
|
|
||||||
$ export GCLOUD_TESTS_GOLANG_KEYRING=projects/$GCLOUD_TESTS_GOLANG_PROJECT_ID/locations/MY_LOCATION/keyRings/MY_KEYRING
|
|
||||||
# Authorize Google Cloud Storage to encrypt and decrypt using key1.
|
|
||||||
gsutil kms authorize -p $GCLOUD_TESTS_GOLANG_PROJECT_ID -k $GCLOUD_TESTS_GOLANG_KEYRING/cryptoKeys/key1
|
|
||||||
```
|
|
||||||
|
|
||||||
Once you've done the necessary setup, you can run the integration tests by running:
|
|
||||||
|
|
||||||
``` sh
|
|
||||||
$ go test -v cloud.google.com/go/...
|
|
||||||
```
|
|
||||||
|
|
||||||
## Contributor License Agreements
|
|
||||||
|
|
||||||
Before we can accept your pull requests you'll need to sign a Contributor
|
|
||||||
License Agreement (CLA):
|
|
||||||
|
|
||||||
- **If you are an individual writing original source code** and **you own the
|
|
||||||
intellectual property**, then you'll need to sign an [individual CLA][indvcla].
|
|
||||||
- **If you work for a company that wants to allow you to contribute your
|
|
||||||
work**, then you'll need to sign a [corporate CLA][corpcla].
|
|
||||||
|
|
||||||
You can sign these electronically (just scroll to the bottom). After that,
|
|
||||||
we'll be able to accept your pull requests.
|
|
||||||
|
|
||||||
## Contributor Code of Conduct
|
|
||||||
|
|
||||||
As contributors and maintainers of this project,
|
|
||||||
and in the interest of fostering an open and welcoming community,
|
|
||||||
we pledge to respect all people who contribute through reporting issues,
|
|
||||||
posting feature requests, updating documentation,
|
|
||||||
submitting pull requests or patches, and other activities.
|
|
||||||
|
|
||||||
We are committed to making participation in this project
|
|
||||||
a harassment-free experience for everyone,
|
|
||||||
regardless of level of experience, gender, gender identity and expression,
|
|
||||||
sexual orientation, disability, personal appearance,
|
|
||||||
body size, race, ethnicity, age, religion, or nationality.
|
|
||||||
|
|
||||||
Examples of unacceptable behavior by participants include:
|
|
||||||
|
|
||||||
* The use of sexualized language or imagery
|
|
||||||
* Personal attacks
|
|
||||||
* Trolling or insulting/derogatory comments
|
|
||||||
* Public or private harassment
|
|
||||||
* Publishing other's private information,
|
|
||||||
such as physical or electronic
|
|
||||||
addresses, without explicit permission
|
|
||||||
* Other unethical or unprofessional conduct.
|
|
||||||
|
|
||||||
Project maintainers have the right and responsibility to remove, edit, or reject
|
|
||||||
comments, commits, code, wiki edits, issues, and other contributions
|
|
||||||
that are not aligned to this Code of Conduct.
|
|
||||||
By adopting this Code of Conduct,
|
|
||||||
project maintainers commit themselves to fairly and consistently
|
|
||||||
applying these principles to every aspect of managing this project.
|
|
||||||
Project maintainers who do not follow or enforce the Code of Conduct
|
|
||||||
may be permanently removed from the project team.
|
|
||||||
|
|
||||||
This code of conduct applies both within project spaces and in public spaces
|
|
||||||
when an individual is representing the project or its community.
|
|
||||||
|
|
||||||
Instances of abusive, harassing, or otherwise unacceptable behavior
|
|
||||||
may be reported by opening an issue
|
|
||||||
or contacting one or more of the project maintainers.
|
|
||||||
|
|
||||||
This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org), version 1.2.0,
|
|
||||||
available at [http://contributor-covenant.org/version/1/2/0/](http://contributor-covenant.org/version/1/2/0/)
|
|
||||||
|
|
||||||
[gcloudcli]: https://developers.google.com/cloud/sdk/gcloud/
|
|
||||||
[indvcla]: https://developers.google.com/open-source/cla/individual
|
|
||||||
[corpcla]: https://developers.google.com/open-source/cla/corporate
|
|
503
vendor/cloud.google.com/go/README.md
generated
vendored
503
vendor/cloud.google.com/go/README.md
generated
vendored
|
@ -1,503 +0,0 @@
|
||||||
# Google Cloud Client Libraries for Go
|
|
||||||
|
|
||||||
[](https://godoc.org/cloud.google.com/go)
|
|
||||||
|
|
||||||
Go packages for [Google Cloud Platform](https://cloud.google.com) services.
|
|
||||||
|
|
||||||
``` go
|
|
||||||
import "cloud.google.com/go"
|
|
||||||
```
|
|
||||||
|
|
||||||
To install the packages on your system, *do not clone the repo*. Instead use
|
|
||||||
|
|
||||||
```
|
|
||||||
$ go get -u cloud.google.com/go/...
|
|
||||||
```
|
|
||||||
|
|
||||||
**NOTE:** Some of these packages are under development, and may occasionally
|
|
||||||
make backwards-incompatible changes.
|
|
||||||
|
|
||||||
**NOTE:** Github repo is a mirror of [https://code.googlesource.com/gocloud](https://code.googlesource.com/gocloud).
|
|
||||||
|
|
||||||
* [News](#news)
|
|
||||||
* [Supported APIs](#supported-apis)
|
|
||||||
* [Go Versions Supported](#go-versions-supported)
|
|
||||||
* [Authorization](#authorization)
|
|
||||||
* [Cloud Datastore](#cloud-datastore-)
|
|
||||||
* [Cloud Storage](#cloud-storage-)
|
|
||||||
* [Cloud Pub/Sub](#cloud-pub-sub-)
|
|
||||||
* [BigQuery](#cloud-bigquery-)
|
|
||||||
* [Stackdriver Logging](#stackdriver-logging-)
|
|
||||||
* [Cloud Spanner](#cloud-spanner-)
|
|
||||||
|
|
||||||
|
|
||||||
## News
|
|
||||||
|
|
||||||
_7 August 2018_
|
|
||||||
|
|
||||||
As of November 1, the code in the repo will no longer support Go versions 1.8
|
|
||||||
and earlier. No one other than AppEngine users should be on those old versions,
|
|
||||||
and AppEngine
|
|
||||||
[Standard](https://groups.google.com/forum/#!topic/google-appengine-go/e7oPNomd7ak)
|
|
||||||
and
|
|
||||||
[Flex](https://groups.google.com/forum/#!topic/google-appengine-go/wHsYtxvEbXI)
|
|
||||||
will stop supporting new deployments with those versions on that date.
|
|
||||||
|
|
||||||
|
|
||||||
Changes have been moved to [CHANGES](https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/CHANGES.md).
|
|
||||||
|
|
||||||
|
|
||||||
## Supported APIs
|
|
||||||
|
|
||||||
Google API | Status | Package
|
|
||||||
---------------------------------------------|--------------|-----------------------------------------------------------
|
|
||||||
[Asset][cloud-asset] | alpha | [`godoc.org/cloud.google.com/go/asset/v1beta`][cloud-asset-ref]
|
|
||||||
[BigQuery][cloud-bigquery] | stable | [`godoc.org/cloud.google.com/go/bigquery`][cloud-bigquery-ref]
|
|
||||||
[Bigtable][cloud-bigtable] | stable | [`godoc.org/cloud.google.com/go/bigtable`][cloud-bigtable-ref]
|
|
||||||
[Container][cloud-container] | stable | [`godoc.org/cloud.google.com/go/container/apiv1`][cloud-container-ref]
|
|
||||||
[ContainerAnalysis][cloud-containeranalysis] | beta | [`godoc.org/cloud.google.com/go/containeranalysis/apiv1beta1`][cloud-containeranalysis-ref]
|
|
||||||
[Dataproc][cloud-dataproc] | stable | [`godoc.org/cloud.google.com/go/dataproc/apiv1`][cloud-dataproc-ref]
|
|
||||||
[Datastore][cloud-datastore] | stable | [`godoc.org/cloud.google.com/go/datastore`][cloud-datastore-ref]
|
|
||||||
[Debugger][cloud-debugger] | alpha | [`godoc.org/cloud.google.com/go/debugger/apiv2`][cloud-debugger-ref]
|
|
||||||
[Dialogflow][cloud-dialogflow] | alpha | [`godoc.org/cloud.google.com/go/dialogflow/apiv2`][cloud-dialogflow-ref]
|
|
||||||
[Data Loss Prevention][cloud-dlp] | alpha | [`godoc.org/cloud.google.com/go/dlp/apiv2`][cloud-dlp-ref]
|
|
||||||
[ErrorReporting][cloud-errors] | alpha | [`godoc.org/cloud.google.com/go/errorreporting`][cloud-errors-ref]
|
|
||||||
[Firestore][cloud-firestore] | beta | [`godoc.org/cloud.google.com/go/firestore`][cloud-firestore-ref]
|
|
||||||
[IAM][cloud-iam] | stable | [`godoc.org/cloud.google.com/go/iam`][cloud-iam-ref]
|
|
||||||
[KMS][cloud-kms] | stable | [`godoc.org/cloud.google.com/go/kms`][cloud-kms-ref]
|
|
||||||
[Natural Language][cloud-natural-language] | stable | [`godoc.org/cloud.google.com/go/language/apiv1`][cloud-natural-language-ref]
|
|
||||||
[Logging][cloud-logging] | stable | [`godoc.org/cloud.google.com/go/logging`][cloud-logging-ref]
|
|
||||||
[Monitoring][cloud-monitoring] | alpha | [`godoc.org/cloud.google.com/go/monitoring/apiv3`][cloud-monitoring-ref]
|
|
||||||
[OS Login][cloud-oslogin] | alpha | [`cloud.google.com/compute/docs/oslogin/rest`][cloud-oslogin-ref]
|
|
||||||
[Pub/Sub][cloud-pubsub] | stable | [`godoc.org/cloud.google.com/go/pubsub`][cloud-pubsub-ref]
|
|
||||||
[Memorystore][cloud-memorystore] | stable | [`godoc.org/cloud.google.com/go/redis/apiv1beta1`][cloud-memorystore-ref]
|
|
||||||
[Spanner][cloud-spanner] | stable | [`godoc.org/cloud.google.com/go/spanner`][cloud-spanner-ref]
|
|
||||||
[Speech][cloud-speech] | stable | [`godoc.org/cloud.google.com/go/speech/apiv1`][cloud-speech-ref]
|
|
||||||
[Storage][cloud-storage] | stable | [`godoc.org/cloud.google.com/go/storage`][cloud-storage-ref]
|
|
||||||
[Text To Speech][cloud-texttospeech] | alpha | [`godoc.org/cloud.google.com/go/texttospeech/apiv1`][cloud-storage-ref]
|
|
||||||
[Trace][cloud-trace] | alpha | [`godoc.org/cloud.google.com/go/trace/apiv2`][cloud-translation-ref]
|
|
||||||
[Translation][cloud-translation] | stable | [`godoc.org/cloud.google.com/go/translate`][cloud-translation-ref]
|
|
||||||
[Video Intelligence][cloud-video] | alpha | [`godoc.org/cloud.google.com/go/videointelligence/apiv1beta1`][cloud-video-ref]
|
|
||||||
[Vision][cloud-vision] | stable | [`godoc.org/cloud.google.com/go/vision/apiv1`][cloud-vision-ref]
|
|
||||||
|
|
||||||
> **Alpha status**: the API is still being actively developed. As a
|
|
||||||
> result, it might change in backward-incompatible ways and is not recommended
|
|
||||||
> for production use.
|
|
||||||
>
|
|
||||||
> **Beta status**: the API is largely complete, but still has outstanding
|
|
||||||
> features and bugs to be addressed. There may be minor backwards-incompatible
|
|
||||||
> changes where necessary.
|
|
||||||
>
|
|
||||||
> **Stable status**: the API is mature and ready for production use. We will
|
|
||||||
> continue addressing bugs and feature requests.
|
|
||||||
|
|
||||||
Documentation and examples are available at
|
|
||||||
https://godoc.org/cloud.google.com/go
|
|
||||||
|
|
||||||
Visit or join the
|
|
||||||
[google-api-go-announce group](https://groups.google.com/forum/#!forum/google-api-go-announce)
|
|
||||||
for updates on these packages.
|
|
||||||
|
|
||||||
## Go Versions Supported
|
|
||||||
|
|
||||||
We support the two most recent major versions of Go. If Google App Engine uses
|
|
||||||
an older version, we support that as well. You can see which versions are
|
|
||||||
currently supported by looking at the lines following `go:` in
|
|
||||||
[`.travis.yml`](.travis.yml).
|
|
||||||
|
|
||||||
## Authorization
|
|
||||||
|
|
||||||
By default, each API will use [Google Application Default Credentials][default-creds]
|
|
||||||
for authorization credentials used in calling the API endpoints. This will allow your
|
|
||||||
application to run in many environments without requiring explicit configuration.
|
|
||||||
|
|
||||||
[snip]:# (auth)
|
|
||||||
```go
|
|
||||||
client, err := storage.NewClient(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
To authorize using a
|
|
||||||
[JSON key file](https://cloud.google.com/iam/docs/managing-service-account-keys),
|
|
||||||
pass
|
|
||||||
[`option.WithCredentialsFile`](https://godoc.org/google.golang.org/api/option#WithCredentialsFile)
|
|
||||||
to the `NewClient` function of the desired package. For example:
|
|
||||||
|
|
||||||
[snip]:# (auth-JSON)
|
|
||||||
```go
|
|
||||||
client, err := storage.NewClient(ctx, option.WithCredentialsFile("path/to/keyfile.json"))
|
|
||||||
```
|
|
||||||
|
|
||||||
You can exert more control over authorization by using the
|
|
||||||
[`golang.org/x/oauth2`](https://godoc.org/golang.org/x/oauth2) package to
|
|
||||||
create an `oauth2.TokenSource`. Then pass
|
|
||||||
[`option.WithTokenSource`](https://godoc.org/google.golang.org/api/option#WithTokenSource)
|
|
||||||
to the `NewClient` function:
|
|
||||||
[snip]:# (auth-ts)
|
|
||||||
```go
|
|
||||||
tokenSource := ...
|
|
||||||
client, err := storage.NewClient(ctx, option.WithTokenSource(tokenSource))
|
|
||||||
```
|
|
||||||
|
|
||||||
## Cloud Datastore [](https://godoc.org/cloud.google.com/go/datastore)
|
|
||||||
|
|
||||||
- [About Cloud Datastore][cloud-datastore]
|
|
||||||
- [Activating the API for your project][cloud-datastore-activation]
|
|
||||||
- [API documentation][cloud-datastore-docs]
|
|
||||||
- [Go client documentation](https://godoc.org/cloud.google.com/go/datastore)
|
|
||||||
- [Complete sample program](https://github.com/GoogleCloudPlatform/golang-samples/tree/master/datastore/tasks)
|
|
||||||
|
|
||||||
### Example Usage
|
|
||||||
|
|
||||||
First create a `datastore.Client` to use throughout your application:
|
|
||||||
|
|
||||||
[snip]:# (datastore-1)
|
|
||||||
```go
|
|
||||||
client, err := datastore.NewClient(ctx, "my-project-id")
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Then use that client to interact with the API:
|
|
||||||
|
|
||||||
[snip]:# (datastore-2)
|
|
||||||
```go
|
|
||||||
type Post struct {
|
|
||||||
Title string
|
|
||||||
Body string `datastore:",noindex"`
|
|
||||||
PublishedAt time.Time
|
|
||||||
}
|
|
||||||
keys := []*datastore.Key{
|
|
||||||
datastore.NameKey("Post", "post1", nil),
|
|
||||||
datastore.NameKey("Post", "post2", nil),
|
|
||||||
}
|
|
||||||
posts := []*Post{
|
|
||||||
{Title: "Post 1", Body: "...", PublishedAt: time.Now()},
|
|
||||||
{Title: "Post 2", Body: "...", PublishedAt: time.Now()},
|
|
||||||
}
|
|
||||||
if _, err := client.PutMulti(ctx, keys, posts); err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Cloud Storage [](https://godoc.org/cloud.google.com/go/storage)
|
|
||||||
|
|
||||||
- [About Cloud Storage][cloud-storage]
|
|
||||||
- [API documentation][cloud-storage-docs]
|
|
||||||
- [Go client documentation](https://godoc.org/cloud.google.com/go/storage)
|
|
||||||
- [Complete sample programs](https://github.com/GoogleCloudPlatform/golang-samples/tree/master/storage)
|
|
||||||
|
|
||||||
### Example Usage
|
|
||||||
|
|
||||||
First create a `storage.Client` to use throughout your application:
|
|
||||||
|
|
||||||
[snip]:# (storage-1)
|
|
||||||
```go
|
|
||||||
client, err := storage.NewClient(ctx)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
[snip]:# (storage-2)
|
|
||||||
```go
|
|
||||||
// Read the object1 from bucket.
|
|
||||||
rc, err := client.Bucket("bucket").Object("object1").NewReader(ctx)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
defer rc.Close()
|
|
||||||
body, err := ioutil.ReadAll(rc)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Cloud Pub/Sub [](https://godoc.org/cloud.google.com/go/pubsub)
|
|
||||||
|
|
||||||
- [About Cloud Pubsub][cloud-pubsub]
|
|
||||||
- [API documentation][cloud-pubsub-docs]
|
|
||||||
- [Go client documentation](https://godoc.org/cloud.google.com/go/pubsub)
|
|
||||||
- [Complete sample programs](https://github.com/GoogleCloudPlatform/golang-samples/tree/master/pubsub)
|
|
||||||
|
|
||||||
### Example Usage
|
|
||||||
|
|
||||||
First create a `pubsub.Client` to use throughout your application:
|
|
||||||
|
|
||||||
[snip]:# (pubsub-1)
|
|
||||||
```go
|
|
||||||
client, err := pubsub.NewClient(ctx, "project-id")
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Then use the client to publish and subscribe:
|
|
||||||
|
|
||||||
[snip]:# (pubsub-2)
|
|
||||||
```go
|
|
||||||
// Publish "hello world" on topic1.
|
|
||||||
topic := client.Topic("topic1")
|
|
||||||
res := topic.Publish(ctx, &pubsub.Message{
|
|
||||||
Data: []byte("hello world"),
|
|
||||||
})
|
|
||||||
// The publish happens asynchronously.
|
|
||||||
// Later, you can get the result from res:
|
|
||||||
...
|
|
||||||
msgID, err := res.Get(ctx)
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Use a callback to receive messages via subscription1.
|
|
||||||
sub := client.Subscription("subscription1")
|
|
||||||
err = sub.Receive(ctx, func(ctx context.Context, m *pubsub.Message) {
|
|
||||||
fmt.Println(m.Data)
|
|
||||||
m.Ack() // Acknowledge that we've consumed the message.
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
log.Println(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## BigQuery [](https://godoc.org/cloud.google.com/go/bigquery)
|
|
||||||
|
|
||||||
- [About BigQuery][cloud-bigquery]
|
|
||||||
- [API documentation][cloud-bigquery-docs]
|
|
||||||
- [Go client documentation][cloud-bigquery-ref]
|
|
||||||
- [Complete sample programs](https://github.com/GoogleCloudPlatform/golang-samples/tree/master/bigquery)
|
|
||||||
|
|
||||||
### Example Usage
|
|
||||||
|
|
||||||
First create a `bigquery.Client` to use throughout your application:
|
|
||||||
[snip]:# (bq-1)
|
|
||||||
```go
|
|
||||||
c, err := bigquery.NewClient(ctx, "my-project-ID")
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Then use that client to interact with the API:
|
|
||||||
[snip]:# (bq-2)
|
|
||||||
```go
|
|
||||||
// Construct a query.
|
|
||||||
q := c.Query(`
|
|
||||||
SELECT year, SUM(number)
|
|
||||||
FROM [bigquery-public-data:usa_names.usa_1910_2013]
|
|
||||||
WHERE name = "William"
|
|
||||||
GROUP BY year
|
|
||||||
ORDER BY year
|
|
||||||
`)
|
|
||||||
// Execute the query.
|
|
||||||
it, err := q.Read(ctx)
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// Iterate through the results.
|
|
||||||
for {
|
|
||||||
var values []bigquery.Value
|
|
||||||
err := it.Next(&values)
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
fmt.Println(values)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
## Stackdriver Logging [](https://godoc.org/cloud.google.com/go/logging)
|
|
||||||
|
|
||||||
- [About Stackdriver Logging][cloud-logging]
|
|
||||||
- [API documentation][cloud-logging-docs]
|
|
||||||
- [Go client documentation][cloud-logging-ref]
|
|
||||||
- [Complete sample programs](https://github.com/GoogleCloudPlatform/golang-samples/tree/master/logging)
|
|
||||||
|
|
||||||
### Example Usage
|
|
||||||
|
|
||||||
First create a `logging.Client` to use throughout your application:
|
|
||||||
[snip]:# (logging-1)
|
|
||||||
```go
|
|
||||||
ctx := context.Background()
|
|
||||||
client, err := logging.NewClient(ctx, "my-project")
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Usually, you'll want to add log entries to a buffer to be periodically flushed
|
|
||||||
(automatically and asynchronously) to the Stackdriver Logging service.
|
|
||||||
[snip]:# (logging-2)
|
|
||||||
```go
|
|
||||||
logger := client.Logger("my-log")
|
|
||||||
logger.Log(logging.Entry{Payload: "something happened!"})
|
|
||||||
```
|
|
||||||
|
|
||||||
Close your client before your program exits, to flush any buffered log entries.
|
|
||||||
[snip]:# (logging-3)
|
|
||||||
```go
|
|
||||||
err = client.Close()
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## Cloud Spanner [](https://godoc.org/cloud.google.com/go/spanner)
|
|
||||||
|
|
||||||
- [About Cloud Spanner][cloud-spanner]
|
|
||||||
- [API documentation][cloud-spanner-docs]
|
|
||||||
- [Go client documentation](https://godoc.org/cloud.google.com/go/spanner)
|
|
||||||
|
|
||||||
### Example Usage
|
|
||||||
|
|
||||||
First create a `spanner.Client` to use throughout your application:
|
|
||||||
|
|
||||||
[snip]:# (spanner-1)
|
|
||||||
```go
|
|
||||||
client, err := spanner.NewClient(ctx, "projects/P/instances/I/databases/D")
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
[snip]:# (spanner-2)
|
|
||||||
```go
|
|
||||||
// Simple Reads And Writes
|
|
||||||
_, err = client.Apply(ctx, []*spanner.Mutation{
|
|
||||||
spanner.Insert("Users",
|
|
||||||
[]string{"name", "email"},
|
|
||||||
[]interface{}{"alice", "a@example.com"})})
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
row, err := client.Single().ReadRow(ctx, "Users",
|
|
||||||
spanner.Key{"alice"}, []string{"email"})
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
## Contributing
|
|
||||||
|
|
||||||
Contributions are welcome. Please, see the
|
|
||||||
[CONTRIBUTING](https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/CONTRIBUTING.md)
|
|
||||||
document for details. We're using Gerrit for our code reviews. Please don't open pull
|
|
||||||
requests against this repo, new pull requests will be automatically closed.
|
|
||||||
|
|
||||||
Please note that this project is released with a Contributor Code of Conduct.
|
|
||||||
By participating in this project you agree to abide by its terms.
|
|
||||||
See [Contributor Code of Conduct](https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/CONTRIBUTING.md#contributor-code-of-conduct)
|
|
||||||
for more information.
|
|
||||||
|
|
||||||
[cloud-datastore]: https://cloud.google.com/datastore/
|
|
||||||
[cloud-datastore-ref]: https://godoc.org/cloud.google.com/go/datastore
|
|
||||||
[cloud-datastore-docs]: https://cloud.google.com/datastore/docs
|
|
||||||
[cloud-datastore-activation]: https://cloud.google.com/datastore/docs/activate
|
|
||||||
|
|
||||||
[cloud-firestore]: https://cloud.google.com/firestore/
|
|
||||||
[cloud-firestore-ref]: https://godoc.org/cloud.google.com/go/firestore
|
|
||||||
[cloud-firestore-docs]: https://cloud.google.com/firestore/docs
|
|
||||||
[cloud-firestore-activation]: https://cloud.google.com/firestore/docs/activate
|
|
||||||
|
|
||||||
[cloud-pubsub]: https://cloud.google.com/pubsub/
|
|
||||||
[cloud-pubsub-ref]: https://godoc.org/cloud.google.com/go/pubsub
|
|
||||||
[cloud-pubsub-docs]: https://cloud.google.com/pubsub/docs
|
|
||||||
|
|
||||||
[cloud-storage]: https://cloud.google.com/storage/
|
|
||||||
[cloud-storage-ref]: https://godoc.org/cloud.google.com/go/storage
|
|
||||||
[cloud-storage-docs]: https://cloud.google.com/storage/docs
|
|
||||||
[cloud-storage-create-bucket]: https://cloud.google.com/storage/docs/cloud-console#_creatingbuckets
|
|
||||||
|
|
||||||
[cloud-bigtable]: https://cloud.google.com/bigtable/
|
|
||||||
[cloud-bigtable-ref]: https://godoc.org/cloud.google.com/go/bigtable
|
|
||||||
|
|
||||||
[cloud-bigquery]: https://cloud.google.com/bigquery/
|
|
||||||
[cloud-bigquery-docs]: https://cloud.google.com/bigquery/docs
|
|
||||||
[cloud-bigquery-ref]: https://godoc.org/cloud.google.com/go/bigquery
|
|
||||||
|
|
||||||
[cloud-logging]: https://cloud.google.com/logging/
|
|
||||||
[cloud-logging-docs]: https://cloud.google.com/logging/docs
|
|
||||||
[cloud-logging-ref]: https://godoc.org/cloud.google.com/go/logging
|
|
||||||
|
|
||||||
[cloud-monitoring]: https://cloud.google.com/monitoring/
|
|
||||||
[cloud-monitoring-ref]: https://godoc.org/cloud.google.com/go/monitoring/apiv3
|
|
||||||
|
|
||||||
[cloud-vision]: https://cloud.google.com/vision
|
|
||||||
[cloud-vision-ref]: https://godoc.org/cloud.google.com/go/vision/apiv1
|
|
||||||
|
|
||||||
[cloud-language]: https://cloud.google.com/natural-language
|
|
||||||
[cloud-language-ref]: https://godoc.org/cloud.google.com/go/language/apiv1
|
|
||||||
|
|
||||||
[cloud-oslogin]: https://cloud.google.com/compute/docs/oslogin/rest
|
|
||||||
[cloud-oslogin-ref]: https://cloud.google.com/compute/docs/oslogin/rest
|
|
||||||
|
|
||||||
[cloud-speech]: https://cloud.google.com/speech
|
|
||||||
[cloud-speech-ref]: https://godoc.org/cloud.google.com/go/speech/apiv1
|
|
||||||
|
|
||||||
[cloud-spanner]: https://cloud.google.com/spanner/
|
|
||||||
[cloud-spanner-ref]: https://godoc.org/cloud.google.com/go/spanner
|
|
||||||
[cloud-spanner-docs]: https://cloud.google.com/spanner/docs
|
|
||||||
|
|
||||||
[cloud-translation]: https://cloud.google.com/translation
|
|
||||||
[cloud-translation-ref]: https://godoc.org/cloud.google.com/go/translation
|
|
||||||
|
|
||||||
[cloud-video]: https://cloud.google.com/video-intelligence/
|
|
||||||
[cloud-video-ref]: https://godoc.org/cloud.google.com/go/videointelligence/apiv1beta1
|
|
||||||
|
|
||||||
[cloud-errors]: https://cloud.google.com/error-reporting/
|
|
||||||
[cloud-errors-ref]: https://godoc.org/cloud.google.com/go/errorreporting
|
|
||||||
|
|
||||||
[cloud-container]: https://cloud.google.com/containers/
|
|
||||||
[cloud-container-ref]: https://godoc.org/cloud.google.com/go/container/apiv1
|
|
||||||
|
|
||||||
[cloud-debugger]: https://cloud.google.com/debugger/
|
|
||||||
[cloud-debugger-ref]: https://godoc.org/cloud.google.com/go/debugger/apiv2
|
|
||||||
|
|
||||||
[cloud-dlp]: https://cloud.google.com/dlp/
|
|
||||||
[cloud-dlp-ref]: https://godoc.org/cloud.google.com/go/dlp/apiv2beta1
|
|
||||||
|
|
||||||
[default-creds]: https://developers.google.com/identity/protocols/application-default-credentials
|
|
||||||
|
|
||||||
[cloud-dataproc]: https://cloud.google.com/dataproc/
|
|
||||||
[cloud-dataproc-docs]: https://cloud.google.com/dataproc/docs
|
|
||||||
[cloud-dataproc-ref]: https://godoc.org/cloud.google.com/go/dataproc/apiv1
|
|
||||||
|
|
||||||
[cloud-iam]: https://cloud.google.com/iam/
|
|
||||||
[cloud-iam-docs]: https://cloud.google.com/iam/docs
|
|
||||||
[cloud-iam-ref]: https://godoc.org/cloud.google.com/go/iam
|
|
||||||
|
|
||||||
[cloud-kms]: https://cloud.google.com/kms/
|
|
||||||
[cloud-kms-docs]: https://cloud.google.com/kms/docs
|
|
||||||
[cloud-kms-ref]: https://godoc.org/cloud.google.com/go/kms/apiv1
|
|
||||||
|
|
||||||
[cloud-natural-language]: https://cloud.google.com/natural-language/
|
|
||||||
[cloud-natural-language-docs]: https://cloud.google.com/natural-language/docs
|
|
||||||
[cloud-natural-language-ref]: https://godoc.org/cloud.google.com/go/language/apiv1
|
|
||||||
|
|
||||||
[cloud-memorystore]: https://cloud.google.com/memorystore/
|
|
||||||
[cloud-memorystore-docs]: https://cloud.google.com/memorystore/docs
|
|
||||||
[cloud-memorystore-ref]: https://godoc.org/cloud.google.com/go/redis/apiv1beta1
|
|
||||||
|
|
||||||
[cloud-texttospeech]: https://cloud.google.com/texttospeech/
|
|
||||||
[cloud-texttospeech-docs]: https://cloud.google.com/texttospeech/docs
|
|
||||||
[cloud-texttospeech-ref]: https://godoc.org/cloud.google.com/go/texttospeech/apiv1
|
|
||||||
|
|
||||||
[cloud-trace]: https://cloud.google.com/trace/
|
|
||||||
[cloud-trace-docs]: https://cloud.google.com/trace/docs
|
|
||||||
[cloud-trace-ref]: https://godoc.org/cloud.google.com/go/trace/apiv1
|
|
||||||
|
|
||||||
[cloud-dialogflow]: https://cloud.google.com/dialogflow-enterprise/
|
|
||||||
[cloud-dialogflow-docs]: https://cloud.google.com/dialogflow-enterprise/docs/
|
|
||||||
[cloud-dialogflow-ref]: https://godoc.org/cloud.google.com/go/dialogflow/apiv2
|
|
||||||
|
|
||||||
[cloud-containeranalysis]: https://cloud.google.com/container-registry/docs/container-analysis
|
|
||||||
[cloud-containeranalysis-docs]: https://cloud.google.com/container-analysis/api/reference/rest/
|
|
||||||
[cloud-containeranalysis-ref]: https://godoc.org/cloud.google.com/go/devtools/containeranalysis/apiv1beta1
|
|
||||||
|
|
||||||
[cloud-asset]: https://cloud.google.com/security-command-center/docs/how-to-asset-inventory
|
|
||||||
[cloud-asset-docs]: https://cloud.google.com/security-command-center/docs/how-to-asset-inventory
|
|
||||||
[cloud-asset-ref]: https://godoc.org/cloud.google.com/go/asset/apiv1
|
|
13
vendor/cloud.google.com/go/RELEASING.md
generated
vendored
13
vendor/cloud.google.com/go/RELEASING.md
generated
vendored
|
@ -1,13 +0,0 @@
|
||||||
# How to Release this Repo
|
|
||||||
|
|
||||||
1. Determine the current release version with `git tag -l`. It should look
|
|
||||||
something like `vX.Y.Z`. We'll call the current
|
|
||||||
version `$CV` and the new version `$NV`.
|
|
||||||
1. On master, run `git log $CV..` to list all the changes since the last
|
|
||||||
release.
|
|
||||||
1. Edit `CHANGES.md` to include a summary of the changes.
|
|
||||||
1. Mail the CL containing the `CHANGES.md` changes. When the CL is approved, submit it.
|
|
||||||
1. Without submitting any other CLs:
|
|
||||||
a. Switch to master.
|
|
||||||
b. Tag the repo with the next version: `git tag $NV`.
|
|
||||||
c. Push the tag: `git push origin $NV`.
|
|
79
vendor/cloud.google.com/go/cloud.go
generated
vendored
79
vendor/cloud.google.com/go/cloud.go
generated
vendored
|
@ -1,79 +0,0 @@
|
||||||
// Copyright 2014 Google LLC
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
|
|
||||||
/*
|
|
||||||
Package cloud is the root of the packages used to access Google Cloud
|
|
||||||
Services. See https://godoc.org/cloud.google.com/go for a full list
|
|
||||||
of sub-packages.
|
|
||||||
|
|
||||||
|
|
||||||
Client Options
|
|
||||||
|
|
||||||
All clients in sub-packages are configurable via client options. These options are
|
|
||||||
described here: https://godoc.org/google.golang.org/api/option.
|
|
||||||
|
|
||||||
|
|
||||||
Authentication and Authorization
|
|
||||||
|
|
||||||
All the clients in sub-packages support authentication via Google Application Default
|
|
||||||
Credentials (see https://cloud.google.com/docs/authentication/production), or
|
|
||||||
by providing a JSON key file for a Service Account. See the authentication examples
|
|
||||||
in this package for details.
|
|
||||||
|
|
||||||
|
|
||||||
Timeouts and Cancellation
|
|
||||||
|
|
||||||
By default, all requests in sub-packages will run indefinitely, retrying on transient
|
|
||||||
errors when correctness allows. To set timeouts or arrange for cancellation, use
|
|
||||||
contexts. See the examples for details.
|
|
||||||
|
|
||||||
Do not attempt to control the initial connection (dialing) of a service by setting a
|
|
||||||
timeout on the context passed to NewClient. Dialing is non-blocking, so timeouts
|
|
||||||
would be ineffective and would only interfere with credential refreshing, which uses
|
|
||||||
the same context.
|
|
||||||
|
|
||||||
|
|
||||||
Connection Pooling
|
|
||||||
|
|
||||||
Connection pooling differs in clients based on their transport. Cloud
|
|
||||||
clients either rely on HTTP or gRPC transports to communicate
|
|
||||||
with Google Cloud.
|
|
||||||
|
|
||||||
Cloud clients that use HTTP (bigquery, compute, storage, and translate) rely on the
|
|
||||||
underlying HTTP transport to cache connections for later re-use. These are cached to
|
|
||||||
the default http.MaxIdleConns and http.MaxIdleConnsPerHost settings in
|
|
||||||
http.DefaultTransport.
|
|
||||||
|
|
||||||
For gRPC clients (all others in this repo), connection pooling is configurable. Users
|
|
||||||
of cloud client libraries may specify option.WithGRPCConnectionPool(n) as a client
|
|
||||||
option to NewClient calls. This configures the underlying gRPC connections to be
|
|
||||||
pooled and addressed in a round robin fashion.
|
|
||||||
|
|
||||||
|
|
||||||
Using the Libraries with Docker
|
|
||||||
|
|
||||||
Minimal docker images like Alpine lack CA certificates. This causes RPCs to appear to
|
|
||||||
hang, because gRPC retries indefinitely. See https://github.com/GoogleCloudPlatform/google-cloud-go/issues/928
|
|
||||||
for more information.
|
|
||||||
|
|
||||||
|
|
||||||
Debugging
|
|
||||||
|
|
||||||
To see gRPC logs, set the environment variable GRPC_GO_LOG_SEVERITY_LEVEL. See
|
|
||||||
https://godoc.org/google.golang.org/grpc/grpclog for more information.
|
|
||||||
|
|
||||||
For HTTP logging, set the GODEBUG environment variable to "http2debug=1" or "http2debug=2".
|
|
||||||
|
|
||||||
*/
|
|
||||||
package cloud // import "cloud.google.com/go"
|
|
17
vendor/cloud.google.com/go/issue_template.md
generated
vendored
17
vendor/cloud.google.com/go/issue_template.md
generated
vendored
|
@ -1,17 +0,0 @@
|
||||||
(delete this for feature requests)
|
|
||||||
|
|
||||||
## Client
|
|
||||||
|
|
||||||
e.g. PubSub
|
|
||||||
|
|
||||||
## Describe Your Environment
|
|
||||||
|
|
||||||
e.g. Alpine Docker on GKE
|
|
||||||
|
|
||||||
## Expected Behavior
|
|
||||||
|
|
||||||
e.g. Messages arrive really fast.
|
|
||||||
|
|
||||||
## Actual Behavior
|
|
||||||
|
|
||||||
e.g. Messages arrive really slowly.
|
|
BIN
vendor/cloud.google.com/go/keys.tar.enc
generated
vendored
BIN
vendor/cloud.google.com/go/keys.tar.enc
generated
vendored
Binary file not shown.
698
vendor/cloud.google.com/go/old-news.md
generated
vendored
698
vendor/cloud.google.com/go/old-news.md
generated
vendored
|
@ -1,698 +0,0 @@
|
||||||
_February 26, 2018_
|
|
||||||
|
|
||||||
*v0.19.0*
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Support customer-managed encryption keys.
|
|
||||||
|
|
||||||
- bigtable:
|
|
||||||
- Improved emulator support.
|
|
||||||
- Support GetCluster.
|
|
||||||
|
|
||||||
- datastore:
|
|
||||||
- Add general mutations.
|
|
||||||
- Support pointer struct fields.
|
|
||||||
- Support transaction options.
|
|
||||||
|
|
||||||
- firestore:
|
|
||||||
- Add Transaction.GetAll.
|
|
||||||
- Support document cursors.
|
|
||||||
|
|
||||||
- logging:
|
|
||||||
- Support concurrent RPCs to the service.
|
|
||||||
- Support per-entry resources.
|
|
||||||
|
|
||||||
- profiler:
|
|
||||||
- Add config options to disable heap and thread profiling.
|
|
||||||
- Read the project ID from $GOOGLE_CLOUD_PROJECT when it's set.
|
|
||||||
|
|
||||||
- pubsub:
|
|
||||||
- BEHAVIOR CHANGE: Release flow control after ack/nack (instead of after the
|
|
||||||
callback returns).
|
|
||||||
- Add SubscriptionInProject.
|
|
||||||
- Add OpenCensus instrumentation for streaming pull.
|
|
||||||
|
|
||||||
- storage:
|
|
||||||
- Support CORS.
|
|
||||||
|
|
||||||
|
|
||||||
_January 18, 2018_
|
|
||||||
|
|
||||||
*v0.18.0*
|
|
||||||
|
|
||||||
- bigquery:
|
|
||||||
- Marked stable.
|
|
||||||
- Schema inference of nullable fields supported.
|
|
||||||
- Added TimePartitioning to QueryConfig.
|
|
||||||
|
|
||||||
- firestore: Data provided to DocumentRef.Set with a Merge option can contain
|
|
||||||
Delete sentinels.
|
|
||||||
|
|
||||||
- logging: Clients can accept parent resources other than projects.
|
|
||||||
|
|
||||||
- pubsub:
|
|
||||||
- pubsub/pstest: A lighweight fake for pubsub. Experimental; feedback welcome.
|
|
||||||
- Support updating more subscription metadata: AckDeadline,
|
|
||||||
RetainAckedMessages and RetentionDuration.
|
|
||||||
|
|
||||||
- oslogin/apiv1beta: New client for the Cloud OS Login API.
|
|
||||||
|
|
||||||
- rpcreplay: A package for recording and replaying gRPC traffic.
|
|
||||||
|
|
||||||
- spanner:
|
|
||||||
- Add a ReadWithOptions that supports a row limit, as well as an index.
|
|
||||||
- Support query plan and execution statistics.
|
|
||||||
- Added [OpenCensus](http://opencensus.io) support.
|
|
||||||
|
|
||||||
- storage: Clarify checksum validation for gzipped files (it is not validated
|
|
||||||
when the file is served uncompressed).
|
|
||||||
|
|
||||||
|
|
||||||
_December 11, 2017_
|
|
||||||
|
|
||||||
*v0.17.0*
|
|
||||||
|
|
||||||
- firestore BREAKING CHANGES:
|
|
||||||
- Remove UpdateMap and UpdateStruct; rename UpdatePaths to Update.
|
|
||||||
Change
|
|
||||||
`docref.UpdateMap(ctx, map[string]interface{}{"a.b", 1})`
|
|
||||||
to
|
|
||||||
`docref.Update(ctx, []firestore.Update{{Path: "a.b", Value: 1}})`
|
|
||||||
|
|
||||||
Change
|
|
||||||
`docref.UpdateStruct(ctx, []string{"Field"}, aStruct)`
|
|
||||||
to
|
|
||||||
`docref.Update(ctx, []firestore.Update{{Path: "Field", Value: aStruct.Field}})`
|
|
||||||
- Rename MergePaths to Merge; require args to be FieldPaths
|
|
||||||
- A value stored as an integer can be read into a floating-point field, and vice versa.
|
|
||||||
- bigtable/cmd/cbt:
|
|
||||||
- Support deleting a column.
|
|
||||||
- Add regex option for row read.
|
|
||||||
- spanner: Mark stable.
|
|
||||||
- storage:
|
|
||||||
- Add Reader.ContentEncoding method.
|
|
||||||
- Fix handling of SignedURL headers.
|
|
||||||
- bigquery:
|
|
||||||
- If Uploader.Put is called with no rows, it returns nil without making a
|
|
||||||
call.
|
|
||||||
- Schema inference supports the "nullable" option in struct tags for
|
|
||||||
non-required fields.
|
|
||||||
- TimePartitioning supports "Field".
|
|
||||||
|
|
||||||
|
|
||||||
_October 30, 2017_
|
|
||||||
|
|
||||||
*v0.16.0*
|
|
||||||
|
|
||||||
- Other bigquery changes:
|
|
||||||
- `JobIterator.Next` returns `*Job`; removed `JobInfo` (BREAKING CHANGE).
|
|
||||||
- UseStandardSQL is deprecated; set UseLegacySQL to true if you need
|
|
||||||
Legacy SQL.
|
|
||||||
- Uploader.Put will generate a random insert ID if you do not provide one.
|
|
||||||
- Support time partitioning for load jobs.
|
|
||||||
- Support dry-run queries.
|
|
||||||
- A `Job` remembers its last retrieved status.
|
|
||||||
- Support retrieving job configuration.
|
|
||||||
- Support labels for jobs and tables.
|
|
||||||
- Support dataset access lists.
|
|
||||||
- Improve support for external data sources, including data from Bigtable and
|
|
||||||
Google Sheets, and tables with external data.
|
|
||||||
- Support updating a table's view configuration.
|
|
||||||
- Fix uploading civil times with nanoseconds.
|
|
||||||
|
|
||||||
- storage:
|
|
||||||
- Support PubSub notifications.
|
|
||||||
- Support Requester Pays buckets.
|
|
||||||
|
|
||||||
- profiler: Support goroutine and mutex profile types.
|
|
||||||
|
|
||||||
|
|
||||||
_October 3, 2017_
|
|
||||||
|
|
||||||
*v0.15.0*
|
|
||||||
|
|
||||||
- firestore: beta release. See the
|
|
||||||
[announcement](https://firebase.googleblog.com/2017/10/introducing-cloud-firestore.html).
|
|
||||||
|
|
||||||
- errorreporting: The existing package has been redesigned.
|
|
||||||
|
|
||||||
- errors: This package has been removed. Use errorreporting.
|
|
||||||
|
|
||||||
|
|
||||||
_September 28, 2017_
|
|
||||||
|
|
||||||
*v0.14.0*
|
|
||||||
|
|
||||||
- bigquery BREAKING CHANGES:
|
|
||||||
- Standard SQL is the default for queries and views.
|
|
||||||
- `Table.Create` takes `TableMetadata` as a second argument, instead of
|
|
||||||
options.
|
|
||||||
- `Dataset.Create` takes `DatasetMetadata` as a second argument.
|
|
||||||
- `DatasetMetadata` field `ID` renamed to `FullID`
|
|
||||||
- `TableMetadata` field `ID` renamed to `FullID`
|
|
||||||
|
|
||||||
- Other bigquery changes:
|
|
||||||
- The client will append a random suffix to a provided job ID if you set
|
|
||||||
`AddJobIDSuffix` to true in a job config.
|
|
||||||
- Listing jobs is supported.
|
|
||||||
- Better retry logic.
|
|
||||||
|
|
||||||
- vision, language, speech: clients are now stable
|
|
||||||
|
|
||||||
- monitoring: client is now beta
|
|
||||||
|
|
||||||
- profiler:
|
|
||||||
- Rename InstanceName to Instance, ZoneName to Zone
|
|
||||||
- Auto-detect service name and version on AppEngine.
|
|
||||||
|
|
||||||
_September 8, 2017_
|
|
||||||
|
|
||||||
*v0.13.0*
|
|
||||||
|
|
||||||
- bigquery: UseLegacySQL options for CreateTable and QueryConfig. Use these
|
|
||||||
options to continue using Legacy SQL after the client switches its default
|
|
||||||
to Standard SQL.
|
|
||||||
|
|
||||||
- bigquery: Support for updating dataset labels.
|
|
||||||
|
|
||||||
- bigquery: Set DatasetIterator.ProjectID to list datasets in a project other
|
|
||||||
than the client's. DatasetsInProject is no longer needed and is deprecated.
|
|
||||||
|
|
||||||
- bigtable: Fail ListInstances when any zones fail.
|
|
||||||
|
|
||||||
- spanner: support decoding of slices of basic types (e.g. []string, []int64,
|
|
||||||
etc.)
|
|
||||||
|
|
||||||
- logging/logadmin: UpdateSink no longer creates a sink if it is missing
|
|
||||||
(actually a change to the underlying service, not the client)
|
|
||||||
|
|
||||||
- profiler: Service and ServiceVersion replace Target in Config.
|
|
||||||
|
|
||||||
_August 22, 2017_
|
|
||||||
|
|
||||||
*v0.12.0*
|
|
||||||
|
|
||||||
- pubsub: Subscription.Receive now uses streaming pull.
|
|
||||||
|
|
||||||
- pubsub: add Client.TopicInProject to access topics in a different project
|
|
||||||
than the client.
|
|
||||||
|
|
||||||
- errors: renamed errorreporting. The errors package will be removed shortly.
|
|
||||||
|
|
||||||
- datastore: improved retry behavior.
|
|
||||||
|
|
||||||
- bigquery: support updates to dataset metadata, with etags.
|
|
||||||
|
|
||||||
- bigquery: add etag support to Table.Update (BREAKING: etag argument added).
|
|
||||||
|
|
||||||
- bigquery: generate all job IDs on the client.
|
|
||||||
|
|
||||||
- storage: support bucket lifecycle configurations.
|
|
||||||
|
|
||||||
|
|
||||||
_July 31, 2017_
|
|
||||||
|
|
||||||
*v0.11.0*
|
|
||||||
|
|
||||||
- Clients for spanner, pubsub and video are now in beta.
|
|
||||||
|
|
||||||
- New client for DLP.
|
|
||||||
|
|
||||||
- spanner: performance and testing improvements.
|
|
||||||
|
|
||||||
- storage: requester-pays buckets are supported.
|
|
||||||
|
|
||||||
- storage, profiler, bigtable, bigquery: bug fixes and other minor improvements.
|
|
||||||
|
|
||||||
- pubsub: bug fixes and other minor improvements
|
|
||||||
|
|
||||||
_June 17, 2017_
|
|
||||||
|
|
||||||
|
|
||||||
*v0.10.0*
|
|
||||||
|
|
||||||
- pubsub: Subscription.ModifyPushConfig replaced with Subscription.Update.
|
|
||||||
|
|
||||||
- pubsub: Subscription.Receive now runs concurrently for higher throughput.
|
|
||||||
|
|
||||||
- vision: cloud.google.com/go/vision is deprecated. Use
|
|
||||||
cloud.google.com/go/vision/apiv1 instead.
|
|
||||||
|
|
||||||
- translation: now stable.
|
|
||||||
|
|
||||||
- trace: several changes to the surface. See the link below.
|
|
||||||
|
|
||||||
[Code changes required from v0.9.0.](https://github.com/GoogleCloudPlatform/google-cloud-go/blob/master/MIGRATION.md)
|
|
||||||
|
|
||||||
|
|
||||||
_March 17, 2017_
|
|
||||||
|
|
||||||
Breaking Pubsub changes.
|
|
||||||
* Publish is now asynchronous
|
|
||||||
([announcement](https://groups.google.com/d/topic/google-api-go-announce/aaqRDIQ3rvU/discussion)).
|
|
||||||
* Subscription.Pull replaced by Subscription.Receive, which takes a callback ([announcement](https://groups.google.com/d/topic/google-api-go-announce/8pt6oetAdKc/discussion)).
|
|
||||||
* Message.Done replaced with Message.Ack and Message.Nack.
|
|
||||||
|
|
||||||
_February 14, 2017_
|
|
||||||
|
|
||||||
Release of a client library for Spanner. See
|
|
||||||
the
|
|
||||||
[blog post](https://cloudplatform.googleblog.com/2017/02/introducing-Cloud-Spanner-a-global-database-service-for-mission-critical-applications.html).
|
|
||||||
|
|
||||||
Note that although the Spanner service is beta, the Go client library is alpha.
|
|
||||||
|
|
||||||
_December 12, 2016_
|
|
||||||
|
|
||||||
Beta release of BigQuery, DataStore, Logging and Storage. See the
|
|
||||||
[blog post](https://cloudplatform.googleblog.com/2016/12/announcing-new-google-cloud-client.html).
|
|
||||||
|
|
||||||
Also, BigQuery now supports structs. Read a row directly into a struct with
|
|
||||||
`RowIterator.Next`, and upload a row directly from a struct with `Uploader.Put`.
|
|
||||||
You can also use field tags. See the [package documentation][cloud-bigquery-ref]
|
|
||||||
for details.
|
|
||||||
|
|
||||||
_December 5, 2016_
|
|
||||||
|
|
||||||
More changes to BigQuery:
|
|
||||||
|
|
||||||
* The `ValueList` type was removed. It is no longer necessary. Instead of
|
|
||||||
```go
|
|
||||||
var v ValueList
|
|
||||||
... it.Next(&v) ..
|
|
||||||
```
|
|
||||||
use
|
|
||||||
|
|
||||||
```go
|
|
||||||
var v []Value
|
|
||||||
... it.Next(&v) ...
|
|
||||||
```
|
|
||||||
|
|
||||||
* Previously, repeatedly calling `RowIterator.Next` on the same `[]Value` or
|
|
||||||
`ValueList` would append to the slice. Now each call resets the size to zero first.
|
|
||||||
|
|
||||||
* Schema inference will infer the SQL type BYTES for a struct field of
|
|
||||||
type []byte. Previously it inferred STRING.
|
|
||||||
|
|
||||||
* The types `uint`, `uint64` and `uintptr` are no longer supported in schema
|
|
||||||
inference. BigQuery's integer type is INT64, and those types may hold values
|
|
||||||
that are not correctly represented in a 64-bit signed integer.
|
|
||||||
|
|
||||||
* The SQL types DATE, TIME and DATETIME are now supported. They correspond to
|
|
||||||
the `Date`, `Time` and `DateTime` types in the new `cloud.google.com/go/civil`
|
|
||||||
package.
|
|
||||||
|
|
||||||
_November 17, 2016_
|
|
||||||
|
|
||||||
Change to BigQuery: values from INTEGER columns will now be returned as int64,
|
|
||||||
not int. This will avoid errors arising from large values on 32-bit systems.
|
|
||||||
|
|
||||||
_November 8, 2016_
|
|
||||||
|
|
||||||
New datastore feature: datastore now encodes your nested Go structs as Entity values,
|
|
||||||
instead of a flattened list of the embedded struct's fields.
|
|
||||||
This means that you may now have twice-nested slices, eg.
|
|
||||||
```go
|
|
||||||
type State struct {
|
|
||||||
Cities []struct{
|
|
||||||
Populations []int
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
See [the announcement](https://groups.google.com/forum/#!topic/google-api-go-announce/79jtrdeuJAg) for
|
|
||||||
more details.
|
|
||||||
|
|
||||||
_November 8, 2016_
|
|
||||||
|
|
||||||
Breaking changes to datastore: contexts no longer hold namespaces; instead you
|
|
||||||
must set a key's namespace explicitly. Also, key functions have been changed
|
|
||||||
and renamed.
|
|
||||||
|
|
||||||
* The WithNamespace function has been removed. To specify a namespace in a Query, use the Query.Namespace method:
|
|
||||||
```go
|
|
||||||
q := datastore.NewQuery("Kind").Namespace("ns")
|
|
||||||
```
|
|
||||||
|
|
||||||
* All the fields of Key are exported. That means you can construct any Key with a struct literal:
|
|
||||||
```go
|
|
||||||
k := &Key{Kind: "Kind", ID: 37, Namespace: "ns"}
|
|
||||||
```
|
|
||||||
|
|
||||||
* As a result of the above, the Key methods Kind, ID, d.Name, Parent, SetParent and Namespace have been removed.
|
|
||||||
|
|
||||||
* `NewIncompleteKey` has been removed, replaced by `IncompleteKey`. Replace
|
|
||||||
```go
|
|
||||||
NewIncompleteKey(ctx, kind, parent)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
IncompleteKey(kind, parent)
|
|
||||||
```
|
|
||||||
and if you do use namespaces, make sure you set the namespace on the returned key.
|
|
||||||
|
|
||||||
* `NewKey` has been removed, replaced by `NameKey` and `IDKey`. Replace
|
|
||||||
```go
|
|
||||||
NewKey(ctx, kind, name, 0, parent)
|
|
||||||
NewKey(ctx, kind, "", id, parent)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
NameKey(kind, name, parent)
|
|
||||||
IDKey(kind, id, parent)
|
|
||||||
```
|
|
||||||
and if you do use namespaces, make sure you set the namespace on the returned key.
|
|
||||||
|
|
||||||
* The `Done` variable has been removed. Replace `datastore.Done` with `iterator.Done`, from the package `google.golang.org/api/iterator`.
|
|
||||||
|
|
||||||
* The `Client.Close` method will have a return type of error. It will return the result of closing the underlying gRPC connection.
|
|
||||||
|
|
||||||
See [the announcement](https://groups.google.com/forum/#!topic/google-api-go-announce/hqXtM_4Ix-0) for
|
|
||||||
more details.
|
|
||||||
|
|
||||||
_October 27, 2016_
|
|
||||||
|
|
||||||
Breaking change to bigquery: `NewGCSReference` is now a function,
|
|
||||||
not a method on `Client`.
|
|
||||||
|
|
||||||
New bigquery feature: `Table.LoaderFrom` now accepts a `ReaderSource`, enabling
|
|
||||||
loading data into a table from a file or any `io.Reader`.
|
|
||||||
|
|
||||||
_October 21, 2016_
|
|
||||||
|
|
||||||
Breaking change to pubsub: removed `pubsub.Done`.
|
|
||||||
|
|
||||||
Use `iterator.Done` instead, where `iterator` is the package
|
|
||||||
`google.golang.org/api/iterator`.
|
|
||||||
|
|
||||||
_October 19, 2016_
|
|
||||||
|
|
||||||
Breaking changes to cloud.google.com/go/bigquery:
|
|
||||||
|
|
||||||
* Client.Table and Client.OpenTable have been removed.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.OpenTable("project", "dataset", "table")
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
client.DatasetInProject("project", "dataset").Table("table")
|
|
||||||
```
|
|
||||||
|
|
||||||
* Client.CreateTable has been removed.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.CreateTable(ctx, "project", "dataset", "table")
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
client.DatasetInProject("project", "dataset").Table("table").Create(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* Dataset.ListTables have been replaced with Dataset.Tables.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
tables, err := ds.ListTables(ctx)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
it := ds.Tables(ctx)
|
|
||||||
for {
|
|
||||||
table, err := it.Next()
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// TODO: use table.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
* Client.Read has been replaced with Job.Read, Table.Read and Query.Read.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
it, err := client.Read(ctx, job)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
it, err := job.Read(ctx)
|
|
||||||
```
|
|
||||||
and similarly for reading from tables or queries.
|
|
||||||
|
|
||||||
* The iterator returned from the Read methods is now named RowIterator. Its
|
|
||||||
behavior is closer to the other iterators in these libraries. It no longer
|
|
||||||
supports the Schema method; see the next item.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
for it.Next(ctx) {
|
|
||||||
var vals ValueList
|
|
||||||
if err := it.Get(&vals); err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// TODO: use vals.
|
|
||||||
}
|
|
||||||
if err := it.Err(); err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```
|
|
||||||
for {
|
|
||||||
var vals ValueList
|
|
||||||
err := it.Next(&vals)
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil {
|
|
||||||
// TODO: Handle error.
|
|
||||||
}
|
|
||||||
// TODO: use vals.
|
|
||||||
}
|
|
||||||
```
|
|
||||||
Instead of the `RecordsPerRequest(n)` option, write
|
|
||||||
```go
|
|
||||||
it.PageInfo().MaxSize = n
|
|
||||||
```
|
|
||||||
Instead of the `StartIndex(i)` option, write
|
|
||||||
```go
|
|
||||||
it.StartIndex = i
|
|
||||||
```
|
|
||||||
|
|
||||||
* ValueLoader.Load now takes a Schema in addition to a slice of Values.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
func (vl *myValueLoader) Load(v []bigquery.Value)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
func (vl *myValueLoader) Load(v []bigquery.Value, s bigquery.Schema)
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
* Table.Patch is replace by Table.Update.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
p := table.Patch()
|
|
||||||
p.Description("new description")
|
|
||||||
metadata, err := p.Apply(ctx)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
metadata, err := table.Update(ctx, bigquery.TableMetadataToUpdate{
|
|
||||||
Description: "new description",
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
* Client.Copy is replaced by separate methods for each of its four functions.
|
|
||||||
All options have been replaced by struct fields.
|
|
||||||
|
|
||||||
* To load data from Google Cloud Storage into a table, use Table.LoaderFrom.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, table, gcsRef)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
table.LoaderFrom(gcsRef).Run(ctx)
|
|
||||||
```
|
|
||||||
Instead of passing options to Copy, set fields on the Loader:
|
|
||||||
```go
|
|
||||||
loader := table.LoaderFrom(gcsRef)
|
|
||||||
loader.WriteDisposition = bigquery.WriteTruncate
|
|
||||||
```
|
|
||||||
|
|
||||||
* To extract data from a table into Google Cloud Storage, use
|
|
||||||
Table.ExtractorTo. Set fields on the returned Extractor instead of
|
|
||||||
passing options.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, gcsRef, table)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
table.ExtractorTo(gcsRef).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* To copy data into a table from one or more other tables, use
|
|
||||||
Table.CopierFrom. Set fields on the returned Copier instead of passing options.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, dstTable, srcTable)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
dst.Table.CopierFrom(srcTable).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* To start a query job, create a Query and call its Run method. Set fields
|
|
||||||
on the query instead of passing options.
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
client.Copy(ctx, table, query)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
query.Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* Table.NewUploader has been renamed to Table.Uploader. Instead of options,
|
|
||||||
configure an Uploader by setting its fields.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
u := table.NewUploader(bigquery.UploadIgnoreUnknownValues())
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
u := table.NewUploader(bigquery.UploadIgnoreUnknownValues())
|
|
||||||
u.IgnoreUnknownValues = true
|
|
||||||
```
|
|
||||||
|
|
||||||
_October 10, 2016_
|
|
||||||
|
|
||||||
Breaking changes to cloud.google.com/go/storage:
|
|
||||||
|
|
||||||
* AdminClient replaced by methods on Client.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
adminClient.CreateBucket(ctx, bucketName, attrs)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
client.Bucket(bucketName).Create(ctx, projectID, attrs)
|
|
||||||
```
|
|
||||||
|
|
||||||
* BucketHandle.List replaced by BucketHandle.Objects.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
for query != nil {
|
|
||||||
objs, err := bucket.List(d.ctx, query)
|
|
||||||
if err != nil { ... }
|
|
||||||
query = objs.Next
|
|
||||||
for _, obj := range objs.Results {
|
|
||||||
fmt.Println(obj)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
iter := bucket.Objects(d.ctx, query)
|
|
||||||
for {
|
|
||||||
obj, err := iter.Next()
|
|
||||||
if err == iterator.Done {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
if err != nil { ... }
|
|
||||||
fmt.Println(obj)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
(The `iterator` package is at `google.golang.org/api/iterator`.)
|
|
||||||
|
|
||||||
Replace `Query.Cursor` with `ObjectIterator.PageInfo().Token`.
|
|
||||||
|
|
||||||
Replace `Query.MaxResults` with `ObjectIterator.PageInfo().MaxSize`.
|
|
||||||
|
|
||||||
|
|
||||||
* ObjectHandle.CopyTo replaced by ObjectHandle.CopierFrom.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := src.CopyTo(ctx, dst, nil)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
attrs, err := dst.CopierFrom(src).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := src.CopyTo(ctx, dst, &storage.ObjectAttrs{ContextType: "text/html"})
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
c := dst.CopierFrom(src)
|
|
||||||
c.ContextType = "text/html"
|
|
||||||
attrs, err := c.Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* ObjectHandle.ComposeFrom replaced by ObjectHandle.ComposerFrom.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := dst.ComposeFrom(ctx, []*storage.ObjectHandle{src1, src2}, nil)
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
attrs, err := dst.ComposerFrom(src1, src2).Run(ctx)
|
|
||||||
```
|
|
||||||
|
|
||||||
* ObjectHandle.Update's ObjectAttrs argument replaced by ObjectAttrsToUpdate.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
attrs, err := obj.Update(ctx, &storage.ObjectAttrs{ContextType: "text/html"})
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
attrs, err := obj.Update(ctx, storage.ObjectAttrsToUpdate{ContextType: "text/html"})
|
|
||||||
```
|
|
||||||
|
|
||||||
* ObjectHandle.WithConditions replaced by ObjectHandle.If.
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
obj.WithConditions(storage.Generation(gen), storage.IfMetaGenerationMatch(mgen))
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
obj.Generation(gen).If(storage.Conditions{MetagenerationMatch: mgen})
|
|
||||||
```
|
|
||||||
|
|
||||||
Replace
|
|
||||||
```go
|
|
||||||
obj.WithConditions(storage.IfGenerationMatch(0))
|
|
||||||
```
|
|
||||||
with
|
|
||||||
```go
|
|
||||||
obj.If(storage.Conditions{DoesNotExist: true})
|
|
||||||
```
|
|
||||||
|
|
||||||
* `storage.Done` replaced by `iterator.Done` (from package `google.golang.org/api/iterator`).
|
|
||||||
|
|
||||||
_October 6, 2016_
|
|
||||||
|
|
||||||
Package preview/logging deleted. Use logging instead.
|
|
||||||
|
|
||||||
_September 27, 2016_
|
|
||||||
|
|
||||||
Logging client replaced with preview version (see below).
|
|
||||||
|
|
||||||
_September 8, 2016_
|
|
||||||
|
|
||||||
* New clients for some of Google's Machine Learning APIs: Vision, Speech, and
|
|
||||||
Natural Language.
|
|
||||||
|
|
||||||
* Preview version of a new [Stackdriver Logging][cloud-logging] client in
|
|
||||||
[`cloud.google.com/go/preview/logging`](https://godoc.org/cloud.google.com/go/preview/logging).
|
|
||||||
This client uses gRPC as its transport layer, and supports log reading, sinks
|
|
||||||
and metrics. It will replace the current client at `cloud.google.com/go/logging` shortly.
|
|
||||||
|
|
77
vendor/cloud.google.com/go/regen-gapic.sh
generated
vendored
77
vendor/cloud.google.com/go/regen-gapic.sh
generated
vendored
|
@ -1,77 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# This script generates all GAPIC clients in this repo.
|
|
||||||
# One-time setup:
|
|
||||||
# cd path/to/googleapis # https://github.com/googleapis/googleapis
|
|
||||||
# virtualenv env
|
|
||||||
# . env/bin/activate
|
|
||||||
# pip install googleapis-artman
|
|
||||||
# deactivate
|
|
||||||
#
|
|
||||||
# Regenerate:
|
|
||||||
# cd path/to/googleapis
|
|
||||||
# . env/bin/activate
|
|
||||||
# $GOPATH/src/cloud.google.com/go/regen-gapic.sh
|
|
||||||
# deactivate
|
|
||||||
#
|
|
||||||
# Being in googleapis directory is important;
|
|
||||||
# that's where we find YAML files and where artman puts the "artman-genfiles" directory.
|
|
||||||
#
|
|
||||||
# NOTE: This script does not generate the "raw" gRPC client found in google.golang.org/genproto.
|
|
||||||
# To do that, use the regen.sh script in the genproto repo instead.
|
|
||||||
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
APIS=(
|
|
||||||
google/iam/artman_iam_admin.yaml
|
|
||||||
google/cloud/asset/artman_cloudasset_v1beta1.yaml
|
|
||||||
google/iam/credentials/artman_iamcredentials_v1.yaml
|
|
||||||
google/cloud/bigquery/datatransfer/artman_bigquerydatatransfer.yaml
|
|
||||||
google/cloud/dataproc/artman_dataproc_v1.yaml
|
|
||||||
google/cloud/dataproc/artman_dataproc_v1beta2.yaml
|
|
||||||
google/cloud/dialogflow/artman_dialogflow_v2.yaml
|
|
||||||
google/cloud/kms/artman_cloudkms.yaml
|
|
||||||
google/cloud/language/artman_language_v1.yaml
|
|
||||||
google/cloud/language/artman_language_v1beta2.yaml
|
|
||||||
google/cloud/oslogin/artman_oslogin_v1.yaml
|
|
||||||
google/cloud/oslogin/artman_oslogin_v1beta.yaml
|
|
||||||
google/cloud/redis/artman_redis_v1beta1.yaml
|
|
||||||
google/cloud/redis/artman_redis_v1.yaml
|
|
||||||
google/cloud/speech/artman_speech_v1.yaml
|
|
||||||
google/cloud/speech/artman_speech_v1p1beta1.yaml
|
|
||||||
google/cloud/tasks/artman_cloudtasks_v2beta2.yaml
|
|
||||||
google/cloud/tasks/artman_cloudtasks_v2beta3.yaml
|
|
||||||
google/cloud/texttospeech/artman_texttospeech_v1.yaml
|
|
||||||
google/cloud/videointelligence/artman_videointelligence_v1.yaml
|
|
||||||
google/cloud/videointelligence/artman_videointelligence_v1beta1.yaml
|
|
||||||
google/cloud/videointelligence/artman_videointelligence_v1beta2.yaml
|
|
||||||
google/cloud/vision/artman_vision_v1.yaml
|
|
||||||
google/cloud/vision/artman_vision_v1p1beta1.yaml
|
|
||||||
google/container/artman_container.yaml
|
|
||||||
google/devtools/artman_clouddebugger.yaml
|
|
||||||
google/devtools/clouderrorreporting/artman_errorreporting.yaml
|
|
||||||
google/devtools/cloudtrace/artman_cloudtrace_v1.yaml
|
|
||||||
google/devtools/cloudtrace/artman_cloudtrace_v2.yaml
|
|
||||||
google/devtools/containeranalysis/artman_containeranalysis_v1beta1.yaml
|
|
||||||
google/firestore/artman_firestore.yaml
|
|
||||||
google/logging/artman_logging.yaml
|
|
||||||
google/longrunning/artman_longrunning.yaml
|
|
||||||
google/monitoring/artman_monitoring.yaml
|
|
||||||
google/privacy/dlp/artman_dlp_v2.yaml
|
|
||||||
google/pubsub/artman_pubsub.yaml
|
|
||||||
google/spanner/admin/database/artman_spanner_admin_database.yaml
|
|
||||||
google/spanner/admin/instance/artman_spanner_admin_instance.yaml
|
|
||||||
google/spanner/artman_spanner.yaml
|
|
||||||
)
|
|
||||||
|
|
||||||
for api in "${APIS[@]}"; do
|
|
||||||
rm -rf artman-genfiles/*
|
|
||||||
artman --config "$api" generate go_gapic
|
|
||||||
cp -r artman-genfiles/gapi-*/cloud.google.com/go/* $GOPATH/src/cloud.google.com/go/
|
|
||||||
done
|
|
||||||
|
|
||||||
#go list cloud.google.com/go/... | grep apiv | xargs go test
|
|
||||||
|
|
||||||
#go test -short cloud.google.com/go/...
|
|
||||||
|
|
||||||
#echo "googleapis version: $(git rev-parse HEAD)"
|
|
88
vendor/cloud.google.com/go/run-tests.sh
generated
vendored
88
vendor/cloud.google.com/go/run-tests.sh
generated
vendored
|
@ -1,88 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Selectively run tests for this repo, based on what has changed
|
|
||||||
# in a commit. Runs short tests for the whole repo, and full tests
|
|
||||||
# for changed directories.
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
prefix=cloud.google.com/go
|
|
||||||
|
|
||||||
dryrun=false
|
|
||||||
if [[ $1 == "-n" ]]; then
|
|
||||||
dryrun=true
|
|
||||||
shift
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $1 == "" ]]; then
|
|
||||||
echo >&2 "usage: $0 [-n] COMMIT"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Files or directories that cause all tests to run if modified.
|
|
||||||
declare -A run_all
|
|
||||||
run_all=([.travis.yml]=1 [run-tests.sh]=1)
|
|
||||||
|
|
||||||
function run {
|
|
||||||
if $dryrun; then
|
|
||||||
echo $*
|
|
||||||
else
|
|
||||||
(set -x; $*)
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Find all the packages that have changed in this commit.
|
|
||||||
declare -A changed_packages
|
|
||||||
|
|
||||||
for f in $(git diff-tree --no-commit-id --name-only -r $1); do
|
|
||||||
if [[ ${run_all[$f]} == 1 ]]; then
|
|
||||||
# This change requires a full test. Do it and exit.
|
|
||||||
run go test -race -v $prefix/...
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
# Map, e.g., "spanner/client.go" to "$prefix/spanner".
|
|
||||||
d=$(dirname $f)
|
|
||||||
if [[ $d == "." ]]; then
|
|
||||||
pkg=$prefix
|
|
||||||
else
|
|
||||||
pkg=$prefix/$d
|
|
||||||
fi
|
|
||||||
changed_packages[$pkg]=1
|
|
||||||
done
|
|
||||||
|
|
||||||
echo "changed packages: ${!changed_packages[*]}"
|
|
||||||
|
|
||||||
|
|
||||||
# Reports whether its argument, a package name, depends (recursively)
|
|
||||||
# on a changed package.
|
|
||||||
function depends_on_changed_package {
|
|
||||||
# According to go list, a package does not depend on itself, so
|
|
||||||
# we test that separately.
|
|
||||||
if [[ ${changed_packages[$1]} == 1 ]]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
for dep in $(go list -f '{{range .Deps}}{{.}} {{end}}' $1); do
|
|
||||||
if [[ ${changed_packages[$dep]} == 1 ]]; then
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
return 1
|
|
||||||
}
|
|
||||||
|
|
||||||
# Collect the packages into two separate lists. (It is faster to call "go test" on a
|
|
||||||
# list of packages than to individually "go test" each one.)
|
|
||||||
|
|
||||||
shorts=
|
|
||||||
fulls=
|
|
||||||
for pkg in $(go list $prefix/...); do # for each package in the repo
|
|
||||||
if depends_on_changed_package $pkg; then # if it depends on a changed package
|
|
||||||
fulls="$fulls $pkg" # run the full test
|
|
||||||
else # otherwise
|
|
||||||
shorts="$shorts $pkg" # run the short test
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
run go test -race -v -short $shorts
|
|
||||||
if [[ $fulls != "" ]]; then
|
|
||||||
run go test -race -v $fulls
|
|
||||||
fi
|
|
13
vendor/github.com/DataDog/dd-trace-go/.env
generated
vendored
13
vendor/github.com/DataDog/dd-trace-go/.env
generated
vendored
|
@ -1,13 +0,0 @@
|
||||||
TEST_REDIS_PORT=56379
|
|
||||||
TEST_ELASTICSEARCH2_PORT=59200
|
|
||||||
TEST_ELASTICSEARCH5_PORT=59201
|
|
||||||
TEST_CASSANDRA_PORT=59042
|
|
||||||
TEST_POSTGRES_PORT=55432
|
|
||||||
TEST_POSTGRES_USER=postgres
|
|
||||||
TEST_POSTGRES_PASSWORD=postgres
|
|
||||||
TEST_POSTGRES_DB=postgres
|
|
||||||
TEST_MYSQL_ROOT_PASSWORD=admin
|
|
||||||
TEST_MYSQL_PASSWORD=test
|
|
||||||
TEST_MYSQL_USER=test
|
|
||||||
TEST_MYSQL_DATABASE=test
|
|
||||||
TEST_MYSQL_PORT=53306
|
|
12
vendor/github.com/DataDog/dd-trace-go/.gitignore
generated
vendored
12
vendor/github.com/DataDog/dd-trace-go/.gitignore
generated
vendored
|
@ -1,12 +0,0 @@
|
||||||
# go
|
|
||||||
bin/
|
|
||||||
|
|
||||||
# profiling
|
|
||||||
*.test
|
|
||||||
*.out
|
|
||||||
|
|
||||||
# generic
|
|
||||||
.DS_Store
|
|
||||||
*.cov
|
|
||||||
*.lock
|
|
||||||
*.swp
|
|
30
vendor/github.com/DataDog/dd-trace-go/Gopkg.toml
generated
vendored
30
vendor/github.com/DataDog/dd-trace-go/Gopkg.toml
generated
vendored
|
@ -1,30 +0,0 @@
|
||||||
# Gopkg.toml:
|
|
||||||
# this `dep` file is used only to lock Tracer dependencies. It's not meant to be
|
|
||||||
# used by end users so no integrations dependencies must be added here. If you update
|
|
||||||
# or add a new dependency, remember to commit the `vendor` folder. To prepare
|
|
||||||
# your development environment, remember to use `rake init` instead.
|
|
||||||
|
|
||||||
# ignore integrations dependencies
|
|
||||||
ignored = [
|
|
||||||
"github.com/opentracing/*",
|
|
||||||
"github.com/cihub/seelog",
|
|
||||||
"github.com/gin-gonic/gin",
|
|
||||||
"github.com/go-redis/redis",
|
|
||||||
"github.com/go-sql-driver/mysql",
|
|
||||||
"github.com/gocql/gocql",
|
|
||||||
"github.com/gorilla/mux",
|
|
||||||
"github.com/jmoiron/sqlx",
|
|
||||||
"github.com/lib/pq",
|
|
||||||
"google.golang.org/grpc",
|
|
||||||
"gopkg.in/olivere/elastic.v3",
|
|
||||||
"gopkg.in/olivere/elastic.v5",
|
|
||||||
"github.com/stretchr/*",
|
|
||||||
"github.com/garyburd/*",
|
|
||||||
"github.com/golang/*",
|
|
||||||
"google.golang.org/*",
|
|
||||||
"golang.org/x/*",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[constraint]]
|
|
||||||
name = "github.com/ugorji/go"
|
|
||||||
revision = "9c7f9b7a2bc3a520f7c7b30b34b7f85f47fe27b6"
|
|
80
vendor/github.com/DataDog/dd-trace-go/README.md
generated
vendored
80
vendor/github.com/DataDog/dd-trace-go/README.md
generated
vendored
|
@ -1,80 +0,0 @@
|
||||||
[](https://circleci.com/gh/DataDog/dd-trace-go/tree/master)
|
|
||||||
[](https://godoc.org/github.com/DataDog/dd-trace-go/opentracing)
|
|
||||||
|
|
||||||
Datadog APM client that implements an [OpenTracing](http://opentracing.io) Tracer.
|
|
||||||
|
|
||||||
## Initialization
|
|
||||||
|
|
||||||
To start using the Datadog Tracer with the OpenTracing API, you should first initialize the tracer with a proper `Configuration` object:
|
|
||||||
|
|
||||||
```go
|
|
||||||
import (
|
|
||||||
// ddtrace namespace is suggested
|
|
||||||
ddtrace "github.com/DataDog/dd-trace-go/opentracing"
|
|
||||||
opentracing "github.com/opentracing/opentracing-go"
|
|
||||||
)
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
// create a Tracer configuration
|
|
||||||
config := ddtrace.NewConfiguration()
|
|
||||||
config.ServiceName = "api-intake"
|
|
||||||
config.AgentHostname = "ddagent.consul.local"
|
|
||||||
|
|
||||||
// initialize a Tracer and ensure a graceful shutdown
|
|
||||||
// using the `closer.Close()`
|
|
||||||
tracer, closer, err := ddtrace.NewTracer(config)
|
|
||||||
if err != nil {
|
|
||||||
// handle the configuration error
|
|
||||||
}
|
|
||||||
defer closer.Close()
|
|
||||||
|
|
||||||
// set the Datadog tracer as a GlobalTracer
|
|
||||||
opentracing.SetGlobalTracer(tracer)
|
|
||||||
startWebServer()
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
Function `NewTracer(config)` returns an `io.Closer` instance that can be used to gracefully shutdown the `tracer`. It's recommended to always call the `closer.Close()`, otherwise internal buffers are not flushed and you may lose some traces.
|
|
||||||
|
|
||||||
## Usage
|
|
||||||
|
|
||||||
See [Opentracing documentation](https://github.com/opentracing/opentracing-go) for some usage patterns. Legacy documentation is available in [GoDoc format](https://godoc.org/github.com/DataDog/dd-trace-go/tracer).
|
|
||||||
|
|
||||||
## Contributing Quick Start
|
|
||||||
|
|
||||||
Requirements:
|
|
||||||
|
|
||||||
* Go 1.7 or later
|
|
||||||
* Docker
|
|
||||||
* Rake
|
|
||||||
* [gometalinter](https://github.com/alecthomas/gometalinter)
|
|
||||||
|
|
||||||
### Run the tests
|
|
||||||
|
|
||||||
Start the containers defined in `docker-compose.yml` so that integrations can be tested:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ docker-compose up -d
|
|
||||||
$ ./wait-for-services.sh # wait that all services are up and running
|
|
||||||
```
|
|
||||||
|
|
||||||
Fetch package's third-party dependencies (integrations and testing utilities):
|
|
||||||
|
|
||||||
```
|
|
||||||
$ rake init
|
|
||||||
```
|
|
||||||
|
|
||||||
This will only work if your working directory is in $GOPATH/src.
|
|
||||||
|
|
||||||
Now, you can run your tests via :
|
|
||||||
|
|
||||||
```
|
|
||||||
$ rake test:lint # linting via gometalinter
|
|
||||||
$ rake test:all # test the tracer and all integrations
|
|
||||||
$ rake test:race # use the -race flag
|
|
||||||
```
|
|
||||||
|
|
||||||
## Further Reading
|
|
||||||
|
|
||||||
Automatically traced libraries and frameworks: https://godoc.org/github.com/DataDog/dd-trace-go/tracer#pkg-subdirectories
|
|
||||||
Sample code: https://godoc.org/github.com/DataDog/dd-trace-go/tracer#pkg-examples
|
|
4
vendor/github.com/DataDog/dd-trace-go/Rakefile
generated
vendored
4
vendor/github.com/DataDog/dd-trace-go/Rakefile
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
require_relative 'tasks/common'
|
|
||||||
require_relative 'tasks/vendors'
|
|
||||||
require_relative 'tasks/testing'
|
|
||||||
require_relative 'tasks/benchmarks'
|
|
40
vendor/github.com/DataDog/dd-trace-go/circle.yml
generated
vendored
40
vendor/github.com/DataDog/dd-trace-go/circle.yml
generated
vendored
|
@ -1,40 +0,0 @@
|
||||||
machine:
|
|
||||||
services:
|
|
||||||
- docker
|
|
||||||
environment:
|
|
||||||
GODIST: "go1.9.linux-amd64.tar.gz"
|
|
||||||
IMPORT_PATH: "/home/ubuntu/.go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME"
|
|
||||||
post:
|
|
||||||
- mkdir -p download
|
|
||||||
- test -e download/$GODIST || curl -o download/$GODIST https://storage.googleapis.com/golang/$GODIST
|
|
||||||
- sudo rm -rf /usr/local/go
|
|
||||||
- sudo tar -C /usr/local -xzf download/$GODIST
|
|
||||||
|
|
||||||
dependencies:
|
|
||||||
pre:
|
|
||||||
# clean the workspace
|
|
||||||
- rm -Rf /home/ubuntu/.go_workspace/src/*
|
|
||||||
# we should use an old docker-compose because CircleCI supports
|
|
||||||
# only docker-engine==1.9
|
|
||||||
- pip install docker-compose==1.7.1
|
|
||||||
|
|
||||||
override:
|
|
||||||
# put the package in the right $GOPATH
|
|
||||||
- mkdir -p "$IMPORT_PATH"
|
|
||||||
- rsync -azr --delete ./ "$IMPORT_PATH"
|
|
||||||
- cd "$IMPORT_PATH" && rake init
|
|
||||||
|
|
||||||
test:
|
|
||||||
override:
|
|
||||||
# run the agent and backing services
|
|
||||||
- docker-compose up -d | cat
|
|
||||||
# wait for external services and execute tests
|
|
||||||
- cd "$IMPORT_PATH" && ./wait-for-services.sh
|
|
||||||
- cd "$IMPORT_PATH" && rake test:lint
|
|
||||||
- cd "$IMPORT_PATH" && rake test:all
|
|
||||||
- cd "$IMPORT_PATH" && rake test:race
|
|
||||||
- cd "$IMPORT_PATH" && rake test:coverage
|
|
||||||
|
|
||||||
post:
|
|
||||||
# add the coverage HTML report as CircleCI artifact
|
|
||||||
- cd "$IMPORT_PATH" && go tool cover -html=code.cov -o $CIRCLE_ARTIFACTS/coverage.html
|
|
43
vendor/github.com/DataDog/dd-trace-go/docker-compose.yml
generated
vendored
43
vendor/github.com/DataDog/dd-trace-go/docker-compose.yml
generated
vendored
|
@ -1,43 +0,0 @@
|
||||||
# File for development/ testing purposes
|
|
||||||
|
|
||||||
cassandra:
|
|
||||||
image: cassandra:3.7
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:${TEST_CASSANDRA_PORT}:9042"
|
|
||||||
mysql:
|
|
||||||
image: mysql:5.7
|
|
||||||
environment:
|
|
||||||
- MYSQL_ROOT_PASSWORD=$TEST_MYSQL_ROOT_PASSWORD
|
|
||||||
- MYSQL_PASSWORD=$TEST_MYSQL_PASSWORD
|
|
||||||
- MYSQL_USER=$TEST_MYSQL_USER
|
|
||||||
- MYSQL_DATABASE=$TEST_MYSQL_DATABASE
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:${TEST_MYSQL_PORT}:3306"
|
|
||||||
postgres:
|
|
||||||
image: postgres:9.5
|
|
||||||
environment:
|
|
||||||
- POSTGRES_PASSWORD=$TEST_POSTGRES_PASSWORD
|
|
||||||
- POSTGRES_USER=$TEST_POSTGRES_USER
|
|
||||||
- POSTGRES_DB=$TEST_POSTGRES_DB
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:${TEST_POSTGRES_PORT}:5432"
|
|
||||||
redis:
|
|
||||||
image: redis:3.2
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:${TEST_REDIS_PORT}:6379"
|
|
||||||
elasticsearch-v5:
|
|
||||||
image: elasticsearch:5
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:${TEST_ELASTICSEARCH5_PORT}:9200"
|
|
||||||
elasticsearch-v2:
|
|
||||||
image: elasticsearch:2
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:${TEST_ELASTICSEARCH2_PORT}:9200"
|
|
||||||
ddagent:
|
|
||||||
image: datadog/docker-dd-agent
|
|
||||||
environment:
|
|
||||||
- DD_APM_ENABLED=true
|
|
||||||
- DD_BIND_HOST=0.0.0.0
|
|
||||||
- DD_API_KEY=invalid_key_but_this_is_fine
|
|
||||||
ports:
|
|
||||||
- "127.0.0.1:8126:8126"
|
|
15
vendor/github.com/DataDog/dd-trace-go/wait-for-services.sh
generated
vendored
15
vendor/github.com/DataDog/dd-trace-go/wait-for-services.sh
generated
vendored
|
@ -1,15 +0,0 @@
|
||||||
#! /bin/bash
|
|
||||||
|
|
||||||
N=0
|
|
||||||
MAX_RETRY=10
|
|
||||||
|
|
||||||
docker ps --no-trunc
|
|
||||||
|
|
||||||
until [ $N -ge $MAX_RETRY ]
|
|
||||||
do
|
|
||||||
TIMES=$[$N+1]
|
|
||||||
echo "Contacting ElasticSearch... $TIMES/$MAX_RETRY"
|
|
||||||
curl -XGET 'localhost:59200' && break
|
|
||||||
N=$[$N+1]
|
|
||||||
sleep 15
|
|
||||||
done
|
|
26
vendor/github.com/Shopify/sarama/.gitignore
generated
vendored
26
vendor/github.com/Shopify/sarama/.gitignore
generated
vendored
|
@ -1,26 +0,0 @@
|
||||||
# Compiled Object files, Static and Dynamic libs (Shared Objects)
|
|
||||||
*.o
|
|
||||||
*.a
|
|
||||||
*.so
|
|
||||||
*.test
|
|
||||||
|
|
||||||
# Folders
|
|
||||||
_obj
|
|
||||||
_test
|
|
||||||
.vagrant
|
|
||||||
|
|
||||||
# Architecture specific extensions/prefixes
|
|
||||||
*.[568vq]
|
|
||||||
[568vq].out
|
|
||||||
|
|
||||||
*.cgo1.go
|
|
||||||
*.cgo2.c
|
|
||||||
_cgo_defun.c
|
|
||||||
_cgo_gotypes.go
|
|
||||||
_cgo_export.*
|
|
||||||
|
|
||||||
_testmain.go
|
|
||||||
|
|
||||||
*.exe
|
|
||||||
|
|
||||||
coverage.txt
|
|
36
vendor/github.com/Shopify/sarama/.travis.yml
generated
vendored
36
vendor/github.com/Shopify/sarama/.travis.yml
generated
vendored
|
@ -1,36 +0,0 @@
|
||||||
language: go
|
|
||||||
go:
|
|
||||||
- 1.8.x
|
|
||||||
- 1.9.x
|
|
||||||
- 1.10.x
|
|
||||||
|
|
||||||
env:
|
|
||||||
global:
|
|
||||||
- KAFKA_PEERS=localhost:9091,localhost:9092,localhost:9093,localhost:9094,localhost:9095
|
|
||||||
- TOXIPROXY_ADDR=http://localhost:8474
|
|
||||||
- KAFKA_INSTALL_ROOT=/home/travis/kafka
|
|
||||||
- KAFKA_HOSTNAME=localhost
|
|
||||||
- DEBUG=true
|
|
||||||
matrix:
|
|
||||||
- KAFKA_VERSION=0.11.0.2
|
|
||||||
- KAFKA_VERSION=1.0.0
|
|
||||||
- KAFKA_VERSION=1.1.0
|
|
||||||
|
|
||||||
before_install:
|
|
||||||
- export REPOSITORY_ROOT=${TRAVIS_BUILD_DIR}
|
|
||||||
- vagrant/install_cluster.sh
|
|
||||||
- vagrant/boot_cluster.sh
|
|
||||||
- vagrant/create_topics.sh
|
|
||||||
|
|
||||||
install: make install_dependencies
|
|
||||||
|
|
||||||
script:
|
|
||||||
- make test
|
|
||||||
- make vet
|
|
||||||
- make errcheck
|
|
||||||
- make fmt
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- bash <(curl -s https://codecov.io/bash)
|
|
||||||
|
|
||||||
after_script: vagrant/halt_cluster.sh
|
|
541
vendor/github.com/Shopify/sarama/CHANGELOG.md
generated
vendored
541
vendor/github.com/Shopify/sarama/CHANGELOG.md
generated
vendored
|
@ -1,541 +0,0 @@
|
||||||
# Changelog
|
|
||||||
|
|
||||||
#### Version 1.17.0 (2018-05-30)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Add support for gzip compression levels
|
|
||||||
([#1044](https://github.com/Shopify/sarama/pull/1044)).
|
|
||||||
- Add support for Metadata request/response pairs versions v1 to v5
|
|
||||||
([#1047](https://github.com/Shopify/sarama/pull/1047),
|
|
||||||
[#1069](https://github.com/Shopify/sarama/pull/1069)).
|
|
||||||
- Add versioning to JoinGroup request/response pairs
|
|
||||||
([#1098](https://github.com/Shopify/sarama/pull/1098))
|
|
||||||
- Add support for CreatePartitions, DeleteGroups, DeleteRecords request/response pairs
|
|
||||||
([#1065](https://github.com/Shopify/sarama/pull/1065),
|
|
||||||
[#1096](https://github.com/Shopify/sarama/pull/1096),
|
|
||||||
[#1027](https://github.com/Shopify/sarama/pull/1027)).
|
|
||||||
- Add `Controller()` method to Client interface
|
|
||||||
([#1063](https://github.com/Shopify/sarama/pull/1063)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- ConsumerMetadataReq/Resp has been migrated to FindCoordinatorReq/Resp
|
|
||||||
([#1010](https://github.com/Shopify/sarama/pull/1010)).
|
|
||||||
- Expose missing protocol parts: `msgSet` and `recordBatch`
|
|
||||||
([#1049](https://github.com/Shopify/sarama/pull/1049)).
|
|
||||||
- Add support for v1 DeleteTopics Request
|
|
||||||
([#1052](https://github.com/Shopify/sarama/pull/1052)).
|
|
||||||
- Add support for Go 1.10
|
|
||||||
([#1064](https://github.com/Shopify/sarama/pull/1064)).
|
|
||||||
- Claim support for Kafka 1.1.0
|
|
||||||
([#1073](https://github.com/Shopify/sarama/pull/1073)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix FindCoordinatorResponse.encode to allow nil Coordinator
|
|
||||||
([#1050](https://github.com/Shopify/sarama/pull/1050),
|
|
||||||
[#1051](https://github.com/Shopify/sarama/pull/1051)).
|
|
||||||
- Clear all metadata when we have the latest topic info
|
|
||||||
([#1033](https://github.com/Shopify/sarama/pull/1033)).
|
|
||||||
- Make `PartitionConsumer.Close` idempotent
|
|
||||||
([#1092](https://github.com/Shopify/sarama/pull/1092)).
|
|
||||||
|
|
||||||
#### Version 1.16.0 (2018-02-12)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Add support for the Create/Delete Topics request/response pairs
|
|
||||||
([#1007](https://github.com/Shopify/sarama/pull/1007),
|
|
||||||
[#1008](https://github.com/Shopify/sarama/pull/1008)).
|
|
||||||
- Add support for the Describe/Create/Delete ACL request/response pairs
|
|
||||||
([#1009](https://github.com/Shopify/sarama/pull/1009)).
|
|
||||||
- Add support for the five transaction-related request/response pairs
|
|
||||||
([#1016](https://github.com/Shopify/sarama/pull/1016)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Permit setting version on mock producer responses
|
|
||||||
([#999](https://github.com/Shopify/sarama/pull/999)).
|
|
||||||
- Add `NewMockBrokerListener` helper for testing TLS connections
|
|
||||||
([#1019](https://github.com/Shopify/sarama/pull/1019)).
|
|
||||||
- Changed the default value for `Consumer.Fetch.Default` from 32KiB to 1MiB
|
|
||||||
which results in much higher throughput in most cases
|
|
||||||
([#1024](https://github.com/Shopify/sarama/pull/1024)).
|
|
||||||
- Reuse the `time.Ticker` across fetch requests in the PartitionConsumer to
|
|
||||||
reduce CPU and memory usage when processing many partitions
|
|
||||||
([#1028](https://github.com/Shopify/sarama/pull/1028)).
|
|
||||||
- Assign relative offsets to messages in the producer to save the brokers a
|
|
||||||
recompression pass
|
|
||||||
([#1002](https://github.com/Shopify/sarama/pull/1002),
|
|
||||||
[#1015](https://github.com/Shopify/sarama/pull/1015)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix producing uncompressed batches with the new protocol format
|
|
||||||
([#1032](https://github.com/Shopify/sarama/issues/1032)).
|
|
||||||
- Fix consuming compacted topics with the new protocol format
|
|
||||||
([#1005](https://github.com/Shopify/sarama/issues/1005)).
|
|
||||||
- Fix consuming topics with a mix of protocol formats
|
|
||||||
([#1021](https://github.com/Shopify/sarama/issues/1021)).
|
|
||||||
- Fix consuming when the broker includes multiple batches in a single response
|
|
||||||
([#1022](https://github.com/Shopify/sarama/issues/1022)).
|
|
||||||
- Fix detection of `PartialTrailingMessage` when the partial message was
|
|
||||||
truncated before the magic value indicating its version
|
|
||||||
([#1030](https://github.com/Shopify/sarama/pull/1030)).
|
|
||||||
- Fix expectation-checking in the mock of `SyncProducer.SendMessages`
|
|
||||||
([#1035](https://github.com/Shopify/sarama/pull/1035)).
|
|
||||||
|
|
||||||
#### Version 1.15.0 (2017-12-08)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Claim official support for Kafka 1.0, though it did already work
|
|
||||||
([#984](https://github.com/Shopify/sarama/pull/984)).
|
|
||||||
- Helper methods for Kafka version numbers to/from strings
|
|
||||||
([#989](https://github.com/Shopify/sarama/pull/989)).
|
|
||||||
- Implement CreatePartitions request/response
|
|
||||||
([#985](https://github.com/Shopify/sarama/pull/985)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Add error codes 45-60
|
|
||||||
([#986](https://github.com/Shopify/sarama/issues/986)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix slow consuming for certain Kafka 0.11/1.0 configurations
|
|
||||||
([#982](https://github.com/Shopify/sarama/pull/982)).
|
|
||||||
- Correctly determine when a FetchResponse contains the new message format
|
|
||||||
([#990](https://github.com/Shopify/sarama/pull/990)).
|
|
||||||
- Fix producing with multiple headers
|
|
||||||
([#996](https://github.com/Shopify/sarama/pull/996)).
|
|
||||||
- Fix handling of truncated record batches
|
|
||||||
([#998](https://github.com/Shopify/sarama/pull/998)).
|
|
||||||
- Fix leaking metrics when closing brokers
|
|
||||||
([#991](https://github.com/Shopify/sarama/pull/991)).
|
|
||||||
|
|
||||||
#### Version 1.14.0 (2017-11-13)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Add support for the new Kafka 0.11 record-batch format, including the wire
|
|
||||||
protocol and the necessary behavioural changes in the producer and consumer.
|
|
||||||
Transactions and idempotency are not yet supported, but producing and
|
|
||||||
consuming should work with all the existing bells and whistles (batching,
|
|
||||||
compression, etc) as well as the new custom headers. Thanks to Vlad Hanciuta
|
|
||||||
of Arista Networks for this work. Part of
|
|
||||||
([#901](https://github.com/Shopify/sarama/issues/901)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix encoding of ProduceResponse versions in test
|
|
||||||
([#970](https://github.com/Shopify/sarama/pull/970)).
|
|
||||||
- Return partial replicas list when we have it
|
|
||||||
([#975](https://github.com/Shopify/sarama/pull/975)).
|
|
||||||
|
|
||||||
#### Version 1.13.0 (2017-10-04)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Support for FetchRequest version 3
|
|
||||||
([#905](https://github.com/Shopify/sarama/pull/905)).
|
|
||||||
- Permit setting version on mock FetchResponses
|
|
||||||
([#939](https://github.com/Shopify/sarama/pull/939)).
|
|
||||||
- Add a configuration option to support storing only minimal metadata for
|
|
||||||
extremely large clusters
|
|
||||||
([#937](https://github.com/Shopify/sarama/pull/937)).
|
|
||||||
- Add `PartitionOffsetManager.ResetOffset` for backtracking tracked offsets
|
|
||||||
([#932](https://github.com/Shopify/sarama/pull/932)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Provide the block-level timestamp when consuming compressed messages
|
|
||||||
([#885](https://github.com/Shopify/sarama/issues/885)).
|
|
||||||
- `Client.Replicas` and `Client.InSyncReplicas` now respect the order returned
|
|
||||||
by the broker, which can be meaningful
|
|
||||||
([#930](https://github.com/Shopify/sarama/pull/930)).
|
|
||||||
- Use a `Ticker` to reduce consumer timer overhead at the cost of higher
|
|
||||||
variance in the actual timeout
|
|
||||||
([#933](https://github.com/Shopify/sarama/pull/933)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Gracefully handle messages with negative timestamps
|
|
||||||
([#907](https://github.com/Shopify/sarama/pull/907)).
|
|
||||||
- Raise a proper error when encountering an unknown message version
|
|
||||||
([#940](https://github.com/Shopify/sarama/pull/940)).
|
|
||||||
|
|
||||||
#### Version 1.12.0 (2017-05-08)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Added support for the `ApiVersions` request and response pair, and Kafka
|
|
||||||
version 0.10.2 ([#867](https://github.com/Shopify/sarama/pull/867)). Note
|
|
||||||
that you still need to specify the Kafka version in the Sarama configuration
|
|
||||||
for the time being.
|
|
||||||
- Added a `Brokers` method to the Client which returns the complete set of
|
|
||||||
active brokers ([#813](https://github.com/Shopify/sarama/pull/813)).
|
|
||||||
- Added an `InSyncReplicas` method to the Client which returns the set of all
|
|
||||||
in-sync broker IDs for the given partition, now that the Kafka versions for
|
|
||||||
which this was misleading are no longer in our supported set
|
|
||||||
([#872](https://github.com/Shopify/sarama/pull/872)).
|
|
||||||
- Added a `NewCustomHashPartitioner` method which allows constructing a hash
|
|
||||||
partitioner with a custom hash method in case the default (FNV-1a) is not
|
|
||||||
suitable
|
|
||||||
([#837](https://github.com/Shopify/sarama/pull/837),
|
|
||||||
[#841](https://github.com/Shopify/sarama/pull/841)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Recognize more Kafka error codes
|
|
||||||
([#859](https://github.com/Shopify/sarama/pull/859)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix an issue where decoding a malformed FetchRequest would not return the
|
|
||||||
correct error ([#818](https://github.com/Shopify/sarama/pull/818)).
|
|
||||||
- Respect ordering of group protocols in JoinGroupRequests. This fix is
|
|
||||||
transparent if you're using the `AddGroupProtocol` or
|
|
||||||
`AddGroupProtocolMetadata` helpers; otherwise you will need to switch from
|
|
||||||
the `GroupProtocols` field (now deprecated) to use `OrderedGroupProtocols`
|
|
||||||
([#812](https://github.com/Shopify/sarama/issues/812)).
|
|
||||||
- Fix an alignment-related issue with atomics on 32-bit architectures
|
|
||||||
([#859](https://github.com/Shopify/sarama/pull/859)).
|
|
||||||
|
|
||||||
#### Version 1.11.0 (2016-12-20)
|
|
||||||
|
|
||||||
_Important:_ As of Sarama 1.11 it is necessary to set the config value of
|
|
||||||
`Producer.Return.Successes` to true in order to use the SyncProducer. Previous
|
|
||||||
versions would silently override this value when instantiating a SyncProducer
|
|
||||||
which led to unexpected values and data races.
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Metrics! Thanks to Sébastien Launay for all his work on this feature
|
|
||||||
([#701](https://github.com/Shopify/sarama/pull/701),
|
|
||||||
[#746](https://github.com/Shopify/sarama/pull/746),
|
|
||||||
[#766](https://github.com/Shopify/sarama/pull/766)).
|
|
||||||
- Add support for LZ4 compression
|
|
||||||
([#786](https://github.com/Shopify/sarama/pull/786)).
|
|
||||||
- Add support for ListOffsetRequest v1 and Kafka 0.10.1
|
|
||||||
([#775](https://github.com/Shopify/sarama/pull/775)).
|
|
||||||
- Added a `HighWaterMarks` method to the Consumer which aggregates the
|
|
||||||
`HighWaterMarkOffset` values of its child topic/partitions
|
|
||||||
([#769](https://github.com/Shopify/sarama/pull/769)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fixed producing when using timestamps, compression and Kafka 0.10
|
|
||||||
([#759](https://github.com/Shopify/sarama/pull/759)).
|
|
||||||
- Added missing decoder methods to DescribeGroups response
|
|
||||||
([#756](https://github.com/Shopify/sarama/pull/756)).
|
|
||||||
- Fix producer shutdown when `Return.Errors` is disabled
|
|
||||||
([#787](https://github.com/Shopify/sarama/pull/787)).
|
|
||||||
- Don't mutate configuration in SyncProducer
|
|
||||||
([#790](https://github.com/Shopify/sarama/pull/790)).
|
|
||||||
- Fix crash on SASL initialization failure
|
|
||||||
([#795](https://github.com/Shopify/sarama/pull/795)).
|
|
||||||
|
|
||||||
#### Version 1.10.1 (2016-08-30)
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix the documentation for `HashPartitioner` which was incorrect
|
|
||||||
([#717](https://github.com/Shopify/sarama/pull/717)).
|
|
||||||
- Permit client creation even when it is limited by ACLs
|
|
||||||
([#722](https://github.com/Shopify/sarama/pull/722)).
|
|
||||||
- Several fixes to the consumer timer optimization code, regressions introduced
|
|
||||||
in v1.10.0. Go's timers are finicky
|
|
||||||
([#730](https://github.com/Shopify/sarama/pull/730),
|
|
||||||
[#733](https://github.com/Shopify/sarama/pull/733),
|
|
||||||
[#734](https://github.com/Shopify/sarama/pull/734)).
|
|
||||||
- Handle consuming compressed relative offsets with Kafka 0.10
|
|
||||||
([#735](https://github.com/Shopify/sarama/pull/735)).
|
|
||||||
|
|
||||||
#### Version 1.10.0 (2016-08-02)
|
|
||||||
|
|
||||||
_Important:_ As of Sarama 1.10 it is necessary to tell Sarama the version of
|
|
||||||
Kafka you are running against (via the `config.Version` value) in order to use
|
|
||||||
features that may not be compatible with old Kafka versions. If you don't
|
|
||||||
specify this value it will default to 0.8.2 (the minimum supported), and trying
|
|
||||||
to use more recent features (like the offset manager) will fail with an error.
|
|
||||||
|
|
||||||
_Also:_ The offset-manager's behaviour has been changed to match the upstream
|
|
||||||
java consumer (see [#705](https://github.com/Shopify/sarama/pull/705) and
|
|
||||||
[#713](https://github.com/Shopify/sarama/pull/713)). If you use the
|
|
||||||
offset-manager, please ensure that you are committing one *greater* than the
|
|
||||||
last consumed message offset or else you may end up consuming duplicate
|
|
||||||
messages.
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Support for Kafka 0.10
|
|
||||||
([#672](https://github.com/Shopify/sarama/pull/672),
|
|
||||||
[#678](https://github.com/Shopify/sarama/pull/678),
|
|
||||||
[#681](https://github.com/Shopify/sarama/pull/681), and others).
|
|
||||||
- Support for configuring the target Kafka version
|
|
||||||
([#676](https://github.com/Shopify/sarama/pull/676)).
|
|
||||||
- Batch producing support in the SyncProducer
|
|
||||||
([#677](https://github.com/Shopify/sarama/pull/677)).
|
|
||||||
- Extend producer mock to allow setting expectations on message contents
|
|
||||||
([#667](https://github.com/Shopify/sarama/pull/667)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Support `nil` compressed messages for deleting in compacted topics
|
|
||||||
([#634](https://github.com/Shopify/sarama/pull/634)).
|
|
||||||
- Pre-allocate decoding errors, greatly reducing heap usage and GC time against
|
|
||||||
misbehaving brokers ([#690](https://github.com/Shopify/sarama/pull/690)).
|
|
||||||
- Re-use consumer expiry timers, removing one allocation per consumed message
|
|
||||||
([#707](https://github.com/Shopify/sarama/pull/707)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Actually default the client ID to "sarama" like we say we do
|
|
||||||
([#664](https://github.com/Shopify/sarama/pull/664)).
|
|
||||||
- Fix a rare issue where `Client.Leader` could return the wrong error
|
|
||||||
([#685](https://github.com/Shopify/sarama/pull/685)).
|
|
||||||
- Fix a possible tight loop in the consumer
|
|
||||||
([#693](https://github.com/Shopify/sarama/pull/693)).
|
|
||||||
- Match upstream's offset-tracking behaviour
|
|
||||||
([#705](https://github.com/Shopify/sarama/pull/705)).
|
|
||||||
- Report UnknownTopicOrPartition errors from the offset manager
|
|
||||||
([#706](https://github.com/Shopify/sarama/pull/706)).
|
|
||||||
- Fix possible negative partition value from the HashPartitioner
|
|
||||||
([#709](https://github.com/Shopify/sarama/pull/709)).
|
|
||||||
|
|
||||||
#### Version 1.9.0 (2016-05-16)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Add support for custom offset manager retention durations
|
|
||||||
([#602](https://github.com/Shopify/sarama/pull/602)).
|
|
||||||
- Publish low-level mocks to enable testing of third-party producer/consumer
|
|
||||||
implementations ([#570](https://github.com/Shopify/sarama/pull/570)).
|
|
||||||
- Declare support for Golang 1.6
|
|
||||||
([#611](https://github.com/Shopify/sarama/pull/611)).
|
|
||||||
- Support for SASL plain-text auth
|
|
||||||
([#648](https://github.com/Shopify/sarama/pull/648)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Simplified broker locking scheme slightly
|
|
||||||
([#604](https://github.com/Shopify/sarama/pull/604)).
|
|
||||||
- Documentation cleanup
|
|
||||||
([#605](https://github.com/Shopify/sarama/pull/605),
|
|
||||||
[#621](https://github.com/Shopify/sarama/pull/621),
|
|
||||||
[#654](https://github.com/Shopify/sarama/pull/654)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix race condition shutting down the OffsetManager
|
|
||||||
([#658](https://github.com/Shopify/sarama/pull/658)).
|
|
||||||
|
|
||||||
#### Version 1.8.0 (2016-02-01)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Full support for Kafka 0.9:
|
|
||||||
- All protocol messages and fields
|
|
||||||
([#586](https://github.com/Shopify/sarama/pull/586),
|
|
||||||
[#588](https://github.com/Shopify/sarama/pull/588),
|
|
||||||
[#590](https://github.com/Shopify/sarama/pull/590)).
|
|
||||||
- Verified that TLS support works
|
|
||||||
([#581](https://github.com/Shopify/sarama/pull/581)).
|
|
||||||
- Fixed the OffsetManager compatibility
|
|
||||||
([#585](https://github.com/Shopify/sarama/pull/585)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Optimize for fewer system calls when reading from the network
|
|
||||||
([#584](https://github.com/Shopify/sarama/pull/584)).
|
|
||||||
- Automatically retry `InvalidMessage` errors to match upstream behaviour
|
|
||||||
([#589](https://github.com/Shopify/sarama/pull/589)).
|
|
||||||
|
|
||||||
#### Version 1.7.0 (2015-12-11)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Preliminary support for Kafka 0.9
|
|
||||||
([#572](https://github.com/Shopify/sarama/pull/572)). This comes with several
|
|
||||||
caveats:
|
|
||||||
- Protocol-layer support is mostly in place
|
|
||||||
([#577](https://github.com/Shopify/sarama/pull/577)), however Kafka 0.9
|
|
||||||
renamed some messages and fields, which we did not in order to preserve API
|
|
||||||
compatibility.
|
|
||||||
- The producer and consumer work against 0.9, but the offset manager does
|
|
||||||
not ([#573](https://github.com/Shopify/sarama/pull/573)).
|
|
||||||
- TLS support may or may not work
|
|
||||||
([#581](https://github.com/Shopify/sarama/pull/581)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Don't wait for request timeouts on dead brokers, greatly speeding recovery
|
|
||||||
when the TCP connection is left hanging
|
|
||||||
([#548](https://github.com/Shopify/sarama/pull/548)).
|
|
||||||
- Refactored part of the producer. The new version provides a much more elegant
|
|
||||||
solution to [#449](https://github.com/Shopify/sarama/pull/449). It is also
|
|
||||||
slightly more efficient, and much more precise in calculating batch sizes
|
|
||||||
when compression is used
|
|
||||||
([#549](https://github.com/Shopify/sarama/pull/549),
|
|
||||||
[#550](https://github.com/Shopify/sarama/pull/550),
|
|
||||||
[#551](https://github.com/Shopify/sarama/pull/551)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix race condition in consumer test mock
|
|
||||||
([#553](https://github.com/Shopify/sarama/pull/553)).
|
|
||||||
|
|
||||||
#### Version 1.6.1 (2015-09-25)
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix panic that could occur if a user-supplied message value failed to encode
|
|
||||||
([#449](https://github.com/Shopify/sarama/pull/449)).
|
|
||||||
|
|
||||||
#### Version 1.6.0 (2015-09-04)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- Implementation of a consumer offset manager using the APIs introduced in
|
|
||||||
Kafka 0.8.2. The API is designed mainly for integration into a future
|
|
||||||
high-level consumer, not for direct use, although it is *possible* to use it
|
|
||||||
directly.
|
|
||||||
([#461](https://github.com/Shopify/sarama/pull/461)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- CRC32 calculation is much faster on machines with SSE4.2 instructions,
|
|
||||||
removing a major hotspot from most profiles
|
|
||||||
([#255](https://github.com/Shopify/sarama/pull/255)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Make protocol decoding more robust against some malformed packets generated
|
|
||||||
by go-fuzz ([#523](https://github.com/Shopify/sarama/pull/523),
|
|
||||||
[#525](https://github.com/Shopify/sarama/pull/525)) or found in other ways
|
|
||||||
([#528](https://github.com/Shopify/sarama/pull/528)).
|
|
||||||
- Fix a potential race condition panic in the consumer on shutdown
|
|
||||||
([#529](https://github.com/Shopify/sarama/pull/529)).
|
|
||||||
|
|
||||||
#### Version 1.5.0 (2015-08-17)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- TLS-encrypted network connections are now supported. This feature is subject
|
|
||||||
to change when Kafka releases built-in TLS support, but for now this is
|
|
||||||
enough to work with TLS-terminating proxies
|
|
||||||
([#154](https://github.com/Shopify/sarama/pull/154)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- The consumer will not block if a single partition is not drained by the user;
|
|
||||||
all other partitions will continue to consume normally
|
|
||||||
([#485](https://github.com/Shopify/sarama/pull/485)).
|
|
||||||
- Formatting of error strings has been much improved
|
|
||||||
([#495](https://github.com/Shopify/sarama/pull/495)).
|
|
||||||
- Internal refactoring of the producer for code cleanliness and to enable
|
|
||||||
future work ([#300](https://github.com/Shopify/sarama/pull/300)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix a potential deadlock in the consumer on shutdown
|
|
||||||
([#475](https://github.com/Shopify/sarama/pull/475)).
|
|
||||||
|
|
||||||
#### Version 1.4.3 (2015-07-21)
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Don't include the partitioner in the producer's "fetch partitions"
|
|
||||||
circuit-breaker ([#466](https://github.com/Shopify/sarama/pull/466)).
|
|
||||||
- Don't retry messages until the broker is closed when abandoning a broker in
|
|
||||||
the producer ([#468](https://github.com/Shopify/sarama/pull/468)).
|
|
||||||
- Update the import path for snappy-go, it has moved again and the API has
|
|
||||||
changed slightly ([#486](https://github.com/Shopify/sarama/pull/486)).
|
|
||||||
|
|
||||||
#### Version 1.4.2 (2015-05-27)
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Update the import path for snappy-go, it has moved from google code to github
|
|
||||||
([#456](https://github.com/Shopify/sarama/pull/456)).
|
|
||||||
|
|
||||||
#### Version 1.4.1 (2015-05-25)
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Optimizations when decoding snappy messages, thanks to John Potocny
|
|
||||||
([#446](https://github.com/Shopify/sarama/pull/446)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix hypothetical race conditions on producer shutdown
|
|
||||||
([#450](https://github.com/Shopify/sarama/pull/450),
|
|
||||||
[#451](https://github.com/Shopify/sarama/pull/451)).
|
|
||||||
|
|
||||||
#### Version 1.4.0 (2015-05-01)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- The consumer now implements `Topics()` and `Partitions()` methods to enable
|
|
||||||
users to dynamically choose what topics/partitions to consume without
|
|
||||||
instantiating a full client
|
|
||||||
([#431](https://github.com/Shopify/sarama/pull/431)).
|
|
||||||
- The partition-consumer now exposes the high water mark offset value returned
|
|
||||||
by the broker via the `HighWaterMarkOffset()` method ([#339](https://github.com/Shopify/sarama/pull/339)).
|
|
||||||
- Added a `kafka-console-consumer` tool capable of handling multiple
|
|
||||||
partitions, and deprecated the now-obsolete `kafka-console-partitionConsumer`
|
|
||||||
([#439](https://github.com/Shopify/sarama/pull/439),
|
|
||||||
[#442](https://github.com/Shopify/sarama/pull/442)).
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- The producer's logging during retry scenarios is more consistent, more
|
|
||||||
useful, and slightly less verbose
|
|
||||||
([#429](https://github.com/Shopify/sarama/pull/429)).
|
|
||||||
- The client now shuffles its initial list of seed brokers in order to prevent
|
|
||||||
thundering herd on the first broker in the list
|
|
||||||
([#441](https://github.com/Shopify/sarama/pull/441)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- The producer now correctly manages its state if retries occur when it is
|
|
||||||
shutting down, fixing several instances of confusing behaviour and at least
|
|
||||||
one potential deadlock ([#419](https://github.com/Shopify/sarama/pull/419)).
|
|
||||||
- The consumer now handles messages for different partitions asynchronously,
|
|
||||||
making it much more resilient to specific user code ordering
|
|
||||||
([#325](https://github.com/Shopify/sarama/pull/325)).
|
|
||||||
|
|
||||||
#### Version 1.3.0 (2015-04-16)
|
|
||||||
|
|
||||||
New Features:
|
|
||||||
- The client now tracks consumer group coordinators using
|
|
||||||
ConsumerMetadataRequests similar to how it tracks partition leadership using
|
|
||||||
regular MetadataRequests ([#411](https://github.com/Shopify/sarama/pull/411)).
|
|
||||||
This adds two methods to the client API:
|
|
||||||
- `Coordinator(consumerGroup string) (*Broker, error)`
|
|
||||||
- `RefreshCoordinator(consumerGroup string) error`
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- ConsumerMetadataResponses now automatically create a Broker object out of the
|
|
||||||
ID/address/port combination for the Coordinator; accessing the fields
|
|
||||||
individually has been deprecated
|
|
||||||
([#413](https://github.com/Shopify/sarama/pull/413)).
|
|
||||||
- Much improved handling of `OffsetOutOfRange` errors in the consumer.
|
|
||||||
Consumers will fail to start if the provided offset is out of range
|
|
||||||
([#418](https://github.com/Shopify/sarama/pull/418))
|
|
||||||
and they will automatically shut down if the offset falls out of range
|
|
||||||
([#424](https://github.com/Shopify/sarama/pull/424)).
|
|
||||||
- Small performance improvement in encoding and decoding protocol messages
|
|
||||||
([#427](https://github.com/Shopify/sarama/pull/427)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix a rare race condition in the client's background metadata refresher if
|
|
||||||
it happens to be activated while the client is being closed
|
|
||||||
([#422](https://github.com/Shopify/sarama/pull/422)).
|
|
||||||
|
|
||||||
#### Version 1.2.0 (2015-04-07)
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- The producer's behaviour when `Flush.Frequency` is set is now more intuitive
|
|
||||||
([#389](https://github.com/Shopify/sarama/pull/389)).
|
|
||||||
- The producer is now somewhat more memory-efficient during and after retrying
|
|
||||||
messages due to an improved queue implementation
|
|
||||||
([#396](https://github.com/Shopify/sarama/pull/396)).
|
|
||||||
- The consumer produces much more useful logging output when leadership
|
|
||||||
changes ([#385](https://github.com/Shopify/sarama/pull/385)).
|
|
||||||
- The client's `GetOffset` method will now automatically refresh metadata and
|
|
||||||
retry once in the event of stale information or similar
|
|
||||||
([#394](https://github.com/Shopify/sarama/pull/394)).
|
|
||||||
- Broker connections now have support for using TCP keepalives
|
|
||||||
([#407](https://github.com/Shopify/sarama/issues/407)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- The OffsetCommitRequest message now correctly implements all three possible
|
|
||||||
API versions ([#390](https://github.com/Shopify/sarama/pull/390),
|
|
||||||
[#400](https://github.com/Shopify/sarama/pull/400)).
|
|
||||||
|
|
||||||
#### Version 1.1.0 (2015-03-20)
|
|
||||||
|
|
||||||
Improvements:
|
|
||||||
- Wrap the producer's partitioner call in a circuit-breaker so that repeatedly
|
|
||||||
broken topics don't choke throughput
|
|
||||||
([#373](https://github.com/Shopify/sarama/pull/373)).
|
|
||||||
|
|
||||||
Bug Fixes:
|
|
||||||
- Fix the producer's internal reference counting in certain unusual scenarios
|
|
||||||
([#367](https://github.com/Shopify/sarama/pull/367)).
|
|
||||||
- Fix the consumer's internal reference counting in certain unusual scenarios
|
|
||||||
([#369](https://github.com/Shopify/sarama/pull/369)).
|
|
||||||
- Fix a condition where the producer's internal control messages could have
|
|
||||||
gotten stuck ([#368](https://github.com/Shopify/sarama/pull/368)).
|
|
||||||
- Fix an issue where invalid partition lists would be cached when asking for
|
|
||||||
metadata for a non-existant topic ([#372](https://github.com/Shopify/sarama/pull/372)).
|
|
||||||
|
|
||||||
|
|
||||||
#### Version 1.0.0 (2015-03-17)
|
|
||||||
|
|
||||||
Version 1.0.0 is the first tagged version, and is almost a complete rewrite. The primary differences with previous untagged versions are:
|
|
||||||
|
|
||||||
- The producer has been rewritten; there is now a `SyncProducer` with a blocking API, and an `AsyncProducer` that is non-blocking.
|
|
||||||
- The consumer has been rewritten to only open one connection per broker instead of one connection per partition.
|
|
||||||
- The main types of Sarama are now interfaces to make depedency injection easy; mock implementations for `Consumer`, `SyncProducer` and `AsyncProducer` are provided in the `github.com/Shopify/sarama/mocks` package.
|
|
||||||
- For most uses cases, it is no longer necessary to open a `Client`; this will be done for you.
|
|
||||||
- All the configuration values have been unified in the `Config` struct.
|
|
||||||
- Much improved test suite.
|
|
30
vendor/github.com/Shopify/sarama/Makefile
generated
vendored
30
vendor/github.com/Shopify/sarama/Makefile
generated
vendored
|
@ -1,30 +0,0 @@
|
||||||
default: fmt vet errcheck test
|
|
||||||
|
|
||||||
# Taken from https://github.com/codecov/example-go#caveat-multiple-files
|
|
||||||
test:
|
|
||||||
echo "" > coverage.txt
|
|
||||||
for d in `go list ./... | grep -v vendor`; do \
|
|
||||||
go test -p 1 -v -timeout 90s -race -coverprofile=profile.out -covermode=atomic $$d || exit 1; \
|
|
||||||
if [ -f profile.out ]; then \
|
|
||||||
cat profile.out >> coverage.txt; \
|
|
||||||
rm profile.out; \
|
|
||||||
fi \
|
|
||||||
done
|
|
||||||
|
|
||||||
vet:
|
|
||||||
go vet ./...
|
|
||||||
|
|
||||||
# See https://github.com/kisielk/errcheck/pull/141 for details on ignorepkg
|
|
||||||
errcheck:
|
|
||||||
errcheck -ignorepkg fmt github.com/Shopify/sarama/...
|
|
||||||
|
|
||||||
fmt:
|
|
||||||
@if [ -n "$$(go fmt ./...)" ]; then echo 'Please run go fmt on your code.' && exit 1; fi
|
|
||||||
|
|
||||||
install_dependencies: install_errcheck get
|
|
||||||
|
|
||||||
install_errcheck:
|
|
||||||
go get github.com/kisielk/errcheck
|
|
||||||
|
|
||||||
get:
|
|
||||||
go get -t
|
|
39
vendor/github.com/Shopify/sarama/README.md
generated
vendored
39
vendor/github.com/Shopify/sarama/README.md
generated
vendored
|
@ -1,39 +0,0 @@
|
||||||
sarama
|
|
||||||
======
|
|
||||||
|
|
||||||
[](https://godoc.org/github.com/Shopify/sarama)
|
|
||||||
[](https://travis-ci.org/Shopify/sarama)
|
|
||||||
[](https://codecov.io/gh/Shopify/sarama)
|
|
||||||
|
|
||||||
Sarama is an MIT-licensed Go client library for [Apache Kafka](https://kafka.apache.org/) version 0.8 (and later).
|
|
||||||
|
|
||||||
### Getting started
|
|
||||||
|
|
||||||
- API documentation and examples are available via [godoc](https://godoc.org/github.com/Shopify/sarama).
|
|
||||||
- Mocks for testing are available in the [mocks](./mocks) subpackage.
|
|
||||||
- The [examples](./examples) directory contains more elaborate example applications.
|
|
||||||
- The [tools](./tools) directory contains command line tools that can be useful for testing, diagnostics, and instrumentation.
|
|
||||||
|
|
||||||
You might also want to look at the [Frequently Asked Questions](https://github.com/Shopify/sarama/wiki/Frequently-Asked-Questions).
|
|
||||||
|
|
||||||
### Compatibility and API stability
|
|
||||||
|
|
||||||
Sarama provides a "2 releases + 2 months" compatibility guarantee: we support
|
|
||||||
the two latest stable releases of Kafka and Go, and we provide a two month
|
|
||||||
grace period for older releases. This means we currently officially support
|
|
||||||
Go 1.8 through 1.10, and Kafka 0.11 through 1.1, although older releases are
|
|
||||||
still likely to work.
|
|
||||||
|
|
||||||
Sarama follows semantic versioning and provides API stability via the gopkg.in service.
|
|
||||||
You can import a version with a guaranteed stable API via http://gopkg.in/Shopify/sarama.v1.
|
|
||||||
A changelog is available [here](CHANGELOG.md).
|
|
||||||
|
|
||||||
### Contributing
|
|
||||||
|
|
||||||
* Get started by checking our [contribution guidelines](https://github.com/Shopify/sarama/blob/master/.github/CONTRIBUTING.md).
|
|
||||||
* Read the [Sarama wiki](https://github.com/Shopify/sarama/wiki) for more
|
|
||||||
technical and design details.
|
|
||||||
* The [Kafka Protocol Specification](https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol)
|
|
||||||
contains a wealth of useful information.
|
|
||||||
* For more general issues, there is [a google group](https://groups.google.com/forum/#!forum/kafka-clients) for Kafka client developers.
|
|
||||||
* If you have any questions, just ask!
|
|
20
vendor/github.com/Shopify/sarama/Vagrantfile
generated
vendored
20
vendor/github.com/Shopify/sarama/Vagrantfile
generated
vendored
|
@ -1,20 +0,0 @@
|
||||||
# -*- mode: ruby -*-
|
|
||||||
# vi: set ft=ruby :
|
|
||||||
|
|
||||||
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
|
|
||||||
VAGRANTFILE_API_VERSION = "2"
|
|
||||||
|
|
||||||
# We have 5 * 192MB ZK processes and 5 * 320MB Kafka processes => 2560MB
|
|
||||||
MEMORY = 3072
|
|
||||||
|
|
||||||
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
|
|
||||||
config.vm.box = "ubuntu/trusty64"
|
|
||||||
|
|
||||||
config.vm.provision :shell, path: "vagrant/provision.sh"
|
|
||||||
|
|
||||||
config.vm.network "private_network", ip: "192.168.100.67"
|
|
||||||
|
|
||||||
config.vm.provider "virtualbox" do |v|
|
|
||||||
v.memory = MEMORY
|
|
||||||
end
|
|
||||||
end
|
|
10
vendor/github.com/Shopify/sarama/dev.yml
generated
vendored
10
vendor/github.com/Shopify/sarama/dev.yml
generated
vendored
|
@ -1,10 +0,0 @@
|
||||||
name: sarama
|
|
||||||
|
|
||||||
up:
|
|
||||||
- go:
|
|
||||||
version: '1.9'
|
|
||||||
|
|
||||||
commands:
|
|
||||||
test:
|
|
||||||
run: make test
|
|
||||||
desc: 'run unit tests'
|
|
56
vendor/github.com/apache/thrift/.clang-format
generated
vendored
56
vendor/github.com/apache/thrift/.clang-format
generated
vendored
|
@ -1,56 +0,0 @@
|
||||||
---
|
|
||||||
Language: Cpp
|
|
||||||
# BasedOnStyle: LLVM
|
|
||||||
AccessModifierOffset: -2
|
|
||||||
ConstructorInitializerIndentWidth: 2
|
|
||||||
AlignEscapedNewlinesLeft: false
|
|
||||||
AlignTrailingComments: true
|
|
||||||
AllowAllParametersOfDeclarationOnNextLine: false
|
|
||||||
AllowShortBlocksOnASingleLine: false
|
|
||||||
AllowShortIfStatementsOnASingleLine: false
|
|
||||||
AllowShortLoopsOnASingleLine: false
|
|
||||||
AllowShortFunctionsOnASingleLine: Inline
|
|
||||||
AlwaysBreakTemplateDeclarations: true
|
|
||||||
AlwaysBreakBeforeMultilineStrings: true
|
|
||||||
BreakBeforeBinaryOperators: true
|
|
||||||
BreakBeforeTernaryOperators: true
|
|
||||||
BreakConstructorInitializersBeforeComma: false
|
|
||||||
BinPackParameters: false
|
|
||||||
ColumnLimit: 100
|
|
||||||
ConstructorInitializerAllOnOneLineOrOnePerLine: true
|
|
||||||
DerivePointerAlignment: false
|
|
||||||
IndentCaseLabels: false
|
|
||||||
IndentWrappedFunctionNames: false
|
|
||||||
IndentFunctionDeclarationAfterType: false
|
|
||||||
MaxEmptyLinesToKeep: 1
|
|
||||||
KeepEmptyLinesAtTheStartOfBlocks: true
|
|
||||||
NamespaceIndentation: None
|
|
||||||
ObjCSpaceAfterProperty: false
|
|
||||||
ObjCSpaceBeforeProtocolList: true
|
|
||||||
PenaltyBreakBeforeFirstCallParameter: 190
|
|
||||||
PenaltyBreakComment: 300
|
|
||||||
PenaltyBreakString: 10000
|
|
||||||
PenaltyBreakFirstLessLess: 120
|
|
||||||
PenaltyExcessCharacter: 1000000
|
|
||||||
PenaltyReturnTypeOnItsOwnLine: 1200
|
|
||||||
PointerAlignment: Left
|
|
||||||
SpacesBeforeTrailingComments: 1
|
|
||||||
Cpp11BracedListStyle: true
|
|
||||||
Standard: Auto
|
|
||||||
IndentWidth: 2
|
|
||||||
TabWidth: 4
|
|
||||||
UseTab: Never
|
|
||||||
BreakBeforeBraces: Attach
|
|
||||||
SpacesInParentheses: false
|
|
||||||
SpacesInAngles: false
|
|
||||||
SpaceInEmptyParentheses: false
|
|
||||||
SpacesInCStyleCastParentheses: false
|
|
||||||
SpacesInContainerLiterals: true
|
|
||||||
SpaceBeforeAssignmentOperators: true
|
|
||||||
ContinuationIndentWidth: 4
|
|
||||||
CommentPragmas: '^ IWYU pragma:'
|
|
||||||
ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH ]
|
|
||||||
SpaceBeforeParens: ControlStatements
|
|
||||||
DisableFormat: false
|
|
||||||
...
|
|
||||||
|
|
1
vendor/github.com/apache/thrift/.dockerignore
generated
vendored
1
vendor/github.com/apache/thrift/.dockerignore
generated
vendored
|
@ -1 +0,0 @@
|
||||||
.git/
|
|
112
vendor/github.com/apache/thrift/.editorconfig
generated
vendored
112
vendor/github.com/apache/thrift/.editorconfig
generated
vendored
|
@ -1,112 +0,0 @@
|
||||||
#
|
|
||||||
## Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
## or more contributor license agreements. See the NOTICE file
|
|
||||||
## distributed with this work for additional information
|
|
||||||
## regarding copyright ownership. The ASF licenses this file
|
|
||||||
## to you under the Apache License, Version 2.0 (the
|
|
||||||
## "License"); you may not use this file except in compliance
|
|
||||||
## with the License. You may obtain a copy of the License at
|
|
||||||
##
|
|
||||||
## http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
##
|
|
||||||
## Unless required by applicable law or agreed to in writing,
|
|
||||||
## software distributed under the License is distributed on an
|
|
||||||
## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
## KIND, either express or implied. See the License for the
|
|
||||||
## specific language governing permissions and limitations
|
|
||||||
## under the License.
|
|
||||||
##
|
|
||||||
#
|
|
||||||
|
|
||||||
# EditorConfig: http://editorconfig.org
|
|
||||||
# see doc/coding_standards.md
|
|
||||||
|
|
||||||
root = true
|
|
||||||
|
|
||||||
[*]
|
|
||||||
end_of_line = lf
|
|
||||||
charset = utf-8
|
|
||||||
trim_trailing_whitespace = true
|
|
||||||
insert_final_newline = true
|
|
||||||
|
|
||||||
# ActionScript
|
|
||||||
# [*.as]
|
|
||||||
|
|
||||||
# C
|
|
||||||
# [*.c]
|
|
||||||
|
|
||||||
# C++
|
|
||||||
[*.cpp]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
|
|
||||||
# C-Sharp
|
|
||||||
# [*.cs]
|
|
||||||
|
|
||||||
# D
|
|
||||||
# [*.d]
|
|
||||||
|
|
||||||
# Erlang
|
|
||||||
# [*.erl]
|
|
||||||
|
|
||||||
# Go-lang
|
|
||||||
[*.go]
|
|
||||||
indent_style = tab
|
|
||||||
indent_size = 8
|
|
||||||
|
|
||||||
# C header files
|
|
||||||
# [*.h]
|
|
||||||
|
|
||||||
# Haskell
|
|
||||||
# [*.hs]
|
|
||||||
|
|
||||||
# Haxe
|
|
||||||
# [*.hx]
|
|
||||||
|
|
||||||
# Java
|
|
||||||
# [*.java]
|
|
||||||
|
|
||||||
# Javascript
|
|
||||||
[*.js]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
|
|
||||||
# JSON
|
|
||||||
[*.json]
|
|
||||||
indent_style = space
|
|
||||||
indent_size = 2
|
|
||||||
|
|
||||||
# Lua
|
|
||||||
# [*.lua]
|
|
||||||
|
|
||||||
[*.markdown]
|
|
||||||
indent_style = space
|
|
||||||
trim_trailing_whitespace = false
|
|
||||||
|
|
||||||
[*.md]
|
|
||||||
indent_style = space
|
|
||||||
trim_trailing_whitespace = false
|
|
||||||
|
|
||||||
# OCaml
|
|
||||||
# [*.ml]
|
|
||||||
|
|
||||||
# Delphi Pascal
|
|
||||||
# [*.pas]
|
|
||||||
|
|
||||||
# PHP
|
|
||||||
# [*.php]
|
|
||||||
|
|
||||||
# Perl
|
|
||||||
# [*.pm]
|
|
||||||
|
|
||||||
# Python
|
|
||||||
# [*.py]
|
|
||||||
|
|
||||||
# Ruby
|
|
||||||
# [*.rb]
|
|
||||||
|
|
||||||
# Typescript
|
|
||||||
# [*.ts]
|
|
||||||
|
|
||||||
# XML
|
|
||||||
# [*.xml]
|
|
1
vendor/github.com/apache/thrift/.gitattributes
generated
vendored
1
vendor/github.com/apache/thrift/.gitattributes
generated
vendored
|
@ -1 +0,0 @@
|
||||||
* text=auto
|
|
378
vendor/github.com/apache/thrift/.gitignore
generated
vendored
378
vendor/github.com/apache/thrift/.gitignore
generated
vendored
|
@ -1,378 +0,0 @@
|
||||||
# generic ignores
|
|
||||||
*.la
|
|
||||||
*.lo
|
|
||||||
*.o
|
|
||||||
*.deps
|
|
||||||
*.dirstamp
|
|
||||||
*.libs
|
|
||||||
*.log
|
|
||||||
*.trs
|
|
||||||
*.suo
|
|
||||||
*.pyc
|
|
||||||
*.cache
|
|
||||||
*.user
|
|
||||||
*.ipch
|
|
||||||
*.sdf
|
|
||||||
*.jar
|
|
||||||
*.exe
|
|
||||||
*.dll
|
|
||||||
*_ReSharper*
|
|
||||||
*.opensdf
|
|
||||||
*.swp
|
|
||||||
*.hi
|
|
||||||
*~
|
|
||||||
tags
|
|
||||||
|
|
||||||
.*project
|
|
||||||
.classpath
|
|
||||||
.settings
|
|
||||||
.checkstyle
|
|
||||||
junit*.properties
|
|
||||||
.idea
|
|
||||||
*.iml
|
|
||||||
*.ipr
|
|
||||||
*.iws
|
|
||||||
gen-*
|
|
||||||
Makefile
|
|
||||||
Makefile.in
|
|
||||||
aclocal.m4
|
|
||||||
acinclude.m4
|
|
||||||
autom4te.cache
|
|
||||||
cmake-*
|
|
||||||
node_modules
|
|
||||||
compile
|
|
||||||
test-driver
|
|
||||||
erl_crash.dump
|
|
||||||
project.lock.json
|
|
||||||
|
|
||||||
.sonar
|
|
||||||
.DS_Store
|
|
||||||
.svn
|
|
||||||
.vagrant
|
|
||||||
.vscode
|
|
||||||
.vs
|
|
||||||
|
|
||||||
/contrib/.vagrant/
|
|
||||||
/aclocal/libtool.m4
|
|
||||||
/aclocal/lt*.m4
|
|
||||||
/autoscan.log
|
|
||||||
/autoscan-*.log
|
|
||||||
/cmake_*
|
|
||||||
/compiler/cpp/compiler.VC.db
|
|
||||||
/compiler/cpp/compiler.VC.VC.opendb
|
|
||||||
/compiler/cpp/test/plugin/t_cpp_generator.cc
|
|
||||||
/compiler/cpp/src/thrift/plugin/plugin_constants.cpp
|
|
||||||
/compiler/cpp/src/thrift/plugin/plugin_constants.h
|
|
||||||
/compiler/cpp/src/thrift/plugin/plugin_types.cpp
|
|
||||||
/compiler/cpp/src/thrift/plugin/plugin_types.h
|
|
||||||
/compiler/cpp/test/*test
|
|
||||||
/compiler/cpp/test/thrift-gen-*
|
|
||||||
/compiler/cpp/src/thrift/thrift-bootstrap
|
|
||||||
/compiler/cpp/src/thrift/plugin/gen.stamp
|
|
||||||
/compiler/cpp/Debug
|
|
||||||
/compiler/cpp/Release
|
|
||||||
/compiler/cpp/src/thrift/libparse.a
|
|
||||||
/compiler/cpp/src/thrift/thriftl.cc
|
|
||||||
/compiler/cpp/src/thrift/thrifty.cc
|
|
||||||
/compiler/cpp/src/thrift/thrifty.hh
|
|
||||||
/compiler/cpp/src/thrift/windows/version.h
|
|
||||||
/compiler/cpp/thrift
|
|
||||||
/compiler/cpp/thriftl.cc
|
|
||||||
/compiler/cpp/thrifty.cc
|
|
||||||
/compiler/cpp/lex.yythriftl.cc
|
|
||||||
/compiler/cpp/thrifty.h
|
|
||||||
/compiler/cpp/thrifty.hh
|
|
||||||
/compiler/cpp/src/thrift/version.h
|
|
||||||
/config.*
|
|
||||||
/configure
|
|
||||||
/configure.lineno
|
|
||||||
/configure.scan
|
|
||||||
/contrib/fb303/config.cache
|
|
||||||
/contrib/fb303/config.log
|
|
||||||
/contrib/fb303/config.status
|
|
||||||
/contrib/fb303/configure
|
|
||||||
/contrib/fb303/cpp/libfb303.a
|
|
||||||
/contrib/fb303/java/build/
|
|
||||||
/contrib/fb303/py/build/
|
|
||||||
/contrib/fb303/py/fb303/FacebookService-remote
|
|
||||||
/contrib/fb303/py/fb303/FacebookService.py
|
|
||||||
/contrib/fb303/py/fb303/__init__.py
|
|
||||||
/contrib/fb303/py/fb303/constants.py
|
|
||||||
/contrib/fb303/py/fb303/ttypes.py
|
|
||||||
/depcomp
|
|
||||||
/install-sh
|
|
||||||
/lib/cl/backport-update.zip
|
|
||||||
/lib/cl/lib
|
|
||||||
/lib/cl/run-tests
|
|
||||||
/lib/cpp/Debug/
|
|
||||||
/lib/cpp/Debug-mt/
|
|
||||||
/lib/cpp/Release/
|
|
||||||
/lib/cpp/Release-mt/
|
|
||||||
/lib/cpp/src/thrift/qt/moc_TQTcpServer.cpp
|
|
||||||
/lib/cpp/src/thrift/qt/moc__TQTcpServer.cpp
|
|
||||||
/lib/cpp/src/thrift/config.h
|
|
||||||
/lib/cpp/src/thrift/stamp-h2
|
|
||||||
/lib/cpp/test/Benchmark
|
|
||||||
/lib/cpp/test/AllProtocolsTest
|
|
||||||
/lib/cpp/test/AnnotationTest
|
|
||||||
/lib/cpp/test/DebugProtoTest
|
|
||||||
/lib/cpp/test/DenseProtoTest
|
|
||||||
/lib/cpp/test/EnumTest
|
|
||||||
/lib/cpp/test/JSONProtoTest
|
|
||||||
/lib/cpp/test/OptionalRequiredTest
|
|
||||||
/lib/cpp/test/SecurityTest
|
|
||||||
/lib/cpp/test/SpecializationTest
|
|
||||||
/lib/cpp/test/ReflectionTest
|
|
||||||
/lib/cpp/test/RecursiveTest
|
|
||||||
/lib/cpp/test/TFDTransportTest
|
|
||||||
/lib/cpp/test/TFileTransportTest
|
|
||||||
/lib/cpp/test/TInterruptTest
|
|
||||||
/lib/cpp/test/TNonblockingServerTest
|
|
||||||
/lib/cpp/test/TNonblockingSSLServerTest
|
|
||||||
/lib/cpp/test/TPipedTransportTest
|
|
||||||
/lib/cpp/test/TServerIntegrationTest
|
|
||||||
/lib/cpp/test/TSocketInterruptTest
|
|
||||||
/lib/cpp/test/TransportTest
|
|
||||||
/lib/cpp/test/UnitTests
|
|
||||||
/lib/cpp/test/ZlibTest
|
|
||||||
/lib/cpp/test/OpenSSLManualInitTest
|
|
||||||
/lib/cpp/test/concurrency_test
|
|
||||||
/lib/cpp/test/link_test
|
|
||||||
/lib/cpp/test/processor_test
|
|
||||||
/lib/cpp/test/tests.xml
|
|
||||||
/lib/cpp/concurrency_test
|
|
||||||
/lib/cpp/*.pc
|
|
||||||
/lib/cpp/x64/Debug/
|
|
||||||
/lib/cpp/x64/Debug-mt/
|
|
||||||
/lib/cpp/x64/Release
|
|
||||||
/lib/cpp/x64/Release-mt
|
|
||||||
/lib/c_glib/*.gcda
|
|
||||||
/lib/c_glib/*.gcno
|
|
||||||
/lib/c_glib/*.loT
|
|
||||||
/lib/c_glib/src/thrift/config.h
|
|
||||||
/lib/c_glib/src/thrift/stamp-h3
|
|
||||||
/lib/c_glib/test/*.gcno
|
|
||||||
/lib/c_glib/test/testwrapper.sh
|
|
||||||
/lib/c_glib/test/testwrapper-test*
|
|
||||||
/lib/c_glib/test/testapplicationexception
|
|
||||||
/lib/c_glib/test/testbinaryprotocol
|
|
||||||
/lib/c_glib/test/testcompactprotocol
|
|
||||||
/lib/c_glib/test/testbufferedtransport
|
|
||||||
/lib/c_glib/test/testcontainertest
|
|
||||||
/lib/c_glib/test/testdebugproto
|
|
||||||
/lib/c_glib/test/testfdtransport
|
|
||||||
/lib/c_glib/test/testframedtransport
|
|
||||||
/lib/c_glib/test/testmemorybuffer
|
|
||||||
/lib/c_glib/test/testoptionalrequired
|
|
||||||
/lib/c_glib/test/testtransportsslsocket
|
|
||||||
/lib/c_glib/test/testsimpleserver
|
|
||||||
/lib/c_glib/test/teststruct
|
|
||||||
/lib/c_glib/test/testthrifttest
|
|
||||||
/lib/c_glib/test/testthrifttestclient
|
|
||||||
/lib/c_glib/test/testtransportsocket
|
|
||||||
/lib/c_glib/test/testserialization
|
|
||||||
/lib/c_glib/thriftc.pc
|
|
||||||
/lib/c_glib/thrift_c_glib.pc
|
|
||||||
/lib/csharp/**/bin/
|
|
||||||
/lib/csharp/**/obj/
|
|
||||||
/lib/csharp/src/packages
|
|
||||||
/lib/d/test/*.pem
|
|
||||||
/lib/d/libthriftd*.a
|
|
||||||
/lib/d/test/async_test
|
|
||||||
/lib/d/test/client_pool_test
|
|
||||||
/lib/d/test/serialization_benchmark
|
|
||||||
/lib/d/test/stress_test_server
|
|
||||||
/lib/d/test/thrift_test_client
|
|
||||||
/lib/d/test/thrift_test_server
|
|
||||||
/lib/d/test/transport_test
|
|
||||||
/lib/d/unittest/
|
|
||||||
/lib/dart/coverage
|
|
||||||
/lib/dart/**/.packages
|
|
||||||
/lib/dart/**/packages
|
|
||||||
/lib/dart/**/.pub/
|
|
||||||
/lib/dart/**/pubspec.lock
|
|
||||||
/lib/delphi/**/*.identcache
|
|
||||||
/lib/delphi/**/*.local
|
|
||||||
/lib/delphi/**/*.dcu
|
|
||||||
/lib/delphi/**/*.2007
|
|
||||||
/lib/delphi/**/*.dproj
|
|
||||||
/lib/delphi/**/codegen/*.bat
|
|
||||||
/lib/erl/.eunit
|
|
||||||
/lib/erl/.generated
|
|
||||||
/lib/erl/.rebar/
|
|
||||||
/lib/erl/deps/
|
|
||||||
/lib/erl/ebin
|
|
||||||
/lib/erl/src/thrift.app.src
|
|
||||||
/lib/erl/test/*.beam
|
|
||||||
/lib/erl/test/*.hrl
|
|
||||||
/lib/erl/test/Thrift_omit_without.thrift
|
|
||||||
/lib/haxe/test/bin
|
|
||||||
/lib/haxe/test/data.tmp
|
|
||||||
/lib/hs/dist
|
|
||||||
/lib/java/.gradle
|
|
||||||
/lib/java/android/.gradle
|
|
||||||
/lib/java/build
|
|
||||||
/lib/java/target
|
|
||||||
/lib/js/dist
|
|
||||||
/lib/js/doc
|
|
||||||
/lib/js/test/build
|
|
||||||
/lib/netcore/**/bin
|
|
||||||
/lib/netcore/**/obj
|
|
||||||
/lib/nodejs/coverage
|
|
||||||
/lib/nodejs/node_modules/
|
|
||||||
/lib/perl/MANIFEST
|
|
||||||
/lib/perl/MYMETA.json
|
|
||||||
/lib/perl/MYMETA.yml
|
|
||||||
/lib/perl/Makefile-perl.mk
|
|
||||||
/lib/perl/blib
|
|
||||||
/lib/perl/pm_to_blib
|
|
||||||
/lib/py/build
|
|
||||||
/lib/py/thrift.egg-info/
|
|
||||||
/lib/rb/Gemfile.lock
|
|
||||||
/lib/rb/debug_proto_test
|
|
||||||
/lib/rb/.config
|
|
||||||
/lib/rb/ext/conftest.dSYM/
|
|
||||||
/lib/rb/ext/mkmf.log
|
|
||||||
/lib/rb/ext/thrift_native.bundle
|
|
||||||
/lib/rb/ext/thrift_native.so
|
|
||||||
/lib/rb/test/
|
|
||||||
/lib/rb/thrift-*.gem
|
|
||||||
/lib/php/src/ext/thrift_protocol/Makefile.*
|
|
||||||
/lib/php/src/ext/thrift_protocol/build/
|
|
||||||
/lib/php/src/ext/thrift_protocol/config.*
|
|
||||||
/lib/php/src/ext/thrift_protocol/configure
|
|
||||||
/lib/php/src/ext/thrift_protocol/configure.in
|
|
||||||
/lib/php/src/ext/thrift_protocol/install-sh
|
|
||||||
/lib/php/src/ext/thrift_protocol/libtool
|
|
||||||
/lib/php/src/ext/thrift_protocol/ltmain.sh
|
|
||||||
/lib/php/src/ext/thrift_protocol/missing
|
|
||||||
/lib/php/src/ext/thrift_protocol/mkinstalldirs
|
|
||||||
/lib/php/src/ext/thrift_protocol/modules/
|
|
||||||
/lib/php/src/ext/thrift_protocol/php_thrift_protocol.lo
|
|
||||||
/lib/php/src/ext/thrift_protocol/run-tests.php
|
|
||||||
/lib/php/src/ext/thrift_protocol/thrift_protocol.la
|
|
||||||
/lib/php/src/ext/thrift_protocol/tmp-php.ini
|
|
||||||
/lib/php/src/packages/
|
|
||||||
/lib/php/test/TEST-*.xml
|
|
||||||
/lib/php/test/packages/
|
|
||||||
/lib/py/dist/
|
|
||||||
/lib/erl/logs/
|
|
||||||
/lib/go/pkg
|
|
||||||
/lib/go/src
|
|
||||||
/lib/go/test/gopath/
|
|
||||||
/lib/go/test/ThriftTest.thrift
|
|
||||||
/lib/rs/target/
|
|
||||||
/lib/rs/Cargo.lock
|
|
||||||
/lib/rs/test/Cargo.lock
|
|
||||||
/lib/rs/test/target/
|
|
||||||
/lib/rs/test/bin/
|
|
||||||
/lib/rs/test/src/base_one.rs
|
|
||||||
/lib/rs/test/src/base_two.rs
|
|
||||||
/lib/rs/test/src/midlayer.rs
|
|
||||||
/lib/rs/test/src/recursive.rs
|
|
||||||
/lib/rs/test/src/ultimate.rs
|
|
||||||
/lib/rs/*.iml
|
|
||||||
/lib/rs/**/*.iml
|
|
||||||
/libtool
|
|
||||||
/ltmain.sh
|
|
||||||
/missing
|
|
||||||
/node_modules/
|
|
||||||
/vendor/
|
|
||||||
/composer.lock
|
|
||||||
/stamp-h1
|
|
||||||
/test/features/results.json
|
|
||||||
/test/results.json
|
|
||||||
/test/c_glib/test_client
|
|
||||||
/test/c_glib/test_server
|
|
||||||
/test/cl/TestServer
|
|
||||||
/test/cl/TestClient
|
|
||||||
/test/cpp/StressTest
|
|
||||||
/test/cpp/StressTestNonBlocking
|
|
||||||
/test/cpp/TestClient
|
|
||||||
/test/cpp/TestServer
|
|
||||||
/test/csharp/obj
|
|
||||||
/test/csharp/bin
|
|
||||||
/test/dart/**/.packages
|
|
||||||
/test/dart/**/packages
|
|
||||||
/test/dart/**/.pub/
|
|
||||||
/test/dart/**/pubspec.lock
|
|
||||||
/test/log/
|
|
||||||
/test/test.log
|
|
||||||
/test/erl/.generated
|
|
||||||
/test/erl/.rebar
|
|
||||||
/test/erl/ebin
|
|
||||||
/test/go/bin/
|
|
||||||
/test/go/ThriftTest.thrift
|
|
||||||
/test/go/gopath
|
|
||||||
/test/go/pkg/
|
|
||||||
/test/go/src/code.google.com/
|
|
||||||
/test/go/src/common/mock_handler.go
|
|
||||||
/test/go/src/github.com/golang/
|
|
||||||
/test/go/src/golang.org/
|
|
||||||
/test/go/src/gen/
|
|
||||||
/test/go/src/thrift
|
|
||||||
/test/haxe/bin
|
|
||||||
/test/hs/TestClient
|
|
||||||
/test/hs/TestServer
|
|
||||||
/test/php/php_ext_dir/
|
|
||||||
/test/py.twisted/_trial_temp/
|
|
||||||
/test/rb/Gemfile.lock
|
|
||||||
/test/netcore/**/bin
|
|
||||||
/test/netcore/**/obj
|
|
||||||
/test/netcore/Thrift
|
|
||||||
/test/php/php_ext_dir/
|
|
||||||
/test/rs/Cargo.lock
|
|
||||||
/test/rs/src/thrift_test.rs
|
|
||||||
/test/rs/bin/
|
|
||||||
/test/rs/target/
|
|
||||||
/test/rs/*.iml
|
|
||||||
/test/rs/**/*.iml
|
|
||||||
/tutorial/cl/TutorialClient
|
|
||||||
/tutorial/cl/TutorialServer
|
|
||||||
/tutorial/cpp/TutorialClient
|
|
||||||
/tutorial/cpp/TutorialServer
|
|
||||||
/tutorial/c_glib/tutorial_client
|
|
||||||
/tutorial/c_glib/tutorial_server
|
|
||||||
/tutorial/csharp/CsharpServer/obj
|
|
||||||
/tutorial/csharp/CsharpServer/bin
|
|
||||||
/tutorial/csharp/CsharpClient/obj
|
|
||||||
/tutorial/csharp/CsharpClient/bin
|
|
||||||
/tutorial/d/async_client
|
|
||||||
/tutorial/d/client
|
|
||||||
/tutorial/d/server
|
|
||||||
/tutorial/dart/**/.packages
|
|
||||||
/tutorial/dart/**/packages
|
|
||||||
/tutorial/dart/**/.pub/
|
|
||||||
/tutorial/dart/**/pubspec.lock
|
|
||||||
/tutorial/delphi/**/*.dsk
|
|
||||||
/tutorial/delphi/**/*.local
|
|
||||||
/tutorial/delphi/**/*.tvsconfig
|
|
||||||
/tutorial/delphi/**/dcu
|
|
||||||
/tutorial/delphi/**/*.local
|
|
||||||
/tutorial/delphi/**/*.identcache
|
|
||||||
/tutorial/go/gopath
|
|
||||||
/tutorial/go/go-tutorial
|
|
||||||
/tutorial/go/calculator-remote
|
|
||||||
/tutorial/go/src/shared
|
|
||||||
/tutorial/go/src/tutorial
|
|
||||||
/tutorial/go/src/git.apache.org
|
|
||||||
/tutorial/go/src/golang.org
|
|
||||||
/tutorial/haxe/bin
|
|
||||||
/tutorial/hs/dist/
|
|
||||||
/tutorial/java/build/
|
|
||||||
/tutorial/js/build/
|
|
||||||
/tutorial/netcore/**/bin
|
|
||||||
/tutorial/netcore/**/obj
|
|
||||||
/tutorial/netcore/Thrift
|
|
||||||
/tutorial/rs/*.iml
|
|
||||||
/tutorial/rs/src/shared.rs
|
|
||||||
/tutorial/rs/src/tutorial.rs
|
|
||||||
/tutorial/rs/bin
|
|
||||||
/tutorial/rs/target
|
|
||||||
/tutorial/rs/Cargo.lock
|
|
||||||
/ylwrap
|
|
||||||
/lib/cl/quicklisp.lisp
|
|
||||||
/lib/cl/externals/
|
|
||||||
/lib/cl/run-tests
|
|
||||||
/lib/cl/quicklisp/
|
|
||||||
|
|
7
vendor/github.com/apache/thrift/.rustfmt.toml
generated
vendored
7
vendor/github.com/apache/thrift/.rustfmt.toml
generated
vendored
|
@ -1,7 +0,0 @@
|
||||||
max_width = 100
|
|
||||||
fn_args_layout = "Block"
|
|
||||||
array_layout = "Block"
|
|
||||||
where_style = "Rfc"
|
|
||||||
generics_indent = "Block"
|
|
||||||
fn_call_style = "Block"
|
|
||||||
reorder_imported_names = true
|
|
175
vendor/github.com/apache/thrift/.travis.yml
generated
vendored
175
vendor/github.com/apache/thrift/.travis.yml
generated
vendored
|
@ -1,175 +0,0 @@
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
# build Apache Thrift on Travis CI - https://travis-ci.org/
|
|
||||||
|
|
||||||
#
|
|
||||||
# Docker Integration
|
|
||||||
# see: build/docker/README.md
|
|
||||||
#
|
|
||||||
|
|
||||||
sudo: required
|
|
||||||
dist: trusty
|
|
||||||
language: cpp
|
|
||||||
|
|
||||||
services:
|
|
||||||
- docker
|
|
||||||
|
|
||||||
install:
|
|
||||||
- if [[ `uname` == "Linux" ]]; then build/docker/refresh.sh; fi
|
|
||||||
|
|
||||||
stages:
|
|
||||||
- docker # docker images
|
|
||||||
- thrift # thrift build jobs
|
|
||||||
|
|
||||||
env:
|
|
||||||
global:
|
|
||||||
- SCRIPT="cmake.sh"
|
|
||||||
- BUILD_ARG=""
|
|
||||||
- BUILD_ENV="-e CC=gcc -e CXX=g++ -e THRIFT_CROSSTEST_CONCURRENCY=4"
|
|
||||||
- DISTRO=ubuntu-artful
|
|
||||||
- BUILD_LIBS="CPP C_GLIB HASKELL JAVA PYTHON TESTING TUTORIALS" # only meaningful for CMake builds
|
|
||||||
- TRAVIS_BUILD_STAGE=test
|
|
||||||
# DOCKER_REPO (this works for all builds as a source for docker images - you can override for fork builds in your Travis settings)
|
|
||||||
- DOCKER_REPO="thrift/thrift-build"
|
|
||||||
# DOCKER_USER (provide in your Travis settings if you want to build and update docker images once, instead of on every job)
|
|
||||||
# DOCKER_PASS (same)
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
include:
|
|
||||||
# ========================= stage: docker =========================
|
|
||||||
- stage: docker
|
|
||||||
script: true
|
|
||||||
env:
|
|
||||||
- JOB="Docker Build ubuntu-xenial 16.04"
|
|
||||||
- DISTRO=ubuntu-xenial
|
|
||||||
- TRAVIS_BUILD_STAGE=docker
|
|
||||||
- script: true
|
|
||||||
env:
|
|
||||||
- JOB="Docker Build ubuntu-artful 17.10"
|
|
||||||
- DISTRO=ubuntu-artful
|
|
||||||
- TRAVIS_BUILD_STAGE=docker
|
|
||||||
|
|
||||||
# ========================= stage: thrift =======================
|
|
||||||
# ------------------------- phase: cross ------------------------
|
|
||||||
# apache/thrift official PR builds can exceed 50 minutes per job so combine all cross tests
|
|
||||||
- stage: thrift
|
|
||||||
script: build/docker/run.sh
|
|
||||||
if: repo = apache/thrift
|
|
||||||
env:
|
|
||||||
- JOB="Cross Language Tests"
|
|
||||||
- SCRIPT="cross-test.sh"
|
|
||||||
|
|
||||||
# fork based PR builds cannot exceed 50 minutes per job
|
|
||||||
- stage: thrift
|
|
||||||
script: build/docker/run.sh
|
|
||||||
if: repo != apache/thrift
|
|
||||||
env:
|
|
||||||
- JOB="Cross Language Tests (Binary Protocol)"
|
|
||||||
- SCRIPT="cross-test.sh"
|
|
||||||
- BUILD_ARG="-'(binary)'"
|
|
||||||
|
|
||||||
- stage: thrift
|
|
||||||
script: build/docker/run.sh
|
|
||||||
if: repo != apache/thrift
|
|
||||||
env:
|
|
||||||
- JOB="Cross Language Tests (Header, JSON Protocols)"
|
|
||||||
- SCRIPT="cross-test.sh"
|
|
||||||
- BUILD_ARG="-'(header|json)'"
|
|
||||||
|
|
||||||
- stage: thrift
|
|
||||||
script: build/docker/run.sh
|
|
||||||
if: repo != apache/thrift
|
|
||||||
env:
|
|
||||||
- JOB="Cross Language Tests (Compact and Multiplexed Protocols)"
|
|
||||||
- SCRIPT="cross-test.sh"
|
|
||||||
- BUILD_ARG="-'(compact|multiplexed)'"
|
|
||||||
|
|
||||||
# ------------------------- phase: sca --------------------------
|
|
||||||
# QA jobs for code analytics and metrics
|
|
||||||
- stage: thrift
|
|
||||||
script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="Static Code Analysis"
|
|
||||||
- SCRIPT="sca.sh"
|
|
||||||
|
|
||||||
# C and C++ undefined behavior.
|
|
||||||
# A binary crashes if undefined behavior occurs and produces a stack trace.
|
|
||||||
# python is disabled, see: THRIFT-4360
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="UBSan"
|
|
||||||
- SCRIPT="ubsan.sh"
|
|
||||||
- BUILD_ARG="--without-python --without-py3"
|
|
||||||
|
|
||||||
# ------------------------- phase: cmake ------------------------
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="CMake"
|
|
||||||
|
|
||||||
# C++ specific options: compiler plug-in, threading model
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="C++98 (Boost Thread)"
|
|
||||||
- SCRIPT="cmake.sh"
|
|
||||||
- BUILD_LIBS="CPP TESTING TUTORIALS"
|
|
||||||
- BUILD_ARG="-DCMAKE_CXX_STANDARD=98 -DCMAKE_CXX_STANDARD_REQUIRED=ON -DCMAKE_CXX_EXTENSIONS=OFF --DWITH_BOOSTTHREADS=ON -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
|
|
||||||
- BUILD_ENV="-e CC=clang -e CXX=clang++"
|
|
||||||
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="C++ (Std Thread) and Plugin"
|
|
||||||
- SCRIPT="cmake.sh"
|
|
||||||
- BUILD_LIBS="CPP TESTING TUTORIALS"
|
|
||||||
- BUILD_ARG="-DWITH_PLUGIN=ON -DWITH_STDTHREADS=ON -DWITH_PYTHON=OFF -DWITH_C_GLIB=OFF -DWITH_JAVA=OFF -DWITH_HASKELL=OFF"
|
|
||||||
- BUILD_ENV="-e CC=clang -e CXX=clang++"
|
|
||||||
|
|
||||||
# ------------------------- phase: autotools --------------------
|
|
||||||
# TODO: Remove them once migrated to CMake
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="Autotools (Ubuntu Artful)"
|
|
||||||
- DISTRO=ubuntu-artful
|
|
||||||
- SCRIPT="autotools.sh"
|
|
||||||
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="Autotools (Ubuntu Xenial)"
|
|
||||||
- DISTRO=ubuntu-xenial
|
|
||||||
- SCRIPT="autotools.sh"
|
|
||||||
|
|
||||||
# ------------------------- phase: dist -------------------------
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="make dist"
|
|
||||||
- DISTRO=ubuntu-artful
|
|
||||||
- SCRIPT="make-dist.sh"
|
|
||||||
|
|
||||||
- script: build/docker/run.sh
|
|
||||||
env:
|
|
||||||
- JOB="Debian Packages"
|
|
||||||
- DISTRO=ubuntu-artful
|
|
||||||
- SCRIPT="dpkg.sh"
|
|
||||||
|
|
||||||
### ------------------------- phase: osx -------------------------
|
|
||||||
# disabled due to the time delays it imposes on build jobs
|
|
||||||
# - os: osx
|
|
||||||
# osx_image: xcode9
|
|
||||||
# script: build/docker/scripts/autotools.sh
|
|
||||||
|
|
2663
vendor/github.com/apache/thrift/CHANGES
generated
vendored
2663
vendor/github.com/apache/thrift/CHANGES
generated
vendored
File diff suppressed because it is too large
Load diff
124
vendor/github.com/apache/thrift/CMakeLists.txt
generated
vendored
124
vendor/github.com/apache/thrift/CMakeLists.txt
generated
vendored
|
@ -1,124 +0,0 @@
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
cmake_minimum_required(VERSION 3.1)
|
|
||||||
|
|
||||||
# CMake 3.1 supports C++ standards selection with CMAKE_CXX_STANDARD
|
|
||||||
# If you need CMake 3.1+ for Ubuntu 14.04, try
|
|
||||||
# https://launchpad.net/~george-edison55/+archive/ubuntu/cmake-3.x
|
|
||||||
# If you need CMake 3.1+ for debian "jessie", get it from jessie-backports
|
|
||||||
# Otherwise
|
|
||||||
# http://cmake.org
|
|
||||||
|
|
||||||
project("Apache Thrift")
|
|
||||||
|
|
||||||
set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" "${CMAKE_CURRENT_SOURCE_DIR}/build/cmake")
|
|
||||||
|
|
||||||
# TODO: add `git rev-parse --short HEAD`
|
|
||||||
# Read the version information from the Autoconf file
|
|
||||||
file (STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/configure.ac" CONFIGURE_AC REGEX "AC_INIT\\(.*\\)" )
|
|
||||||
|
|
||||||
# The following variable is used in the version.h.in file
|
|
||||||
string(REGEX REPLACE "AC_INIT\\(\\[.*\\], \\[([0-9]+\\.[0-9]+\\.[0-9]+(-dev)?)\\]\\)" "\\1" PACKAGE_VERSION ${CONFIGURE_AC})
|
|
||||||
message(STATUS "Parsed Thrift package version: ${PACKAGE_VERSION}")
|
|
||||||
|
|
||||||
# These are internal to CMake
|
|
||||||
string(REGEX REPLACE "([0-9]+\\.[0-9]+\\.[0-9]+)(-dev)?" "\\1" thrift_VERSION ${PACKAGE_VERSION})
|
|
||||||
string(REGEX REPLACE "([0-9]+)\\.[0-9]+\\.[0-9]+" "\\1" thrift_VERSION_MAJOR ${thrift_VERSION})
|
|
||||||
string(REGEX REPLACE "[0-9]+\\.([0-9])+\\.[0-9]+" "\\1" thrift_VERSION_MINOR ${thrift_VERSION})
|
|
||||||
string(REGEX REPLACE "[0-9]+\\.[0-9]+\\.([0-9]+)" "\\1" thrift_VERSION_PATCH ${thrift_VERSION})
|
|
||||||
message(STATUS "Parsed Thrift version: ${thrift_VERSION} (${thrift_VERSION_MAJOR}.${thrift_VERSION_MINOR}.${thrift_VERSION_PATCH})")
|
|
||||||
|
|
||||||
# Some default settings
|
|
||||||
include(DefineCMakeDefaults)
|
|
||||||
|
|
||||||
# Build time options are defined here
|
|
||||||
include(DefineOptions)
|
|
||||||
include(DefineInstallationPaths)
|
|
||||||
|
|
||||||
# Based on the options set some platform specifics
|
|
||||||
include(DefinePlatformSpecifc)
|
|
||||||
|
|
||||||
# Generate the config.h file
|
|
||||||
include(ConfigureChecks)
|
|
||||||
|
|
||||||
# Package it
|
|
||||||
include(CPackConfig)
|
|
||||||
|
|
||||||
|
|
||||||
find_package(Threads)
|
|
||||||
|
|
||||||
include(CTest)
|
|
||||||
if(BUILD_TESTING)
|
|
||||||
message(STATUS "Building with unittests")
|
|
||||||
|
|
||||||
enable_testing()
|
|
||||||
# Define "make check" as alias for "make test"
|
|
||||||
add_custom_target(check COMMAND ctest)
|
|
||||||
else ()
|
|
||||||
message(STATUS "Building without tests")
|
|
||||||
endif ()
|
|
||||||
|
|
||||||
if(BUILD_COMPILER)
|
|
||||||
if(NOT EXISTS ${THRIFT_COMPILER})
|
|
||||||
set(THRIFT_COMPILER $<TARGET_FILE:thrift-compiler>)
|
|
||||||
endif()
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/compiler/cpp)
|
|
||||||
elseif(EXISTS ${THRIFT_COMPILER})
|
|
||||||
add_executable(thrift-compiler IMPORTED)
|
|
||||||
set_property(TARGET thrift-compiler PROPERTY IMPORTED_LOCATION ${THRIFT_COMPILER})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_CPP)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/cpp)
|
|
||||||
if(BUILD_TUTORIALS)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/tutorial/cpp)
|
|
||||||
endif()
|
|
||||||
if(BUILD_TESTING)
|
|
||||||
if(WITH_LIBEVENT AND WITH_ZLIB AND WITH_OPENSSL)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/test/cpp)
|
|
||||||
else()
|
|
||||||
message(WARNING "libevent and/or ZLIB and/or OpenSSL not found or disabled; will not build some tests")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_C_GLIB)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/c_glib)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_JAVA)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/java)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_PYTHON)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/py)
|
|
||||||
if(BUILD_TESTING)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/test/py)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_HASKELL)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/lib/hs)
|
|
||||||
if(BUILD_TESTING)
|
|
||||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/test/hs)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
PRINT_CONFIG_SUMMARY()
|
|
116
vendor/github.com/apache/thrift/CONTRIBUTING.md
generated
vendored
116
vendor/github.com/apache/thrift/CONTRIBUTING.md
generated
vendored
|
@ -1,116 +0,0 @@
|
||||||
# How to Contribute #
|
|
||||||
|
|
||||||
Thank you for your interest in contributing to the Apache Thrift project! Information on why and how to contribute is available on the Apache Software Foundation (ASF) web site. In particular, we recommend the following to become acquainted with Apache Contributions:
|
|
||||||
|
|
||||||
* [Contributors Tech Guide](http://www.apache.org/dev/contributors)
|
|
||||||
* [Get involved!](http://www.apache.org/foundation/getinvolved.html)
|
|
||||||
* [Legal aspects on Submission of Contributions (Patches)](http://www.apache.org/licenses/LICENSE-2.0.html#contributions)
|
|
||||||
|
|
||||||
## GitHub pull requests ##
|
|
||||||
|
|
||||||
This is the preferred method of submitting changes. When you submit a pull request through github,
|
|
||||||
it activates the continuous integration (CI) build systems at Appveyor and Travis to build your changesxi
|
|
||||||
on a variety of Linux and Windows configurations and run all the test suites. Follow these requirements
|
|
||||||
for a successful pull request:
|
|
||||||
|
|
||||||
1. All code changes require an [Apache Jira THRIFT Issue](http://issues.apache.org/jira/browse/THRIFT) ticket.
|
|
||||||
|
|
||||||
1. All pull requests should contain a single commit per issue, or we will ask you to squash it.
|
|
||||||
1. The pull request title must begin with the Jira THRIFT ticket identifier, for example:
|
|
||||||
|
|
||||||
THRIFT-9999: an example pull request title
|
|
||||||
|
|
||||||
1. Commit messages must follow this pattern for code changes (deviations will not be merged):
|
|
||||||
|
|
||||||
THRIFT-9999: [summary of fix, one line if possible]
|
|
||||||
Client: [language(s) affected, comma separated, use lib/ directory names please]
|
|
||||||
|
|
||||||
Instructions:
|
|
||||||
|
|
||||||
1. Create a fork in your GitHub account of http://github.com/apache/thrift
|
|
||||||
1. Clone the fork to your development system.
|
|
||||||
1. Create a branch for your changes (best practice is issue as branch name, e.g. THRIFT-9999).
|
|
||||||
1. Modify the source to include the improvement/bugfix, and:
|
|
||||||
|
|
||||||
* Remember to provide *tests* for all submitted changes!
|
|
||||||
* Use test-driven development (TDD): add a test that will isolate the bug *before* applying the change that fixes it.
|
|
||||||
* Verify that you follow [Thrift Coding Standards](/docs/coding_standards) (you can run 'make style', which ensures proper format for some languages).
|
|
||||||
* [*optional*] Verify that your change works on other platforms by adding a GitHub service hook to [Travis CI](http://docs.travis-ci.com/user/getting-started/#Step-one%3A-Sign-in) and [AppVeyor](http://www.appveyor.com/docs). You can use this technique to run the Thrift CI jobs in your account to check your changes before they are made public. Every GitHub pull request into Thrift will run the full CI build and test suite on your changes.
|
|
||||||
|
|
||||||
1. Squash your changes to a single commit. This maintains clean change history.
|
|
||||||
1. Commit and push changes to your branch (please use issue name and description as commit title, e.g. "THRIFT-9999: make it perfect"), with the affected languages on the next line of the description.
|
|
||||||
1. Use GitHub to create a pull request going from your branch to apache:master. Ensure that the Jira ticket number is at the beginning of the title of your pull request, same as the commit title.
|
|
||||||
1. Wait for other contributors or committers to review your new addition, and for a CI build to complete.
|
|
||||||
1. Wait for a committer to commit your patch. You can nudge the committers if necessary by sending a message to the [Apache Thrift mailing list](https://thrift.apache.org/mailing).
|
|
||||||
|
|
||||||
## If you want to build the project locally ##
|
|
||||||
|
|
||||||
For Windows systems, see our detailed instructions on the [CMake README](/build/cmake/README.md).
|
|
||||||
|
|
||||||
For Windows Native C++ builds, see our detailed instructions on the [WinCPP README](/build/wincpp/README.md).
|
|
||||||
|
|
||||||
For unix systems, see our detailed instructions on the [Docker README](/build/docker/README.md).
|
|
||||||
|
|
||||||
## If you want to review open issues... ##
|
|
||||||
|
|
||||||
1. Review the [GitHub Pull Request Backlog](https://github.com/apache/thrift/pulls). Code reviews are open to all.
|
|
||||||
2. Review the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT). You can search for tickets relating to languages you are interested in or currently using with thrift, for example a Jira search (Issues -> Search For Issues) query of ``project = THRIFT AND component in ("Erlang - Library") and status not in (resolved, closed)`` will locate all the open Erlang Library issues.
|
|
||||||
|
|
||||||
## If you discovered a defect... ##
|
|
||||||
|
|
||||||
1. Check to see if the issue is already in the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT).
|
|
||||||
1. If not, create a ticket describing the change you're proposing in the Jira issue tracker.
|
|
||||||
1. Contribute your code changes using the GitHub pull request method:
|
|
||||||
|
|
||||||
## Contributing via Patch ##
|
|
||||||
|
|
||||||
Some changes do not require a build, for example in documentation. For changes that are not code or build related, you can submit a patch on Jira for review. To create a patch from changes in your local directory:
|
|
||||||
|
|
||||||
git diff > ../THRIFT-NNNN.patch
|
|
||||||
|
|
||||||
then wait for contributors or committers to review your changes, and then for a committer to apply your patch.
|
|
||||||
|
|
||||||
## GitHub recipes for Pull Requests ##
|
|
||||||
|
|
||||||
Sometimes commmitters may ask you to take actions in your pull requests. Here are some recipes that will help you accomplish those requests. These examples assume you are working on Jira issue THRIFT-9999. You should also be familiar with the [upstream](https://help.github.com/articles/syncing-a-fork/) repository concept.
|
|
||||||
|
|
||||||
### Squash your changes ###
|
|
||||||
|
|
||||||
If you have not submitted a pull request yet, or if you have not yet rebased your existing pull request, you can squash all your commits down to a single commit. This makes life easier for the committers. If your pull request on GitHub has more than one commit, you should do this.
|
|
||||||
|
|
||||||
1. Use the command ``git log`` to identify how many commits you made since you began.
|
|
||||||
2. Use the command ``git rebase -i HEAD~N`` where N is the number of commits.
|
|
||||||
3. Leave "pull" in the first line.
|
|
||||||
4. Change all other lines from "pull" to "fixup".
|
|
||||||
5. All your changes are now in a single commit.
|
|
||||||
|
|
||||||
If you already have a pull request outstanding, you will need to do a "force push" to overwrite it since you changed your commit history:
|
|
||||||
|
|
||||||
git push -u origin THRIFT-9999 --force
|
|
||||||
|
|
||||||
A more detailed walkthrough of a squash can be found at [Git Ready](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html).
|
|
||||||
|
|
||||||
### Rebase your pull request ###
|
|
||||||
|
|
||||||
If your pull request has a conflict with master, it needs to be rebased:
|
|
||||||
|
|
||||||
git checkout THRIFT-9999
|
|
||||||
git rebase upstream master
|
|
||||||
(resolve any conflicts, make sure it builds)
|
|
||||||
git push -u origin THRIFT-9999 --force
|
|
||||||
|
|
||||||
### Fix a bad merge ###
|
|
||||||
|
|
||||||
If your pull request contains commits that are not yours, then you should use the following technique to fix the bad merge in your branch:
|
|
||||||
|
|
||||||
git checkout master
|
|
||||||
git pull upstream master
|
|
||||||
git checkout -b THRIFT-9999-take-2
|
|
||||||
git cherry-pick ...
|
|
||||||
(pick only your commits from your original pull request in ascending chronological order)
|
|
||||||
squash your changes to a single commit if there is more than one (see above)
|
|
||||||
git push -u origin THRIFT-9999-take-2:THRIFT-9999
|
|
||||||
|
|
||||||
This procedure will apply only your commits in order to the current master, then you will squash them to a single commit, and then you force push your local THRIFT-9999-take-2 into remote THRIFT-9999 which represents your pull request, replacing all the commits with the new one.
|
|
||||||
|
|
||||||
|
|
342
vendor/github.com/apache/thrift/LANGUAGES.md
generated
vendored
342
vendor/github.com/apache/thrift/LANGUAGES.md
generated
vendored
|
@ -1,342 +0,0 @@
|
||||||
# Apache Thrift Language Support #
|
|
||||||
|
|
||||||
Last Modified: 2018-03-06
|
|
||||||
|
|
||||||
Thrift supports many programming languages and has an impressive test suite that exercises most of the languages, protocols, and transports that represents a matrix of thousands of possible combinations. Each language typically has a minimum required version as well as support libraries - some mandatory and some optional. All of this information is provided below to help you assess whether you can use Apache Thrift with your project. Obviously this is a complex matrix to maintain and may not be correct in all cases - if you spot an error please inform the developers using the mailing list.
|
|
||||||
|
|
||||||
Apache Thrift has a choice of two build systems. The `autoconf` build system is the most complete build and is used to build all supported languages. The `cmake` build system has been designated by the project to replace `autoconf` however this transition will take quite some time to complete.
|
|
||||||
|
|
||||||
The Language/Library Levels indicate the minimum and maximum versions that are used in the [continuous integration environments](build/docker/README.md) (Appveyor, Travis) for Apache Thrift. Other language levels may be supported for each language, however tested less thoroughly; check the README file inside each lib directory for additional details. Note that while a language may contain support for protocols, transports, and servers, the extent to which each is tested as part of the overall build process varies. The definitive integration test for the project is called the "cross" test which executes a test matrix with clients and servers communicating across languages.
|
|
||||||
|
|
||||||
<table style="font-size: 60%; padding: 1px;">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th rowspan=2>Language</th>
|
|
||||||
<th rowspan=2 align=center>Since</th>
|
|
||||||
<th colspan=2 align=center>Build Systems</th>
|
|
||||||
<th colspan=2 align=center>Lang/Lib Levels (Tested)</th>
|
|
||||||
<th colspan=6 align=center>Low-Level Transports</th>
|
|
||||||
<th colspan=3 align=center>Transport Wrappers</th>
|
|
||||||
<th colspan=4 align=center>Protocols</th>
|
|
||||||
<th colspan=5 align=center>Servers</th>
|
|
||||||
<th rowspan=2>Open Issues</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<!-- Build Systems ---------><th>autoconf</th><th>cmake</th>
|
|
||||||
<!-- Lang/Lib Levels -------><th>Min</th><th>Max</th>
|
|
||||||
<!-- Low-Level Transports --><th><a href="https://en.wikipedia.org/wiki/Unix_domain_socket">Domain</a></th><th> File </th><th>Memory</th><th> Pipe </th><th>Socket</th><th> TLS </th>
|
|
||||||
<!-- Transport Wrappers ----><th>Framed</th><th> http </th><th> zlib </th>
|
|
||||||
<!-- Protocols -------------><th><a href="doc/specs/thrift-binary-protocol.md">Binary</a></th><th><a href="doc/specs/thrift-compact-protocol.md">Compact</a></th><th> JSON </th><th>Multiplex</th>
|
|
||||||
<!-- Servers ---------------><th>Forking</th><th>Nonblocking</th><th>Simple</th><th>Threaded</th><th>ThreadPool</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/as3/README.md">ActionScript</a></td>
|
|
||||||
<!-- Since -----------------><td>0.3.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>ActionScript 3</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12313722">ActionScript</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/c_glib/README.md">C (glib)</a></td>
|
|
||||||
<!-- Since -----------------><td>0.6.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Language Levels -------><td>2.48.2</td><td>2.54.0</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12313854">C (glib)</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/cpp/README.md">C++</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>C++98</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312313">C++</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/csharp/README.md">C#</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>.NET 3.5 / mono 3.2.8.0</td><td>.NET 4.6.1 / mono 4.6.2.7</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312362">C# (.NET)</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/cocoa/README.md">Cocoa</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>unknown</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312398">Cocoa</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/cl/README.md">Common Lisp</a></td>
|
|
||||||
<!-- Since -----------------><td>0.12.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>SBCL 1.4.5</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT-82">Common Lisp</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/d/README.md">Dlang</a></td>
|
|
||||||
<!-- Since -----------------><td>0.9.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>2.073.2</td><td>2.077.1</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12317904">D</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/dart/README.md">Dart</a></td>
|
|
||||||
<!-- Since -----------------><td>0.10.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>1.22.1</td><td>1.24.3</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12328006">Dart</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/delphi/README.md">Delphi</a></td>
|
|
||||||
<!-- Since -----------------><td>0.8.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>2010</td><td>unknown</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12316601">Delphi</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/netcore/README.md">.NET Core</a></td>
|
|
||||||
<!-- Since -----------------><td>0.11.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>2.1.4</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12331176">.NET Core</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/erl/README.md">Erlang</a></td>
|
|
||||||
<!-- Since -----------------><td>0.3.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>18.3</td><td>20.0.4</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312390">Erlang</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/go/README.md">Go</a></td>
|
|
||||||
<!-- Since -----------------><td>0.7.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>1.7.6</td><td>1.10</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12314307">Go</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/hs/README.md">Haskell</a></td>
|
|
||||||
<!-- Since -----------------><td>0.5.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Language Levels -------><td>7.10.3</td><td>8.0.2</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312704">Haskell</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/haxe/README.md">Haxe</a></td>
|
|
||||||
<!-- Since -----------------><td>0.9.3</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>3.2.1</td><td>3.4.4</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12324347">Haxe</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/java/README.md">Java (SE)</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>1.8.0_151</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312314">Java SE</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/javame/README.md">Java (ME)</a></td>
|
|
||||||
<!-- Since -----------------><td>0.5.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>unknown</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12313759">Java ME</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/js/README.md">Javascript</a></td>
|
|
||||||
<!-- Since -----------------><td>0.3.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>unknown</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12313418">Javascript</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/lua/README.md">Lua</a></td>
|
|
||||||
<!-- Since -----------------><td>0.9.2</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>5.1.5</td><td>5.2.4</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12322659">Lua</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/nodejs/README.md">node.js</a></td>
|
|
||||||
<!-- Since -----------------><td>0.6.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>6.x</td><td>8.x</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12314320">node.js</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/ocaml/README.md">OCaml</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>4.04.0</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12313660">OCaml</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/perl/README.md">Perl</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>5.22.1</td><td>5.26.0</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312312">Perl</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/php/README.md">PHP</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>7.0.22</td><td>7.1.8</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312431">PHP</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/py/README.md">Python</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Language Levels -------><td>2.7.12, 3.5.2</td><td>2.7.14, 3.6.3</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312315">Python</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/rb/README.md">Ruby</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>2.3.1p112</td><td>2.3.3p222</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12312316">Ruby</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/rs/README.md">Rust</a></td>
|
|
||||||
<!-- Since -----------------><td>0.11.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td>1.17.0</td><td>1.21.0</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12331420">Rust</a></td>
|
|
||||||
</tr>
|
|
||||||
<tr align=center>
|
|
||||||
<td align=left><a href="lib/st/README.md">Smalltalk</a></td>
|
|
||||||
<!-- Since -----------------><td>0.2.0</td>
|
|
||||||
<!-- Build Systems ---------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Language Levels -------><td colspan=2>unknown</td>
|
|
||||||
<!-- Low-Level Transports --><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Transport Wrappers ----><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Protocols -------------><td><img src="doc/images/cgrn.png" alt="Yes"/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<!-- Servers ---------------><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td><td><img src="doc/images/cred.png" alt=""/></td>
|
|
||||||
<td align=left><a href="https://issues.apache.org/jira/browse/THRIFT/component/12313861">Smalltalk</a></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tfoot>
|
|
||||||
<tr>
|
|
||||||
<th rowspan=2>Language</th>
|
|
||||||
<th rowspan=2 align=center>Since</th>
|
|
||||||
<!-- Build Systems ---------><th>autoconf</th><th>cmake</th>
|
|
||||||
<!-- Lang/Lib Levels -------><th>Min</th><th>Max</th>
|
|
||||||
<!-- Low-Level Transports --><th><a href="https://en.wikipedia.org/wiki/Unix_domain_socket">Domain</a></th></th><th> File </th><th>Memory</th><th> Pipe </th><th>Socket</th><th> TLS </th>
|
|
||||||
<!-- Transport Wrappers ----><th>Framed</th><th> http </th><th> zlib </th>
|
|
||||||
<!-- Protocols -------------><th><a href="doc/specs/thrift-binary-protocol.md">Binary</a></th><th><a href="doc/specs/thrift-compact-protocol.md">Compact</a></th><th> JSON </th><th>Multiplex</th>
|
|
||||||
<!-- Servers ---------------><th>Forking</th><th>Nonblocking</th><th>Simple</th><th>Threaded</th><th>ThreadPool</th>
|
|
||||||
<th rowspan=2>Open Issues</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<th colspan=2 align=center>Build Systems</th>
|
|
||||||
<th colspan=2 align=center>Lang/Lib Levels (Tested)</th>
|
|
||||||
<th colspan=6 align=center>Low-Level Transports</th>
|
|
||||||
<th colspan=3 align=center>Transport Wrappers</th>
|
|
||||||
<th colspan=4 align=center>Protocols</th>
|
|
||||||
<th colspan=5 align=center>Servers</th>
|
|
||||||
</tr>
|
|
||||||
</tfoot>
|
|
||||||
</table>
|
|
135
vendor/github.com/apache/thrift/Makefile.am
generated
vendored
135
vendor/github.com/apache/thrift/Makefile.am
generated
vendored
|
@ -1,135 +0,0 @@
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
ACLOCAL_AMFLAGS = -I ./aclocal
|
|
||||||
|
|
||||||
if WITH_PLUGIN
|
|
||||||
# To enable bootstrap, build order is lib/cpp -> compiler -> others
|
|
||||||
SUBDIRS = lib/cpp compiler/cpp lib
|
|
||||||
if WITH_TESTS
|
|
||||||
SUBDIRS += lib/cpp/test
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
SUBDIRS = compiler/cpp lib
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_TESTS
|
|
||||||
SUBDIRS += test
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_TUTORIAL
|
|
||||||
SUBDIRS += tutorial
|
|
||||||
endif
|
|
||||||
|
|
||||||
dist-hook:
|
|
||||||
find $(distdir) -type f \( -iname ".DS_Store" -or -iname "._*" -or -iname ".gitignore" \) | xargs rm -rf
|
|
||||||
find $(distdir) -type d \( -iname ".deps" -or -iname ".libs" \) | xargs rm -rf
|
|
||||||
find $(distdir) -type d \( -iname ".svn" -or -iname ".git" \) | xargs rm -rf
|
|
||||||
|
|
||||||
print-version:
|
|
||||||
@echo $(PACKAGE_VERSION)
|
|
||||||
|
|
||||||
.PHONY: precross cross
|
|
||||||
precross-%: all
|
|
||||||
$(MAKE) -C $* precross
|
|
||||||
precross: all precross-test precross-lib
|
|
||||||
|
|
||||||
empty :=
|
|
||||||
space := $(empty) $(empty)
|
|
||||||
comma := ,
|
|
||||||
|
|
||||||
CROSS_LANGS = @MAYBE_CPP@ @MAYBE_C_GLIB@ @MAYBE_CL@ @MAYBE_D@ @MAYBE_JAVA@ @MAYBE_CSHARP@ @MAYBE_PYTHON@ @MAYBE_PY3@ @MAYBE_RUBY@ @MAYBE_HASKELL@ @MAYBE_PERL@ @MAYBE_PHP@ @MAYBE_GO@ @MAYBE_NODEJS@ @MAYBE_DART@ @MAYBE_ERLANG@ @MAYBE_LUA@ @MAYBE_RS@ @MAYBE_DOTNETCORE@
|
|
||||||
CROSS_LANGS_COMMA_SEPARATED = $(subst $(space),$(comma),$(CROSS_LANGS))
|
|
||||||
|
|
||||||
if WITH_PY3
|
|
||||||
CROSS_PY=$(PYTHON3)
|
|
||||||
else
|
|
||||||
CROSS_PY=$(PYTHON)
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_PYTHON
|
|
||||||
crossfeature: precross
|
|
||||||
$(CROSS_PY) test/test.py --retry-count 5 --features .* --skip-known-failures --server $(CROSS_LANGS_COMMA_SEPARATED)
|
|
||||||
else
|
|
||||||
# feature test needs python build
|
|
||||||
crossfeature:
|
|
||||||
endif
|
|
||||||
|
|
||||||
cross-%: precross crossfeature
|
|
||||||
$(CROSS_PY) test/test.py --retry-count 5 --skip-known-failures --server $(CROSS_LANGS_COMMA_SEPARATED) --client $(CROSS_LANGS_COMMA_SEPARATED) --regex "$*"
|
|
||||||
|
|
||||||
cross: cross-.*
|
|
||||||
|
|
||||||
TIMES = 1 2 3
|
|
||||||
fail: precross
|
|
||||||
$(CROSS_PY) test/test.py || true
|
|
||||||
$(CROSS_PY) test/test.py --update-expected-failures=overwrite
|
|
||||||
$(foreach var,$(TIMES),test/test.py -s || true;test/test.py --update-expected-failures=merge;)
|
|
||||||
|
|
||||||
codespell_skip_files = \
|
|
||||||
*.jar \
|
|
||||||
*.class \
|
|
||||||
*.so \
|
|
||||||
*.a \
|
|
||||||
*.la \
|
|
||||||
*.o \
|
|
||||||
*.p12 \
|
|
||||||
*OCamlMakefile \
|
|
||||||
.keystore \
|
|
||||||
.truststore \
|
|
||||||
CHANGES \
|
|
||||||
config.sub \
|
|
||||||
configure \
|
|
||||||
depcomp \
|
|
||||||
libtool.m4 \
|
|
||||||
output.* \
|
|
||||||
rebar \
|
|
||||||
thrift
|
|
||||||
|
|
||||||
skipped_files = $(subst $(space),$(comma),$(codespell_skip_files))
|
|
||||||
|
|
||||||
style-local:
|
|
||||||
codespell --write-changes --skip=$(skipped_files) --disable-colors
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
|
||||||
.clang-format \
|
|
||||||
.editorconfig \
|
|
||||||
.travis.yml \
|
|
||||||
.rustfmt.toml \
|
|
||||||
.dockerignore \
|
|
||||||
appveyor.yml \
|
|
||||||
bower.json \
|
|
||||||
build \
|
|
||||||
bootstrap.sh \
|
|
||||||
cleanup.sh \
|
|
||||||
CMakeLists.txt \
|
|
||||||
composer.json \
|
|
||||||
contrib \
|
|
||||||
CONTRIBUTING.md \
|
|
||||||
debian \
|
|
||||||
doc \
|
|
||||||
doap.rdf \
|
|
||||||
package.json \
|
|
||||||
sonar-project.properties \
|
|
||||||
LANGUAGES.md \
|
|
||||||
LICENSE \
|
|
||||||
CHANGES \
|
|
||||||
NOTICE \
|
|
||||||
README.md \
|
|
||||||
Thrift.podspec
|
|
178
vendor/github.com/apache/thrift/README.md
generated
vendored
178
vendor/github.com/apache/thrift/README.md
generated
vendored
|
@ -1,178 +0,0 @@
|
||||||
Apache Thrift
|
|
||||||
=============
|
|
||||||
|
|
||||||
Last Modified: 2017-11-11
|
|
||||||
|
|
||||||
License
|
|
||||||
=======
|
|
||||||
|
|
||||||
Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
or more contributor license agreements. See the NOTICE file
|
|
||||||
distributed with this work for additional information
|
|
||||||
regarding copyright ownership. The ASF licenses this file
|
|
||||||
to you under the Apache License, Version 2.0 (the
|
|
||||||
"License"); you may not use this file except in compliance
|
|
||||||
with the License. You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing,
|
|
||||||
software distributed under the License is distributed on an
|
|
||||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
KIND, either express or implied. See the License for the
|
|
||||||
specific language governing permissions and limitations
|
|
||||||
under the License.
|
|
||||||
|
|
||||||
Introduction
|
|
||||||
============
|
|
||||||
|
|
||||||
Thrift is a lightweight, language-independent software stack with an
|
|
||||||
associated code generation mechanism for RPC. Thrift provides clean
|
|
||||||
abstractions for data transport, data serialization, and application
|
|
||||||
level processing. The code generation system takes a simple definition
|
|
||||||
language as its input and generates code across programming languages that
|
|
||||||
uses the abstracted stack to build interoperable RPC clients and servers.
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
Thrift makes it easy for programs written in different programming
|
|
||||||
languages to share data and call remote procedures. With support
|
|
||||||
for [over 20 programming languages](LANGUAGES.md), chances are Thrift
|
|
||||||
supports the ones that you currently use.
|
|
||||||
|
|
||||||
Thrift is specifically designed to support non-atomic version changes
|
|
||||||
across client and server code.
|
|
||||||
|
|
||||||
For more details on Thrift's design and implementation, take a gander at
|
|
||||||
the Thrift whitepaper included in this distribution or at the README.md file
|
|
||||||
in your particular subdirectory of interest.
|
|
||||||
|
|
||||||
Project Hierarchy
|
|
||||||
=================
|
|
||||||
|
|
||||||
thrift/
|
|
||||||
|
|
||||||
compiler/
|
|
||||||
|
|
||||||
Contains the Thrift compiler, implemented in C++.
|
|
||||||
|
|
||||||
lib/
|
|
||||||
|
|
||||||
Contains the Thrift software library implementation, subdivided by
|
|
||||||
language of implementation.
|
|
||||||
|
|
||||||
cpp/
|
|
||||||
go/
|
|
||||||
java/
|
|
||||||
php/
|
|
||||||
py/
|
|
||||||
rb/
|
|
||||||
...
|
|
||||||
|
|
||||||
test/
|
|
||||||
|
|
||||||
Contains sample Thrift files and test code across the target programming
|
|
||||||
languages.
|
|
||||||
|
|
||||||
tutorial/
|
|
||||||
|
|
||||||
Contains a basic tutorial that will teach you how to develop software
|
|
||||||
using Thrift.
|
|
||||||
|
|
||||||
Requirements
|
|
||||||
============
|
|
||||||
|
|
||||||
See http://thrift.apache.org/docs/install for an up-to-date list of build requirements.
|
|
||||||
|
|
||||||
Resources
|
|
||||||
=========
|
|
||||||
|
|
||||||
More information about Thrift can be obtained on the Thrift webpage at:
|
|
||||||
|
|
||||||
http://thrift.apache.org
|
|
||||||
|
|
||||||
Acknowledgments
|
|
||||||
===============
|
|
||||||
|
|
||||||
Thrift was inspired by pillar, a lightweight RPC tool written by Adam D'Angelo,
|
|
||||||
and also by Google's protocol buffers.
|
|
||||||
|
|
||||||
Installation
|
|
||||||
============
|
|
||||||
|
|
||||||
If you are building from the first time out of the source repository, you will
|
|
||||||
need to generate the configure scripts. (This is not necessary if you
|
|
||||||
downloaded a tarball.) From the top directory, do:
|
|
||||||
|
|
||||||
./bootstrap.sh
|
|
||||||
|
|
||||||
Once the configure scripts are generated, thrift can be configured.
|
|
||||||
From the top directory, do:
|
|
||||||
|
|
||||||
./configure
|
|
||||||
|
|
||||||
You may need to specify the location of the boost files explicitly.
|
|
||||||
If you installed boost in /usr/local, you would run configure as follows:
|
|
||||||
|
|
||||||
./configure --with-boost=/usr/local
|
|
||||||
|
|
||||||
Note that by default the thrift C++ library is typically built with debugging
|
|
||||||
symbols included. If you want to customize these options you should use the
|
|
||||||
CXXFLAGS option in configure, as such:
|
|
||||||
|
|
||||||
./configure CXXFLAGS='-g -O2'
|
|
||||||
./configure CFLAGS='-g -O2'
|
|
||||||
./configure CPPFLAGS='-DDEBUG_MY_FEATURE'
|
|
||||||
|
|
||||||
To enable gcov required options -fprofile-arcs -ftest-coverage enable them:
|
|
||||||
|
|
||||||
./configure --enable-coverage
|
|
||||||
|
|
||||||
Run ./configure --help to see other configuration options
|
|
||||||
|
|
||||||
Please be aware that the Python library will ignore the --prefix option
|
|
||||||
and just install wherever Python's distutils puts it (usually along
|
|
||||||
the lines of /usr/lib/pythonX.Y/site-packages/). If you need to control
|
|
||||||
where the Python modules are installed, set the PY_PREFIX variable.
|
|
||||||
(DESTDIR is respected for Python and C++.)
|
|
||||||
|
|
||||||
Make thrift:
|
|
||||||
|
|
||||||
make
|
|
||||||
|
|
||||||
From the top directory, become superuser and do:
|
|
||||||
|
|
||||||
make install
|
|
||||||
|
|
||||||
Note that some language packages must be installed manually using build tools
|
|
||||||
better suited to those languages (at the time of this writing, this applies
|
|
||||||
to Java, Ruby, PHP).
|
|
||||||
|
|
||||||
Look for the README.md file in the lib/<language>/ folder for more details on the
|
|
||||||
installation of each language library package.
|
|
||||||
|
|
||||||
Testing
|
|
||||||
=======
|
|
||||||
|
|
||||||
There are a large number of client library tests that can all be run
|
|
||||||
from the top-level directory.
|
|
||||||
|
|
||||||
make -k check
|
|
||||||
|
|
||||||
This will make all of the libraries (as necessary), and run through
|
|
||||||
the unit tests defined in each of the client libraries. If a single
|
|
||||||
language fails, the make check will continue on and provide a synopsis
|
|
||||||
at the end.
|
|
||||||
|
|
||||||
To run the cross-language test suite, please run:
|
|
||||||
|
|
||||||
make cross
|
|
||||||
|
|
||||||
This will run a set of tests that use different language clients and
|
|
||||||
servers.
|
|
||||||
|
|
||||||
Development
|
|
||||||
===========
|
|
||||||
|
|
||||||
To build the same way Travis CI builds the project you should use docker.
|
|
||||||
We have [comprehensive building instructions for docker](build/docker/README.md).
|
|
16
vendor/github.com/apache/thrift/Thrift-swift3.podspec
generated
vendored
16
vendor/github.com/apache/thrift/Thrift-swift3.podspec
generated
vendored
|
@ -1,16 +0,0 @@
|
||||||
Pod::Spec.new do |s|
|
|
||||||
s.name = "Thrift-swift3"
|
|
||||||
s.version = "1.1.0"
|
|
||||||
s.summary = "Apache Thrift is a lightweight, language-independent software stack with an associated code generation mechanism for RPC."
|
|
||||||
s.description = <<-DESC
|
|
||||||
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
|
|
||||||
DESC
|
|
||||||
s.homepage = "http://thrift.apache.org"
|
|
||||||
s.license = { :type => 'Apache License, Version 2.0', :url => 'https://raw.github.com/apache/thrift/thrift-0.9.0/LICENSE' }
|
|
||||||
s.author = { "The Apache Software Foundation" => "apache@apache.org" }
|
|
||||||
s.ios.deployment_target = '9.0'
|
|
||||||
s.osx.deployment_target = '10.10'
|
|
||||||
s.requires_arc = true
|
|
||||||
s.source = { :git => "https://github.com/apache/thrift.git", :tag => "thrift-1.0.0" }
|
|
||||||
s.source_files = "lib/swift/Sources/*.swift"
|
|
||||||
end
|
|
18
vendor/github.com/apache/thrift/Thrift.podspec
generated
vendored
18
vendor/github.com/apache/thrift/Thrift.podspec
generated
vendored
|
@ -1,18 +0,0 @@
|
||||||
Pod::Spec.new do |s|
|
|
||||||
s.name = "Thrift"
|
|
||||||
s.version = "1.0.0"
|
|
||||||
s.summary = "Apache Thrift is a lightweight, language-independent software stack with an associated code generation mechanism for RPC."
|
|
||||||
s.description = <<-DESC
|
|
||||||
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
|
|
||||||
DESC
|
|
||||||
s.homepage = "http://thrift.apache.org"
|
|
||||||
s.license = { :type => 'Apache License, Version 2.0', :url => 'https://raw.github.com/apache/thrift/thrift-0.9.0/LICENSE' }
|
|
||||||
s.author = { "The Apache Software Foundation" => "apache@apache.org" }
|
|
||||||
s.requires_arc = true
|
|
||||||
s.ios.deployment_target = '7.0'
|
|
||||||
s.osx.deployment_target = '10.8'
|
|
||||||
s.ios.framework = 'CFNetwork'
|
|
||||||
s.osx.framework = 'CoreServices'
|
|
||||||
s.source = { :git => "https://github.com/apache/thrift.git", :tag => "thrift-1.0.0" }
|
|
||||||
s.source_files = 'lib/cocoa/src/**/*.{h,m,swift}'
|
|
||||||
end
|
|
110
vendor/github.com/apache/thrift/appveyor.yml
generated
vendored
110
vendor/github.com/apache/thrift/appveyor.yml
generated
vendored
|
@ -1,110 +0,0 @@
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
# build Apache Thrift on AppVeyor - https://ci.appveyor.com
|
|
||||||
|
|
||||||
version: '1.0.0-dev.{build}'
|
|
||||||
|
|
||||||
shallow_clone: true
|
|
||||||
|
|
||||||
os:
|
|
||||||
- Visual Studio 2017
|
|
||||||
|
|
||||||
matrix:
|
|
||||||
allow_failures:
|
|
||||||
- PROFILE: CYGWIN
|
|
||||||
fast_finish: true
|
|
||||||
|
|
||||||
environment:
|
|
||||||
matrix:
|
|
||||||
- PROFILE: MSVC2017
|
|
||||||
PLATFORM: x64
|
|
||||||
CONFIGURATION: Release
|
|
||||||
BOOST_VERSION: 1.65.1
|
|
||||||
LIBEVENT_VERSION: 2.1.8
|
|
||||||
PYTHON_VERSION: 3.6
|
|
||||||
QT_VERSION: 5.10
|
|
||||||
ZLIB_VERSION: 1.2.11
|
|
||||||
DISABLED_TESTS: StressTestNonBlocking
|
|
||||||
|
|
||||||
- PROFILE: MSVC2013
|
|
||||||
PLATFORM: x86
|
|
||||||
CONFIGURATION: Release
|
|
||||||
BOOST_VERSION: 1.58.0
|
|
||||||
LIBEVENT_VERSION: 2.0.22
|
|
||||||
PYTHON_VERSION: 3.5
|
|
||||||
QT_VERSION: 5.8
|
|
||||||
ZLIB_VERSION: 1.2.8
|
|
||||||
DISABLED_TESTS: StressTestNonBlocking
|
|
||||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
|
|
||||||
|
|
||||||
- PROFILE: MINGW
|
|
||||||
PLATFORM: x64
|
|
||||||
CONFIGURATION: RelWithDebInfo
|
|
||||||
DISABLED_TESTS: StressTestNonBlocking
|
|
||||||
|
|
||||||
- PROFILE: CYGWIN
|
|
||||||
PLATFORM: x86
|
|
||||||
CONFIGURATION: RelWithDebInfo
|
|
||||||
DISABLED_TESTS: (ZlibTest|OpenSSLManualInitTest|TNonblockingServerTest|StressTestNonBlocking)
|
|
||||||
|
|
||||||
# - PROFILE: CYGWIN
|
|
||||||
# PLATFORM: x64
|
|
||||||
# CONFIGURATION: RelWithDebInfo
|
|
||||||
# DISABLED_TESTS: (ZlibTest|OpenSSLManualInitTest|TNonblockingServerTest|StressTestNonBlocking)
|
|
||||||
|
|
||||||
install:
|
|
||||||
- cd %APPVEYOR_BUILD_FOLDER%
|
|
||||||
- call build\appveyor\%PROFILE:~0,4%-appveyor-install.bat
|
|
||||||
- refreshenv
|
|
||||||
|
|
||||||
build_script:
|
|
||||||
- cd %APPVEYOR_BUILD_FOLDER%
|
|
||||||
- call build\appveyor\%PROFILE:~0,4%-appveyor-build.bat
|
|
||||||
|
|
||||||
test_script:
|
|
||||||
- cd %APPVEYOR_BUILD_FOLDER%
|
|
||||||
- call build\appveyor\%PROFILE:~0,4%-appveyor-test.bat
|
|
||||||
|
|
||||||
|
|
||||||
# artifact capture disabled as it might increase service cost for little gain:
|
|
||||||
#
|
|
||||||
# artifacts:
|
|
||||||
# - path: local-thrift-inst
|
|
||||||
# name: cmake installed content
|
|
||||||
# type: zip
|
|
||||||
#
|
|
||||||
# - path: local-thrift-build\Testing
|
|
||||||
# name: ctest output
|
|
||||||
# type: zip
|
|
||||||
|
|
||||||
# RDP support: use one or the other...
|
|
||||||
#
|
|
||||||
# enables RDP for each build job so you can inspect the environment at the beginning of the job:
|
|
||||||
# init:
|
|
||||||
# - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
|
||||||
#
|
|
||||||
# enables RDP at the end of the build job so you can login and re-run
|
|
||||||
# commands to see why something failed...
|
|
||||||
#on_finish:
|
|
||||||
# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
|
||||||
#
|
|
||||||
# also need:
|
|
||||||
# environment:
|
|
||||||
# APPVEYOR_RDP_PASSWORD: thr1FT2345$xyzZ
|
|
57
vendor/github.com/apache/thrift/bootstrap.sh
generated
vendored
57
vendor/github.com/apache/thrift/bootstrap.sh
generated
vendored
|
@ -1,57 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
./cleanup.sh
|
|
||||||
if test -d lib/php/src/ext/thrift_protocol ; then
|
|
||||||
if phpize -v >/dev/null 2>/dev/null ; then
|
|
||||||
(cd lib/php/src/ext/thrift_protocol && phpize)
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# libtoolize is called "glibtoolize" on OSX.
|
|
||||||
if libtoolize --version 1 >/dev/null 2>/dev/null; then
|
|
||||||
LIBTOOLIZE=libtoolize
|
|
||||||
elif glibtoolize --version 1 >/dev/null 2>/dev/null; then
|
|
||||||
LIBTOOLIZE=glibtoolize
|
|
||||||
else
|
|
||||||
echo >&2 "Couldn't find libtoolize!"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# we require automake 1.13 or later
|
|
||||||
# check must happen externally due to use of newer macro
|
|
||||||
AUTOMAKE_VERSION=`automake --version | grep automake | egrep -o '([0-9]{1,}\.)+[0-9]{1,}'`
|
|
||||||
if [ "$AUTOMAKE_VERSION" \< "1.13" ]; then
|
|
||||||
echo >&2 "automake version $AUTOMAKE_VERSION is too old (need 1.13 or later)"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
set -e
|
|
||||||
autoscan
|
|
||||||
$LIBTOOLIZE --copy --automake
|
|
||||||
aclocal -I ./aclocal
|
|
||||||
autoheader
|
|
||||||
sed '/undef VERSION/d' config.hin > config.hin2
|
|
||||||
mv config.hin2 config.hin
|
|
||||||
autoconf
|
|
||||||
automake --copy --add-missing --foreign
|
|
15
vendor/github.com/apache/thrift/bower.json
generated
vendored
15
vendor/github.com/apache/thrift/bower.json
generated
vendored
|
@ -1,15 +0,0 @@
|
||||||
{
|
|
||||||
"name": "thrift",
|
|
||||||
"homepage": "https://git-wip-us.apache.org/repos/asf/thrift.git",
|
|
||||||
"authors": [
|
|
||||||
"Apache Thrift <dev@thrift.apache.org>"
|
|
||||||
],
|
|
||||||
"description": "Apache Thrift",
|
|
||||||
"main": "lib/js/src/thrift.js",
|
|
||||||
"keywords": [
|
|
||||||
"thrift"
|
|
||||||
],
|
|
||||||
"license": "Apache v2",
|
|
||||||
"ignore": [
|
|
||||||
]
|
|
||||||
}
|
|
89
vendor/github.com/apache/thrift/cleanup.sh
generated
vendored
89
vendor/github.com/apache/thrift/cleanup.sh
generated
vendored
|
@ -1,89 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
topsrcdir="`dirname $0`"
|
|
||||||
cd "$topsrcdir"
|
|
||||||
|
|
||||||
make -k clean >/dev/null 2>&1
|
|
||||||
make -k distclean >/dev/null 2>&1
|
|
||||||
find . -name Makefile.in -exec rm -f {} \;
|
|
||||||
rm -rf \
|
|
||||||
AUTHORS \
|
|
||||||
ChangeLog \
|
|
||||||
INSTALL \
|
|
||||||
Makefile \
|
|
||||||
Makefile.in \
|
|
||||||
Makefile.orig \
|
|
||||||
aclocal/libtool.m4 \
|
|
||||||
aclocal/ltoptions.m4 \
|
|
||||||
aclocal/ltsugar.m4 \
|
|
||||||
aclocal/ltversion.m4 \
|
|
||||||
aclocal/lt~obsolete.m4 \
|
|
||||||
aclocal.m4 \
|
|
||||||
autom4te.cache \
|
|
||||||
autoscan.log \
|
|
||||||
config.guess \
|
|
||||||
config.h \
|
|
||||||
config.hin \
|
|
||||||
config.hin~ \
|
|
||||||
config.log \
|
|
||||||
config.status \
|
|
||||||
config.status.lineno \
|
|
||||||
config.sub \
|
|
||||||
configure \
|
|
||||||
configure.lineno \
|
|
||||||
configure.scan \
|
|
||||||
depcomp \
|
|
||||||
.deps \
|
|
||||||
install-sh \
|
|
||||||
.libs \
|
|
||||||
libtool \
|
|
||||||
ltmain.sh \
|
|
||||||
missing \
|
|
||||||
ylwrap \
|
|
||||||
if/gen-* \
|
|
||||||
test/gen-* \
|
|
||||||
lib/php/src/ext/thrift_protocol/.deps \
|
|
||||||
lib/php/src/ext/thrift_protocol/Makefile \
|
|
||||||
lib/php/src/ext/thrift_protocol/Makefile.fragments \
|
|
||||||
lib/php/src/ext/thrift_protocol/Makefile.global \
|
|
||||||
lib/php/src/ext/thrift_protocol/Makefile.objects \
|
|
||||||
lib/php/src/ext/thrift_protocol/acinclude.m4 \
|
|
||||||
lib/php/src/ext/thrift_protocol/aclocal.m4 \
|
|
||||||
lib/php/src/ext/thrift_protocol/autom4te.cache \
|
|
||||||
lib/php/src/ext/thrift_protocol/build \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.guess \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.h \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.h.in \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.log \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.nice \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.status \
|
|
||||||
lib/php/src/ext/thrift_protocol/config.sub \
|
|
||||||
lib/php/src/ext/thrift_protocol/configure \
|
|
||||||
lib/php/src/ext/thrift_protocol/configure.in \
|
|
||||||
lib/php/src/ext/thrift_protocol/include \
|
|
||||||
lib/php/src/ext/thrift_protocol/install-sh \
|
|
||||||
lib/php/src/ext/thrift_protocol/libtool \
|
|
||||||
lib/php/src/ext/thrift_protocol/ltmain.sh \
|
|
||||||
lib/php/src/ext/thrift_protocol/missing \
|
|
||||||
lib/php/src/ext/thrift_protocol/mkinstalldirs \
|
|
||||||
lib/php/src/ext/thrift_protocol/modules \
|
|
||||||
lib/php/src/ext/thrift_protocol/run-tests.php
|
|
37
vendor/github.com/apache/thrift/composer.json
generated
vendored
37
vendor/github.com/apache/thrift/composer.json
generated
vendored
|
@ -1,37 +0,0 @@
|
||||||
{
|
|
||||||
"name": "apache/thrift",
|
|
||||||
"description": "Apache Thrift RPC system",
|
|
||||||
"homepage": "http://thrift.apache.org/",
|
|
||||||
"type": "library",
|
|
||||||
"license": "Apache-2.0",
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Apache Thrift Developers",
|
|
||||||
"email": "dev@thrift.apache.org",
|
|
||||||
"homepage": "http://thrift.apache.org"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"support": {
|
|
||||||
"email": "dev@thrift.apache.org",
|
|
||||||
"issues": "https://issues.apache.org/jira/browse/THRIFT"
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": "^5.5 || ^7.0"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": "~4.8.36",
|
|
||||||
"squizlabs/php_codesniffer": "3.*"
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {"Thrift\\": "lib/php/lib/"}
|
|
||||||
},
|
|
||||||
"autoload-dev": {
|
|
||||||
"psr-4": {"Test\\Thrift\\": "lib/php/test/"}
|
|
||||||
},
|
|
||||||
"minimum-stability": "dev",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-master": "1.0.0-dev"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
1078
vendor/github.com/apache/thrift/configure.ac
generated
vendored
1078
vendor/github.com/apache/thrift/configure.ac
generated
vendored
File diff suppressed because it is too large
Load diff
16
vendor/github.com/apache/thrift/contrib/fb303/LICENSE
generated
vendored
Normal file
16
vendor/github.com/apache/thrift/contrib/fb303/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
or more contributor license agreements. See the NOTICE file
|
||||||
|
distributed with this work for additional information
|
||||||
|
regarding copyright ownership. The ASF licenses this file
|
||||||
|
to you under the Apache License, Version 2.0 (the
|
||||||
|
"License"); you may not use this file except in compliance
|
||||||
|
with the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing,
|
||||||
|
software distributed under the License is distributed on an
|
||||||
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
KIND, either express or implied. See the License for the
|
||||||
|
specific language governing permissions and limitations
|
||||||
|
under the License.
|
129
vendor/github.com/apache/thrift/debian/copyright
generated
vendored
Normal file
129
vendor/github.com/apache/thrift/debian/copyright
generated
vendored
Normal file
|
@ -0,0 +1,129 @@
|
||||||
|
This package was debianized by Thrift Developer's <dev@thrift.apache.org>.
|
||||||
|
|
||||||
|
|
||||||
|
This package and the Debian packaging is licensed under the Apache License,
|
||||||
|
see `/usr/share/common-licenses/Apache-2.0'.
|
||||||
|
|
||||||
|
The following information was copied from Apache Thrift LICENSE file.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
SOFTWARE DISTRIBUTED WITH THRIFT:
|
||||||
|
|
||||||
|
The Apache Thrift software includes a number of subcomponents with
|
||||||
|
separate copyright notices and license terms. Your use of the source
|
||||||
|
code for the these subcomponents is subject to the terms and
|
||||||
|
conditions of the following licenses.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
Portions of the following files are licensed under the MIT License:
|
||||||
|
|
||||||
|
lib/erl/src/Makefile.am
|
||||||
|
|
||||||
|
Please see doc/otp-base-license.txt for the full terms of this license.
|
||||||
|
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
The following files contain some portions of code contributed under
|
||||||
|
the Thrift Software License (see doc/old-thrift-license.txt), and relicensed
|
||||||
|
under the Apache 2.0 License:
|
||||||
|
|
||||||
|
compiler/cpp/Makefile.am
|
||||||
|
compiler/cpp/src/generate/t_cocoa_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_cpp_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_csharp_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_erl_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_hs_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_java_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_ocaml_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_perl_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_php_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_py_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_rb_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_st_generator.cc
|
||||||
|
compiler/cpp/src/generate/t_xsd_generator.cc
|
||||||
|
compiler/cpp/src/main.cc
|
||||||
|
compiler/cpp/src/parse/t_field.h
|
||||||
|
compiler/cpp/src/parse/t_program.h
|
||||||
|
compiler/cpp/src/platform.h
|
||||||
|
compiler/cpp/src/thriftl.ll
|
||||||
|
compiler/cpp/src/thrifty.yy
|
||||||
|
lib/csharp/src/Protocol/TBinaryProtocol.cs
|
||||||
|
lib/csharp/src/Protocol/TField.cs
|
||||||
|
lib/csharp/src/Protocol/TList.cs
|
||||||
|
lib/csharp/src/Protocol/TMap.cs
|
||||||
|
lib/csharp/src/Protocol/TMessage.cs
|
||||||
|
lib/csharp/src/Protocol/TMessageType.cs
|
||||||
|
lib/csharp/src/Protocol/TProtocol.cs
|
||||||
|
lib/csharp/src/Protocol/TProtocolException.cs
|
||||||
|
lib/csharp/src/Protocol/TProtocolFactory.cs
|
||||||
|
lib/csharp/src/Protocol/TProtocolUtil.cs
|
||||||
|
lib/csharp/src/Protocol/TSet.cs
|
||||||
|
lib/csharp/src/Protocol/TStruct.cs
|
||||||
|
lib/csharp/src/Protocol/TType.cs
|
||||||
|
lib/csharp/src/Server/TServer.cs
|
||||||
|
lib/csharp/src/Server/TSimpleServer.cs
|
||||||
|
lib/csharp/src/Server/TThreadPoolServer.cs
|
||||||
|
lib/csharp/src/TApplicationException.cs
|
||||||
|
lib/csharp/src/Thrift.csproj
|
||||||
|
lib/csharp/src/Thrift.sln
|
||||||
|
lib/csharp/src/TProcessor.cs
|
||||||
|
lib/csharp/src/Transport/TServerSocket.cs
|
||||||
|
lib/csharp/src/Transport/TServerTransport.cs
|
||||||
|
lib/csharp/src/Transport/TSocket.cs
|
||||||
|
lib/csharp/src/Transport/TStreamTransport.cs
|
||||||
|
lib/csharp/src/Transport/TTransport.cs
|
||||||
|
lib/csharp/src/Transport/TTransportException.cs
|
||||||
|
lib/csharp/src/Transport/TTransportFactory.cs
|
||||||
|
lib/csharp/ThriftMSBuildTask/Properties/AssemblyInfo.cs
|
||||||
|
lib/csharp/ThriftMSBuildTask/ThriftBuild.cs
|
||||||
|
lib/csharp/ThriftMSBuildTask/ThriftMSBuildTask.csproj
|
||||||
|
lib/rb/lib/thrift.rb
|
||||||
|
lib/st/README
|
||||||
|
lib/st/thrift.st
|
||||||
|
test/OptionalRequiredTest.cpp
|
||||||
|
test/OptionalRequiredTest.thrift
|
||||||
|
test/ThriftTest.thrift
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
For the aclocal/ax_boost_base.m4 and contrib/fb303/aclocal/ax_boost_base.m4 components:
|
||||||
|
|
||||||
|
# Copyright (c) 2007 Thomas Porschberg <thomas@randspringer.de>
|
||||||
|
#
|
||||||
|
# Copying and distribution of this file, with or without
|
||||||
|
# modification, are permitted in any medium without royalty provided
|
||||||
|
# the copyright notice and this notice are preserved.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
For the compiler/cpp/src/md5.[ch] components:
|
||||||
|
|
||||||
|
/*
|
||||||
|
Copyright (C) 1999, 2000, 2002 Aladdin Enterprises. All rights reserved.
|
||||||
|
|
||||||
|
This software is provided 'as-is', without any express or implied
|
||||||
|
warranty. In no event will the authors be held liable for any damages
|
||||||
|
arising from the use of this software.
|
||||||
|
|
||||||
|
Permission is granted to anyone to use this software for any purpose,
|
||||||
|
including commercial applications, and to alter it and redistribute it
|
||||||
|
freely, subject to the following restrictions:
|
||||||
|
|
||||||
|
1. The origin of this software must not be misrepresented; you must not
|
||||||
|
claim that you wrote the original software. If you use this software
|
||||||
|
in a product, an acknowledgment in the product documentation would be
|
||||||
|
appreciated but is not required.
|
||||||
|
2. Altered source versions must be plainly marked as such, and must not be
|
||||||
|
misrepresented as being the original software.
|
||||||
|
3. This notice may not be removed or altered from any source distribution.
|
||||||
|
|
||||||
|
L. Peter Deutsch
|
||||||
|
ghost@aladdin.com
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
---------------------------------------------------
|
||||||
|
For the lib/rb/setup.rb: Copyright (c) 2000-2005 Minero Aoki,
|
||||||
|
lib/ocaml/OCamlMakefile and lib/ocaml/README-OCamlMakefile components:
|
||||||
|
Copyright (C) 1999 - 2007 Markus Mottl
|
||||||
|
|
||||||
|
Licensed under the terms of the GNU Lesser General Public License 2.1
|
||||||
|
(see doc/lgpl-2.1.txt for the full terms of this license)
|
140
vendor/github.com/apache/thrift/doap.rdf
generated
vendored
140
vendor/github.com/apache/thrift/doap.rdf
generated
vendored
|
@ -1,140 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<?xml-stylesheet type="text/xsl"?>
|
|
||||||
<rdf:RDF xml:lang="en"
|
|
||||||
xmlns="http://usefulinc.com/ns/doap#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:asfext="http://projects.apache.org/ns/asfext#"
|
|
||||||
xmlns:foaf="http://xmlns.com/foaf/0.1/">
|
|
||||||
<!--
|
|
||||||
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
||||||
contributor license agreements. See the NOTICE file distributed with
|
|
||||||
this work for additional information regarding copyright ownership.
|
|
||||||
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
||||||
(the "License"); you may not use this file except in compliance with
|
|
||||||
the License. You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
See the License for the specific language governing permissions and
|
|
||||||
limitations under the License.
|
|
||||||
-->
|
|
||||||
<Project rdf:about="http://thrift.apache.org">
|
|
||||||
<created>2012-04-14</created>
|
|
||||||
<license rdf:resource="http://usefulinc.com/doap/licenses/asl20" />
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<homepage rdf:resource="http://thrift.apache.org" />
|
|
||||||
<asfext:pmc rdf:resource="http://thrift.apache.org" />
|
|
||||||
<shortdesc>Apache Thrift software provides a framework for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages. </shortdesc>
|
|
||||||
<description>Apache Thrift allows you to define data types and service interfaces in a simple definition file. Taking that file as input, the compiler generates code to be used to easily build RPC clients and servers that communicate seamlessly across programming languages. Instead of writing a load of boilerplate code to serialize and transport your objects and invoke remote methods, you can get right down to business. </description>
|
|
||||||
<bug-database rdf:resource="https://issues.apache.org/jira/browse/THRIFT" />
|
|
||||||
<mailing-list rdf:resource="http://thrift.apache.org/mailing/" />
|
|
||||||
<download-page rdf:resource="http://thrift.apache.org/download/" />
|
|
||||||
<programming-language>ActionScript</programming-language>
|
|
||||||
<programming-language>C</programming-language>
|
|
||||||
<programming-language>C#</programming-language>
|
|
||||||
<programming-language>C++</programming-language>
|
|
||||||
<programming-language>Cocoa</programming-language>
|
|
||||||
<programming-language>D</programming-language>
|
|
||||||
<programming-language>Dart</programming-language>
|
|
||||||
<programming-language>Delphi</programming-language>
|
|
||||||
<programming-language>Erlang</programming-language>
|
|
||||||
<programming-language>Go</programming-language>
|
|
||||||
<programming-language>Haskell</programming-language>
|
|
||||||
<programming-language>Haxe</programming-language>
|
|
||||||
<programming-language>Java</programming-language>
|
|
||||||
<programming-language>JavaScript</programming-language>
|
|
||||||
<programming-language>node.js</programming-language>
|
|
||||||
<programming-language>OCaml</programming-language>
|
|
||||||
<programming-language>Perl</programming-language>
|
|
||||||
<programming-language>PHP</programming-language>
|
|
||||||
<programming-language>Python</programming-language>
|
|
||||||
<programming-language>Rust</programming-language>
|
|
||||||
<programming-language>SmallTalk</programming-language>
|
|
||||||
<category rdf:resource="http://projects.apache.org/category/http" />
|
|
||||||
<category rdf:resource="http://projects.apache.org/category/library" />
|
|
||||||
<category rdf:resource="http://projects.apache.org/category/network-client" />
|
|
||||||
<category rdf:resource="http://projects.apache.org/category/network-server" />
|
|
||||||
<release rdf:parseType="Collection">
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2017-03-01</created>
|
|
||||||
<revision>0.10.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2015-09-25</created>
|
|
||||||
<revision>0.9.3</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2014-11-05</created>
|
|
||||||
<revision>0.9.2</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2013-08-22</created>
|
|
||||||
<revision>0.9.1</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2012-10-15</created>
|
|
||||||
<revision>0.9.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2011-11-29</created>
|
|
||||||
<revision>0.8.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2011-08-13</created>
|
|
||||||
<revision>0.7.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2011-04-25</created>
|
|
||||||
<revision>0.6.1</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift</name>
|
|
||||||
<created>2011-02-08</created>
|
|
||||||
<revision>0.6.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift (incubating)</name>
|
|
||||||
<created>2010-10-07</created>
|
|
||||||
<revision>0.5.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift (incubating)</name>
|
|
||||||
<created>2010-08-23</created>
|
|
||||||
<revision>0.4.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift (incubating)</name>
|
|
||||||
<created>2010-08-04</created>
|
|
||||||
<revision>0.3.0</revision>
|
|
||||||
</Version>
|
|
||||||
<Version>
|
|
||||||
<name>Apache Thrift (incubating)</name>
|
|
||||||
<created>2009-12-11</created>
|
|
||||||
<revision>0.2.0</revision>
|
|
||||||
</Version>
|
|
||||||
</release>
|
|
||||||
<repository>
|
|
||||||
<GitRepository>
|
|
||||||
<location rdf:resource="https://git-wip-us.apache.org/repos/asf/thrift.git"/>
|
|
||||||
<browse rdf:resource="https://git-wip-us.apache.org/repos/asf?p=thrift.git"/>
|
|
||||||
</GitRepository>
|
|
||||||
</repository>
|
|
||||||
<maintainer>
|
|
||||||
<foaf:Person>
|
|
||||||
<foaf:name>Apache Thrift PMC</foaf:name>
|
|
||||||
<foaf:mbox rdf:resource="mailto:dev@thrift.apache.org"/>
|
|
||||||
</foaf:Person>
|
|
||||||
</maintainer>
|
|
||||||
</Project>
|
|
||||||
</rdf:RDF>
|
|
121
vendor/github.com/apache/thrift/lib/Makefile.am
generated
vendored
121
vendor/github.com/apache/thrift/lib/Makefile.am
generated
vendored
|
@ -1,121 +0,0 @@
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
SUBDIRS = json xml
|
|
||||||
PRECROSS_TARGET =
|
|
||||||
|
|
||||||
if WITH_CPP
|
|
||||||
# cpp dir is picked directly by plugin build
|
|
||||||
if !WITH_PLUGIN
|
|
||||||
SUBDIRS += cpp
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_C_GLIB
|
|
||||||
SUBDIRS += c_glib
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_MONO
|
|
||||||
SUBDIRS += csharp
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_JAVA
|
|
||||||
SUBDIRS += java
|
|
||||||
PRECROSS_TARGET += precross-java
|
|
||||||
# JavaScript unit test depends on java
|
|
||||||
# so test only if java, ant & co is available
|
|
||||||
SUBDIRS += js
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_PYTHON
|
|
||||||
SUBDIRS += py
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_ERLANG
|
|
||||||
SUBDIRS += erl
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_RUBY
|
|
||||||
SUBDIRS += rb
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_HASKELL
|
|
||||||
SUBDIRS += hs
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_PERL
|
|
||||||
SUBDIRS += perl
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_PHP
|
|
||||||
SUBDIRS += php
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_DART
|
|
||||||
SUBDIRS += dart
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_DOTNETCORE
|
|
||||||
SUBDIRS += netcore
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_GO
|
|
||||||
SUBDIRS += go
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_D
|
|
||||||
SUBDIRS += d
|
|
||||||
PRECROSS_TARGET += precross-d
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_NODEJS
|
|
||||||
SUBDIRS += nodejs
|
|
||||||
PRECROSS_TARGET += precross-nodejs
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_LUA
|
|
||||||
SUBDIRS += lua
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_RS
|
|
||||||
SUBDIRS += rs
|
|
||||||
endif
|
|
||||||
|
|
||||||
if WITH_CL
|
|
||||||
SUBDIRS += cl
|
|
||||||
endif
|
|
||||||
|
|
||||||
# All of the libs that don't use Automake need to go in here
|
|
||||||
# so they will end up in our release tarballs.
|
|
||||||
EXTRA_DIST = \
|
|
||||||
as3 \
|
|
||||||
cocoa \
|
|
||||||
d \
|
|
||||||
dart \
|
|
||||||
delphi \
|
|
||||||
haxe \
|
|
||||||
javame \
|
|
||||||
js \
|
|
||||||
ocaml \
|
|
||||||
st \
|
|
||||||
ts
|
|
||||||
|
|
||||||
precross-%:
|
|
||||||
$(MAKE) -C $* precross
|
|
||||||
precross: $(PRECROSS_TARGET)
|
|
16
vendor/github.com/apache/thrift/lib/dart/LICENSE_HEADER
generated
vendored
Normal file
16
vendor/github.com/apache/thrift/lib/dart/LICENSE_HEADER
generated
vendored
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one
|
||||||
|
or more contributor license agreements. See the NOTICE file
|
||||||
|
distributed with this work for additional information
|
||||||
|
regarding copyright ownership. The ASF licenses this file
|
||||||
|
to you under the Apache License, Version 2.0 (the
|
||||||
|
"License"); you may not use this file except in compliance
|
||||||
|
with the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing,
|
||||||
|
software distributed under the License is distributed on an
|
||||||
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
KIND, either express or implied. See the License for the
|
||||||
|
specific language governing permissions and limitations
|
||||||
|
under the License.
|
45
vendor/github.com/apache/thrift/lib/go/Makefile.am
generated
vendored
45
vendor/github.com/apache/thrift/lib/go/Makefile.am
generated
vendored
|
@ -1,45 +0,0 @@
|
||||||
#
|
|
||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
SUBDIRS = .
|
|
||||||
|
|
||||||
if WITH_TESTS
|
|
||||||
SUBDIRS += test
|
|
||||||
endif
|
|
||||||
|
|
||||||
install:
|
|
||||||
@echo '##############################################################'
|
|
||||||
@echo '##############################################################'
|
|
||||||
@echo 'The Go client library should be installed via "go get", please see /lib/go/README.md'
|
|
||||||
@echo '##############################################################'
|
|
||||||
@echo '##############################################################'
|
|
||||||
|
|
||||||
check-local:
|
|
||||||
GOPATH=`pwd` $(GO) test -race ./thrift
|
|
||||||
|
|
||||||
clean-local:
|
|
||||||
$(RM) -rf pkg
|
|
||||||
|
|
||||||
all-local:
|
|
||||||
GOPATH=`pwd` $(GO) build ./thrift
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
|
||||||
thrift \
|
|
||||||
coding_standards.md \
|
|
||||||
README.md
|
|
83
vendor/github.com/apache/thrift/lib/go/README.md
generated
vendored
83
vendor/github.com/apache/thrift/lib/go/README.md
generated
vendored
|
@ -1,83 +0,0 @@
|
||||||
Thrift Go Software Library
|
|
||||||
|
|
||||||
License
|
|
||||||
=======
|
|
||||||
|
|
||||||
Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
or more contributor license agreements. See the NOTICE file
|
|
||||||
distributed with this work for additional information
|
|
||||||
regarding copyright ownership. The ASF licenses this file
|
|
||||||
to you under the Apache License, Version 2.0 (the
|
|
||||||
"License"); you may not use this file except in compliance
|
|
||||||
with the License. You may obtain a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing,
|
|
||||||
software distributed under the License is distributed on an
|
|
||||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
KIND, either express or implied. See the License for the
|
|
||||||
specific language governing permissions and limitations
|
|
||||||
under the License.
|
|
||||||
|
|
||||||
|
|
||||||
Using Thrift with Go
|
|
||||||
====================
|
|
||||||
|
|
||||||
Thrift supports Go 1.7+
|
|
||||||
|
|
||||||
In following Go conventions, we recommend you use the 'go' tool to install
|
|
||||||
Thrift for go.
|
|
||||||
|
|
||||||
$ go get git.apache.org/thrift.git/lib/go/thrift/...
|
|
||||||
|
|
||||||
Will retrieve and install the most recent version of the package.
|
|
||||||
|
|
||||||
|
|
||||||
A note about optional fields
|
|
||||||
============================
|
|
||||||
|
|
||||||
The thrift-to-Go compiler tries to represent thrift IDL structs as Go structs.
|
|
||||||
We must be able to distinguish between optional fields that are set to their
|
|
||||||
default value and optional values which are actually unset, so the generated
|
|
||||||
code represents optional fields via pointers.
|
|
||||||
|
|
||||||
This is generally intuitive and works well much of the time, but Go does not
|
|
||||||
have a syntax for creating a pointer to a constant in a single expression. That
|
|
||||||
is, given a struct like
|
|
||||||
|
|
||||||
struct SomeIDLType {
|
|
||||||
OptionalField *int32
|
|
||||||
}
|
|
||||||
|
|
||||||
, the following will not compile:
|
|
||||||
|
|
||||||
x := &SomeIDLType{
|
|
||||||
OptionalField: &(3),
|
|
||||||
}
|
|
||||||
|
|
||||||
(Nor is there any other syntax that's built in to the language)
|
|
||||||
|
|
||||||
As such, we provide some helpers that do just this under lib/go/thrift/. E.g.,
|
|
||||||
|
|
||||||
x := &SomeIDLType{
|
|
||||||
OptionalField: thrift.Int32Ptr(3),
|
|
||||||
}
|
|
||||||
|
|
||||||
And so on. The code generator also creates analogous helpers for user-defined
|
|
||||||
typedefs and enums.
|
|
||||||
|
|
||||||
Adding custom tags to generated Thrift structs
|
|
||||||
==============================================
|
|
||||||
|
|
||||||
You can add tags to the auto-generated thrift structs using the following format:
|
|
||||||
|
|
||||||
struct foo {
|
|
||||||
1: required string Bar (go.tag = "some_tag:\"some_tag_value\"")
|
|
||||||
}
|
|
||||||
|
|
||||||
which will generate:
|
|
||||||
|
|
||||||
type Foo struct {
|
|
||||||
Bar string `thrift:"bar,1,required" some_tag:"some_tag_value"`
|
|
||||||
}
|
|
1
vendor/github.com/apache/thrift/lib/go/coding_standards.md
generated
vendored
1
vendor/github.com/apache/thrift/lib/go/coding_standards.md
generated
vendored
|
@ -1 +0,0 @@
|
||||||
Please follow [General Coding Standards](/doc/coding_standards.md)
|
|
202
vendor/github.com/apache/thrift/lib/hs/LICENSE
generated
vendored
Normal file
202
vendor/github.com/apache/thrift/lib/hs/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,202 @@
|
||||||
|
|
||||||
|
Apache License
|
||||||
|
Version 2.0, January 2004
|
||||||
|
http://www.apache.org/licenses/
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||||
|
|
||||||
|
1. Definitions.
|
||||||
|
|
||||||
|
"License" shall mean the terms and conditions for use, reproduction,
|
||||||
|
and distribution as defined by Sections 1 through 9 of this document.
|
||||||
|
|
||||||
|
"Licensor" shall mean the copyright owner or entity authorized by
|
||||||
|
the copyright owner that is granting the License.
|
||||||
|
|
||||||
|
"Legal Entity" shall mean the union of the acting entity and all
|
||||||
|
other entities that control, are controlled by, or are under common
|
||||||
|
control with that entity. For the purposes of this definition,
|
||||||
|
"control" means (i) the power, direct or indirect, to cause the
|
||||||
|
direction or management of such entity, whether by contract or
|
||||||
|
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||||
|
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||||
|
|
||||||
|
"You" (or "Your") shall mean an individual or Legal Entity
|
||||||
|
exercising permissions granted by this License.
|
||||||
|
|
||||||
|
"Source" form shall mean the preferred form for making modifications,
|
||||||
|
including but not limited to software source code, documentation
|
||||||
|
source, and configuration files.
|
||||||
|
|
||||||
|
"Object" form shall mean any form resulting from mechanical
|
||||||
|
transformation or translation of a Source form, including but
|
||||||
|
not limited to compiled object code, generated documentation,
|
||||||
|
and conversions to other media types.
|
||||||
|
|
||||||
|
"Work" shall mean the work of authorship, whether in Source or
|
||||||
|
Object form, made available under the License, as indicated by a
|
||||||
|
copyright notice that is included in or attached to the work
|
||||||
|
(an example is provided in the Appendix below).
|
||||||
|
|
||||||
|
"Derivative Works" shall mean any work, whether in Source or Object
|
||||||
|
form, that is based on (or derived from) the Work and for which the
|
||||||
|
editorial revisions, annotations, elaborations, or other modifications
|
||||||
|
represent, as a whole, an original work of authorship. For the purposes
|
||||||
|
of this License, Derivative Works shall not include works that remain
|
||||||
|
separable from, or merely link (or bind by name) to the interfaces of,
|
||||||
|
the Work and Derivative Works thereof.
|
||||||
|
|
||||||
|
"Contribution" shall mean any work of authorship, including
|
||||||
|
the original version of the Work and any modifications or additions
|
||||||
|
to that Work or Derivative Works thereof, that is intentionally
|
||||||
|
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||||
|
or by an individual or Legal Entity authorized to submit on behalf of
|
||||||
|
the copyright owner. For the purposes of this definition, "submitted"
|
||||||
|
means any form of electronic, verbal, or written communication sent
|
||||||
|
to the Licensor or its representatives, including but not limited to
|
||||||
|
communication on electronic mailing lists, source code control systems,
|
||||||
|
and issue tracking systems that are managed by, or on behalf of, the
|
||||||
|
Licensor for the purpose of discussing and improving the Work, but
|
||||||
|
excluding communication that is conspicuously marked or otherwise
|
||||||
|
designated in writing by the copyright owner as "Not a Contribution."
|
||||||
|
|
||||||
|
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||||
|
on behalf of whom a Contribution has been received by Licensor and
|
||||||
|
subsequently incorporated within the Work.
|
||||||
|
|
||||||
|
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
copyright license to reproduce, prepare Derivative Works of,
|
||||||
|
publicly display, publicly perform, sublicense, and distribute the
|
||||||
|
Work and such Derivative Works in Source or Object form.
|
||||||
|
|
||||||
|
3. Grant of Patent License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
(except as stated in this section) patent license to make, have made,
|
||||||
|
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||||
|
where such license applies only to those patent claims licensable
|
||||||
|
by such Contributor that are necessarily infringed by their
|
||||||
|
Contribution(s) alone or by combination of their Contribution(s)
|
||||||
|
with the Work to which such Contribution(s) was submitted. If You
|
||||||
|
institute patent litigation against any entity (including a
|
||||||
|
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||||
|
or a Contribution incorporated within the Work constitutes direct
|
||||||
|
or contributory patent infringement, then any patent licenses
|
||||||
|
granted to You under this License for that Work shall terminate
|
||||||
|
as of the date such litigation is filed.
|
||||||
|
|
||||||
|
4. Redistribution. You may reproduce and distribute copies of the
|
||||||
|
Work or Derivative Works thereof in any medium, with or without
|
||||||
|
modifications, and in Source or Object form, provided that You
|
||||||
|
meet the following conditions:
|
||||||
|
|
||||||
|
(a) You must give any other recipients of the Work or
|
||||||
|
Derivative Works a copy of this License; and
|
||||||
|
|
||||||
|
(b) You must cause any modified files to carry prominent notices
|
||||||
|
stating that You changed the files; and
|
||||||
|
|
||||||
|
(c) You must retain, in the Source form of any Derivative Works
|
||||||
|
that You distribute, all copyright, patent, trademark, and
|
||||||
|
attribution notices from the Source form of the Work,
|
||||||
|
excluding those notices that do not pertain to any part of
|
||||||
|
the Derivative Works; and
|
||||||
|
|
||||||
|
(d) If the Work includes a "NOTICE" text file as part of its
|
||||||
|
distribution, then any Derivative Works that You distribute must
|
||||||
|
include a readable copy of the attribution notices contained
|
||||||
|
within such NOTICE file, excluding those notices that do not
|
||||||
|
pertain to any part of the Derivative Works, in at least one
|
||||||
|
of the following places: within a NOTICE text file distributed
|
||||||
|
as part of the Derivative Works; within the Source form or
|
||||||
|
documentation, if provided along with the Derivative Works; or,
|
||||||
|
within a display generated by the Derivative Works, if and
|
||||||
|
wherever such third-party notices normally appear. The contents
|
||||||
|
of the NOTICE file are for informational purposes only and
|
||||||
|
do not modify the License. You may add Your own attribution
|
||||||
|
notices within Derivative Works that You distribute, alongside
|
||||||
|
or as an addendum to the NOTICE text from the Work, provided
|
||||||
|
that such additional attribution notices cannot be construed
|
||||||
|
as modifying the License.
|
||||||
|
|
||||||
|
You may add Your own copyright statement to Your modifications and
|
||||||
|
may provide additional or different license terms and conditions
|
||||||
|
for use, reproduction, or distribution of Your modifications, or
|
||||||
|
for any such Derivative Works as a whole, provided Your use,
|
||||||
|
reproduction, and distribution of the Work otherwise complies with
|
||||||
|
the conditions stated in this License.
|
||||||
|
|
||||||
|
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||||
|
any Contribution intentionally submitted for inclusion in the Work
|
||||||
|
by You to the Licensor shall be under the terms and conditions of
|
||||||
|
this License, without any additional terms or conditions.
|
||||||
|
Notwithstanding the above, nothing herein shall supersede or modify
|
||||||
|
the terms of any separate license agreement you may have executed
|
||||||
|
with Licensor regarding such Contributions.
|
||||||
|
|
||||||
|
6. Trademarks. This License does not grant permission to use the trade
|
||||||
|
names, trademarks, service marks, or product names of the Licensor,
|
||||||
|
except as required for reasonable and customary use in describing the
|
||||||
|
origin of the Work and reproducing the content of the NOTICE file.
|
||||||
|
|
||||||
|
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||||
|
agreed to in writing, Licensor provides the Work (and each
|
||||||
|
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||||
|
implied, including, without limitation, any warranties or conditions
|
||||||
|
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||||
|
appropriateness of using or redistributing the Work and assume any
|
||||||
|
risks associated with Your exercise of permissions under this License.
|
||||||
|
|
||||||
|
8. Limitation of Liability. In no event and under no legal theory,
|
||||||
|
whether in tort (including negligence), contract, or otherwise,
|
||||||
|
unless required by applicable law (such as deliberate and grossly
|
||||||
|
negligent acts) or agreed to in writing, shall any Contributor be
|
||||||
|
liable to You for damages, including any direct, indirect, special,
|
||||||
|
incidental, or consequential damages of any character arising as a
|
||||||
|
result of this License or out of the use or inability to use the
|
||||||
|
Work (including but not limited to damages for loss of goodwill,
|
||||||
|
work stoppage, computer failure or malfunction, or any and all
|
||||||
|
other commercial damages or losses), even if such Contributor
|
||||||
|
has been advised of the possibility of such damages.
|
||||||
|
|
||||||
|
9. Accepting Warranty or Additional Liability. While redistributing
|
||||||
|
the Work or Derivative Works thereof, You may choose to offer,
|
||||||
|
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||||
|
or other liability obligations and/or rights consistent with this
|
||||||
|
License. However, in accepting such obligations, You may act only
|
||||||
|
on Your own behalf and on Your sole responsibility, not on behalf
|
||||||
|
of any other Contributor, and only if You agree to indemnify,
|
||||||
|
defend, and hold each Contributor harmless for any liability
|
||||||
|
incurred by, or claims asserted against, such Contributor by reason
|
||||||
|
of your accepting any such warranty or additional liability.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
APPENDIX: How to apply the Apache License to your work.
|
||||||
|
|
||||||
|
To apply the Apache License to your work, attach the following
|
||||||
|
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||||
|
replaced with your own identifying information. (Don't include
|
||||||
|
the brackets!) The text should be enclosed in the appropriate
|
||||||
|
comment syntax for the file format. We also recommend that a
|
||||||
|
file or class name and description of purpose be included on the
|
||||||
|
same "printed page" as the copyright notice for easier
|
||||||
|
identification within third-party archives.
|
||||||
|
|
||||||
|
Copyright [yyyy] [name of copyright owner]
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
2034
vendor/github.com/apache/thrift/package-lock.json
generated
vendored
2034
vendor/github.com/apache/thrift/package-lock.json
generated
vendored
File diff suppressed because it is too large
Load diff
58
vendor/github.com/apache/thrift/package.json
generated
vendored
58
vendor/github.com/apache/thrift/package.json
generated
vendored
|
@ -1,58 +0,0 @@
|
||||||
{
|
|
||||||
"name": "thrift",
|
|
||||||
"description": "node.js bindings for the Apache Thrift RPC system",
|
|
||||||
"homepage": "http://thrift.apache.org/",
|
|
||||||
"repository": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://git-wip-us.apache.org/repos/asf/thrift.git"
|
|
||||||
},
|
|
||||||
"version": "1.0.0-dev",
|
|
||||||
"author": {
|
|
||||||
"name": "Apache Thrift Developers",
|
|
||||||
"email": "dev@thrift.apache.org",
|
|
||||||
"url": "http://thrift.apache.org"
|
|
||||||
},
|
|
||||||
"license": "Apache-2.0",
|
|
||||||
"licenses": [
|
|
||||||
{
|
|
||||||
"type": "Apache-2.0",
|
|
||||||
"url": "http://www.apache.org/licenses/LICENSE-2.0"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"bugs": {
|
|
||||||
"mail": "dev@thrift.apache.org",
|
|
||||||
"url": "https://issues.apache.org/jira/browse/THRIFT"
|
|
||||||
},
|
|
||||||
"files": [
|
|
||||||
"lib/nodejs/lib/thrift",
|
|
||||||
"lib/nodejs/README.md"
|
|
||||||
],
|
|
||||||
"directories": {
|
|
||||||
"lib": "./lib/nodejs/lib/thrift"
|
|
||||||
},
|
|
||||||
"main": "./lib/nodejs/lib/thrift",
|
|
||||||
"engines": {
|
|
||||||
"node": ">= 4.1.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"node-int64": "^0.4.0",
|
|
||||||
"q": "^1.5.0",
|
|
||||||
"ws": "^5.0.0"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"buffer-equals": "^1.0.4",
|
|
||||||
"commander": "^2.14.1",
|
|
||||||
"connect": "^3.6.6",
|
|
||||||
"istanbul": "^0.4.5",
|
|
||||||
"jsdoc": "^3.5.5",
|
|
||||||
"phantomjs-prebuilt": "^2.1.16",
|
|
||||||
"prettier": "1.11.1",
|
|
||||||
"tape": "^4.9.0",
|
|
||||||
"utf-8-validate": "^4.0.0"
|
|
||||||
},
|
|
||||||
"scripts": {
|
|
||||||
"cover": "lib/nodejs/test/testAll.sh COVER",
|
|
||||||
"test": "lib/nodejs/test/testAll.sh",
|
|
||||||
"prettier": "prettier --write '**/*.js'"
|
|
||||||
}
|
|
||||||
}
|
|
25
vendor/github.com/apache/thrift/phpcs.xml.dist
generated
vendored
25
vendor/github.com/apache/thrift/phpcs.xml.dist
generated
vendored
|
@ -1,25 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<ruleset name="Apache_Thrift">
|
|
||||||
<description>The coding standard for thrift.</description>
|
|
||||||
|
|
||||||
<file>lib/php/lib</file>
|
|
||||||
<file>lib/php/test</file>
|
|
||||||
<exclude-pattern>lib/php/test/packages/*</exclude-pattern>
|
|
||||||
|
|
||||||
<arg name="basepath" value="."/>
|
|
||||||
<arg name="colors" />
|
|
||||||
<arg name="parallel" value="4" />
|
|
||||||
|
|
||||||
<rule ref="PSR2">
|
|
||||||
<exclude name="PSR2.Methods.MethodDeclaration.Underscore"/>
|
|
||||||
<exclude name="PSR2.Classes.PropertyDeclaration.Underscore"/>
|
|
||||||
</rule>
|
|
||||||
|
|
||||||
<rule ref="PSR1.Files.SideEffects">
|
|
||||||
<exclude-pattern>lib/php/test/*</exclude-pattern>
|
|
||||||
</rule>
|
|
||||||
<rule ref="Generic.Files.LineLength">
|
|
||||||
<exclude-pattern>lib/php/test/*</exclude-pattern>
|
|
||||||
</rule>
|
|
||||||
|
|
||||||
</ruleset>
|
|
19
vendor/github.com/apache/thrift/pull_request_template.md
generated
vendored
19
vendor/github.com/apache/thrift/pull_request_template.md
generated
vendored
|
@ -1,19 +0,0 @@
|
||||||
Some helpful tips for a successful Apache Thrift PR:
|
|
||||||
|
|
||||||
* Did you test your changes locally or using CI in your fork?
|
|
||||||
* Is the Apache Jira THRIFT ticket identifier in the PR title?
|
|
||||||
* Is the Apache Jira THRIFT ticket identifier in the commit message?
|
|
||||||
* Did you squash your changes to a single commit?
|
|
||||||
* Are these changes backwards compatible? (please say so in PR description)
|
|
||||||
* Do you need to update the language-specific README?
|
|
||||||
|
|
||||||
Example ideal pull request title:
|
|
||||||
|
|
||||||
THRIFT-9999: an example pull request title
|
|
||||||
|
|
||||||
Example ideal commit message:
|
|
||||||
|
|
||||||
THRIFT-9999: [summary of fix, one line if possible]
|
|
||||||
Client: [language(s) affected, comma separated, use lib/ directory names please]
|
|
||||||
|
|
||||||
For more information about committing, see CONTRIBUTING.md
|
|
140
vendor/github.com/apache/thrift/sonar-project.properties
generated
vendored
140
vendor/github.com/apache/thrift/sonar-project.properties
generated
vendored
|
@ -1,140 +0,0 @@
|
||||||
# Apache Thrift © The Apache Software Foundation
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
# File: sonar-project.properties
|
|
||||||
# Apache Thrift configuration file for Sonar https://analysis.apache.org/
|
|
||||||
# Sonar is an open platform to manage code quality http://www.sonarsource.org/
|
|
||||||
|
|
||||||
|
|
||||||
# required metadata
|
|
||||||
sonar.projectKey=org.apache.thrift
|
|
||||||
sonar.projectName=Apache Thrift
|
|
||||||
sonar.projectDescription=
|
|
||||||
The Apache Thrift software framework, for scalable cross-language services
|
|
||||||
development, combines a software stack with a code generation engine to build
|
|
||||||
services that work efficiently and seamlessly between all major languages.
|
|
||||||
|
|
||||||
# Apache Thrift Version
|
|
||||||
sonar.projectVersion=1.0.0-dev
|
|
||||||
# use this to set another version string
|
|
||||||
# $ sonar-runner -D sonar.projectVersion=`git rev-parse HEAD`
|
|
||||||
# set projectDate in combination with projectVersion for imports of old releases
|
|
||||||
#sonar.projectDate=yyyy-MM-dd
|
|
||||||
|
|
||||||
# TODO add website (sonar.projectUrl does not work)
|
|
||||||
#sonar.XXXX=http//thrift.apache.org
|
|
||||||
|
|
||||||
# Some properties that will be inherited by the modules
|
|
||||||
sonar.sources=src
|
|
||||||
sonar.language=java,js,c++,py,c
|
|
||||||
sonar.sourceEncoding=UTF-8
|
|
||||||
|
|
||||||
# scm
|
|
||||||
sonar.scm.url=scm:git:https://git-wip-us.apache.org/repos/asf/thrift
|
|
||||||
|
|
||||||
# cppcheck -q --error-exitcode=0 --xml . 2> cppcheck-result.xml
|
|
||||||
sonar.cxx.cppcheck.reportPath=cppcheck-result.xml
|
|
||||||
|
|
||||||
# List of the module identifiers
|
|
||||||
sonar.modules=module1,module3,module4,module5,module6,module7,module8,module9,module10,module11,module12,module14
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# we need sonar-runner 2.1 for this, see http://jira.codehaus.org/browse/SONARPLUGINS-2421
|
|
||||||
#sonar.modules=module2
|
|
||||||
|
|
||||||
# delph plugin is broken
|
|
||||||
#sonar.modules=module13
|
|
||||||
|
|
||||||
# phpunit plugin is broken
|
|
||||||
#sonar.modules=module15
|
|
||||||
|
|
||||||
module1.sonar.projectName=Apache Thrift - Java Library
|
|
||||||
module1.sonar.projectBaseDir=lib/java
|
|
||||||
module1.sonar.sources=src
|
|
||||||
module1.sonar.tests=test
|
|
||||||
module1.sonar.binaries=build/libs/libthrift-1.0.0.jar
|
|
||||||
module1.sonar.libraries=build/deps/*.jar
|
|
||||||
module1.sonar.language=java
|
|
||||||
|
|
||||||
module2.sonar.projectName=Apache Thrift - Java Tutorial
|
|
||||||
module2.sonar.projectBaseDir=.
|
|
||||||
module2.sonar.sources=tutorial/java/src, tutorial/java/gen-java
|
|
||||||
module2.sonar.binaries=tutorial/java/tutorial.jar
|
|
||||||
module2.sonar.libraries=lib/java/build/deps/*.jar,lib/java/build/libs/libthrift-1.0.0.jar
|
|
||||||
module2.sonar.language=java
|
|
||||||
|
|
||||||
module3.sonar.projectName=Apache Thrift - JavaScript Library
|
|
||||||
module3.sonar.projectBaseDir=lib/js
|
|
||||||
module3.sonar.sources=.
|
|
||||||
module3.sonar.exclusions=test/**/*
|
|
||||||
module3.sonar.language=js
|
|
||||||
|
|
||||||
module4.sonar.projectName=Apache Thrift - JavaScript Tutorial
|
|
||||||
module4.sonar.projectBaseDir=tutorial/js
|
|
||||||
module4.sonar.sources=.
|
|
||||||
module4.sonar.language=web
|
|
||||||
|
|
||||||
module5.sonar.projectName=Apache Thrift - C++ Library
|
|
||||||
module5.sonar.projectBaseDir=lib/cpp
|
|
||||||
module5.sonar.sources=src
|
|
||||||
module5.sonar.tests=test
|
|
||||||
module5.sonar.language=c++
|
|
||||||
|
|
||||||
module6.sonar.projectName=Apache Thrift - C++ Tutorial
|
|
||||||
module6.sonar.projectBaseDir=tutorial/cpp
|
|
||||||
module6.sonar.sources=.
|
|
||||||
module6.sonar.exclusions=gen-cpp/**/*
|
|
||||||
module6.sonar.language=c++
|
|
||||||
|
|
||||||
module7.sonar.projectName=Apache Thrift - C++ Cross Language Test
|
|
||||||
module7.sonar.projectBaseDir=test/cpp
|
|
||||||
module7.sonar.sources=src
|
|
||||||
module7.sonar.language=c++
|
|
||||||
|
|
||||||
module8.sonar.projectName=Apache Thrift - Compiler
|
|
||||||
module8.sonar.projectBaseDir=compiler/cpp
|
|
||||||
module8.sonar.sources=src
|
|
||||||
module8.sonar.language=c++
|
|
||||||
|
|
||||||
module9.sonar.projectName=Apache Thrift - Python Library
|
|
||||||
module9.sonar.projectBaseDir=lib/py
|
|
||||||
module9.sonar.sources=src
|
|
||||||
module9.sonar.language=py
|
|
||||||
|
|
||||||
module10.sonar.projectName=Apache Thrift - Python Tutorial
|
|
||||||
module10.sonar.projectBaseDir=tutorial/py
|
|
||||||
module10.sonar.sources=.
|
|
||||||
module10.sonar.exclusions=gen-py/**/*
|
|
||||||
module10.sonar.language=py
|
|
||||||
|
|
||||||
module11.sonar.projectName=Apache Thrift - Python Cross Language Test
|
|
||||||
module11.sonar.projectBaseDir=test/py
|
|
||||||
module11.sonar.sources=.
|
|
||||||
module11.sonar.exclusions=gen-*/**/*
|
|
||||||
module11.sonar.language=py
|
|
||||||
|
|
||||||
module12.sonar.projectName=Apache Thrift - c_glib Library
|
|
||||||
module12.sonar.projectBaseDir=lib/c_glib
|
|
||||||
module12.sonar.sources=src
|
|
||||||
module12.sonar.language=c
|
|
||||||
|
|
||||||
module13.sonar.projectName=Apache Thrift - Delphi Library
|
|
||||||
module13.sonar.projectBaseDir=lib/delphi
|
|
||||||
module13.sonar.sources=src
|
|
||||||
module13.sonar.tests=test
|
|
||||||
module13.sonar.language=delph
|
|
||||||
|
|
||||||
module14.sonar.projectName=Apache Thrift - Flex (as3) Library
|
|
||||||
module14.sonar.projectBaseDir=lib/as3
|
|
||||||
module14.sonar.sources=src
|
|
||||||
module14.sonar.language=flex
|
|
||||||
|
|
||||||
module15.sonar.projectName=Apache Thrift - PHP Library
|
|
||||||
module15.sonar.projectBaseDir=lib/php
|
|
||||||
module15.sonar.sources=src
|
|
||||||
module15.sonar.language=php
|
|
||||||
|
|
||||||
# TODO add some more languages here
|
|
||||||
|
|
1
vendor/github.com/apache/thrift/tutorial/erl/client.sh
generated
vendored
Symbolic link
1
vendor/github.com/apache/thrift/tutorial/erl/client.sh
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
server.sh
|
239
vendor/github.com/apache/thrift/tutorial/hs/LICENSE
generated
vendored
Normal file
239
vendor/github.com/apache/thrift/tutorial/hs/LICENSE
generated
vendored
Normal file
|
@ -0,0 +1,239 @@
|
||||||
|
|
||||||
|
Apache License
|
||||||
|
Version 2.0, January 2004
|
||||||
|
http://www.apache.org/licenses/
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||||
|
|
||||||
|
1. Definitions.
|
||||||
|
|
||||||
|
"License" shall mean the terms and conditions for use, reproduction,
|
||||||
|
and distribution as defined by Sections 1 through 9 of this document.
|
||||||
|
|
||||||
|
"Licensor" shall mean the copyright owner or entity authorized by
|
||||||
|
the copyright owner that is granting the License.
|
||||||
|
|
||||||
|
"Legal Entity" shall mean the union of the acting entity and all
|
||||||
|
other entities that control, are controlled by, or are under common
|
||||||
|
control with that entity. For the purposes of this definition,
|
||||||
|
"control" means (i) the power, direct or indirect, to cause the
|
||||||
|
direction or management of such entity, whether by contract or
|
||||||
|
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||||
|
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||||
|
|
||||||
|
"You" (or "Your") shall mean an individual or Legal Entity
|
||||||
|
exercising permissions granted by this License.
|
||||||
|
|
||||||
|
"Source" form shall mean the preferred form for making modifications,
|
||||||
|
including but not limited to software source code, documentation
|
||||||
|
source, and configuration files.
|
||||||
|
|
||||||
|
"Object" form shall mean any form resulting from mechanical
|
||||||
|
transformation or translation of a Source form, including but
|
||||||
|
not limited to compiled object code, generated documentation,
|
||||||
|
and conversions to other media types.
|
||||||
|
|
||||||
|
"Work" shall mean the work of authorship, whether in Source or
|
||||||
|
Object form, made available under the License, as indicated by a
|
||||||
|
copyright notice that is included in or attached to the work
|
||||||
|
(an example is provided in the Appendix below).
|
||||||
|
|
||||||
|
"Derivative Works" shall mean any work, whether in Source or Object
|
||||||
|
form, that is based on (or derived from) the Work and for which the
|
||||||
|
editorial revisions, annotations, elaborations, or other modifications
|
||||||
|
represent, as a whole, an original work of authorship. For the purposes
|
||||||
|
of this License, Derivative Works shall not include works that remain
|
||||||
|
separable from, or merely link (or bind by name) to the interfaces of,
|
||||||
|
the Work and Derivative Works thereof.
|
||||||
|
|
||||||
|
"Contribution" shall mean any work of authorship, including
|
||||||
|
the original version of the Work and any modifications or additions
|
||||||
|
to that Work or Derivative Works thereof, that is intentionally
|
||||||
|
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||||
|
or by an individual or Legal Entity authorized to submit on behalf of
|
||||||
|
the copyright owner. For the purposes of this definition, "submitted"
|
||||||
|
means any form of electronic, verbal, or written communication sent
|
||||||
|
to the Licensor or its representatives, including but not limited to
|
||||||
|
communication on electronic mailing lists, source code control systems,
|
||||||
|
and issue tracking systems that are managed by, or on behalf of, the
|
||||||
|
Licensor for the purpose of discussing and improving the Work, but
|
||||||
|
excluding communication that is conspicuously marked or otherwise
|
||||||
|
designated in writing by the copyright owner as "Not a Contribution."
|
||||||
|
|
||||||
|
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||||
|
on behalf of whom a Contribution has been received by Licensor and
|
||||||
|
subsequently incorporated within the Work.
|
||||||
|
|
||||||
|
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
copyright license to reproduce, prepare Derivative Works of,
|
||||||
|
publicly display, publicly perform, sublicense, and distribute the
|
||||||
|
Work and such Derivative Works in Source or Object form.
|
||||||
|
|
||||||
|
3. Grant of Patent License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
(except as stated in this section) patent license to make, have made,
|
||||||
|
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||||
|
where such license applies only to those patent claims licensable
|
||||||
|
by such Contributor that are necessarily infringed by their
|
||||||
|
Contribution(s) alone or by combination of their Contribution(s)
|
||||||
|
with the Work to which such Contribution(s) was submitted. If You
|
||||||
|
institute patent litigation against any entity (including a
|
||||||
|
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||||
|
or a Contribution incorporated within the Work constitutes direct
|
||||||
|
or contributory patent infringement, then any patent licenses
|
||||||
|
granted to You under this License for that Work shall terminate
|
||||||
|
as of the date such litigation is filed.
|
||||||
|
|
||||||
|
4. Redistribution. You may reproduce and distribute copies of the
|
||||||
|
Work or Derivative Works thereof in any medium, with or without
|
||||||
|
modifications, and in Source or Object form, provided that You
|
||||||
|
meet the following conditions:
|
||||||
|
|
||||||
|
(a) You must give any other recipients of the Work or
|
||||||
|
Derivative Works a copy of this License; and
|
||||||
|
|
||||||
|
(b) You must cause any modified files to carry prominent notices
|
||||||
|
stating that You changed the files; and
|
||||||
|
|
||||||
|
(c) You must retain, in the Source form of any Derivative Works
|
||||||
|
that You distribute, all copyright, patent, trademark, and
|
||||||
|
attribution notices from the Source form of the Work,
|
||||||
|
excluding those notices that do not pertain to any part of
|
||||||
|
the Derivative Works; and
|
||||||
|
|
||||||
|
(d) If the Work includes a "NOTICE" text file as part of its
|
||||||
|
distribution, then any Derivative Works that You distribute must
|
||||||
|
include a readable copy of the attribution notices contained
|
||||||
|
within such NOTICE file, excluding those notices that do not
|
||||||
|
pertain to any part of the Derivative Works, in at least one
|
||||||
|
of the following places: within a NOTICE text file distributed
|
||||||
|
as part of the Derivative Works; within the Source form or
|
||||||
|
documentation, if provided along with the Derivative Works; or,
|
||||||
|
within a display generated by the Derivative Works, if and
|
||||||
|
wherever such third-party notices normally appear. The contents
|
||||||
|
of the NOTICE file are for informational purposes only and
|
||||||
|
do not modify the License. You may add Your own attribution
|
||||||
|
notices within Derivative Works that You distribute, alongside
|
||||||
|
or as an addendum to the NOTICE text from the Work, provided
|
||||||
|
that such additional attribution notices cannot be construed
|
||||||
|
as modifying the License.
|
||||||
|
|
||||||
|
You may add Your own copyright statement to Your modifications and
|
||||||
|
may provide additional or different license terms and conditions
|
||||||
|
for use, reproduction, or distribution of Your modifications, or
|
||||||
|
for any such Derivative Works as a whole, provided Your use,
|
||||||
|
reproduction, and distribution of the Work otherwise complies with
|
||||||
|
the conditions stated in this License.
|
||||||
|
|
||||||
|
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||||
|
any Contribution intentionally submitted for inclusion in the Work
|
||||||
|
by You to the Licensor shall be under the terms and conditions of
|
||||||
|
this License, without any additional terms or conditions.
|
||||||
|
Notwithstanding the above, nothing herein shall supersede or modify
|
||||||
|
the terms of any separate license agreement you may have executed
|
||||||
|
with Licensor regarding such Contributions.
|
||||||
|
|
||||||
|
6. Trademarks. This License does not grant permission to use the trade
|
||||||
|
names, trademarks, service marks, or product names of the Licensor,
|
||||||
|
except as required for reasonable and customary use in describing the
|
||||||
|
origin of the Work and reproducing the content of the NOTICE file.
|
||||||
|
|
||||||
|
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||||
|
agreed to in writing, Licensor provides the Work (and each
|
||||||
|
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||||
|
implied, including, without limitation, any warranties or conditions
|
||||||
|
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||||
|
appropriateness of using or redistributing the Work and assume any
|
||||||
|
risks associated with Your exercise of permissions under this License.
|
||||||
|
|
||||||
|
8. Limitation of Liability. In no event and under no legal theory,
|
||||||
|
whether in tort (including negligence), contract, or otherwise,
|
||||||
|
unless required by applicable law (such as deliberate and grossly
|
||||||
|
negligent acts) or agreed to in writing, shall any Contributor be
|
||||||
|
liable to You for damages, including any direct, indirect, special,
|
||||||
|
incidental, or consequential damages of any character arising as a
|
||||||
|
result of this License or out of the use or inability to use the
|
||||||
|
Work (including but not limited to damages for loss of goodwill,
|
||||||
|
work stoppage, computer failure or malfunction, or any and all
|
||||||
|
other commercial damages or losses), even if such Contributor
|
||||||
|
has been advised of the possibility of such damages.
|
||||||
|
|
||||||
|
9. Accepting Warranty or Additional Liability. While redistributing
|
||||||
|
the Work or Derivative Works thereof, You may choose to offer,
|
||||||
|
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||||
|
or other liability obligations and/or rights consistent with this
|
||||||
|
License. However, in accepting such obligations, You may act only
|
||||||
|
on Your own behalf and on Your sole responsibility, not on behalf
|
||||||
|
of any other Contributor, and only if You agree to indemnify,
|
||||||
|
defend, and hold each Contributor harmless for any liability
|
||||||
|
incurred by, or claims asserted against, such Contributor by reason
|
||||||
|
of your accepting any such warranty or additional liability.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
APPENDIX: How to apply the Apache License to your work.
|
||||||
|
|
||||||
|
To apply the Apache License to your work, attach the following
|
||||||
|
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||||
|
replaced with your own identifying information. (Don't include
|
||||||
|
the brackets!) The text should be enclosed in the appropriate
|
||||||
|
comment syntax for the file format. We also recommend that a
|
||||||
|
file or class name and description of purpose be included on the
|
||||||
|
same "printed page" as the copyright notice for easier
|
||||||
|
identification within third-party archives.
|
||||||
|
|
||||||
|
Copyright [yyyy] [name of copyright owner]
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
SOFTWARE DISTRIBUTED WITH THRIFT:
|
||||||
|
|
||||||
|
The Apache Thrift software includes a number of subcomponents with
|
||||||
|
separate copyright notices and license terms. Your use of the source
|
||||||
|
code for the these subcomponents is subject to the terms and
|
||||||
|
conditions of the following licenses.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
Portions of the following files are licensed under the MIT License:
|
||||||
|
|
||||||
|
lib/erl/src/Makefile.am
|
||||||
|
|
||||||
|
Please see doc/otp-base-license.txt for the full terms of this license.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
For the aclocal/ax_boost_base.m4 and contrib/fb303/aclocal/ax_boost_base.m4 components:
|
||||||
|
|
||||||
|
# Copyright (c) 2007 Thomas Porschberg <thomas@randspringer.de>
|
||||||
|
#
|
||||||
|
# Copying and distribution of this file, with or without
|
||||||
|
# modification, are permitted in any medium without royalty provided
|
||||||
|
# the copyright notice and this notice are preserved.
|
||||||
|
|
||||||
|
--------------------------------------------------
|
||||||
|
For the lib/nodejs/lib/thrift/json_parse.js:
|
||||||
|
|
||||||
|
/*
|
||||||
|
json_parse.js
|
||||||
|
2015-05-02
|
||||||
|
Public Domain.
|
||||||
|
NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
|
||||||
|
|
||||||
|
*/
|
||||||
|
(By Douglas Crockford <douglas@crockford.com>)
|
||||||
|
--------------------------------------------------
|
11
vendor/github.com/aws/aws-sdk-go/.gitignore
generated
vendored
11
vendor/github.com/aws/aws-sdk-go/.gitignore
generated
vendored
|
@ -1,11 +0,0 @@
|
||||||
dist
|
|
||||||
/doc
|
|
||||||
/doc-staging
|
|
||||||
.yardoc
|
|
||||||
Gemfile.lock
|
|
||||||
awstesting/integration/smoke/**/importmarker__.go
|
|
||||||
awstesting/integration/smoke/_test/
|
|
||||||
/vendor/bin/
|
|
||||||
/vendor/pkg/
|
|
||||||
/vendor/src/
|
|
||||||
/private/model/cli/gen-api/gen-api
|
|
14
vendor/github.com/aws/aws-sdk-go/.godoc_config
generated
vendored
14
vendor/github.com/aws/aws-sdk-go/.godoc_config
generated
vendored
|
@ -1,14 +0,0 @@
|
||||||
{
|
|
||||||
"PkgHandler": {
|
|
||||||
"Pattern": "/sdk-for-go/api/",
|
|
||||||
"StripPrefix": "/sdk-for-go/api",
|
|
||||||
"Include": ["/src/github.com/aws/aws-sdk-go/aws", "/src/github.com/aws/aws-sdk-go/service"],
|
|
||||||
"Exclude": ["/src/cmd", "/src/github.com/aws/aws-sdk-go/awstesting", "/src/github.com/aws/aws-sdk-go/awsmigrate", "/src/github.com/aws/aws-sdk-go/private"],
|
|
||||||
"IgnoredSuffixes": ["iface"]
|
|
||||||
},
|
|
||||||
"Github": {
|
|
||||||
"Tag": "master",
|
|
||||||
"Repo": "/aws/aws-sdk-go",
|
|
||||||
"UseGithub": true
|
|
||||||
}
|
|
||||||
}
|
|
48
vendor/github.com/aws/aws-sdk-go/.travis.yml
generated
vendored
48
vendor/github.com/aws/aws-sdk-go/.travis.yml
generated
vendored
|
@ -1,48 +0,0 @@
|
||||||
language: go
|
|
||||||
|
|
||||||
matrix:
|
|
||||||
allow_failures:
|
|
||||||
- go: tip
|
|
||||||
- go: 1.6.x
|
|
||||||
os: linux
|
|
||||||
include:
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: 1.5.x
|
|
||||||
# Use Go 1.5's vendoring experiment for 1.5 tests.
|
|
||||||
env: GO15VENDOREXPERIMENT=1
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: 1.6.x
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: 1.7.x
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: 1.8.x
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: 1.9.x
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: 1.10.x
|
|
||||||
- os: linux
|
|
||||||
sudo: required
|
|
||||||
go: tip
|
|
||||||
- os: osx
|
|
||||||
go: 1.7.x
|
|
||||||
- os: osx
|
|
||||||
go: 1.8.x
|
|
||||||
- os: osx
|
|
||||||
go: 1.9.x
|
|
||||||
- os: osx
|
|
||||||
go: 1.10.x
|
|
||||||
- os: osx
|
|
||||||
go: tip
|
|
||||||
|
|
||||||
script:
|
|
||||||
- make ci-test
|
|
||||||
|
|
||||||
branches:
|
|
||||||
only:
|
|
||||||
- master
|
|
3639
vendor/github.com/aws/aws-sdk-go/CHANGELOG.md
generated
vendored
3639
vendor/github.com/aws/aws-sdk-go/CHANGELOG.md
generated
vendored
File diff suppressed because it is too large
Load diff
5
vendor/github.com/aws/aws-sdk-go/CHANGELOG_PENDING.md
generated
vendored
5
vendor/github.com/aws/aws-sdk-go/CHANGELOG_PENDING.md
generated
vendored
|
@ -1,5 +0,0 @@
|
||||||
### SDK Features
|
|
||||||
|
|
||||||
### SDK Enhancements
|
|
||||||
|
|
||||||
### SDK Bugs
|
|
4
vendor/github.com/aws/aws-sdk-go/CODE_OF_CONDUCT.md
generated
vendored
4
vendor/github.com/aws/aws-sdk-go/CODE_OF_CONDUCT.md
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
## Code of Conduct
|
|
||||||
This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct).
|
|
||||||
For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact
|
|
||||||
opensource-codeofconduct@amazon.com with any additional questions or comments.
|
|
127
vendor/github.com/aws/aws-sdk-go/CONTRIBUTING.md
generated
vendored
127
vendor/github.com/aws/aws-sdk-go/CONTRIBUTING.md
generated
vendored
|
@ -1,127 +0,0 @@
|
||||||
Contributing to the AWS SDK for Go
|
|
||||||
|
|
||||||
We work hard to provide a high-quality and useful SDK, and we greatly value
|
|
||||||
feedback and contributions from our community. Whether it's a bug report,
|
|
||||||
new feature, correction, or additional documentation, we welcome your issues
|
|
||||||
and pull requests. Please read through this document before submitting any
|
|
||||||
issues or pull requests to ensure we have all the necessary information to
|
|
||||||
effectively respond to your bug report or contribution.
|
|
||||||
|
|
||||||
|
|
||||||
## Filing Bug Reports
|
|
||||||
|
|
||||||
You can file bug reports against the SDK on the [GitHub issues][issues] page.
|
|
||||||
|
|
||||||
If you are filing a report for a bug or regression in the SDK, it's extremely
|
|
||||||
helpful to provide as much information as possible when opening the original
|
|
||||||
issue. This helps us reproduce and investigate the possible bug without having
|
|
||||||
to wait for this extra information to be provided. Please read the following
|
|
||||||
guidelines prior to filing a bug report.
|
|
||||||
|
|
||||||
1. Search through existing [issues][] to ensure that your specific issue has
|
|
||||||
not yet been reported. If it is a common issue, it is likely there is
|
|
||||||
already a bug report for your problem.
|
|
||||||
|
|
||||||
2. Ensure that you have tested the latest version of the SDK. Although you
|
|
||||||
may have an issue against an older version of the SDK, we cannot provide
|
|
||||||
bug fixes for old versions. It's also possible that the bug may have been
|
|
||||||
fixed in the latest release.
|
|
||||||
|
|
||||||
3. Provide as much information about your environment, SDK version, and
|
|
||||||
relevant dependencies as possible. For example, let us know what version
|
|
||||||
of Go you are using, which and version of the operating system, and the
|
|
||||||
the environment your code is running in. e.g Container.
|
|
||||||
|
|
||||||
4. Provide a minimal test case that reproduces your issue or any error
|
|
||||||
information you related to your problem. We can provide feedback much
|
|
||||||
more quickly if we know what operations you are calling in the SDK. If
|
|
||||||
you cannot provide a full test case, provide as much code as you can
|
|
||||||
to help us diagnose the problem. Any relevant information should be provided
|
|
||||||
as well, like whether this is a persistent issue, or if it only occurs
|
|
||||||
some of the time.
|
|
||||||
|
|
||||||
|
|
||||||
## Submitting Pull Requests
|
|
||||||
|
|
||||||
We are always happy to receive code and documentation contributions to the SDK.
|
|
||||||
Please be aware of the following notes prior to opening a pull request:
|
|
||||||
|
|
||||||
1. The SDK is released under the [Apache license][license]. Any code you submit
|
|
||||||
will be released under that license. For substantial contributions, we may
|
|
||||||
ask you to sign a [Contributor License Agreement (CLA)][cla].
|
|
||||||
|
|
||||||
2. If you would like to implement support for a significant feature that is not
|
|
||||||
yet available in the SDK, please talk to us beforehand to avoid any
|
|
||||||
duplication of effort.
|
|
||||||
|
|
||||||
3. Wherever possible, pull requests should contain tests as appropriate.
|
|
||||||
Bugfixes should contain tests that exercise the corrected behavior (i.e., the
|
|
||||||
test should fail without the bugfix and pass with it), and new features
|
|
||||||
should be accompanied by tests exercising the feature.
|
|
||||||
|
|
||||||
4. Pull requests that contain failing tests will not be merged until the test
|
|
||||||
failures are addressed. Pull requests that cause a significant drop in the
|
|
||||||
SDK's test coverage percentage are unlikely to be merged until tests have
|
|
||||||
been added.
|
|
||||||
|
|
||||||
5. The JSON files under the SDK's `models` folder are sourced from outside the SDK.
|
|
||||||
Such as `models/apis/ec2/2016-11-15/api.json`. We will not accept pull requests
|
|
||||||
directly on these models. If you discover an issue with the models please
|
|
||||||
create a [GitHub issue][issues] describing the issue.
|
|
||||||
|
|
||||||
### Testing
|
|
||||||
|
|
||||||
To run the tests locally, running the `make unit` command will `go get` the
|
|
||||||
SDK's testing dependencies, and run vet, link and unit tests for the SDK.
|
|
||||||
|
|
||||||
```
|
|
||||||
make unit
|
|
||||||
```
|
|
||||||
|
|
||||||
Standard go testing functionality is supported as well. To test SDK code that
|
|
||||||
is tagged with `codegen` you'll need to set the build tag in the go test
|
|
||||||
command. The `make unit` command will do this automatically.
|
|
||||||
|
|
||||||
```
|
|
||||||
go test -tags codegen ./private/...
|
|
||||||
```
|
|
||||||
|
|
||||||
See the `Makefile` for additional testing tags that can be used in testing.
|
|
||||||
|
|
||||||
To test on multiple platform the SDK includes several DockerFiles under the
|
|
||||||
`awstesting/sandbox` folder, and associated make recipes to execute
|
|
||||||
unit testing within environments configured for specific Go versions.
|
|
||||||
|
|
||||||
```
|
|
||||||
make sandbox-test-go18
|
|
||||||
```
|
|
||||||
|
|
||||||
To run all sandbox environments use the following make recipe
|
|
||||||
|
|
||||||
```
|
|
||||||
# Optionally update the Go tip that will be used during the batch testing
|
|
||||||
make update-aws-golang-tip
|
|
||||||
|
|
||||||
# Run all SDK tests for supported Go versions in sandboxes
|
|
||||||
make sandbox-test
|
|
||||||
```
|
|
||||||
|
|
||||||
In addition the sandbox environment include make recipes for interactive modes
|
|
||||||
so you can run command within the Docker container and context of the SDK.
|
|
||||||
|
|
||||||
```
|
|
||||||
make sandbox-go18
|
|
||||||
```
|
|
||||||
|
|
||||||
### Changelog
|
|
||||||
|
|
||||||
You can see all release changes in the `CHANGELOG.md` file at the root of the
|
|
||||||
repository. The release notes added to this file will contain service client
|
|
||||||
updates, and major SDK changes.
|
|
||||||
|
|
||||||
[issues]: https://github.com/aws/aws-sdk-go/issues
|
|
||||||
[pr]: https://github.com/aws/aws-sdk-go/pulls
|
|
||||||
[license]: http://aws.amazon.com/apache2.0/
|
|
||||||
[cla]: http://en.wikipedia.org/wiki/Contributor_License_Agreement
|
|
||||||
[releasenotes]: https://github.com/aws/aws-sdk-go/releases
|
|
||||||
|
|
20
vendor/github.com/aws/aws-sdk-go/Gopkg.lock
generated
vendored
20
vendor/github.com/aws/aws-sdk-go/Gopkg.lock
generated
vendored
|
@ -1,20 +0,0 @@
|
||||||
# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'.
|
|
||||||
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
name = "github.com/go-ini/ini"
|
|
||||||
packages = ["."]
|
|
||||||
revision = "300e940a926eb277d3901b20bdfcc54928ad3642"
|
|
||||||
version = "v1.25.4"
|
|
||||||
|
|
||||||
[[projects]]
|
|
||||||
name = "github.com/jmespath/go-jmespath"
|
|
||||||
packages = ["."]
|
|
||||||
revision = "0b12d6b5"
|
|
||||||
|
|
||||||
[solve-meta]
|
|
||||||
analyzer-name = "dep"
|
|
||||||
analyzer-version = 1
|
|
||||||
inputs-digest = "51a86a867df617990082dec6b868e4efe2fdb2ed0e02a3daa93cd30f962b5085"
|
|
||||||
solver-name = "gps-cdcl"
|
|
||||||
solver-version = 1
|
|
48
vendor/github.com/aws/aws-sdk-go/Gopkg.toml
generated
vendored
48
vendor/github.com/aws/aws-sdk-go/Gopkg.toml
generated
vendored
|
@ -1,48 +0,0 @@
|
||||||
|
|
||||||
# Gopkg.toml example
|
|
||||||
#
|
|
||||||
# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md
|
|
||||||
# for detailed Gopkg.toml documentation.
|
|
||||||
#
|
|
||||||
# required = ["github.com/user/thing/cmd/thing"]
|
|
||||||
# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"]
|
|
||||||
#
|
|
||||||
# [[constraint]]
|
|
||||||
# name = "github.com/user/project"
|
|
||||||
# version = "1.0.0"
|
|
||||||
#
|
|
||||||
# [[constraint]]
|
|
||||||
# name = "github.com/user/project2"
|
|
||||||
# branch = "dev"
|
|
||||||
# source = "github.com/myfork/project2"
|
|
||||||
#
|
|
||||||
# [[override]]
|
|
||||||
# name = "github.com/x/y"
|
|
||||||
# version = "2.4.0"
|
|
||||||
|
|
||||||
ignored = [
|
|
||||||
# Testing/Example/Codegen dependencies
|
|
||||||
"github.com/stretchr/testify",
|
|
||||||
"github.com/stretchr/testify/assert",
|
|
||||||
"github.com/stretchr/testify/require",
|
|
||||||
"github.com/go-sql-driver/mysql",
|
|
||||||
"github.com/gucumber/gucumber",
|
|
||||||
"github.com/pkg/errors",
|
|
||||||
"golang.org/x/net",
|
|
||||||
"golang.org/x/net/html",
|
|
||||||
"golang.org/x/net/http2",
|
|
||||||
"golang.org/x/text",
|
|
||||||
"golang.org/x/text/html",
|
|
||||||
"golang.org/x/tools",
|
|
||||||
"golang.org/x/tools/go/loader",
|
|
||||||
]
|
|
||||||
|
|
||||||
|
|
||||||
[[constraint]]
|
|
||||||
name = "github.com/go-ini/ini"
|
|
||||||
version = "1.25.4"
|
|
||||||
|
|
||||||
[[constraint]]
|
|
||||||
name = "github.com/jmespath/go-jmespath"
|
|
||||||
revision = "0b12d6b5"
|
|
||||||
#version = "0.2.2"
|
|
211
vendor/github.com/aws/aws-sdk-go/Makefile
generated
vendored
211
vendor/github.com/aws/aws-sdk-go/Makefile
generated
vendored
|
@ -1,211 +0,0 @@
|
||||||
LINTIGNOREDOT='awstesting/integration.+should not use dot imports'
|
|
||||||
LINTIGNOREDOC='service/[^/]+/(api|service|waiters)\.go:.+(comment on exported|should have comment or be unexported)'
|
|
||||||
LINTIGNORECONST='service/[^/]+/(api|service|waiters)\.go:.+(type|struct field|const|func) ([^ ]+) should be ([^ ]+)'
|
|
||||||
LINTIGNORESTUTTER='service/[^/]+/(api|service)\.go:.+(and that stutters)'
|
|
||||||
LINTIGNOREINFLECT='service/[^/]+/(api|errors|service)\.go:.+(method|const) .+ should be '
|
|
||||||
LINTIGNOREINFLECTS3UPLOAD='service/s3/s3manager/upload\.go:.+struct field SSEKMSKeyId should be '
|
|
||||||
LINTIGNOREDEPS='vendor/.+\.go'
|
|
||||||
LINTIGNOREPKGCOMMENT='service/[^/]+/doc_custom.go:.+package comment should be of the form'
|
|
||||||
UNIT_TEST_TAGS="example codegen awsinclude"
|
|
||||||
|
|
||||||
SDK_WITH_VENDOR_PKGS=$(shell go list -tags ${UNIT_TEST_TAGS} ./... | grep -v "/vendor/src")
|
|
||||||
SDK_ONLY_PKGS=$(shell go list ./... | grep -v "/vendor/")
|
|
||||||
SDK_UNIT_TEST_ONLY_PKGS=$(shell go list -tags ${UNIT_TEST_TAGS} ./... | grep -v "/vendor/")
|
|
||||||
SDK_GO_1_4=$(shell go version | grep "go1.4")
|
|
||||||
SDK_GO_1_5=$(shell go version | grep "go1.5")
|
|
||||||
SDK_GO_1_6=$(shell go version | grep "go1.6")
|
|
||||||
SDK_GO_VERSION=$(shell go version | awk '''{print $$3}''' | tr -d '''\n''')
|
|
||||||
|
|
||||||
all: get-deps generate unit
|
|
||||||
|
|
||||||
help:
|
|
||||||
@echo "Please use \`make <target>' where <target> is one of"
|
|
||||||
@echo " api_info to print a list of services and versions"
|
|
||||||
@echo " docs to build SDK documentation"
|
|
||||||
@echo " build to go build the SDK"
|
|
||||||
@echo " unit to run unit tests"
|
|
||||||
@echo " integration to run integration tests"
|
|
||||||
@echo " performance to run performance tests"
|
|
||||||
@echo " verify to verify tests"
|
|
||||||
@echo " lint to lint the SDK"
|
|
||||||
@echo " vet to vet the SDK"
|
|
||||||
@echo " generate to go generate and make services"
|
|
||||||
@echo " gen-test to generate protocol tests"
|
|
||||||
@echo " gen-services to generate services"
|
|
||||||
@echo " get-deps to go get the SDK dependencies"
|
|
||||||
@echo " get-deps-tests to get the SDK's test dependencies"
|
|
||||||
@echo " get-deps-verify to get the SDK's verification dependencies"
|
|
||||||
|
|
||||||
generate: cleanup-models gen-test gen-endpoints gen-services
|
|
||||||
|
|
||||||
gen-test: gen-protocol-test
|
|
||||||
|
|
||||||
gen-services:
|
|
||||||
go generate ./service
|
|
||||||
|
|
||||||
gen-protocol-test:
|
|
||||||
go generate ./private/protocol/...
|
|
||||||
|
|
||||||
gen-endpoints:
|
|
||||||
go generate ./models/endpoints/
|
|
||||||
|
|
||||||
cleanup-models:
|
|
||||||
@echo "Cleaning up stale model versions"
|
|
||||||
@./cleanup_models.sh
|
|
||||||
|
|
||||||
build:
|
|
||||||
@echo "go build SDK and vendor packages"
|
|
||||||
@go build ${SDK_ONLY_PKGS}
|
|
||||||
|
|
||||||
unit: get-deps-tests build verify
|
|
||||||
@echo "go test SDK and vendor packages"
|
|
||||||
@go test -tags ${UNIT_TEST_TAGS} $(SDK_UNIT_TEST_ONLY_PKGS)
|
|
||||||
|
|
||||||
unit-with-race-cover: get-deps-tests build verify
|
|
||||||
@echo "go test SDK and vendor packages"
|
|
||||||
@go test -tags ${UNIT_TEST_TAGS} -race -cpu=1,2,4 $(SDK_UNIT_TEST_ONLY_PKGS)
|
|
||||||
|
|
||||||
ci-test: ci-test-generate unit-with-race-cover ci-test-generate-validate
|
|
||||||
|
|
||||||
ci-test-generate: get-deps
|
|
||||||
@echo "CI test generated code"
|
|
||||||
@if [ \( -z "${SDK_GO_1_6}" \) -a \( -z "${SDK_GO_1_5}" \) ]; then make generate; else echo "skipping generate"; fi
|
|
||||||
|
|
||||||
ci-test-generate-validate:
|
|
||||||
@echo "CI test validate no generated code changes"
|
|
||||||
@gitstatus=`if [ \( -z "${SDK_GO_1_6}" \) -a \( -z "${SDK_GO_1_5}" \) ]; then git status --porcelain; else echo "skipping validation"; fi`; \
|
|
||||||
echo "$$gitstatus"; \
|
|
||||||
if [ "$$gitstatus" != "" ] && [ "$$gitstatus" != "skipping validation" ]; then git diff; exit 1; fi
|
|
||||||
|
|
||||||
integration: get-deps-tests integ-custom smoke-tests performance
|
|
||||||
|
|
||||||
integ-custom:
|
|
||||||
go test -tags "integration" ./awstesting/integration/customizations/...
|
|
||||||
|
|
||||||
cleanup-integ:
|
|
||||||
go run -tags "integration" ./awstesting/cmd/bucket_cleanup/main.go "aws-sdk-go-integration"
|
|
||||||
|
|
||||||
smoke-tests: get-deps-tests
|
|
||||||
gucumber -go-tags "integration" ./awstesting/integration/smoke
|
|
||||||
|
|
||||||
performance: get-deps-tests
|
|
||||||
AWS_TESTING_LOG_RESULTS=${log-detailed} AWS_TESTING_REGION=$(region) AWS_TESTING_DB_TABLE=$(table) gucumber -go-tags "integration" ./awstesting/performance
|
|
||||||
|
|
||||||
sandbox-tests: sandbox-test-go15 sandbox-test-go15-novendorexp sandbox-test-go16 sandbox-test-go17 sandbox-test-go18 sandbox-test-go19 sandbox-test-gotip
|
|
||||||
|
|
||||||
sandbox-build-go15:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.5 -t "aws-sdk-go-1.5" .
|
|
||||||
sandbox-go15: sandbox-build-go15
|
|
||||||
docker run -i -t aws-sdk-go-1.5 bash
|
|
||||||
sandbox-test-go15: sandbox-build-go15
|
|
||||||
docker run -t aws-sdk-go-1.5
|
|
||||||
|
|
||||||
sandbox-build-go15-novendorexp:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.5-novendorexp -t "aws-sdk-go-1.5-novendorexp" .
|
|
||||||
sandbox-go15-novendorexp: sandbox-build-go15-novendorexp
|
|
||||||
docker run -i -t aws-sdk-go-1.5-novendorexp bash
|
|
||||||
sandbox-test-go15-novendorexp: sandbox-build-go15-novendorexp
|
|
||||||
docker run -t aws-sdk-go-1.5-novendorexp
|
|
||||||
|
|
||||||
sandbox-build-go16:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.6 -t "aws-sdk-go-1.6" .
|
|
||||||
sandbox-go16: sandbox-build-go16
|
|
||||||
docker run -i -t aws-sdk-go-1.6 bash
|
|
||||||
sandbox-test-go16: sandbox-build-go16
|
|
||||||
docker run -t aws-sdk-go-1.6
|
|
||||||
|
|
||||||
sandbox-build-go17:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.7 -t "aws-sdk-go-1.7" .
|
|
||||||
sandbox-go17: sandbox-build-go17
|
|
||||||
docker run -i -t aws-sdk-go-1.7 bash
|
|
||||||
sandbox-test-go17: sandbox-build-go17
|
|
||||||
docker run -t aws-sdk-go-1.7
|
|
||||||
|
|
||||||
sandbox-build-go18:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.8 -t "aws-sdk-go-1.8" .
|
|
||||||
sandbox-go18: sandbox-build-go18
|
|
||||||
docker run -i -t aws-sdk-go-1.8 bash
|
|
||||||
sandbox-test-go18: sandbox-build-go18
|
|
||||||
docker run -t aws-sdk-go-1.8
|
|
||||||
|
|
||||||
sandbox-build-go19:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.8 -t "aws-sdk-go-1.9" .
|
|
||||||
sandbox-go19: sandbox-build-go19
|
|
||||||
docker run -i -t aws-sdk-go-1.9 bash
|
|
||||||
sandbox-test-go19: sandbox-build-go19
|
|
||||||
docker run -t aws-sdk-go-1.9
|
|
||||||
|
|
||||||
sandbox-build-go110:
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.go1.8 -t "aws-sdk-go-1.10" .
|
|
||||||
sandbox-go110: sandbox-build-go110
|
|
||||||
docker run -i -t aws-sdk-go-1.10 bash
|
|
||||||
sandbox-test-go110: sandbox-build-go110
|
|
||||||
docker run -t aws-sdk-go-1.10
|
|
||||||
|
|
||||||
sandbox-build-gotip:
|
|
||||||
@echo "Run make update-aws-golang-tip, if this test fails because missing aws-golang:tip container"
|
|
||||||
docker build -f ./awstesting/sandbox/Dockerfile.test.gotip -t "aws-sdk-go-tip" .
|
|
||||||
sandbox-gotip: sandbox-build-gotip
|
|
||||||
docker run -i -t aws-sdk-go-tip bash
|
|
||||||
sandbox-test-gotip: sandbox-build-gotip
|
|
||||||
docker run -t aws-sdk-go-tip
|
|
||||||
|
|
||||||
update-aws-golang-tip:
|
|
||||||
docker build --no-cache=true -f ./awstesting/sandbox/Dockerfile.golang-tip -t "aws-golang:tip" .
|
|
||||||
|
|
||||||
verify: get-deps-verify lint vet
|
|
||||||
|
|
||||||
lint:
|
|
||||||
@echo "go lint SDK and vendor packages"
|
|
||||||
@lint=`if [ \( -z "${SDK_GO_1_4}" \) -a \( -z "${SDK_GO_1_5}" \) ]; then golint ./...; else echo "skipping golint"; fi`; \
|
|
||||||
lint=`echo "$$lint" | grep -E -v -e ${LINTIGNOREDOT} -e ${LINTIGNOREDOC} -e ${LINTIGNORECONST} -e ${LINTIGNORESTUTTER} -e ${LINTIGNOREINFLECT} -e ${LINTIGNOREDEPS} -e ${LINTIGNOREINFLECTS3UPLOAD} -e ${LINTIGNOREPKGCOMMENT}`; \
|
|
||||||
echo "$$lint"; \
|
|
||||||
if [ "$$lint" != "" ] && [ "$$lint" != "skipping golint" ]; then exit 1; fi
|
|
||||||
|
|
||||||
SDK_BASE_FOLDERS=$(shell ls -d */ | grep -v vendor | grep -v awsmigrate)
|
|
||||||
ifneq (,$(findstring go1.4, ${SDK_GO_VERSION}))
|
|
||||||
GO_VET_CMD=echo skipping go vet, ${SDK_GO_VERSION}
|
|
||||||
else ifneq (,$(findstring go1.6, ${SDK_GO_VERSION}))
|
|
||||||
GO_VET_CMD=go tool vet --all -shadow -example=false
|
|
||||||
else
|
|
||||||
GO_VET_CMD=go tool vet --all -shadow
|
|
||||||
endif
|
|
||||||
|
|
||||||
vet:
|
|
||||||
${GO_VET_CMD} ${SDK_BASE_FOLDERS}
|
|
||||||
|
|
||||||
get-deps: get-deps-tests get-deps-verify
|
|
||||||
@echo "go get SDK dependencies"
|
|
||||||
@go get -v $(SDK_ONLY_PKGS)
|
|
||||||
|
|
||||||
get-deps-tests:
|
|
||||||
@echo "go get SDK testing dependencies"
|
|
||||||
go get github.com/gucumber/gucumber/cmd/gucumber
|
|
||||||
go get github.com/stretchr/testify
|
|
||||||
go get github.com/smartystreets/goconvey
|
|
||||||
go get golang.org/x/net/html
|
|
||||||
go get golang.org/x/net/http2
|
|
||||||
|
|
||||||
get-deps-verify:
|
|
||||||
@echo "go get SDK verification utilities"
|
|
||||||
@if [ \( -z "${SDK_GO_1_4}" \) -a \( -z "${SDK_GO_1_5}" \) ]; then go get github.com/golang/lint/golint; else echo "skipped getting golint"; fi
|
|
||||||
|
|
||||||
bench:
|
|
||||||
@echo "go bench SDK packages"
|
|
||||||
@go test -run NONE -bench . -benchmem -tags 'bench' $(SDK_ONLY_PKGS)
|
|
||||||
|
|
||||||
bench-protocol:
|
|
||||||
@echo "go bench SDK protocol marshallers"
|
|
||||||
@go test -run NONE -bench . -benchmem -tags 'bench' ./private/protocol/...
|
|
||||||
|
|
||||||
docs:
|
|
||||||
@echo "generate SDK docs"
|
|
||||||
@# This env variable, DOCS, is for internal use
|
|
||||||
@if [ -z ${AWS_DOC_GEN_TOOL} ]; then\
|
|
||||||
rm -rf doc && bundle install && bundle exec yard;\
|
|
||||||
else\
|
|
||||||
$(AWS_DOC_GEN_TOOL) `pwd`;\
|
|
||||||
fi
|
|
||||||
|
|
||||||
api_info:
|
|
||||||
@go run private/model/cli/api-info/api-info.go
|
|
451
vendor/github.com/aws/aws-sdk-go/README.md
generated
vendored
451
vendor/github.com/aws/aws-sdk-go/README.md
generated
vendored
|
@ -1,451 +0,0 @@
|
||||||
[](http://docs.aws.amazon.com/sdk-for-go/api) [](https://gitter.im/aws/aws-sdk-go?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [](https://travis-ci.org/aws/aws-sdk-go) [](https://github.com/aws/aws-sdk-go/blob/master/LICENSE.txt)
|
|
||||||
|
|
||||||
# AWS SDK for Go
|
|
||||||
|
|
||||||
aws-sdk-go is the official AWS SDK for the Go programming language.
|
|
||||||
|
|
||||||
Checkout our [release notes](https://github.com/aws/aws-sdk-go/releases) for information about the latest bug fixes, updates, and features added to the SDK.
|
|
||||||
|
|
||||||
We [announced](https://aws.amazon.com/blogs/developer/aws-sdk-for-go-2-0-developer-preview/) the Developer Preview for the [v2 AWS SDK for Go](https://github.com/aws/aws-sdk-go-v2). The v2 SDK is available at https://github.com/aws/aws-sdk-go-v2, and `go get github.com/aws/aws-sdk-go-v2` via `go get`. Check out the v2 SDK's [changes and updates](https://github.com/aws/aws-sdk-go-v2/blob/master/CHANGELOG.md), and let us know what you think. We want your feedback.
|
|
||||||
|
|
||||||
## Installing
|
|
||||||
|
|
||||||
If you are using Go 1.5 with the `GO15VENDOREXPERIMENT=1` vendoring flag, or 1.6 and higher you can use the following command to retrieve the SDK. The SDK's non-testing dependencies will be included and are vendored in the `vendor` folder.
|
|
||||||
|
|
||||||
go get -u github.com/aws/aws-sdk-go
|
|
||||||
|
|
||||||
Otherwise if your Go environment does not have vendoring support enabled, or you do not want to include the vendored SDK's dependencies you can use the following command to retrieve the SDK and its non-testing dependencies using `go get`.
|
|
||||||
|
|
||||||
go get -u github.com/aws/aws-sdk-go/aws/...
|
|
||||||
go get -u github.com/aws/aws-sdk-go/service/...
|
|
||||||
|
|
||||||
If you're looking to retrieve just the SDK without any dependencies use the following command.
|
|
||||||
|
|
||||||
go get -d github.com/aws/aws-sdk-go/
|
|
||||||
|
|
||||||
These two processes will still include the `vendor` folder and it should be deleted if its not going to be used by your environment.
|
|
||||||
|
|
||||||
rm -rf $GOPATH/src/github.com/aws/aws-sdk-go/vendor
|
|
||||||
|
|
||||||
## Getting Help
|
|
||||||
|
|
||||||
Please use these community resources for getting help. We use the GitHub issues for tracking bugs and feature requests.
|
|
||||||
|
|
||||||
* Ask a question on [StackOverflow](http://stackoverflow.com/) and tag it with the [`aws-sdk-go`](http://stackoverflow.com/questions/tagged/aws-sdk-go) tag.
|
|
||||||
* Come join the AWS SDK for Go community chat on [gitter](https://gitter.im/aws/aws-sdk-go).
|
|
||||||
* Open a support ticket with [AWS Support](http://docs.aws.amazon.com/awssupport/latest/user/getting-started.html).
|
|
||||||
* If you think you may have found a bug, please open an [issue](https://github.com/aws/aws-sdk-go/issues/new).
|
|
||||||
|
|
||||||
## Opening Issues
|
|
||||||
|
|
||||||
If you encounter a bug with the AWS SDK for Go we would like to hear about it. Search the [existing issues](https://github.com/aws/aws-sdk-go/issues) and see if others are also experiencing the issue before opening a new issue. Please include the version of AWS SDK for Go, Go language, and OS you’re using. Please also include repro case when appropriate.
|
|
||||||
|
|
||||||
The GitHub issues are intended for bug reports and feature requests. For help and questions with using AWS SDK for GO please make use of the resources listed in the [Getting Help](https://github.com/aws/aws-sdk-go#getting-help) section. Keeping the list of open issues lean will help us respond in a timely manner.
|
|
||||||
|
|
||||||
## Reference Documentation
|
|
||||||
|
|
||||||
[`Getting Started Guide`](https://aws.amazon.com/sdk-for-go/) - This document is a general introduction how to configure and make requests with the SDK. If this is your first time using the SDK, this documentation and the API documentation will help you get started. This document focuses on the syntax and behavior of the SDK. The [Service Developer Guide](https://aws.amazon.com/documentation/) will help you get started using specific AWS services.
|
|
||||||
|
|
||||||
[`SDK API Reference Documentation`](https://docs.aws.amazon.com/sdk-for-go/api/) - Use this document to look up all API operation input and output parameters for AWS services supported by the SDK. The API reference also includes documentation of the SDK, and examples how to using the SDK, service client API operations, and API operation require parameters.
|
|
||||||
|
|
||||||
[`Service Developer Guide`](https://aws.amazon.com/documentation/) - Use this documentation to learn how to interface with an AWS service. These are great guides both, if you're getting started with a service, or looking for more information on a service. You should not need this document for coding, though in some cases, services may supply helpful samples that you might want to look out for.
|
|
||||||
|
|
||||||
[`SDK Examples`](https://github.com/aws/aws-sdk-go/tree/master/example) - Included in the SDK's repo are a several hand crafted examples using the SDK features and AWS services.
|
|
||||||
|
|
||||||
## Overview of SDK's Packages
|
|
||||||
|
|
||||||
The SDK is composed of two main components, SDK core, and service clients.
|
|
||||||
The SDK core packages are all available under the aws package at the root of
|
|
||||||
the SDK. Each client for a supported AWS service is available within its own
|
|
||||||
package under the service folder at the root of the SDK.
|
|
||||||
|
|
||||||
* aws - SDK core, provides common shared types such as Config, Logger,
|
|
||||||
and utilities to make working with API parameters easier.
|
|
||||||
|
|
||||||
* awserr - Provides the error interface that the SDK will use for all
|
|
||||||
errors that occur in the SDK's processing. This includes service API
|
|
||||||
response errors as well. The Error type is made up of a code and message.
|
|
||||||
Cast the SDK's returned error type to awserr.Error and call the Code
|
|
||||||
method to compare returned error to specific error codes. See the package's
|
|
||||||
documentation for additional values that can be extracted such as RequestID.
|
|
||||||
|
|
||||||
* credentials - Provides the types and built in credentials providers
|
|
||||||
the SDK will use to retrieve AWS credentials to make API requests with.
|
|
||||||
Nested under this folder are also additional credentials providers such as
|
|
||||||
stscreds for assuming IAM roles, and ec2rolecreds for EC2 Instance roles.
|
|
||||||
|
|
||||||
* endpoints - Provides the AWS Regions and Endpoints metadata for the SDK.
|
|
||||||
Use this to lookup AWS service endpoint information such as which services
|
|
||||||
are in a region, and what regions a service is in. Constants are also provided
|
|
||||||
for all region identifiers, e.g UsWest2RegionID for "us-west-2".
|
|
||||||
|
|
||||||
* session - Provides initial default configuration, and load
|
|
||||||
configuration from external sources such as environment and shared
|
|
||||||
credentials file.
|
|
||||||
|
|
||||||
* request - Provides the API request sending, and retry logic for the SDK.
|
|
||||||
This package also includes utilities for defining your own request
|
|
||||||
retryer, and configuring how the SDK processes the request.
|
|
||||||
|
|
||||||
* service - Clients for AWS services. All services supported by the SDK are
|
|
||||||
available under this folder.
|
|
||||||
|
|
||||||
## How to Use the SDK's AWS Service Clients
|
|
||||||
|
|
||||||
The SDK includes the Go types and utilities you can use to make requests to
|
|
||||||
AWS service APIs. Within the service folder at the root of the SDK you'll find
|
|
||||||
a package for each AWS service the SDK supports. All service clients follows
|
|
||||||
a common pattern of creation and usage.
|
|
||||||
|
|
||||||
When creating a client for an AWS service you'll first need to have a Session
|
|
||||||
value constructed. The Session provides shared configuration that can be shared
|
|
||||||
between your service clients. When service clients are created you can pass
|
|
||||||
in additional configuration via the aws.Config type to override configuration
|
|
||||||
provided by in the Session to create service client instances with custom
|
|
||||||
configuration.
|
|
||||||
|
|
||||||
Once the service's client is created you can use it to make API requests the
|
|
||||||
AWS service. These clients are safe to use concurrently.
|
|
||||||
|
|
||||||
## Configuring the SDK
|
|
||||||
|
|
||||||
In the AWS SDK for Go, you can configure settings for service clients, such
|
|
||||||
as the log level and maximum number of retries. Most settings are optional;
|
|
||||||
however, for each service client, you must specify a region and your credentials.
|
|
||||||
The SDK uses these values to send requests to the correct AWS region and sign
|
|
||||||
requests with the correct credentials. You can specify these values as part
|
|
||||||
of a session or as environment variables.
|
|
||||||
|
|
||||||
See the SDK's [configuration guide][config_guide] for more information.
|
|
||||||
|
|
||||||
See the [session][session_pkg] package documentation for more information on how to use Session
|
|
||||||
with the SDK.
|
|
||||||
|
|
||||||
See the [Config][config_typ] type in the [aws][aws_pkg] package for more information on configuration
|
|
||||||
options.
|
|
||||||
|
|
||||||
[config_guide]: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html
|
|
||||||
[session_pkg]: https://docs.aws.amazon.com/sdk-for-go/api/aws/session/
|
|
||||||
[config_typ]: https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config
|
|
||||||
[aws_pkg]: https://docs.aws.amazon.com/sdk-for-go/api/aws/
|
|
||||||
|
|
||||||
### Configuring Credentials
|
|
||||||
|
|
||||||
When using the SDK you'll generally need your AWS credentials to authenticate
|
|
||||||
with AWS services. The SDK supports multiple methods of supporting these
|
|
||||||
credentials. By default the SDK will source credentials automatically from
|
|
||||||
its default credential chain. See the session package for more information
|
|
||||||
on this chain, and how to configure it. The common items in the credential
|
|
||||||
chain are the following:
|
|
||||||
|
|
||||||
* Environment Credentials - Set of environment variables that are useful
|
|
||||||
when sub processes are created for specific roles.
|
|
||||||
|
|
||||||
* Shared Credentials file (~/.aws/credentials) - This file stores your
|
|
||||||
credentials based on a profile name and is useful for local development.
|
|
||||||
|
|
||||||
* EC2 Instance Role Credentials - Use EC2 Instance Role to assign credentials
|
|
||||||
to application running on an EC2 instance. This removes the need to manage
|
|
||||||
credential files in production.
|
|
||||||
|
|
||||||
Credentials can be configured in code as well by setting the Config's Credentials
|
|
||||||
value to a custom provider or using one of the providers included with the
|
|
||||||
SDK to bypass the default credential chain and use a custom one. This is
|
|
||||||
helpful when you want to instruct the SDK to only use a specific set of
|
|
||||||
credentials or providers.
|
|
||||||
|
|
||||||
This example creates a credential provider for assuming an IAM role, "myRoleARN"
|
|
||||||
and configures the S3 service client to use that role for API requests.
|
|
||||||
|
|
||||||
```go
|
|
||||||
// Initial credentials loaded from SDK's default credential chain. Such as
|
|
||||||
// the environment, shared credentials (~/.aws/credentials), or EC2 Instance
|
|
||||||
// Role. These credentials will be used to to make the STS Assume Role API.
|
|
||||||
sess := session.Must(session.NewSession())
|
|
||||||
|
|
||||||
// Create the credentials from AssumeRoleProvider to assume the role
|
|
||||||
// referenced by the "myRoleARN" ARN.
|
|
||||||
creds := stscreds.NewCredentials(sess, "myRoleArn")
|
|
||||||
|
|
||||||
// Create service client value configured for credentials
|
|
||||||
// from assumed role.
|
|
||||||
svc := s3.New(sess, &aws.Config{Credentials: creds})
|
|
||||||
```
|
|
||||||
|
|
||||||
See the [credentials][credentials_pkg] package documentation for more information on credential
|
|
||||||
providers included with the SDK, and how to customize the SDK's usage of
|
|
||||||
credentials.
|
|
||||||
|
|
||||||
The SDK has support for the shared configuration file (~/.aws/config). This
|
|
||||||
support can be enabled by setting the environment variable, "AWS_SDK_LOAD_CONFIG=1",
|
|
||||||
or enabling the feature in code when creating a Session via the
|
|
||||||
Option's SharedConfigState parameter.
|
|
||||||
|
|
||||||
```go
|
|
||||||
sess := session.Must(session.NewSessionWithOptions(session.Options{
|
|
||||||
SharedConfigState: session.SharedConfigEnable,
|
|
||||||
}))
|
|
||||||
```
|
|
||||||
|
|
||||||
[credentials_pkg]: https://docs.aws.amazon.com/sdk-for-go/api/aws/credentials
|
|
||||||
|
|
||||||
### Configuring AWS Region
|
|
||||||
|
|
||||||
In addition to the credentials you'll need to specify the region the SDK
|
|
||||||
will use to make AWS API requests to. In the SDK you can specify the region
|
|
||||||
either with an environment variable, or directly in code when a Session or
|
|
||||||
service client is created. The last value specified in code wins if the region
|
|
||||||
is specified multiple ways.
|
|
||||||
|
|
||||||
To set the region via the environment variable set the "AWS_REGION" to the
|
|
||||||
region you want to the SDK to use. Using this method to set the region will
|
|
||||||
allow you to run your application in multiple regions without needing additional
|
|
||||||
code in the application to select the region.
|
|
||||||
|
|
||||||
AWS_REGION=us-west-2
|
|
||||||
|
|
||||||
The endpoints package includes constants for all regions the SDK knows. The
|
|
||||||
values are all suffixed with RegionID. These values are helpful, because they
|
|
||||||
reduce the need to type the region string manually.
|
|
||||||
|
|
||||||
To set the region on a Session use the aws package's Config struct parameter
|
|
||||||
Region to the AWS region you want the service clients created from the session to
|
|
||||||
use. This is helpful when you want to create multiple service clients, and
|
|
||||||
all of the clients make API requests to the same region.
|
|
||||||
|
|
||||||
```go
|
|
||||||
sess := session.Must(session.NewSession(&aws.Config{
|
|
||||||
Region: aws.String(endpoints.UsWest2RegionID),
|
|
||||||
}))
|
|
||||||
```
|
|
||||||
|
|
||||||
See the [endpoints][endpoints_pkg] package for the AWS Regions and Endpoints metadata.
|
|
||||||
|
|
||||||
In addition to setting the region when creating a Session you can also set
|
|
||||||
the region on a per service client bases. This overrides the region of a
|
|
||||||
Session. This is helpful when you want to create service clients in specific
|
|
||||||
regions different from the Session's region.
|
|
||||||
|
|
||||||
```go
|
|
||||||
svc := s3.New(sess, &aws.Config{
|
|
||||||
Region: aws.String(endpoints.UsWest2RegionID),
|
|
||||||
})
|
|
||||||
```
|
|
||||||
|
|
||||||
See the [Config][config_typ] type in the [aws][aws_pkg] package for more information and additional
|
|
||||||
options such as setting the Endpoint, and other service client configuration options.
|
|
||||||
|
|
||||||
[endpoints_pkg]: https://docs.aws.amazon.com/sdk-for-go/api/aws/endpoints/
|
|
||||||
|
|
||||||
## Making API Requests
|
|
||||||
|
|
||||||
Once the client is created you can make an API request to the service.
|
|
||||||
Each API method takes a input parameter, and returns the service response
|
|
||||||
and an error. The SDK provides methods for making the API call in multiple ways.
|
|
||||||
|
|
||||||
In this list we'll use the S3 ListObjects API as an example for the different
|
|
||||||
ways of making API requests.
|
|
||||||
|
|
||||||
* ListObjects - Base API operation that will make the API request to the service.
|
|
||||||
|
|
||||||
* ListObjectsRequest - API methods suffixed with Request will construct the
|
|
||||||
API request, but not send it. This is also helpful when you want to get a
|
|
||||||
presigned URL for a request, and share the presigned URL instead of your
|
|
||||||
application making the request directly.
|
|
||||||
|
|
||||||
* ListObjectsPages - Same as the base API operation, but uses a callback to
|
|
||||||
automatically handle pagination of the API's response.
|
|
||||||
|
|
||||||
* ListObjectsWithContext - Same as base API operation, but adds support for
|
|
||||||
the Context pattern. This is helpful for controlling the canceling of in
|
|
||||||
flight requests. See the Go standard library context package for more
|
|
||||||
information. This method also takes request package's Option functional
|
|
||||||
options as the variadic argument for modifying how the request will be
|
|
||||||
made, or extracting information from the raw HTTP response.
|
|
||||||
|
|
||||||
* ListObjectsPagesWithContext - same as ListObjectsPages, but adds support for
|
|
||||||
the Context pattern. Similar to ListObjectsWithContext this method also
|
|
||||||
takes the request package's Option function option types as the variadic
|
|
||||||
argument.
|
|
||||||
|
|
||||||
In addition to the API operations the SDK also includes several higher level
|
|
||||||
methods that abstract checking for and waiting for an AWS resource to be in
|
|
||||||
a desired state. In this list we'll use WaitUntilBucketExists to demonstrate
|
|
||||||
the different forms of waiters.
|
|
||||||
|
|
||||||
* WaitUntilBucketExists. - Method to make API request to query an AWS service for
|
|
||||||
a resource's state. Will return successfully when that state is accomplished.
|
|
||||||
|
|
||||||
* WaitUntilBucketExistsWithContext - Same as WaitUntilBucketExists, but adds
|
|
||||||
support for the Context pattern. In addition these methods take request
|
|
||||||
package's WaiterOptions to configure the waiter, and how underlying request
|
|
||||||
will be made by the SDK.
|
|
||||||
|
|
||||||
The API method will document which error codes the service might return for
|
|
||||||
the operation. These errors will also be available as const strings prefixed
|
|
||||||
with "ErrCode" in the service client's package. If there are no errors listed
|
|
||||||
in the API's SDK documentation you'll need to consult the AWS service's API
|
|
||||||
documentation for the errors that could be returned.
|
|
||||||
|
|
||||||
```go
|
|
||||||
ctx := context.Background()
|
|
||||||
|
|
||||||
result, err := svc.GetObjectWithContext(ctx, &s3.GetObjectInput{
|
|
||||||
Bucket: aws.String("my-bucket"),
|
|
||||||
Key: aws.String("my-key"),
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
// Cast err to awserr.Error to handle specific error codes.
|
|
||||||
aerr, ok := err.(awserr.Error)
|
|
||||||
if ok && aerr.Code() == s3.ErrCodeNoSuchKey {
|
|
||||||
// Specific error code handling
|
|
||||||
}
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Make sure to close the body when done with it for S3 GetObject APIs or
|
|
||||||
// will leak connections.
|
|
||||||
defer result.Body.Close()
|
|
||||||
|
|
||||||
fmt.Println("Object Size:", aws.Int64Value(result.ContentLength))
|
|
||||||
```
|
|
||||||
|
|
||||||
### API Request Pagination and Resource Waiters
|
|
||||||
|
|
||||||
Pagination helper methods are suffixed with "Pages", and provide the
|
|
||||||
functionality needed to round trip API page requests. Pagination methods
|
|
||||||
take a callback function that will be called for each page of the API's response.
|
|
||||||
|
|
||||||
```go
|
|
||||||
objects := []string{}
|
|
||||||
err := svc.ListObjectsPagesWithContext(ctx, &s3.ListObjectsInput{
|
|
||||||
Bucket: aws.String(myBucket),
|
|
||||||
}, func(p *s3.ListObjectsOutput, lastPage bool) bool {
|
|
||||||
for _, o := range p.Contents {
|
|
||||||
objects = append(objects, aws.StringValue(o.Key))
|
|
||||||
}
|
|
||||||
return true // continue paging
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
panic(fmt.Sprintf("failed to list objects for bucket, %s, %v", myBucket, err))
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Println("Objects in bucket:", objects)
|
|
||||||
```
|
|
||||||
|
|
||||||
Waiter helper methods provide the functionality to wait for an AWS resource
|
|
||||||
state. These methods abstract the logic needed to check the state of an
|
|
||||||
AWS resource, and wait until that resource is in a desired state. The waiter
|
|
||||||
will block until the resource is in the state that is desired, an error occurs,
|
|
||||||
or the waiter times out. If a resource times out the error code returned will
|
|
||||||
be request.WaiterResourceNotReadyErrorCode.
|
|
||||||
|
|
||||||
```go
|
|
||||||
err := svc.WaitUntilBucketExistsWithContext(ctx, &s3.HeadBucketInput{
|
|
||||||
Bucket: aws.String(myBucket),
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
aerr, ok := err.(awserr.Error)
|
|
||||||
if ok && aerr.Code() == request.WaiterResourceNotReadyErrorCode {
|
|
||||||
fmt.Fprintf(os.Stderr, "timed out while waiting for bucket to exist")
|
|
||||||
}
|
|
||||||
panic(fmt.Errorf("failed to wait for bucket to exist, %v", err))
|
|
||||||
}
|
|
||||||
fmt.Println("Bucket", myBucket, "exists")
|
|
||||||
```
|
|
||||||
|
|
||||||
## Complete SDK Example
|
|
||||||
|
|
||||||
This example shows a complete working Go file which will upload a file to S3
|
|
||||||
and use the Context pattern to implement timeout logic that will cancel the
|
|
||||||
request if it takes too long. This example highlights how to use sessions,
|
|
||||||
create a service client, make a request, handle the error, and process the
|
|
||||||
response.
|
|
||||||
|
|
||||||
```go
|
|
||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
"flag"
|
|
||||||
"fmt"
|
|
||||||
"os"
|
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/aws/aws-sdk-go/aws"
|
|
||||||
"github.com/aws/aws-sdk-go/aws/awserr"
|
|
||||||
"github.com/aws/aws-sdk-go/aws/request"
|
|
||||||
"github.com/aws/aws-sdk-go/aws/session"
|
|
||||||
"github.com/aws/aws-sdk-go/service/s3"
|
|
||||||
)
|
|
||||||
|
|
||||||
// Uploads a file to S3 given a bucket and object key. Also takes a duration
|
|
||||||
// value to terminate the update if it doesn't complete within that time.
|
|
||||||
//
|
|
||||||
// The AWS Region needs to be provided in the AWS shared config or on the
|
|
||||||
// environment variable as `AWS_REGION`. Credentials also must be provided
|
|
||||||
// Will default to shared config file, but can load from environment if provided.
|
|
||||||
//
|
|
||||||
// Usage:
|
|
||||||
// # Upload myfile.txt to myBucket/myKey. Must complete within 10 minutes or will fail
|
|
||||||
// go run withContext.go -b mybucket -k myKey -d 10m < myfile.txt
|
|
||||||
func main() {
|
|
||||||
var bucket, key string
|
|
||||||
var timeout time.Duration
|
|
||||||
|
|
||||||
flag.StringVar(&bucket, "b", "", "Bucket name.")
|
|
||||||
flag.StringVar(&key, "k", "", "Object key name.")
|
|
||||||
flag.DurationVar(&timeout, "d", 0, "Upload timeout.")
|
|
||||||
flag.Parse()
|
|
||||||
|
|
||||||
// All clients require a Session. The Session provides the client with
|
|
||||||
// shared configuration such as region, endpoint, and credentials. A
|
|
||||||
// Session should be shared where possible to take advantage of
|
|
||||||
// configuration and credential caching. See the session package for
|
|
||||||
// more information.
|
|
||||||
sess := session.Must(session.NewSession())
|
|
||||||
|
|
||||||
// Create a new instance of the service's client with a Session.
|
|
||||||
// Optional aws.Config values can also be provided as variadic arguments
|
|
||||||
// to the New function. This option allows you to provide service
|
|
||||||
// specific configuration.
|
|
||||||
svc := s3.New(sess)
|
|
||||||
|
|
||||||
// Create a context with a timeout that will abort the upload if it takes
|
|
||||||
// more than the passed in timeout.
|
|
||||||
ctx := context.Background()
|
|
||||||
var cancelFn func()
|
|
||||||
if timeout > 0 {
|
|
||||||
ctx, cancelFn = context.WithTimeout(ctx, timeout)
|
|
||||||
}
|
|
||||||
// Ensure the context is canceled to prevent leaking.
|
|
||||||
// See context package for more information, https://golang.org/pkg/context/
|
|
||||||
defer cancelFn()
|
|
||||||
|
|
||||||
// Uploads the object to S3. The Context will interrupt the request if the
|
|
||||||
// timeout expires.
|
|
||||||
_, err := svc.PutObjectWithContext(ctx, &s3.PutObjectInput{
|
|
||||||
Bucket: aws.String(bucket),
|
|
||||||
Key: aws.String(key),
|
|
||||||
Body: os.Stdin,
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
if aerr, ok := err.(awserr.Error); ok && aerr.Code() == request.CanceledErrorCode {
|
|
||||||
// If the SDK can determine the request or retry delay was canceled
|
|
||||||
// by a context the CanceledErrorCode error code will be returned.
|
|
||||||
fmt.Fprintf(os.Stderr, "upload canceled due to timeout, %v\n", err)
|
|
||||||
} else {
|
|
||||||
fmt.Fprintf(os.Stderr, "failed to upload object, %v\n", err)
|
|
||||||
}
|
|
||||||
os.Exit(1)
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Printf("successfully uploaded file to %s/%s\n", bucket, key)
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
## License
|
|
||||||
|
|
||||||
This SDK is distributed under the
|
|
||||||
[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0),
|
|
||||||
see LICENSE.txt and NOTICE.txt for more information.
|
|
12
vendor/github.com/aws/aws-sdk-go/aws/credentials/example.ini
generated
vendored
12
vendor/github.com/aws/aws-sdk-go/aws/credentials/example.ini
generated
vendored
|
@ -1,12 +0,0 @@
|
||||||
[default]
|
|
||||||
aws_access_key_id = accessKey
|
|
||||||
aws_secret_access_key = secret
|
|
||||||
aws_session_token = token
|
|
||||||
|
|
||||||
[no_token]
|
|
||||||
aws_access_key_id = accessKey
|
|
||||||
aws_secret_access_key = secret
|
|
||||||
|
|
||||||
[with_colon]
|
|
||||||
aws_access_key_id: accessKey
|
|
||||||
aws_secret_access_key: secret
|
|
21
vendor/github.com/aws/aws-sdk-go/buildspec.yml
generated
vendored
21
vendor/github.com/aws/aws-sdk-go/buildspec.yml
generated
vendored
|
@ -1,21 +0,0 @@
|
||||||
version: 0.2
|
|
||||||
|
|
||||||
phases:
|
|
||||||
build:
|
|
||||||
commands:
|
|
||||||
- echo Build started on `date`
|
|
||||||
- export GOPATH=/go
|
|
||||||
- export SDK_CB_ROOT=`pwd`
|
|
||||||
- export SDK_GO_ROOT=/go/src/github.com/aws/aws-sdk-go
|
|
||||||
- mkdir -p /go/src/github.com/aws
|
|
||||||
- ln -s $SDK_CB_ROOT $SDK_GO_ROOT
|
|
||||||
- cd $SDK_GO_ROOT
|
|
||||||
- make ci-test
|
|
||||||
- cd $SDK_CB_ROOT
|
|
||||||
- #echo Compiling the Go code...
|
|
||||||
post_build:
|
|
||||||
commands:
|
|
||||||
- echo Build completed on `date`
|
|
||||||
#artifacts:
|
|
||||||
# files:
|
|
||||||
# - hello
|
|
9
vendor/github.com/aws/aws-sdk-go/cleanup_models.sh
generated
vendored
9
vendor/github.com/aws/aws-sdk-go/cleanup_models.sh
generated
vendored
|
@ -1,9 +0,0 @@
|
||||||
#/usr/bin/env bash
|
|
||||||
|
|
||||||
# Deletes all but the most current model version.
|
|
||||||
for v in $(ls ./models/apis | grep -v '.go' ); do
|
|
||||||
for vm in $(ls -r models/apis/$v/ | sed -n '1!p' ); do
|
|
||||||
echo "rm -r models/apis/$v/$vm"
|
|
||||||
rm -r models/apis/$v/$vm
|
|
||||||
done
|
|
||||||
done
|
|
405
vendor/github.com/aws/aws-sdk-go/doc.go
generated
vendored
405
vendor/github.com/aws/aws-sdk-go/doc.go
generated
vendored
|
@ -1,405 +0,0 @@
|
||||||
// Package sdk is the official AWS SDK for the Go programming language.
|
|
||||||
//
|
|
||||||
// The AWS SDK for Go provides APIs and utilities that developers can use to
|
|
||||||
// build Go applications that use AWS services, such as Amazon Elastic Compute
|
|
||||||
// Cloud (Amazon EC2) and Amazon Simple Storage Service (Amazon S3).
|
|
||||||
//
|
|
||||||
// The SDK removes the complexity of coding directly against a web service
|
|
||||||
// interface. It hides a lot of the lower-level plumbing, such as authentication,
|
|
||||||
// request retries, and error handling.
|
|
||||||
//
|
|
||||||
// The SDK also includes helpful utilities on top of the AWS APIs that add additional
|
|
||||||
// capabilities and functionality. For example, the Amazon S3 Download and Upload
|
|
||||||
// Manager will automatically split up large objects into multiple parts and
|
|
||||||
// transfer them concurrently.
|
|
||||||
//
|
|
||||||
// See the s3manager package documentation for more information.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/service/s3/s3manager/
|
|
||||||
//
|
|
||||||
// Getting More Information
|
|
||||||
//
|
|
||||||
// Checkout the Getting Started Guide and API Reference Docs detailed the SDK's
|
|
||||||
// components and details on each AWS client the SDK supports.
|
|
||||||
//
|
|
||||||
// The Getting Started Guide provides examples and detailed description of how
|
|
||||||
// to get setup with the SDK.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/welcome.html
|
|
||||||
//
|
|
||||||
// The API Reference Docs include a detailed breakdown of the SDK's components
|
|
||||||
// such as utilities and AWS clients. Use this as a reference of the Go types
|
|
||||||
// included with the SDK, such as AWS clients, API operations, and API parameters.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/
|
|
||||||
//
|
|
||||||
// Overview of SDK's Packages
|
|
||||||
//
|
|
||||||
// The SDK is composed of two main components, SDK core, and service clients.
|
|
||||||
// The SDK core packages are all available under the aws package at the root of
|
|
||||||
// the SDK. Each client for a supported AWS service is available within its own
|
|
||||||
// package under the service folder at the root of the SDK.
|
|
||||||
//
|
|
||||||
// * aws - SDK core, provides common shared types such as Config, Logger,
|
|
||||||
// and utilities to make working with API parameters easier.
|
|
||||||
//
|
|
||||||
// * awserr - Provides the error interface that the SDK will use for all
|
|
||||||
// errors that occur in the SDK's processing. This includes service API
|
|
||||||
// response errors as well. The Error type is made up of a code and message.
|
|
||||||
// Cast the SDK's returned error type to awserr.Error and call the Code
|
|
||||||
// method to compare returned error to specific error codes. See the package's
|
|
||||||
// documentation for additional values that can be extracted such as RequestId.
|
|
||||||
//
|
|
||||||
// * credentials - Provides the types and built in credentials providers
|
|
||||||
// the SDK will use to retrieve AWS credentials to make API requests with.
|
|
||||||
// Nested under this folder are also additional credentials providers such as
|
|
||||||
// stscreds for assuming IAM roles, and ec2rolecreds for EC2 Instance roles.
|
|
||||||
//
|
|
||||||
// * endpoints - Provides the AWS Regions and Endpoints metadata for the SDK.
|
|
||||||
// Use this to lookup AWS service endpoint information such as which services
|
|
||||||
// are in a region, and what regions a service is in. Constants are also provided
|
|
||||||
// for all region identifiers, e.g UsWest2RegionID for "us-west-2".
|
|
||||||
//
|
|
||||||
// * session - Provides initial default configuration, and load
|
|
||||||
// configuration from external sources such as environment and shared
|
|
||||||
// credentials file.
|
|
||||||
//
|
|
||||||
// * request - Provides the API request sending, and retry logic for the SDK.
|
|
||||||
// This package also includes utilities for defining your own request
|
|
||||||
// retryer, and configuring how the SDK processes the request.
|
|
||||||
//
|
|
||||||
// * service - Clients for AWS services. All services supported by the SDK are
|
|
||||||
// available under this folder.
|
|
||||||
//
|
|
||||||
// How to Use the SDK's AWS Service Clients
|
|
||||||
//
|
|
||||||
// The SDK includes the Go types and utilities you can use to make requests to
|
|
||||||
// AWS service APIs. Within the service folder at the root of the SDK you'll find
|
|
||||||
// a package for each AWS service the SDK supports. All service clients follows
|
|
||||||
// a common pattern of creation and usage.
|
|
||||||
//
|
|
||||||
// When creating a client for an AWS service you'll first need to have a Session
|
|
||||||
// value constructed. The Session provides shared configuration that can be shared
|
|
||||||
// between your service clients. When service clients are created you can pass
|
|
||||||
// in additional configuration via the aws.Config type to override configuration
|
|
||||||
// provided by in the Session to create service client instances with custom
|
|
||||||
// configuration.
|
|
||||||
//
|
|
||||||
// Once the service's client is created you can use it to make API requests the
|
|
||||||
// AWS service. These clients are safe to use concurrently.
|
|
||||||
//
|
|
||||||
// Configuring the SDK
|
|
||||||
//
|
|
||||||
// In the AWS SDK for Go, you can configure settings for service clients, such
|
|
||||||
// as the log level and maximum number of retries. Most settings are optional;
|
|
||||||
// however, for each service client, you must specify a region and your credentials.
|
|
||||||
// The SDK uses these values to send requests to the correct AWS region and sign
|
|
||||||
// requests with the correct credentials. You can specify these values as part
|
|
||||||
// of a session or as environment variables.
|
|
||||||
//
|
|
||||||
// See the SDK's configuration guide for more information.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html
|
|
||||||
//
|
|
||||||
// See the session package documentation for more information on how to use Session
|
|
||||||
// with the SDK.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/aws/session/
|
|
||||||
//
|
|
||||||
// See the Config type in the aws package for more information on configuration
|
|
||||||
// options.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config
|
|
||||||
//
|
|
||||||
// Configuring Credentials
|
|
||||||
//
|
|
||||||
// When using the SDK you'll generally need your AWS credentials to authenticate
|
|
||||||
// with AWS services. The SDK supports multiple methods of supporting these
|
|
||||||
// credentials. By default the SDK will source credentials automatically from
|
|
||||||
// its default credential chain. See the session package for more information
|
|
||||||
// on this chain, and how to configure it. The common items in the credential
|
|
||||||
// chain are the following:
|
|
||||||
//
|
|
||||||
// * Environment Credentials - Set of environment variables that are useful
|
|
||||||
// when sub processes are created for specific roles.
|
|
||||||
//
|
|
||||||
// * Shared Credentials file (~/.aws/credentials) - This file stores your
|
|
||||||
// credentials based on a profile name and is useful for local development.
|
|
||||||
//
|
|
||||||
// * EC2 Instance Role Credentials - Use EC2 Instance Role to assign credentials
|
|
||||||
// to application running on an EC2 instance. This removes the need to manage
|
|
||||||
// credential files in production.
|
|
||||||
//
|
|
||||||
// Credentials can be configured in code as well by setting the Config's Credentials
|
|
||||||
// value to a custom provider or using one of the providers included with the
|
|
||||||
// SDK to bypass the default credential chain and use a custom one. This is
|
|
||||||
// helpful when you want to instruct the SDK to only use a specific set of
|
|
||||||
// credentials or providers.
|
|
||||||
//
|
|
||||||
// This example creates a credential provider for assuming an IAM role, "myRoleARN"
|
|
||||||
// and configures the S3 service client to use that role for API requests.
|
|
||||||
//
|
|
||||||
// // Initial credentials loaded from SDK's default credential chain. Such as
|
|
||||||
// // the environment, shared credentials (~/.aws/credentials), or EC2 Instance
|
|
||||||
// // Role. These credentials will be used to to make the STS Assume Role API.
|
|
||||||
// sess := session.Must(session.NewSession())
|
|
||||||
//
|
|
||||||
// // Create the credentials from AssumeRoleProvider to assume the role
|
|
||||||
// // referenced by the "myRoleARN" ARN.
|
|
||||||
// creds := stscreds.NewCredentials(sess, "myRoleArn")
|
|
||||||
//
|
|
||||||
// // Create service client value configured for credentials
|
|
||||||
// // from assumed role.
|
|
||||||
// svc := s3.New(sess, &aws.Config{Credentials: creds})/
|
|
||||||
//
|
|
||||||
// See the credentials package documentation for more information on credential
|
|
||||||
// providers included with the SDK, and how to customize the SDK's usage of
|
|
||||||
// credentials.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/aws/credentials
|
|
||||||
//
|
|
||||||
// The SDK has support for the shared configuration file (~/.aws/config). This
|
|
||||||
// support can be enabled by setting the environment variable, "AWS_SDK_LOAD_CONFIG=1",
|
|
||||||
// or enabling the feature in code when creating a Session via the
|
|
||||||
// Option's SharedConfigState parameter.
|
|
||||||
//
|
|
||||||
// sess := session.Must(session.NewSessionWithOptions(session.Options{
|
|
||||||
// SharedConfigState: session.SharedConfigEnable,
|
|
||||||
// }))
|
|
||||||
//
|
|
||||||
// Configuring AWS Region
|
|
||||||
//
|
|
||||||
// In addition to the credentials you'll need to specify the region the SDK
|
|
||||||
// will use to make AWS API requests to. In the SDK you can specify the region
|
|
||||||
// either with an environment variable, or directly in code when a Session or
|
|
||||||
// service client is created. The last value specified in code wins if the region
|
|
||||||
// is specified multiple ways.
|
|
||||||
//
|
|
||||||
// To set the region via the environment variable set the "AWS_REGION" to the
|
|
||||||
// region you want to the SDK to use. Using this method to set the region will
|
|
||||||
// allow you to run your application in multiple regions without needing additional
|
|
||||||
// code in the application to select the region.
|
|
||||||
//
|
|
||||||
// AWS_REGION=us-west-2
|
|
||||||
//
|
|
||||||
// The endpoints package includes constants for all regions the SDK knows. The
|
|
||||||
// values are all suffixed with RegionID. These values are helpful, because they
|
|
||||||
// reduce the need to type the region string manually.
|
|
||||||
//
|
|
||||||
// To set the region on a Session use the aws package's Config struct parameter
|
|
||||||
// Region to the AWS region you want the service clients created from the session to
|
|
||||||
// use. This is helpful when you want to create multiple service clients, and
|
|
||||||
// all of the clients make API requests to the same region.
|
|
||||||
//
|
|
||||||
// sess := session.Must(session.NewSession(&aws.Config{
|
|
||||||
// Region: aws.String(endpoints.UsWest2RegionID),
|
|
||||||
// }))
|
|
||||||
//
|
|
||||||
// See the endpoints package for the AWS Regions and Endpoints metadata.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/aws/endpoints/
|
|
||||||
//
|
|
||||||
// In addition to setting the region when creating a Session you can also set
|
|
||||||
// the region on a per service client bases. This overrides the region of a
|
|
||||||
// Session. This is helpful when you want to create service clients in specific
|
|
||||||
// regions different from the Session's region.
|
|
||||||
//
|
|
||||||
// svc := s3.New(sess, &aws.Config{
|
|
||||||
// Region: aws.String(endpoints.UsWest2RegionID),
|
|
||||||
// })
|
|
||||||
//
|
|
||||||
// See the Config type in the aws package for more information and additional
|
|
||||||
// options such as setting the Endpoint, and other service client configuration options.
|
|
||||||
// https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config
|
|
||||||
//
|
|
||||||
// Making API Requests
|
|
||||||
//
|
|
||||||
// Once the client is created you can make an API request to the service.
|
|
||||||
// Each API method takes a input parameter, and returns the service response
|
|
||||||
// and an error. The SDK provides methods for making the API call in multiple ways.
|
|
||||||
//
|
|
||||||
// In this list we'll use the S3 ListObjects API as an example for the different
|
|
||||||
// ways of making API requests.
|
|
||||||
//
|
|
||||||
// * ListObjects - Base API operation that will make the API request to the service.
|
|
||||||
//
|
|
||||||
// * ListObjectsRequest - API methods suffixed with Request will construct the
|
|
||||||
// API request, but not send it. This is also helpful when you want to get a
|
|
||||||
// presigned URL for a request, and share the presigned URL instead of your
|
|
||||||
// application making the request directly.
|
|
||||||
//
|
|
||||||
// * ListObjectsPages - Same as the base API operation, but uses a callback to
|
|
||||||
// automatically handle pagination of the API's response.
|
|
||||||
//
|
|
||||||
// * ListObjectsWithContext - Same as base API operation, but adds support for
|
|
||||||
// the Context pattern. This is helpful for controlling the canceling of in
|
|
||||||
// flight requests. See the Go standard library context package for more
|
|
||||||
// information. This method also takes request package's Option functional
|
|
||||||
// options as the variadic argument for modifying how the request will be
|
|
||||||
// made, or extracting information from the raw HTTP response.
|
|
||||||
//
|
|
||||||
// * ListObjectsPagesWithContext - same as ListObjectsPages, but adds support for
|
|
||||||
// the Context pattern. Similar to ListObjectsWithContext this method also
|
|
||||||
// takes the request package's Option function option types as the variadic
|
|
||||||
// argument.
|
|
||||||
//
|
|
||||||
// In addition to the API operations the SDK also includes several higher level
|
|
||||||
// methods that abstract checking for and waiting for an AWS resource to be in
|
|
||||||
// a desired state. In this list we'll use WaitUntilBucketExists to demonstrate
|
|
||||||
// the different forms of waiters.
|
|
||||||
//
|
|
||||||
// * WaitUntilBucketExists. - Method to make API request to query an AWS service for
|
|
||||||
// a resource's state. Will return successfully when that state is accomplished.
|
|
||||||
//
|
|
||||||
// * WaitUntilBucketExistsWithContext - Same as WaitUntilBucketExists, but adds
|
|
||||||
// support for the Context pattern. In addition these methods take request
|
|
||||||
// package's WaiterOptions to configure the waiter, and how underlying request
|
|
||||||
// will be made by the SDK.
|
|
||||||
//
|
|
||||||
// The API method will document which error codes the service might return for
|
|
||||||
// the operation. These errors will also be available as const strings prefixed
|
|
||||||
// with "ErrCode" in the service client's package. If there are no errors listed
|
|
||||||
// in the API's SDK documentation you'll need to consult the AWS service's API
|
|
||||||
// documentation for the errors that could be returned.
|
|
||||||
//
|
|
||||||
// ctx := context.Background()
|
|
||||||
//
|
|
||||||
// result, err := svc.GetObjectWithContext(ctx, &s3.GetObjectInput{
|
|
||||||
// Bucket: aws.String("my-bucket"),
|
|
||||||
// Key: aws.String("my-key"),
|
|
||||||
// })
|
|
||||||
// if err != nil {
|
|
||||||
// // Cast err to awserr.Error to handle specific error codes.
|
|
||||||
// aerr, ok := err.(awserr.Error)
|
|
||||||
// if ok && aerr.Code() == s3.ErrCodeNoSuchKey {
|
|
||||||
// // Specific error code handling
|
|
||||||
// }
|
|
||||||
// return err
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // Make sure to close the body when done with it for S3 GetObject APIs or
|
|
||||||
// // will leak connections.
|
|
||||||
// defer result.Body.Close()
|
|
||||||
//
|
|
||||||
// fmt.Println("Object Size:", aws.StringValue(result.ContentLength))
|
|
||||||
//
|
|
||||||
// API Request Pagination and Resource Waiters
|
|
||||||
//
|
|
||||||
// Pagination helper methods are suffixed with "Pages", and provide the
|
|
||||||
// functionality needed to round trip API page requests. Pagination methods
|
|
||||||
// take a callback function that will be called for each page of the API's response.
|
|
||||||
//
|
|
||||||
// objects := []string{}
|
|
||||||
// err := svc.ListObjectsPagesWithContext(ctx, &s3.ListObjectsInput{
|
|
||||||
// Bucket: aws.String(myBucket),
|
|
||||||
// }, func(p *s3.ListObjectsOutput, lastPage bool) bool {
|
|
||||||
// for _, o := range p.Contents {
|
|
||||||
// objects = append(objects, aws.StringValue(o.Key))
|
|
||||||
// }
|
|
||||||
// return true // continue paging
|
|
||||||
// })
|
|
||||||
// if err != nil {
|
|
||||||
// panic(fmt.Sprintf("failed to list objects for bucket, %s, %v", myBucket, err))
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// fmt.Println("Objects in bucket:", objects)
|
|
||||||
//
|
|
||||||
// Waiter helper methods provide the functionality to wait for an AWS resource
|
|
||||||
// state. These methods abstract the logic needed to to check the state of an
|
|
||||||
// AWS resource, and wait until that resource is in a desired state. The waiter
|
|
||||||
// will block until the resource is in the state that is desired, an error occurs,
|
|
||||||
// or the waiter times out. If a resource times out the error code returned will
|
|
||||||
// be request.WaiterResourceNotReadyErrorCode.
|
|
||||||
//
|
|
||||||
// err := svc.WaitUntilBucketExistsWithContext(ctx, &s3.HeadBucketInput{
|
|
||||||
// Bucket: aws.String(myBucket),
|
|
||||||
// })
|
|
||||||
// if err != nil {
|
|
||||||
// aerr, ok := err.(awserr.Error)
|
|
||||||
// if ok && aerr.Code() == request.WaiterResourceNotReadyErrorCode {
|
|
||||||
// fmt.Fprintf(os.Stderr, "timed out while waiting for bucket to exist")
|
|
||||||
// }
|
|
||||||
// panic(fmt.Errorf("failed to wait for bucket to exist, %v", err))
|
|
||||||
// }
|
|
||||||
// fmt.Println("Bucket", myBucket, "exists")
|
|
||||||
//
|
|
||||||
// Complete SDK Example
|
|
||||||
//
|
|
||||||
// This example shows a complete working Go file which will upload a file to S3
|
|
||||||
// and use the Context pattern to implement timeout logic that will cancel the
|
|
||||||
// request if it takes too long. This example highlights how to use sessions,
|
|
||||||
// create a service client, make a request, handle the error, and process the
|
|
||||||
// response.
|
|
||||||
//
|
|
||||||
// package main
|
|
||||||
//
|
|
||||||
// import (
|
|
||||||
// "context"
|
|
||||||
// "flag"
|
|
||||||
// "fmt"
|
|
||||||
// "os"
|
|
||||||
// "time"
|
|
||||||
//
|
|
||||||
// "github.com/aws/aws-sdk-go/aws"
|
|
||||||
// "github.com/aws/aws-sdk-go/aws/awserr"
|
|
||||||
// "github.com/aws/aws-sdk-go/aws/request"
|
|
||||||
// "github.com/aws/aws-sdk-go/aws/session"
|
|
||||||
// "github.com/aws/aws-sdk-go/service/s3"
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// // Uploads a file to S3 given a bucket and object key. Also takes a duration
|
|
||||||
// // value to terminate the update if it doesn't complete within that time.
|
|
||||||
// //
|
|
||||||
// // The AWS Region needs to be provided in the AWS shared config or on the
|
|
||||||
// // environment variable as `AWS_REGION`. Credentials also must be provided
|
|
||||||
// // Will default to shared config file, but can load from environment if provided.
|
|
||||||
// //
|
|
||||||
// // Usage:
|
|
||||||
// // # Upload myfile.txt to myBucket/myKey. Must complete within 10 minutes or will fail
|
|
||||||
// // go run withContext.go -b mybucket -k myKey -d 10m < myfile.txt
|
|
||||||
// func main() {
|
|
||||||
// var bucket, key string
|
|
||||||
// var timeout time.Duration
|
|
||||||
//
|
|
||||||
// flag.StringVar(&bucket, "b", "", "Bucket name.")
|
|
||||||
// flag.StringVar(&key, "k", "", "Object key name.")
|
|
||||||
// flag.DurationVar(&timeout, "d", 0, "Upload timeout.")
|
|
||||||
// flag.Parse()
|
|
||||||
//
|
|
||||||
// // All clients require a Session. The Session provides the client with
|
|
||||||
// // shared configuration such as region, endpoint, and credentials. A
|
|
||||||
// // Session should be shared where possible to take advantage of
|
|
||||||
// // configuration and credential caching. See the session package for
|
|
||||||
// // more information.
|
|
||||||
// sess := session.Must(session.NewSession())
|
|
||||||
//
|
|
||||||
// // Create a new instance of the service's client with a Session.
|
|
||||||
// // Optional aws.Config values can also be provided as variadic arguments
|
|
||||||
// // to the New function. This option allows you to provide service
|
|
||||||
// // specific configuration.
|
|
||||||
// svc := s3.New(sess)
|
|
||||||
//
|
|
||||||
// // Create a context with a timeout that will abort the upload if it takes
|
|
||||||
// // more than the passed in timeout.
|
|
||||||
// ctx := context.Background()
|
|
||||||
// var cancelFn func()
|
|
||||||
// if timeout > 0 {
|
|
||||||
// ctx, cancelFn = context.WithTimeout(ctx, timeout)
|
|
||||||
// }
|
|
||||||
// // Ensure the context is canceled to prevent leaking.
|
|
||||||
// // See context package for more information, https://golang.org/pkg/context/
|
|
||||||
// defer cancelFn()
|
|
||||||
//
|
|
||||||
// // Uploads the object to S3. The Context will interrupt the request if the
|
|
||||||
// // timeout expires.
|
|
||||||
// _, err := svc.PutObjectWithContext(ctx, &s3.PutObjectInput{
|
|
||||||
// Bucket: aws.String(bucket),
|
|
||||||
// Key: aws.String(key),
|
|
||||||
// Body: os.Stdin,
|
|
||||||
// })
|
|
||||||
// if err != nil {
|
|
||||||
// if aerr, ok := err.(awserr.Error); ok && aerr.Code() == request.CanceledErrorCode {
|
|
||||||
// // If the SDK can determine the request or retry delay was canceled
|
|
||||||
// // by a context the CanceledErrorCode error code will be returned.
|
|
||||||
// fmt.Fprintf(os.Stderr, "upload canceled due to timeout, %v\n", err)
|
|
||||||
// } else {
|
|
||||||
// fmt.Fprintf(os.Stderr, "failed to upload object, %v\n", err)
|
|
||||||
// }
|
|
||||||
// os.Exit(1)
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// fmt.Printf("successfully uploaded file to %s/%s\n", bucket, key)
|
|
||||||
// }
|
|
||||||
package sdk
|
|
4
vendor/github.com/aws/aws-sdk-go/private/README.md
generated
vendored
4
vendor/github.com/aws/aws-sdk-go/private/README.md
generated
vendored
|
@ -1,4 +0,0 @@
|
||||||
## AWS SDK for Go Private packages ##
|
|
||||||
`private` is a collection of packages used internally by the SDK, and is subject to have breaking changes. This package is not `internal` so that if you really need to use its functionality, and understand breaking changes will be made, you are able to.
|
|
||||||
|
|
||||||
These packages will be refactored in the future so that the API generator and model parsers are exposed cleanly on their own. Making it easier for you to generate your own code based on the API models.
|
|
5
vendor/github.com/aws/aws-sdk-go/service/generate.go
generated
vendored
5
vendor/github.com/aws/aws-sdk-go/service/generate.go
generated
vendored
|
@ -1,5 +0,0 @@
|
||||||
// Package service contains automatically generated AWS clients.
|
|
||||||
package service
|
|
||||||
|
|
||||||
//go:generate go run -tags codegen ../private/model/cli/gen-api/main.go -path=../service ../models/apis/*/*/api-2.json
|
|
||||||
//go:generate gofmt -s -w ../service
|
|
1
vendor/github.com/coreos/etcd/.dockerignore
generated
vendored
1
vendor/github.com/coreos/etcd/.dockerignore
generated
vendored
|
@ -1 +0,0 @@
|
||||||
.git
|
|
21
vendor/github.com/coreos/etcd/.gitignore
generated
vendored
21
vendor/github.com/coreos/etcd/.gitignore
generated
vendored
|
@ -1,21 +0,0 @@
|
||||||
/agent-*
|
|
||||||
/coverage
|
|
||||||
/covdir
|
|
||||||
/docs
|
|
||||||
/vendor
|
|
||||||
/gopath
|
|
||||||
/gopath.proto
|
|
||||||
/go-bindata
|
|
||||||
/release
|
|
||||||
/machine*
|
|
||||||
/bin
|
|
||||||
.vagrant
|
|
||||||
*.etcd
|
|
||||||
*.log
|
|
||||||
/etcd
|
|
||||||
*.swp
|
|
||||||
/hack/insta-discovery/.env
|
|
||||||
*.test
|
|
||||||
hack/tls-setup/certs
|
|
||||||
.idea
|
|
||||||
*.bak
|
|
1
vendor/github.com/coreos/etcd/.godir
generated
vendored
1
vendor/github.com/coreos/etcd/.godir
generated
vendored
|
@ -1 +0,0 @@
|
||||||
github.com/coreos/etcd
|
|
13
vendor/github.com/coreos/etcd/.header
generated
vendored
13
vendor/github.com/coreos/etcd/.header
generated
vendored
|
@ -1,13 +0,0 @@
|
||||||
// Copyright 2016 The etcd Authors
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
97
vendor/github.com/coreos/etcd/.travis.yml
generated
vendored
97
vendor/github.com/coreos/etcd/.travis.yml
generated
vendored
|
@ -1,97 +0,0 @@
|
||||||
language: go
|
|
||||||
go_import_path: github.com/coreos/etcd
|
|
||||||
|
|
||||||
sudo: required
|
|
||||||
|
|
||||||
services: docker
|
|
||||||
|
|
||||||
go:
|
|
||||||
- 1.9.7
|
|
||||||
|
|
||||||
notifications:
|
|
||||||
on_success: never
|
|
||||||
on_failure: never
|
|
||||||
|
|
||||||
env:
|
|
||||||
matrix:
|
|
||||||
- TARGET=linux-amd64-build
|
|
||||||
- TARGET=linux-amd64-unit
|
|
||||||
- TARGET=linux-amd64-integration
|
|
||||||
- TARGET=linux-amd64-functional
|
|
||||||
- TARGET=linux-386-build
|
|
||||||
- TARGET=linux-386-unit
|
|
||||||
- TARGET=darwin-amd64-build
|
|
||||||
- TARGET=windows-amd64-build
|
|
||||||
- TARGET=linux-arm-build
|
|
||||||
- TARGET=linux-arm64-build
|
|
||||||
- TARGET=linux-ppc64le-build
|
|
||||||
|
|
||||||
matrix:
|
|
||||||
fast_finish: true
|
|
||||||
|
|
||||||
before_install:
|
|
||||||
- if [[ $TRAVIS_GO_VERSION == 1.* ]]; then docker pull gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION}; fi
|
|
||||||
|
|
||||||
install:
|
|
||||||
- pushd cmd/etcd && go get -t -v ./... && popd
|
|
||||||
|
|
||||||
script:
|
|
||||||
- echo "TRAVIS_GO_VERSION=${TRAVIS_GO_VERSION}"
|
|
||||||
- >
|
|
||||||
case "${TARGET}" in
|
|
||||||
linux-amd64-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GOARCH=amd64 PASSES='build' ./test"
|
|
||||||
;;
|
|
||||||
linux-amd64-unit)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GOARCH=amd64 PASSES='unit' ./test"
|
|
||||||
;;
|
|
||||||
linux-amd64-integration)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GOARCH=amd64 PASSES='integration' ./test"
|
|
||||||
;;
|
|
||||||
linux-amd64-functional)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "./build && GOARCH=amd64 PASSES='build functional' ./test"
|
|
||||||
;;
|
|
||||||
linux-386-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GOARCH=386 PASSES='build' ./test"
|
|
||||||
;;
|
|
||||||
linux-386-unit)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GOARCH=386 PASSES='unit' ./test"
|
|
||||||
;;
|
|
||||||
darwin-amd64-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GO_BUILD_FLAGS='-v' GOOS=darwin GOARCH=amd64 ./build"
|
|
||||||
;;
|
|
||||||
windows-amd64-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GO_BUILD_FLAGS='-v' GOOS=windows GOARCH=amd64 ./build"
|
|
||||||
;;
|
|
||||||
linux-arm-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GO_BUILD_FLAGS='-v' GOARCH=arm ./build"
|
|
||||||
;;
|
|
||||||
linux-arm64-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GO_BUILD_FLAGS='-v' GOARCH=arm64 ./build"
|
|
||||||
;;
|
|
||||||
linux-ppc64le-build)
|
|
||||||
docker run --rm \
|
|
||||||
--volume=`pwd`:/go/src/github.com/coreos/etcd gcr.io/etcd-development/etcd-test:go${TRAVIS_GO_VERSION} \
|
|
||||||
/bin/bash -c "GO_BUILD_FLAGS='-v' GOARCH=ppc64le ./build"
|
|
||||||
;;
|
|
||||||
esac
|
|
44
vendor/github.com/coreos/etcd/.words
generated
vendored
44
vendor/github.com/coreos/etcd/.words
generated
vendored
|
@ -1,44 +0,0 @@
|
||||||
DefaultMaxRequestBytes
|
|
||||||
ErrCodeEnhanceYourCalm
|
|
||||||
ErrTimeout
|
|
||||||
GoAway
|
|
||||||
KeepAlive
|
|
||||||
Keepalive
|
|
||||||
MiB
|
|
||||||
ResourceExhausted
|
|
||||||
RPC
|
|
||||||
RPCs
|
|
||||||
TODO
|
|
||||||
backoff
|
|
||||||
blackhole
|
|
||||||
blackholed
|
|
||||||
cancelable
|
|
||||||
cancelation
|
|
||||||
cluster_proxy
|
|
||||||
defragment
|
|
||||||
defragmenting
|
|
||||||
etcd
|
|
||||||
gRPC
|
|
||||||
goroutine
|
|
||||||
goroutines
|
|
||||||
healthcheck
|
|
||||||
iff
|
|
||||||
inflight
|
|
||||||
keepalive
|
|
||||||
keepalives
|
|
||||||
keyspace
|
|
||||||
linearization
|
|
||||||
localhost
|
|
||||||
mutex
|
|
||||||
prefetching
|
|
||||||
protobuf
|
|
||||||
prometheus
|
|
||||||
rafthttp
|
|
||||||
repin
|
|
||||||
serializable
|
|
||||||
teardown
|
|
||||||
too_many_pings
|
|
||||||
uncontended
|
|
||||||
unprefixed
|
|
||||||
unlisting
|
|
||||||
|
|
746
vendor/github.com/coreos/etcd/CHANGELOG.md
generated
vendored
746
vendor/github.com/coreos/etcd/CHANGELOG.md
generated
vendored
|
@ -1,746 +0,0 @@
|
||||||
## [v3.3.0](https://github.com/coreos/etcd/releases/tag/v3.3.0)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.0...v3.3.0) and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Improved
|
|
||||||
|
|
||||||
- Use [`coreos/bbolt`](https://github.com/coreos/bbolt/releases) to replace [`boltdb/bolt`](https://github.com/boltdb/bolt#project-status).
|
|
||||||
- Fix [etcd database size grows until `mvcc: database space exceeded`](https://github.com/coreos/etcd/issues/8009).
|
|
||||||
- [Reduce memory allocation](https://github.com/coreos/etcd/pull/8428) on [Range operations](https://github.com/coreos/etcd/pull/8475).
|
|
||||||
- [Rate limit](https://github.com/coreos/etcd/pull/8099) and [randomize](https://github.com/coreos/etcd/pull/8101) lease revoke on restart or leader elections.
|
|
||||||
- Prevent [spikes in Raft proposal rate](https://github.com/coreos/etcd/issues/8096).
|
|
||||||
- Support `clientv3` balancer failover under [network faults/partitions](https://github.com/coreos/etcd/issues/8711).
|
|
||||||
- Better warning on [mismatched `--initial-cluster`](https://github.com/coreos/etcd/pull/8083) flag.
|
|
||||||
|
|
||||||
### Changed(Breaking Changes)
|
|
||||||
|
|
||||||
- Require [Go 1.9+](https://github.com/coreos/etcd/issues/6174).
|
|
||||||
- Compile with *Go 1.9.2*.
|
|
||||||
- Deprecate [`golang.org/x/net/context`](https://github.com/coreos/etcd/pull/8511).
|
|
||||||
- Require [`google.golang.org/grpc`](https://github.com/grpc/grpc-go/releases) [**`v1.7.4`**](https://github.com/grpc/grpc-go/releases/tag/v1.7.4) or [**`v1.7.5+`**](https://github.com/grpc/grpc-go/releases/tag/v1.7.5):
|
|
||||||
- Deprecate [`metadata.Incoming/OutgoingContext`](https://github.com/coreos/etcd/pull/7896).
|
|
||||||
- Deprecate `grpclog.Logger`, upgrade to [`grpclog.LoggerV2`](https://github.com/coreos/etcd/pull/8533).
|
|
||||||
- Deprecate [`grpc.ErrClientConnTimeout`](https://github.com/coreos/etcd/pull/8505) errors in `clientv3`.
|
|
||||||
- Use [`MaxRecvMsgSize` and `MaxSendMsgSize`](https://github.com/coreos/etcd/pull/8437) to limit message size, in etcd server.
|
|
||||||
- Upgrade [`github.com/grpc-ecosystem/grpc-gateway`](https://github.com/grpc-ecosystem/grpc-gateway/releases) `v1.2.2` to `v1.3.0`.
|
|
||||||
- Translate [gRPC status error in v3 client `Snapshot` API](https://github.com/coreos/etcd/pull/9038).
|
|
||||||
- Upgrade [`github.com/ugorji/go/codec`](https://github.com/ugorji/go) for v2 `client`.
|
|
||||||
- [Regenerated](https://github.com/coreos/etcd/pull/8721) v2 `client` source code with latest `ugorji/go/codec`.
|
|
||||||
- Fix [`/health` endpoint JSON output](https://github.com/coreos/etcd/pull/8312).
|
|
||||||
- v3 `etcdctl` [`lease timetolive LEASE_ID`](https://github.com/coreos/etcd/issues/9028) on expired lease now prints [`lease LEASE_ID already expired`](https://github.com/coreos/etcd/pull/9047).
|
|
||||||
- <=3.2 prints `lease LEASE_ID granted with TTL(0s), remaining(-1s)`.
|
|
||||||
|
|
||||||
### Added(`etcd`)
|
|
||||||
|
|
||||||
- Add [`--experimental-enable-v2v3`](https://github.com/coreos/etcd/pull/8407) flag to [emulate v2 API with v3](https://github.com/coreos/etcd/issues/6925).
|
|
||||||
- Add [`--experimental-corrupt-check-time`](https://github.com/coreos/etcd/pull/8420) flag to [raise corrupt alarm monitoring](https://github.com/coreos/etcd/issues/7125).
|
|
||||||
- Add [`--experimental-initial-corrupt-check`](https://github.com/coreos/etcd/pull/8554) flag to [check database hash before serving client/peer traffic](https://github.com/coreos/etcd/issues/8313).
|
|
||||||
- Add [`--max-txn-ops`](https://github.com/coreos/etcd/pull/7976) flag to [configure maximum number operations in transaction](https://github.com/coreos/etcd/issues/7826).
|
|
||||||
- Add [`--max-request-bytes`](https://github.com/coreos/etcd/pull/7968) flag to [configure maximum client request size](https://github.com/coreos/etcd/issues/7923).
|
|
||||||
- If not configured, it defaults to 1.5 MiB.
|
|
||||||
- Add [`--client-crl-file`, `--peer-crl-file`](https://github.com/coreos/etcd/pull/8124) flags for [Certificate revocation list](https://github.com/coreos/etcd/issues/4034).
|
|
||||||
- Add [`--peer-require-cn`](https://github.com/coreos/etcd/pull/8616) flag to support [CN-based auth for inter-peer connection](https://github.com/coreos/etcd/issues/8262).
|
|
||||||
- Add [`--listen-metrics-urls`](https://github.com/coreos/etcd/pull/8242) flag for additional `/metrics` endpoints.
|
|
||||||
- Support [additional (non) TLS `/metrics` endpoints for a TLS-enabled cluster](https://github.com/coreos/etcd/pull/8282).
|
|
||||||
- e.g. `--listen-metrics-urls=https://localhost:2378,http://localhost:9379` to serve `/metrics` in secure port 2378 and insecure port 9379.
|
|
||||||
- Useful for [bypassing critical APIs when monitoring etcd](https://github.com/coreos/etcd/issues/8060).
|
|
||||||
- Add [`--auto-compaction-mode`](https://github.com/coreos/etcd/pull/8123) flag to [support revision-based compaction](https://github.com/coreos/etcd/issues/8098).
|
|
||||||
- Change `--auto-compaction-retention` flag to [accept string values](https://github.com/coreos/etcd/pull/8563) with [finer granularity](https://github.com/coreos/etcd/issues/8503).
|
|
||||||
- Add [`--grpc-keepalive-min-time`, `--grpc-keepalive-interval`, `--grpc-keepalive-timeout`](https://github.com/coreos/etcd/pull/8535) flags to configure server-side keepalive policies.
|
|
||||||
- Serve [`/health` endpoint as unhealthy](https://github.com/coreos/etcd/pull/8272) when [alarm is raised](https://github.com/coreos/etcd/issues/8207).
|
|
||||||
- Provide [error information in `/health`](https://github.com/coreos/etcd/pull/8312).
|
|
||||||
- e.g. `{"health":false,"errors":["NOSPACE"]}`.
|
|
||||||
- Move [logging setup to embed package](https://github.com/coreos/etcd/pull/8810)
|
|
||||||
- Disable gRPC server log by default.
|
|
||||||
- Use [monotonic time in Go 1.9](https://github.com/coreos/etcd/pull/8507) for `lease` package.
|
|
||||||
- Warn on [empty hosts in advertise URLs](https://github.com/coreos/etcd/pull/8384).
|
|
||||||
- Address [advertise client URLs accepts empty hosts](https://github.com/coreos/etcd/issues/8379).
|
|
||||||
- etcd `v3.4` will exit on this error.
|
|
||||||
- e.g. `--advertise-client-urls=http://:2379`.
|
|
||||||
- Warn on [shadowed environment variables](https://github.com/coreos/etcd/pull/8385).
|
|
||||||
- Address [error on shadowed environment variables](https://github.com/coreos/etcd/issues/8380).
|
|
||||||
- etcd `v3.4` will exit on this error.
|
|
||||||
|
|
||||||
### Added(API)
|
|
||||||
|
|
||||||
- Support [ranges in transaction comparisons](https://github.com/coreos/etcd/pull/8025) for [disconnected linearized reads](https://github.com/coreos/etcd/issues/7924).
|
|
||||||
- Add [nested transactions](https://github.com/coreos/etcd/pull/8102) to extend [proxy use cases](https://github.com/coreos/etcd/issues/7857).
|
|
||||||
- Add [lease comparison target in transaction](https://github.com/coreos/etcd/pull/8324).
|
|
||||||
- Add [lease list](https://github.com/coreos/etcd/pull/8358).
|
|
||||||
- Add [hash by revision](https://github.com/coreos/etcd/pull/8263) for [better corruption checking against boltdb](https://github.com/coreos/etcd/issues/8016).
|
|
||||||
|
|
||||||
### Added(`etcd/clientv3`)
|
|
||||||
|
|
||||||
- Add [health balancer](https://github.com/coreos/etcd/pull/8545) to fix [watch API hangs](https://github.com/coreos/etcd/issues/7247), improve [endpoint switch under network faults](https://github.com/coreos/etcd/issues/7941).
|
|
||||||
- [Refactor balancer](https://github.com/coreos/etcd/pull/8840) and add [client-side keepalive pings](https://github.com/coreos/etcd/pull/8199) to handle [network partitions](https://github.com/coreos/etcd/issues/8711).
|
|
||||||
- Add [`MaxCallSendMsgSize` and `MaxCallRecvMsgSize`](https://github.com/coreos/etcd/pull/9047) fields to [`clientv3.Config`](https://godoc.org/github.com/coreos/etcd/clientv3#Config).
|
|
||||||
- Fix [exceeded response size limit error in client-side](https://github.com/coreos/etcd/issues/9043).
|
|
||||||
- Address [kubernetes#51099](https://github.com/kubernetes/kubernetes/issues/51099).
|
|
||||||
- `MaxCallSendMsgSize` default value is 2 MiB, if not configured.
|
|
||||||
- `MaxCallRecvMsgSize` default value is `math.MaxInt32`, if not configured.
|
|
||||||
- Accept [`Compare_LEASE`](https://github.com/coreos/etcd/pull/8324) in [`clientv3.Compare`](https://godoc.org/github.com/coreos/etcd/clientv3#Compare).
|
|
||||||
- Add [`LeaseValue` helper](https://github.com/coreos/etcd/pull/8488) to `Cmp` `LeaseID` values in `Txn`.
|
|
||||||
- Add [`MoveLeader`](https://github.com/coreos/etcd/pull/8153) to `Maintenance`.
|
|
||||||
- Add [`HashKV`](https://github.com/coreos/etcd/pull/8351) to `Maintenance`.
|
|
||||||
- Add [`Leases`](https://github.com/coreos/etcd/pull/8358) to `Lease`.
|
|
||||||
- Add [`clientv3/ordering`](https://github.com/coreos/etcd/pull/8092) for enforce [ordering in serialized requests](https://github.com/coreos/etcd/issues/7623).
|
|
||||||
|
|
||||||
### Added(v2 `etcdctl`)
|
|
||||||
|
|
||||||
- Add [`backup --with-v3`](https://github.com/coreos/etcd/pull/8479) flag.
|
|
||||||
|
|
||||||
### Added(v3 `etcdctl`)
|
|
||||||
|
|
||||||
- Add [`--discovery-srv`](https://github.com/coreos/etcd/pull/8462) flag.
|
|
||||||
- Add [`--keepalive-time`, `--keepalive-timeout`](https://github.com/coreos/etcd/pull/8663) flags.
|
|
||||||
- Add [`lease list`](https://github.com/coreos/etcd/pull/8358) command.
|
|
||||||
- Add [`lease keep-alive --once`](https://github.com/coreos/etcd/pull/8775) flag.
|
|
||||||
- Make [`lease timetolive LEASE_ID`](https://github.com/coreos/etcd/issues/9028) on expired lease print [`lease LEASE_ID already expired`](https://github.com/coreos/etcd/pull/9047).
|
|
||||||
- <=3.2 prints `lease LEASE_ID granted with TTL(0s), remaining(-1s)`.
|
|
||||||
- Add [`defrag --data-dir`](https://github.com/coreos/etcd/pull/8367) flag.
|
|
||||||
- Add [`move-leader`](https://github.com/coreos/etcd/pull/8153) command.
|
|
||||||
- Add [`endpoint hashkv`](https://github.com/coreos/etcd/pull/8351) command.
|
|
||||||
- Add [`endpoint --cluster`](https://github.com/coreos/etcd/pull/8143) flag, equivalent to [v2 `etcdctl cluster-health`](https://github.com/coreos/etcd/issues/8117).
|
|
||||||
- Make `endpoint health` command terminate with [non-zero exit code on unhealthy status](https://github.com/coreos/etcd/pull/8342).
|
|
||||||
- Add [`lock --ttl`](https://github.com/coreos/etcd/pull/8370) flag.
|
|
||||||
- Support [`watch [key] [range_end] -- [exec-command…]`](https://github.com/coreos/etcd/pull/8919), equivalent to [v2 `etcdctl exec-watch`](https://github.com/coreos/etcd/issues/8814).
|
|
||||||
- Enable [`clientv3.WithRequireLeader(context.Context)` for `watch`](https://github.com/coreos/etcd/pull/8672) command.
|
|
||||||
- Print [`"del"` instead of `"delete"`](https://github.com/coreos/etcd/pull/8297) in `txn` interactive mode.
|
|
||||||
- Print [`ETCD_INITIAL_ADVERTISE_PEER_URLS` in `member add`](https://github.com/coreos/etcd/pull/8332).
|
|
||||||
|
|
||||||
### Added(metrics)
|
|
||||||
|
|
||||||
- Add [`etcd --listen-metrics-urls`](https://github.com/coreos/etcd/pull/8242) flag for additional `/metrics` endpoints.
|
|
||||||
- Useful for [bypassing critical APIs when monitoring etcd](https://github.com/coreos/etcd/issues/8060).
|
|
||||||
- Add [`etcd_server_version`](https://github.com/coreos/etcd/pull/8960) Prometheus metric.
|
|
||||||
- To replace [Kubernetes `etcd-version-monitor`](https://github.com/coreos/etcd/issues/8948).
|
|
||||||
- Add [`etcd_debugging_mvcc_db_compaction_keys_total`](https://github.com/coreos/etcd/pull/8280) Prometheus metric.
|
|
||||||
- Add [`etcd_debugging_server_lease_expired_total`](https://github.com/coreos/etcd/pull/8064) Prometheus metric.
|
|
||||||
- To improve [lease revoke monitoring](https://github.com/coreos/etcd/issues/8050).
|
|
||||||
- Document [Prometheus 2.0 rules](https://github.com/coreos/etcd/pull/8879).
|
|
||||||
- Initialize gRPC server [metrics with zero values](https://github.com/coreos/etcd/pull/8878).
|
|
||||||
|
|
||||||
### Added(`grpc-proxy`)
|
|
||||||
|
|
||||||
- Add [`grpc-proxy start --experimental-leasing-prefix`](https://github.com/coreos/etcd/pull/8341) flag:
|
|
||||||
- For disconnected linearized reads.
|
|
||||||
- Based on [V system leasing](https://github.com/coreos/etcd/issues/6065).
|
|
||||||
- See ["Disconnected consistent reads with etcd" blog post](https://coreos.com/blog/coreos-labs-disconnected-consistent-reads-with-etcd).
|
|
||||||
- Add [`grpc-proxy start --experimental-serializable-ordering`](https://github.com/coreos/etcd/pull/8315) flag.
|
|
||||||
- To ensure serializable reads have monotonically increasing store revisions across endpoints.
|
|
||||||
- Add [`grpc-proxy start --metrics-addr`](https://github.com/coreos/etcd/pull/8242) flag for an additional `/metrics` endpoint.
|
|
||||||
- Set `--metrics-addr=http://[HOST]:9379` to serve `/metrics` in insecure port 9379.
|
|
||||||
- Serve [`/health` endpoint in grpc-proxy](https://github.com/coreos/etcd/pull/8322).
|
|
||||||
- Add [`grpc-proxy start --debug`](https://github.com/coreos/etcd/pull/8994) flag.
|
|
||||||
|
|
||||||
### Added(gRPC gateway)
|
|
||||||
|
|
||||||
- Replace [gRPC gateway](https://github.com/grpc-ecosystem/grpc-gateway) endpoint with [`/v3beta`](https://github.com/coreos/etcd/pull/8880).
|
|
||||||
- To deprecate [`/v3alpha`](https://github.com/coreos/etcd/issues/8125) in `v3.4`.
|
|
||||||
- Support ["authorization" token](https://github.com/coreos/etcd/pull/7999).
|
|
||||||
- Support [websocket for bi-directional streams](https://github.com/coreos/etcd/pull/8257).
|
|
||||||
- Fix [`Watch` API with gRPC gateway](https://github.com/coreos/etcd/issues/8237).
|
|
||||||
- Upgrade gRPC gateway to [v1.3.0](https://github.com/coreos/etcd/issues/8838).
|
|
||||||
|
|
||||||
### Added(`etcd/raft`)
|
|
||||||
|
|
||||||
- Add [non-voting member](https://github.com/coreos/etcd/pull/8751).
|
|
||||||
- To implement [Raft thesis 4.2.1 Catching up new servers](https://github.com/coreos/etcd/issues/8568).
|
|
||||||
- `Learner` node does not vote or promote itself.
|
|
||||||
|
|
||||||
### Added/Fixed(Security/Auth)
|
|
||||||
|
|
||||||
- Add [CRL based connection rejection](https://github.com/coreos/etcd/pull/8124) to manage [revoked certs](https://github.com/coreos/etcd/issues/4034).
|
|
||||||
- Document [TLS authentication changes](https://github.com/coreos/etcd/pull/8895):
|
|
||||||
- [Server accepts connections if IP matches, without checking DNS entries](https://github.com/coreos/etcd/pull/8223). For instance, if peer cert contains IP addresses and DNS names in Subject Alternative Name (SAN) field, and the remote IP address matches one of those IP addresses, server just accepts connection without further checking the DNS names.
|
|
||||||
- [Server supports reverse-lookup on wildcard DNS `SAN`](https://github.com/coreos/etcd/pull/8281). For instance, if peer cert contains only DNS names (no IP addresses) in Subject Alternative Name (SAN) field, server first reverse-lookups the remote IP address to get a list of names mapping to that address (e.g. `nslookup IPADDR`). Then accepts the connection if those names have a matching name with peer cert's DNS names (either by exact or wildcard match). If none is matched, server forward-lookups each DNS entry in peer cert (e.g. look up `example.default.svc` when the entry is `*.example.default.svc`), and accepts connection only when the host's resolved addresses have the matching IP address with the peer's remote IP address.
|
|
||||||
- Add [`etcd --peer-require-cn`](https://github.com/coreos/etcd/pull/8616) flag.
|
|
||||||
- To support [CommonName(CN) based auth](https://github.com/coreos/etcd/issues/8262) for inter peer connection.
|
|
||||||
- [Swap priority](https://github.com/coreos/etcd/pull/8594) of cert CommonName(CN) and username + password.
|
|
||||||
- To address ["username and password specified in the request should take priority over CN in the cert"](https://github.com/coreos/etcd/issues/8584).
|
|
||||||
- Protect [lease revoke with auth](https://github.com/coreos/etcd/pull/8031).
|
|
||||||
- Provide user's role on [auth permission error](https://github.com/coreos/etcd/pull/8164).
|
|
||||||
- Fix [auth store panic with disabled token](https://github.com/coreos/etcd/pull/8695).
|
|
||||||
- Update `golang.org/x/crypto/bcrypt` (see [golang/crypto@6c586e1](https://github.com/golang/crypto/commit/6c586e17d90a7d08bbbc4069984180dce3b04117)).
|
|
||||||
|
|
||||||
### Fixed(v2)
|
|
||||||
|
|
||||||
- [Fail-over v2 client](https://github.com/coreos/etcd/pull/8519) to next endpoint on [oneshot failure](https://github.com/coreos/etcd/issues/8515).
|
|
||||||
- [Put back `/v2/machines`](https://github.com/coreos/etcd/pull/8062) endpoint for python-etcd wrapper.
|
|
||||||
|
|
||||||
### Fixed(v3)
|
|
||||||
|
|
||||||
- Fix [range/put/delete operation metrics](https://github.com/coreos/etcd/pull/8054) with transaction:
|
|
||||||
- `etcd_debugging_mvcc_range_total`
|
|
||||||
- `etcd_debugging_mvcc_put_total`
|
|
||||||
- `etcd_debugging_mvcc_delete_total`
|
|
||||||
- `etcd_debugging_mvcc_txn_total`
|
|
||||||
- Fix [`etcd_debugging_mvcc_keys_total`](https://github.com/coreos/etcd/pull/8390) on restore.
|
|
||||||
- Fix [`etcd_debugging_mvcc_db_total_size_in_bytes`](https://github.com/coreos/etcd/pull/8120) on restore.
|
|
||||||
- Also change to [`prometheus.NewGaugeFunc`](https://github.com/coreos/etcd/pull/8150).
|
|
||||||
- Fix [backend database in-memory index corruption](https://github.com/coreos/etcd/pull/8127) issue on restore (only 3.2.0 is affected).
|
|
||||||
- Fix [watch restore from snapshot](https://github.com/coreos/etcd/pull/8427).
|
|
||||||
- Fix ["put at-most-once" in `clientv3`](https://github.com/coreos/etcd/pull/8335).
|
|
||||||
- Handle [empty key permission](https://github.com/coreos/etcd/pull/8514) in `etcdctl`.
|
|
||||||
- [Fix server crash](https://github.com/coreos/etcd/pull/8010) on [invalid transaction request from gRPC gateway](https://github.com/coreos/etcd/issues/7889).
|
|
||||||
- Fix [`clientv3.WatchResponse.Canceled`](https://github.com/coreos/etcd/pull/8283) on [compacted watch request](https://github.com/coreos/etcd/issues/8231).
|
|
||||||
- Handle [WAL renaming failure on Windows](https://github.com/coreos/etcd/pull/8286).
|
|
||||||
- Make [peer dial timeout longer](https://github.com/coreos/etcd/pull/8599).
|
|
||||||
- See [coreos/etcd-operator#1300](https://github.com/coreos/etcd-operator/issues/1300) for more detail.
|
|
||||||
- Make server [wait up to request time-out](https://github.com/coreos/etcd/pull/8267) with [pending RPCs](https://github.com/coreos/etcd/issues/8224).
|
|
||||||
- Fix [`grpc.Server` panic on `GracefulStop`](https://github.com/coreos/etcd/pull/8987) with [TLS-enabled server](https://github.com/coreos/etcd/issues/8916).
|
|
||||||
- Fix ["multiple peer URLs cannot start" issue](https://github.com/coreos/etcd/issues/8383).
|
|
||||||
- Fix server-side auth so [concurrent auth operations do not return old revision error](https://github.com/coreos/etcd/pull/8442).
|
|
||||||
- Fix [`concurrency/stm` `Put` with serializable snapshot](https://github.com/coreos/etcd/pull/8439).
|
|
||||||
- Use store revision from first fetch to resolve write conflicts instead of modified revision.
|
|
||||||
- Fix [`grpc-proxy` Snapshot API error handling](https://github.com/coreos/etcd/commit/dbd16d52fbf81e5fd806d21ff5e9148d5bf203ab).
|
|
||||||
- Fix [`grpc-proxy` KV API `PrevKv` flag handling](https://github.com/coreos/etcd/pull/8366).
|
|
||||||
- Fix [`grpc-proxy` KV API `KeysOnly` flag handling](https://github.com/coreos/etcd/pull/8552).
|
|
||||||
- Upgrade [`coreos/go-systemd`](https://github.com/coreos/go-systemd/releases) to `v15` (see https://github.com/coreos/go-systemd/releases/tag/v15).
|
|
||||||
|
|
||||||
### Other
|
|
||||||
|
|
||||||
- Support previous two minor versions (see our [new release policy](https://github.com/coreos/etcd/pull/8805)).
|
|
||||||
- `v3.3.x` is the last release cycle that supports `ACI`:
|
|
||||||
- AppC was [officially suspended](https://github.com/appc/spec#-disclaimer-), as of late 2016.
|
|
||||||
- [`acbuild`](https://github.com/containers/build#this-project-is-currently-unmaintained) is not maintained anymore.
|
|
||||||
- `*.aci` files won't be available from etcd `v3.4` release.
|
|
||||||
- Add container registry [`gcr.io/etcd-development/etcd`](https://gcr.io/etcd-development/etcd).
|
|
||||||
- [quay.io/coreos/etcd](https://quay.io/coreos/etcd) is still supported as secondary.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.12](https://github.com/coreos/etcd/releases/tag/v3.2.12) (2017-12-20)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.11...v3.2.12) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix [error message of `Revision` compactor](https://github.com/coreos/etcd/pull/8999) in server-side.
|
|
||||||
|
|
||||||
### Added(`etcd/clientv3`,`etcdctl/v3`)
|
|
||||||
|
|
||||||
- Add [`MaxCallSendMsgSize` and `MaxCallRecvMsgSize`](https://github.com/coreos/etcd/pull/9047) fields to [`clientv3.Config`](https://godoc.org/github.com/coreos/etcd/clientv3#Config).
|
|
||||||
- Fix [exceeded response size limit error in client-side](https://github.com/coreos/etcd/issues/9043).
|
|
||||||
- Address [kubernetes#51099](https://github.com/kubernetes/kubernetes/issues/51099).
|
|
||||||
- `MaxCallSendMsgSize` default value is 2 MiB, if not configured.
|
|
||||||
- `MaxCallRecvMsgSize` default value is `math.MaxInt32`, if not configured.
|
|
||||||
|
|
||||||
### Other
|
|
||||||
|
|
||||||
- Pin [grpc v1.7.5](https://github.com/grpc/grpc-go/releases/tag/v1.7.5), [grpc-gateway v1.3.0](https://github.com/grpc-ecosystem/grpc-gateway/releases/tag/v1.3.0).
|
|
||||||
- No code change, just to be explicit about recommended versions.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.11](https://github.com/coreos/etcd/releases/tag/v3.2.11) (2017-12-05)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.10...v3.2.11) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix racey grpc-go's server handler transport `WriteStatus` call to prevent [TLS-enabled etcd server crash](https://github.com/coreos/etcd/issues/8904):
|
|
||||||
- Upgrade [`google.golang.org/grpc`](https://github.com/grpc/grpc-go/releases) `v1.7.3` to `v1.7.4`.
|
|
||||||
- Add [gRPC RPC failure warnings](https://github.com/coreos/etcd/pull/8939) to help debug such issues in the future.
|
|
||||||
- Remove `--listen-metrics-urls` flag in monitoring document (non-released in `v3.2.x`, planned for `v3.3.x`).
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Provide [more cert details](https://github.com/coreos/etcd/pull/8952/files) on TLS handshake failures.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.11](https://github.com/coreos/etcd/releases/tag/v3.1.11) (2017-11-28)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.10...v3.1.11) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- [#8411](https://github.com/coreos/etcd/issues/8411),[#8806](https://github.com/coreos/etcd/pull/8806) mvcc: fix watch restore from snapshot
|
|
||||||
- [#8009](https://github.com/coreos/etcd/issues/8009),[#8902](https://github.com/coreos/etcd/pull/8902) backport coreos/bbolt v1.3.1-coreos.5
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.10](https://github.com/coreos/etcd/releases/tag/v3.2.10) (2017-11-16)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.9...v3.2.10) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Replace backend key-value database `boltdb/bolt` with [`coreos/bbolt`](https://github.com/coreos/bbolt/releases) to address [backend database size issue](https://github.com/coreos/etcd/issues/8009).
|
|
||||||
- Fix `clientv3` balancer to handle [network partitions](https://github.com/coreos/etcd/issues/8711):
|
|
||||||
- Upgrade [`google.golang.org/grpc`](https://github.com/grpc/grpc-go/releases) `v1.2.1` to `v1.7.3`.
|
|
||||||
- Upgrade [`github.com/grpc-ecosystem/grpc-gateway`](https://github.com/grpc-ecosystem/grpc-gateway/releases) `v1.2` to `v1.3`.
|
|
||||||
- Revert [discovery SRV auth `ServerName` with `*.{ROOT_DOMAIN}`](https://github.com/coreos/etcd/pull/8651) to support non-wildcard subject alternative names in the certs (see [issue #8445](https://github.com/coreos/etcd/issues/8445) for more contexts).
|
|
||||||
- For instance, `etcd --discovery-srv=etcd.local` will only authenticate peers/clients when the provided certs have root domain `etcd.local` (**not `*.etcd.local`**) as an entry in Subject Alternative Name (SAN) field.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.9](https://github.com/coreos/etcd/releases/tag/v3.2.9) (2017-10-06)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.8...v3.2.9) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed(Security)
|
|
||||||
|
|
||||||
- Compile with [Go 1.8.4](https://groups.google.com/d/msg/golang-nuts/sHfMg4gZNps/a-HDgDDDAAAJ).
|
|
||||||
- Update `golang.org/x/crypto/bcrypt` (see [golang/crypto@6c586e1](https://github.com/golang/crypto/commit/6c586e17d90a7d08bbbc4069984180dce3b04117)).
|
|
||||||
- Fix discovery SRV bootstrapping to [authenticate `ServerName` with `*.{ROOT_DOMAIN}`](https://github.com/coreos/etcd/pull/8651), in order to support sub-domain wildcard matching (see [issue #8445](https://github.com/coreos/etcd/issues/8445) for more contexts).
|
|
||||||
- For instance, `etcd --discovery-srv=etcd.local` will only authenticate peers/clients when the provided certs have root domain `*.etcd.local` as an entry in Subject Alternative Name (SAN) field.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.8](https://github.com/coreos/etcd/releases/tag/v3.2.8) (2017-09-29)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.7...v3.2.8) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix v2 client failover to next endpoint on mutable operation.
|
|
||||||
- Fix grpc-proxy to respect `KeysOnly` flag.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.7](https://github.com/coreos/etcd/releases/tag/v3.2.7) (2017-09-01)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.6...v3.2.7) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix server-side auth so concurrent auth operations do not return old revision error.
|
|
||||||
- Fix concurrency/stm Put with serializable snapshot
|
|
||||||
- Use store revision from first fetch to resolve write conflicts instead of modified revision.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.6](https://github.com/coreos/etcd/releases/tag/v3.2.6) (2017-08-21)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.5...v3.2.6).
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix watch restore from snapshot.
|
|
||||||
- Fix `etcd_debugging_mvcc_keys_total` inconsistency.
|
|
||||||
- Fix multiple URLs for `--listen-peer-urls` flag.
|
|
||||||
- Add `--enable-pprof` flag to etcd configuration file format.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.5](https://github.com/coreos/etcd/releases/tag/v3.2.5) (2017-08-04)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.4...v3.2.5) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Use reverse lookup to match wildcard DNS SAN.
|
|
||||||
- Return non-zero exit code on unhealthy `endpoint health`.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix unreachable /metrics endpoint when `--enable-v2=false`.
|
|
||||||
- Fix grpc-proxy to respect `PrevKv` flag.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Add container registry `gcr.io/etcd-development/etcd`.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.4](https://github.com/coreos/etcd/releases/tag/v3.2.4) (2017-07-19)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.3...v3.2.4) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Do not block on active client stream when stopping server
|
|
||||||
- Fix gRPC proxy Snapshot RPC error handling
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.3](https://github.com/coreos/etcd/releases/tag/v3.2.3) (2017-07-14)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.2...v3.2.3) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Let clients establish unlimited streams
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Tag docker images with minor versions
|
|
||||||
- e.g. `docker pull quay.io/coreos/etcd:v3.2` to fetch latest v3.2 versions
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.10](https://github.com/coreos/etcd/releases/tag/v3.1.10) (2017-07-14)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.9...v3.1.10) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Compile with Go 1.8.3 to fix panic on `net/http.CloseNotify`
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Tag docker images with minor versions.
|
|
||||||
- e.g. `docker pull quay.io/coreos/etcd:v3.1` to fetch latest v3.1 versions.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.2](https://github.com/coreos/etcd/releases/tag/v3.2.2) (2017-07-07)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.1...v3.2.2) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Improved
|
|
||||||
|
|
||||||
- Rate-limit lease revoke on expiration.
|
|
||||||
- Extend leases on promote to avoid queueing effect on lease expiration.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Use user-provided listen address to connect to gRPC gateway:
|
|
||||||
- `net.Listener` rewrites IPv4 0.0.0.0 to IPv6 [::], breaking IPv6 disabled hosts.
|
|
||||||
- Only v3.2.0, v3.2.1 are affected.
|
|
||||||
- Accept connection with matched IP SAN but no DNS match.
|
|
||||||
- Don't check DNS entries in certs if there's a matching IP.
|
|
||||||
- Fix 'tools/benchmark' watch command.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.1](https://github.com/coreos/etcd/releases/tag/v3.2.1) (2017-06-23)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.0...v3.2.1) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix backend database in-memory index corruption issue on restore (only 3.2.0 is affected).
|
|
||||||
- Fix gRPC gateway Txn marshaling issue.
|
|
||||||
- Fix backend database size debugging metrics.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.0](https://github.com/coreos/etcd/releases/tag/v3.2.0) (2017-06-09)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.0...v3.2.0) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Improved
|
|
||||||
|
|
||||||
- Improve backend read concurrency.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Embedded etcd
|
|
||||||
- `Etcd.Peers` field is now `[]*peerListener`.
|
|
||||||
- RPCs
|
|
||||||
- Add Election, Lock service.
|
|
||||||
- Native client etcdserver/api/v3client
|
|
||||||
- client "embedded" in the server.
|
|
||||||
- gRPC proxy
|
|
||||||
- Proxy endpoint discovery.
|
|
||||||
- Namespaces.
|
|
||||||
- Coalesce lease requests.
|
|
||||||
- v3 client
|
|
||||||
- STM prefetching.
|
|
||||||
- Add namespace feature.
|
|
||||||
- Add `ErrOldCluster` with server version checking.
|
|
||||||
- Translate `WithPrefix()` into `WithFromKey()` for empty key.
|
|
||||||
- v3 etcdctl
|
|
||||||
- Add `check perf` command.
|
|
||||||
- Add `--from-key` flag to role grant-permission command.
|
|
||||||
- `lock` command takes an optional command to execute.
|
|
||||||
- etcd flags
|
|
||||||
- Add `--enable-v2` flag to configure v2 backend (enabled by default).
|
|
||||||
- Add `--auth-token` flag.
|
|
||||||
- `etcd gateway`
|
|
||||||
- Support DNS SRV priority.
|
|
||||||
- Auth
|
|
||||||
- Support Watch API.
|
|
||||||
- JWT tokens.
|
|
||||||
- Logging, monitoring
|
|
||||||
- Server warns large snapshot operations.
|
|
||||||
- Add `etcd_debugging_server_lease_expired_total` metrics.
|
|
||||||
- Security
|
|
||||||
- Deny incoming peer certs with wrong IP SAN.
|
|
||||||
- Resolve TLS `DNSNames` when SAN checking.
|
|
||||||
- Reload TLS certificates on every client connection.
|
|
||||||
- Release
|
|
||||||
- Annotate acbuild with supports-systemd-notify.
|
|
||||||
- Add `nsswitch.conf` to Docker container image.
|
|
||||||
- Add ppc64le, arm64(experimental) builds.
|
|
||||||
- Compile with `Go 1.8.3`.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- v3 client
|
|
||||||
- `LeaseTimeToLive` returns TTL=-1 resp on lease not found.
|
|
||||||
- `clientv3.NewFromConfigFile` is moved to `clientv3/yaml.NewConfig`.
|
|
||||||
- concurrency package's elections updated to match RPC interfaces.
|
|
||||||
- let client dial endpoints not in the balancer.
|
|
||||||
- Dependencies
|
|
||||||
- Update [`google.golang.org/grpc`](https://github.com/grpc/grpc-go/releases) to `v1.2.1`.
|
|
||||||
- Update [`github.com/grpc-ecosystem/grpc-gateway`](https://github.com/grpc-ecosystem/grpc-gateway/releases) to `v1.2.0`.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Allow v2 snapshot over 512MB.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.9](https://github.com/coreos/etcd/releases/tag/v3.1.9) (2017-06-09)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.8...v3.1.9) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Allow v2 snapshot over 512MB.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.8](https://github.com/coreos/etcd/releases/tag/v3.1.8) (2017-05-19)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.7...v3.1.8) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.7](https://github.com/coreos/etcd/releases/tag/v3.1.7) (2017-04-28)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.6...v3.1.7) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.6](https://github.com/coreos/etcd/releases/tag/v3.1.6) (2017-04-19)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.5...v3.1.6) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Remove auth check in Status API.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fill in Auth API response header.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.5](https://github.com/coreos/etcd/releases/tag/v3.1.5) (2017-03-27)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.4...v3.1.5) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Add `/etc/nsswitch.conf` file to alpine-based Docker image.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix raft memory leak issue.
|
|
||||||
- Fix Windows file path issues.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.4](https://github.com/coreos/etcd/releases/tag/v3.1.4) (2017-03-22)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.3...v3.1.4) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.3](https://github.com/coreos/etcd/releases/tag/v3.1.3) (2017-03-10)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.2...v3.1.3) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Use machine default host when advertise URLs are default values(`localhost:2379,2380`) AND if listen URL is `0.0.0.0`.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix `etcd gateway` schema handling in DNS discovery.
|
|
||||||
- Fix sd_notify behaviors in `gateway`, `grpc-proxy`.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.2](https://github.com/coreos/etcd/releases/tag/v3.1.2) (2017-02-24)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.1...v3.1.2) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Use IPv4 default host, by default (when IPv4 and IPv6 are available).
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix `etcd gateway` with multiple endpoints.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.1](https://github.com/coreos/etcd/releases/tag/v3.1.1) (2017-02-17)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.0...v3.1.1) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Compile with `Go 1.7.5`.
|
|
||||||
|
|
||||||
|
|
||||||
## [v2.3.8](https://github.com/coreos/etcd/releases/tag/v2.3.8) (2017-02-17)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v2.3.7...v2.3.8).
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Compile with `Go 1.7.5`.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.0](https://github.com/coreos/etcd/releases/tag/v3.1.0) (2017-01-20)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.0...v3.1.0) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Improved
|
|
||||||
|
|
||||||
- Faster linearizable reads (implements Raft read-index).
|
|
||||||
- v3 authentication API is now stable.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Automatic leadership transfer when leader steps down.
|
|
||||||
- etcd flags
|
|
||||||
- `--strict-reconfig-check` flag is set by default.
|
|
||||||
- Add `--log-output` flag.
|
|
||||||
- Add `--metrics` flag.
|
|
||||||
- v3 client
|
|
||||||
- Add `SetEndpoints` method; update endpoints at runtime.
|
|
||||||
- Add `Sync` method; auto-update endpoints at runtime.
|
|
||||||
- Add `Lease TimeToLive` API; fetch lease information.
|
|
||||||
- replace Config.Logger field with global logger.
|
|
||||||
- Get API responses are sorted in ascending order by default.
|
|
||||||
- v3 etcdctl
|
|
||||||
- Add `lease timetolive` command.
|
|
||||||
- Add `--print-value-only` flag to get command.
|
|
||||||
- Add `--dest-prefix` flag to make-mirror command.
|
|
||||||
- `get` command responses are sorted in ascending order by default.
|
|
||||||
- `recipes` now conform to sessions defined in `clientv3/concurrency`.
|
|
||||||
- ACI has symlinks to `/usr/local/bin/etcd*`.
|
|
||||||
- Experimental gRPC proxy feature.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Deprecated following gRPC metrics in favor of [go-grpc-prometheus](https://github.com/grpc-ecosystem/go-grpc-prometheus):
|
|
||||||
- `etcd_grpc_requests_total`
|
|
||||||
- `etcd_grpc_requests_failed_total`
|
|
||||||
- `etcd_grpc_active_streams`
|
|
||||||
- `etcd_grpc_unary_requests_duration_seconds`
|
|
||||||
- etcd uses default route IP if advertise URL is not given.
|
|
||||||
- Cluster rejects removing members if quorum will be lost.
|
|
||||||
- SRV records (e.g., infra1.example.com) must match the discovery domain (i.e., example.com) if no custom certificate authority is given.
|
|
||||||
- `TLSConfig.ServerName` is ignored with user-provided certificates for backwards compatibility; to be deprecated.
|
|
||||||
- For example, `etcd --discovery-srv=example.com` will only authenticate peers/clients when the provided certs have root domain `example.com` as an entry in Subject Alternative Name (SAN) field.
|
|
||||||
- Discovery now has upper limit for waiting on retries.
|
|
||||||
- Warn on binding listeners through domain names; to be deprecated.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.16](https://github.com/coreos/etcd/releases/tag/v3.0.16) (2016-11-13)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.15...v3.0.16) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.15](https://github.com/coreos/etcd/releases/tag/v3.0.15) (2016-11-11)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.14...v3.0.15) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix cancel watch request with wrong range end.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.14](https://github.com/coreos/etcd/releases/tag/v3.0.14) (2016-11-04)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.13...v3.0.14) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- v3 `etcdctl migrate` command now supports `--no-ttl` flag to discard keys on transform.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.13](https://github.com/coreos/etcd/releases/tag/v3.0.13) (2016-10-24)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.12...v3.0.13) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.12](https://github.com/coreos/etcd/releases/tag/v3.0.12) (2016-10-07)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.11...v3.0.12) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.11](https://github.com/coreos/etcd/releases/tag/v3.0.11) (2016-10-07)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.10...v3.0.11) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Server returns previous key-value (optional)
|
|
||||||
- `clientv3.WithPrevKV` option
|
|
||||||
- v3 etcdctl `put,watch,del --prev-kv` flag
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.10](https://github.com/coreos/etcd/releases/tag/v3.0.10) (2016-09-23)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.9...v3.0.10) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.9](https://github.com/coreos/etcd/releases/tag/v3.0.9) (2016-09-15)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.8...v3.0.9) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- Warn on domain names on listen URLs (v3.2 will reject domain names).
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.8](https://github.com/coreos/etcd/releases/tag/v3.0.8) (2016-09-09)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.7...v3.0.8) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Allow only IP addresses in listen URLs (domain names are rejected).
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.7](https://github.com/coreos/etcd/releases/tag/v3.0.7) (2016-08-31)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.6...v3.0.7) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- SRV records only allow A records (RFC 2052).
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.6](https://github.com/coreos/etcd/releases/tag/v3.0.6) (2016-08-19)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.5...v3.0.6) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.5](https://github.com/coreos/etcd/releases/tag/v3.0.5) (2016-08-19)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.4...v3.0.5) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- SRV records (e.g., infra1.example.com) must match the discovery domain (i.e., example.com) if no custom certificate authority is given.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.4](https://github.com/coreos/etcd/releases/tag/v3.0.4) (2016-07-27)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.3...v3.0.4) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- v2 auth can now use common name from TLS certificate when `--client-cert-auth` is enabled.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
|
|
||||||
- v2 `etcdctl ls` command now supports `--output=json`.
|
|
||||||
- Add /var/lib/etcd directory to etcd official Docker image.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.3](https://github.com/coreos/etcd/releases/tag/v3.0.3) (2016-07-15)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.2...v3.0.3) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Revert Dockerfile to use `CMD`, instead of `ENTRYPOINT`, to support `etcdctl` run.
|
|
||||||
- Docker commands for v3.0.2 won't work without specifying executable binary paths.
|
|
||||||
- v3 etcdctl default endpoints are now `127.0.0.1:2379`.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.2](https://github.com/coreos/etcd/releases/tag/v3.0.2) (2016-07-08)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.1...v3.0.2) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
|
|
||||||
- Dockerfile uses `ENTRYPOINT`, instead of `CMD`, to run etcd without binary path specified.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.1](https://github.com/coreos/etcd/releases/tag/v3.0.1) (2016-07-01)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.0.0...v3.0.1) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
||||||
|
|
||||||
|
|
||||||
## [v3.0.0](https://github.com/coreos/etcd/releases/tag/v3.0.0) (2016-06-30)
|
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v2.3.0...v3.0.0) and [v3.0 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_0.md) for any breaking changes.
|
|
63
vendor/github.com/coreos/etcd/CODE_OF_CONDUCT.md
generated
vendored
63
vendor/github.com/coreos/etcd/CODE_OF_CONDUCT.md
generated
vendored
|
@ -1,63 +0,0 @@
|
||||||
## CoreOS Community Code of Conduct
|
|
||||||
|
|
||||||
### Contributor Code of Conduct
|
|
||||||
|
|
||||||
As contributors and maintainers of this project, and in the interest of
|
|
||||||
fostering an open and welcoming community, we pledge to respect all people who
|
|
||||||
contribute through reporting issues, posting feature requests, updating
|
|
||||||
documentation, submitting pull requests or patches, and other activities.
|
|
||||||
|
|
||||||
We are committed to making participation in this project a harassment-free
|
|
||||||
experience for everyone, regardless of level of experience, gender, gender
|
|
||||||
identity and expression, sexual orientation, disability, personal appearance,
|
|
||||||
body size, race, ethnicity, age, religion, or nationality.
|
|
||||||
|
|
||||||
Examples of unacceptable behavior by participants include:
|
|
||||||
|
|
||||||
* The use of sexualized language or imagery
|
|
||||||
* Personal attacks
|
|
||||||
* Trolling or insulting/derogatory comments
|
|
||||||
* Public or private harassment
|
|
||||||
* Publishing others' private information, such as physical or electronic addresses, without explicit permission
|
|
||||||
* Other unethical or unprofessional conduct.
|
|
||||||
|
|
||||||
Project maintainers have the right and responsibility to remove, edit, or
|
|
||||||
reject comments, commits, code, wiki edits, issues, and other contributions
|
|
||||||
that are not aligned to this Code of Conduct. By adopting this Code of Conduct,
|
|
||||||
project maintainers commit themselves to fairly and consistently applying these
|
|
||||||
principles to every aspect of managing this project. Project maintainers who do
|
|
||||||
not follow or enforce the Code of Conduct may be permanently removed from the
|
|
||||||
project team.
|
|
||||||
|
|
||||||
This code of conduct applies both within project spaces and in public spaces
|
|
||||||
when an individual is representing the project or its community.
|
|
||||||
|
|
||||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
|
||||||
reported by contacting a project maintainer, Brandon Philips
|
|
||||||
<brandon.philips@coreos.com>, and/or Meghan Schofield
|
|
||||||
<meghan.schofield@coreos.com>.
|
|
||||||
|
|
||||||
This Code of Conduct is adapted from the Contributor Covenant
|
|
||||||
(http://contributor-covenant.org), version 1.2.0, available at
|
|
||||||
http://contributor-covenant.org/version/1/2/0/
|
|
||||||
|
|
||||||
### CoreOS Events Code of Conduct
|
|
||||||
|
|
||||||
CoreOS events are working conferences intended for professional networking and
|
|
||||||
collaboration in the CoreOS community. Attendees are expected to behave
|
|
||||||
according to professional standards and in accordance with their employer’s
|
|
||||||
policies on appropriate workplace behavior.
|
|
||||||
|
|
||||||
While at CoreOS events or related social networking opportunities, attendees
|
|
||||||
should not engage in discriminatory or offensive speech or actions including
|
|
||||||
but not limited to gender, sexuality, race, age, disability, or religion.
|
|
||||||
Speakers should be especially aware of these concerns.
|
|
||||||
|
|
||||||
CoreOS does not condone any statements by speakers contrary to these standards.
|
|
||||||
CoreOS reserves the right to deny entrance and/or eject from an event (without
|
|
||||||
refund) any individual found to be engaging in discriminatory or offensive
|
|
||||||
speech or actions.
|
|
||||||
|
|
||||||
Please bring any concerns to the immediate attention of designated on-site
|
|
||||||
staff, Brandon Philips <brandon.philips@coreos.com>, and/or Meghan Schofield
|
|
||||||
<meghan.schofield@coreos.com>.
|
|
62
vendor/github.com/coreos/etcd/CONTRIBUTING.md
generated
vendored
62
vendor/github.com/coreos/etcd/CONTRIBUTING.md
generated
vendored
|
@ -1,62 +0,0 @@
|
||||||
# How to contribute
|
|
||||||
|
|
||||||
etcd is Apache 2.0 licensed and accepts contributions via GitHub pull requests. This document outlines some of the conventions on commit message formatting, contact points for developers, and other resources to help get contributions into etcd.
|
|
||||||
|
|
||||||
# Email and chat
|
|
||||||
|
|
||||||
- Email: [etcd-dev](https://groups.google.com/forum/?hl=en#!forum/etcd-dev)
|
|
||||||
- IRC: #[etcd](irc://irc.freenode.org:6667/#etcd) IRC channel on freenode.org
|
|
||||||
|
|
||||||
## Getting started
|
|
||||||
|
|
||||||
- Fork the repository on GitHub
|
|
||||||
- Read the README.md for build instructions
|
|
||||||
|
|
||||||
## Reporting bugs and creating issues
|
|
||||||
|
|
||||||
Reporting bugs is one of the best ways to contribute. However, a good bug report has some very specific qualities, so please read over our short document on [reporting bugs](https://github.com/coreos/etcd/blob/master/Documentation/reporting_bugs.md) before submitting a bug report. This document might contain links to known issues, another good reason to take a look there before reporting a bug.
|
|
||||||
|
|
||||||
## Contribution flow
|
|
||||||
|
|
||||||
This is a rough outline of what a contributor's workflow looks like:
|
|
||||||
|
|
||||||
- Create a topic branch from where to base the contribution. This is usually master.
|
|
||||||
- Make commits of logical units.
|
|
||||||
- Make sure commit messages are in the proper format (see below).
|
|
||||||
- Push changes in a topic branch to a personal fork of the repository.
|
|
||||||
- Submit a pull request to coreos/etcd.
|
|
||||||
- The PR must receive a LGTM from two maintainers found in the MAINTAINERS file.
|
|
||||||
|
|
||||||
Thanks for contributing!
|
|
||||||
|
|
||||||
### Code style
|
|
||||||
|
|
||||||
The coding style suggested by the Golang community is used in etcd. See the [style doc](https://github.com/golang/go/wiki/CodeReviewComments) for details.
|
|
||||||
|
|
||||||
Please follow this style to make etcd easy to review, maintain and develop.
|
|
||||||
|
|
||||||
### Format of the commit message
|
|
||||||
|
|
||||||
We follow a rough convention for commit messages that is designed to answer two
|
|
||||||
questions: what changed and why. The subject line should feature the what and
|
|
||||||
the body of the commit should describe the why.
|
|
||||||
|
|
||||||
```
|
|
||||||
scripts: add the test-cluster command
|
|
||||||
|
|
||||||
this uses tmux to setup a test cluster that can easily be killed and started for debugging.
|
|
||||||
|
|
||||||
Fixes #38
|
|
||||||
```
|
|
||||||
|
|
||||||
The format can be described more formally as follows:
|
|
||||||
|
|
||||||
```
|
|
||||||
<subsystem>: <what changed>
|
|
||||||
<BLANK LINE>
|
|
||||||
<why this change was made>
|
|
||||||
<BLANK LINE>
|
|
||||||
<footer>
|
|
||||||
```
|
|
||||||
|
|
||||||
The first line is the subject and should be no longer than 70 characters, the second line is always blank, and other lines should be wrapped at 80 characters. This allows the message to be easier to read on GitHub as well as in various git tools.
|
|
36
vendor/github.com/coreos/etcd/DCO
generated
vendored
36
vendor/github.com/coreos/etcd/DCO
generated
vendored
|
@ -1,36 +0,0 @@
|
||||||
Developer Certificate of Origin
|
|
||||||
Version 1.1
|
|
||||||
|
|
||||||
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
|
|
||||||
660 York Street, Suite 102,
|
|
||||||
San Francisco, CA 94110 USA
|
|
||||||
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies of this
|
|
||||||
license document, but changing it is not allowed.
|
|
||||||
|
|
||||||
|
|
||||||
Developer's Certificate of Origin 1.1
|
|
||||||
|
|
||||||
By making a contribution to this project, I certify that:
|
|
||||||
|
|
||||||
(a) The contribution was created in whole or in part by me and I
|
|
||||||
have the right to submit it under the open source license
|
|
||||||
indicated in the file; or
|
|
||||||
|
|
||||||
(b) The contribution is based upon previous work that, to the best
|
|
||||||
of my knowledge, is covered under an appropriate open source
|
|
||||||
license and I have the right under that license to submit that
|
|
||||||
work with modifications, whether created in whole or in part
|
|
||||||
by me, under the same open source license (unless I am
|
|
||||||
permitted to submit under a different license), as indicated
|
|
||||||
in the file; or
|
|
||||||
|
|
||||||
(c) The contribution was provided directly to me by some other
|
|
||||||
person who certified (a), (b) or (c) and I have not modified
|
|
||||||
it.
|
|
||||||
|
|
||||||
(d) I understand and agree that this project and the contribution
|
|
||||||
are public and that a record of the contribution (including all
|
|
||||||
personal information I submit with it, including my sign-off) is
|
|
||||||
maintained indefinitely and may be redistributed consistent with
|
|
||||||
this project or the open source license(s) involved.
|
|
6
vendor/github.com/coreos/etcd/Dockerfile
generated
vendored
6
vendor/github.com/coreos/etcd/Dockerfile
generated
vendored
|
@ -1,6 +0,0 @@
|
||||||
FROM golang
|
|
||||||
ADD . /go/src/github.com/coreos/etcd
|
|
||||||
ADD cmd/vendor /go/src/github.com/coreos/etcd/vendor
|
|
||||||
RUN go install github.com/coreos/etcd
|
|
||||||
EXPOSE 2379 2380
|
|
||||||
ENTRYPOINT ["etcd"]
|
|
53
vendor/github.com/coreos/etcd/Dockerfile-functional-tester
generated
vendored
53
vendor/github.com/coreos/etcd/Dockerfile-functional-tester
generated
vendored
|
@ -1,53 +0,0 @@
|
||||||
FROM ubuntu:17.10
|
|
||||||
|
|
||||||
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
|
|
||||||
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
|
|
||||||
|
|
||||||
RUN apt-get -y update \
|
|
||||||
&& apt-get -y install \
|
|
||||||
build-essential \
|
|
||||||
gcc \
|
|
||||||
apt-utils \
|
|
||||||
pkg-config \
|
|
||||||
software-properties-common \
|
|
||||||
apt-transport-https \
|
|
||||||
libssl-dev \
|
|
||||||
sudo \
|
|
||||||
bash \
|
|
||||||
curl \
|
|
||||||
wget \
|
|
||||||
tar \
|
|
||||||
git \
|
|
||||||
&& apt-get -y update \
|
|
||||||
&& apt-get -y upgrade \
|
|
||||||
&& apt-get -y autoremove \
|
|
||||||
&& apt-get -y autoclean
|
|
||||||
|
|
||||||
ENV GOROOT /usr/local/go
|
|
||||||
ENV GOPATH /go
|
|
||||||
ENV PATH ${GOPATH}/bin:${GOROOT}/bin:${PATH}
|
|
||||||
ENV GO_VERSION REPLACE_ME_GO_VERSION
|
|
||||||
ENV GO_DOWNLOAD_URL https://storage.googleapis.com/golang
|
|
||||||
RUN rm -rf ${GOROOT} \
|
|
||||||
&& curl -s ${GO_DOWNLOAD_URL}/go${GO_VERSION}.linux-amd64.tar.gz | tar -v -C /usr/local/ -xz \
|
|
||||||
&& mkdir -p ${GOPATH}/src ${GOPATH}/bin \
|
|
||||||
&& go version
|
|
||||||
|
|
||||||
RUN mkdir -p ${GOPATH}/src/github.com/coreos/etcd
|
|
||||||
ADD . ${GOPATH}/src/github.com/coreos/etcd
|
|
||||||
|
|
||||||
RUN go get -v github.com/coreos/gofail \
|
|
||||||
&& pushd ${GOPATH}/src/github.com/coreos/etcd \
|
|
||||||
&& GO_BUILD_FLAGS="-v" ./build \
|
|
||||||
&& cp ./bin/etcd /etcd \
|
|
||||||
&& cp ./bin/etcdctl /etcdctl \
|
|
||||||
&& GO_BUILD_FLAGS="-v" FAILPOINTS=1 ./build \
|
|
||||||
&& cp ./bin/etcd /etcd-failpoints \
|
|
||||||
&& ./tools/functional-tester/build \
|
|
||||||
&& cp ./bin/etcd-agent /etcd-agent \
|
|
||||||
&& cp ./bin/etcd-tester /etcd-tester \
|
|
||||||
&& cp ./bin/etcd-runner /etcd-runner \
|
|
||||||
&& go build -v -o /benchmark ./cmd/tools/benchmark \
|
|
||||||
&& go build -v -o /etcd-test-proxy ./cmd/tools/etcd-test-proxy \
|
|
||||||
&& popd \
|
|
||||||
&& rm -rf ${GOPATH}/src/github.com/coreos/etcd
|
|
17
vendor/github.com/coreos/etcd/Dockerfile-release
generated
vendored
17
vendor/github.com/coreos/etcd/Dockerfile-release
generated
vendored
|
@ -1,17 +0,0 @@
|
||||||
FROM alpine:latest
|
|
||||||
|
|
||||||
ADD etcd /usr/local/bin/
|
|
||||||
ADD etcdctl /usr/local/bin/
|
|
||||||
RUN mkdir -p /var/etcd/
|
|
||||||
RUN mkdir -p /var/lib/etcd/
|
|
||||||
|
|
||||||
# Alpine Linux doesn't use pam, which means that there is no /etc/nsswitch.conf,
|
|
||||||
# but Golang relies on /etc/nsswitch.conf to check the order of DNS resolving
|
|
||||||
# (see https://github.com/golang/go/commit/9dee7771f561cf6aee081c0af6658cc81fac3918)
|
|
||||||
# To fix this we just create /etc/nsswitch.conf and add the following line:
|
|
||||||
RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf
|
|
||||||
|
|
||||||
EXPOSE 2379 2380
|
|
||||||
|
|
||||||
# Define default command.
|
|
||||||
CMD ["/usr/local/bin/etcd"]
|
|
11
vendor/github.com/coreos/etcd/Dockerfile-release.arm64
generated
vendored
11
vendor/github.com/coreos/etcd/Dockerfile-release.arm64
generated
vendored
|
@ -1,11 +0,0 @@
|
||||||
FROM aarch64/ubuntu:16.04
|
|
||||||
|
|
||||||
ADD etcd /usr/local/bin/
|
|
||||||
ADD etcdctl /usr/local/bin/
|
|
||||||
ADD var/etcd /var/etcd
|
|
||||||
ADD var/lib/etcd /var/lib/etcd
|
|
||||||
|
|
||||||
EXPOSE 2379 2380
|
|
||||||
|
|
||||||
# Define default command.
|
|
||||||
CMD ["/usr/local/bin/etcd"]
|
|
11
vendor/github.com/coreos/etcd/Dockerfile-release.ppc64le
generated
vendored
11
vendor/github.com/coreos/etcd/Dockerfile-release.ppc64le
generated
vendored
|
@ -1,11 +0,0 @@
|
||||||
FROM ppc64le/ubuntu:16.04
|
|
||||||
|
|
||||||
ADD etcd /usr/local/bin/
|
|
||||||
ADD etcdctl /usr/local/bin/
|
|
||||||
ADD var/etcd /var/etcd
|
|
||||||
ADD var/lib/etcd /var/lib/etcd
|
|
||||||
|
|
||||||
EXPOSE 2379 2380
|
|
||||||
|
|
||||||
# Define default command.
|
|
||||||
CMD ["/usr/local/bin/etcd"]
|
|
58
vendor/github.com/coreos/etcd/Dockerfile-test
generated
vendored
58
vendor/github.com/coreos/etcd/Dockerfile-test
generated
vendored
|
@ -1,58 +0,0 @@
|
||||||
FROM ubuntu:16.10
|
|
||||||
|
|
||||||
RUN rm /bin/sh && ln -s /bin/bash /bin/sh
|
|
||||||
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
|
|
||||||
|
|
||||||
RUN apt-get -y update \
|
|
||||||
&& apt-get -y install \
|
|
||||||
build-essential \
|
|
||||||
gcc \
|
|
||||||
apt-utils \
|
|
||||||
pkg-config \
|
|
||||||
software-properties-common \
|
|
||||||
apt-transport-https \
|
|
||||||
libssl-dev \
|
|
||||||
sudo \
|
|
||||||
bash \
|
|
||||||
curl \
|
|
||||||
wget \
|
|
||||||
tar \
|
|
||||||
git \
|
|
||||||
netcat \
|
|
||||||
libaspell-dev \
|
|
||||||
libhunspell-dev \
|
|
||||||
hunspell-en-us \
|
|
||||||
aspell-en \
|
|
||||||
shellcheck \
|
|
||||||
&& apt-get -y update \
|
|
||||||
&& apt-get -y upgrade \
|
|
||||||
&& apt-get -y autoremove \
|
|
||||||
&& apt-get -y autoclean
|
|
||||||
|
|
||||||
ENV GOROOT /usr/local/go
|
|
||||||
ENV GOPATH /go
|
|
||||||
ENV PATH ${GOPATH}/bin:${GOROOT}/bin:${PATH}
|
|
||||||
ENV GO_VERSION REPLACE_ME_GO_VERSION
|
|
||||||
ENV GO_DOWNLOAD_URL https://storage.googleapis.com/golang
|
|
||||||
RUN rm -rf ${GOROOT} \
|
|
||||||
&& curl -s ${GO_DOWNLOAD_URL}/go${GO_VERSION}.linux-amd64.tar.gz | tar -v -C /usr/local/ -xz \
|
|
||||||
&& mkdir -p ${GOPATH}/src ${GOPATH}/bin \
|
|
||||||
&& go version
|
|
||||||
|
|
||||||
RUN mkdir -p ${GOPATH}/src/github.com/coreos/etcd
|
|
||||||
WORKDIR ${GOPATH}/src/github.com/coreos/etcd
|
|
||||||
|
|
||||||
ADD ./scripts/install-marker.sh /tmp/install-marker.sh
|
|
||||||
|
|
||||||
RUN go get -v -u -tags spell github.com/chzchzchz/goword \
|
|
||||||
&& go get -v -u github.com/coreos/license-bill-of-materials \
|
|
||||||
&& go get -v -u honnef.co/go/tools/cmd/gosimple \
|
|
||||||
&& go get -v -u honnef.co/go/tools/cmd/unused \
|
|
||||||
&& go get -v -u honnef.co/go/tools/cmd/staticcheck \
|
|
||||||
&& go get -v -u github.com/gyuho/gocovmerge \
|
|
||||||
&& go get -v -u github.com/gordonklaus/ineffassign \
|
|
||||||
&& go get -v -u github.com/alexkohler/nakedret \
|
|
||||||
&& /tmp/install-marker.sh amd64 \
|
|
||||||
&& rm -f /tmp/install-marker.sh \
|
|
||||||
&& curl -s https://codecov.io/bash >/codecov \
|
|
||||||
&& chmod 700 /codecov
|
|
1
vendor/github.com/coreos/etcd/Documentation/README.md
generated
vendored
Symbolic link
1
vendor/github.com/coreos/etcd/Documentation/README.md
generated
vendored
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
docs.md
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue