go-kit v0.9.0 Release Notes

Release Date: 2019-06-27 // 6 months ago
  • 🚀 A new major release with incremental improvements and enhancements. Major features include support for AWS Lambda as a transport, and improved error handling in all transports. Thanks to the 26 contributors who contributed to this release! 🏌

    🚀 Note that this release includes breaking changes in the metrics package , please review the documentation for changes.

    🐛 Bug fixes

    • sd/etcdv3: serve the keepalive response channel (#803) (thanks @fangdingjun)
    • ✅ tracing/zipkin: swaps tested conditions (#812) (thanks @jcchavezs)
    • metrics/influx: Fix InfluxDB import path (#826) (thanks @flowchartsman)
    • kitgen: normalize backSlashes in path (#831) (thanks @obeyda)
    • sd/etcdv3: fix dead loop (#848) (thanks @zii)
    • sd/zk: fix: ProtectedEphemeralSequential in the wrong zk path (#849) (thanks @RedDragonet)
    • metrics/cloudwatch2: fix context in Send() (#857) (thanks @h8liu)
    • sd: fix data race (#865) (thanks @toffaletti)
    • tracing/opentracing: fix port assignment (#866) (thanks @kevinreed8263)
    • ⚡️ transport/nats: Update imports (#881) (thanks @wallyqs)
    • ✅ metrics/prometheus: fix for latest HEAD (#885)
    • metrics/dogstatsd: Drop metrics according to sample rate (#884) (thanks @martin-sucha)

    ✨ Enhancements

    • 🌲 log: Support logrus.Field logger in the logrus adapter (#793) (thanks @sagikazarmark)
    • transport/amqp: Add amqp.Delivery to the request func (#802) (thanks @ValeryPiashchynski)
    • transport/http: adding request and response encoders for Protobuf (#809) (thanks @jprobinson)
    • tracing/zipkin: add request sampler (#813) (thanks @jcchavezs)
    • tracing/opentracing: Change span injection/extraction from HTTP request (#821) (thanks @nboukeffa)
    • 0️⃣ tracing/opentracing: Use opencensus' DefaultSampler instead of AlwaysSample as default (#830) (thanks @rueian)
    • metrics: Make Send/Write Loop context aware (#837) (thanks @jlordiales)
    • 👍 transport/awslambda: add support (#815) (thanks @suekto-andreas)
    • transport/amqp: add NopResponse option (#850) (thanks @mattfung)
    • 🌲 log: add a log adapter for zap.Logger (#855) (thanks @MaruHyl)
    • transport: Implement transport level error handlers (#863) (thanks @sagikazarmark)
    • transport/nats: Use given context in NATS endpoint (#876) (thanks @nsmith5)
    • ⚡️ metrics/cloudwatch2: Update cloudwatch2 to latest upstream API (#878) (thanks @nsmith5)

    📚 Documentation, examples, tests

    • misc: fix a few misspellings (#797) (thanks @dvrkps)
    • examples: Replace "x/net/context" import with "context" (#810) (thanks @marselester)
    • ✅ metrics/prometheus: Fix test to accommodate new Prometheus metric output (#820)
    • 🏁 kitgen: fix kitgen test in the windows (#840) (thanks @runner)
    • 🏗 misc: add integration with builds.sr.ht (#842)
    • 🌲 log/level: improve examples (#845)
    • misc: code improvements (#868) (thanks @sosiska)
    • ✅ sd/{etcd,etcdv3}: disable flaky integration tests (#883)
    • ⚡️ README: Update Gin framework homepage url (#888) (thanks @yellowmint)

Previous changes from v0.8.0

  • 🚀 A major release! Featuring NATS and AMPQ transports, many other smaller enhancements, and many bug fixes. Thanks to the 25 contributors who made big contributions to this release! 🏌️

    🐛 Bug fixes

    • 🛠 Fix Client.Endpoint to not cancel when bufferedStream (#776) (thanks @xescugc)
    • 🛠 Fix Consul SD loop exiting on EOF (#788) (thanks @kcajmagic)
    • ➕ Add backoff package and fix Consul CPU usage (#635) (thanks @nicot)
    • 🛠 Fix race condition in NATS transport tests (#705) (thanks @nussjustin)
    • 🛠 Fix pact test due to breaking api change (#720) (thanks @basvanbeek)
    • ➕ Add FinalizerFunc to NATS transport (#790) (thanks @kirooha)
    • 🛠 Fix etcdv3 registrar tests (#724) (thanks @basvanbeek)
    • JSONRPC: add id from request to response (#742) (thanks @wangzuo)
    • 🛠 Fix etcd import path (#756) (thanks @h8liu)
    • 📦 Rename 'package log' to 'log package' to fix godoc link handling. (#765) (thanks @bx2)

    ✨ Enhancements

    📚 Documentation, examples, and testing