1
0
mirror of https://github.com/go-micro/go-micro.git synced 2024-12-24 10:07:04 +02:00
go-micro/CHANGELOG.md
Johnson C b884a68347
feat: update out of date docs (#2520)
* feat: redis implementation of cache

* Revert "feat: redis implementation of cache"

This reverts commit 4b3f25c1fc.

* feat: update out of date docs
2022-07-02 08:44:32 +01:00

18 KiB

4.7.0 (2022/05/19)

Features

  • remove unused variable in loop (#2495)
  • option to disable file watcher (#2485)
  • Support direct generation of grpc method (#2474)
  • remove cli
  • remove dashboard
  • Remove examples
  • Add header suppor for Kafka broker plugin; (#2470)
  • Fix codec/bytes (#2466)
  • Add Wait option support for sync/etcd plugins (#2459)
  • #2453 Fix with associated test update (#2454)
  • style:arrays pre-allocation (#2449)
  • Bump github.com/nats-io/nats-server/v2 in /plugins/events/natsjs (#2447)
  • add NATS JetStream events plugin (#2433)
  • add tls option for sync etcd plugin (#2440)
  • add new services

Bug Fixes

  • fix: consume and publish blocked after rabbitmq reconnecting (#2492)
  • typo fix; (#2480)
  • fix https://github.com/asim/go-micro/issues/2344 (#2462)
  • fix natsjs syntax error, remove TODOs and enable tests (#2446)
  • http transport deadlock (#2441)
  • Support for -micro_out=module=<module_prefix> for protoc-gen-micro (#2435)

4.6.0 (2022/02/08)

Features

  • add service updates (#2418)
  • Add files via upload
  • default the content type to json (#2412)
  • Add Kafka asynchronous send support (#2409)
  • use read lock and unlock instead of write ones (#2410)
  • move the api client
  • Update client_test.go
  • switch services client
  • remove the client
  • add service interfaces
  • [FEATURE] add changelog (#2400)
  • nats config plugin (#2397)
  • Update and rename m3o.go to services.go
  • Update services/ (#2392)

Bug Fixes

  • fix client
  • fix context value nil (#2391)

4.5.0 (2021/12/19)

Bug Fixes

  • nats deregister issue (#2384)
  • fixing f.IsExported undefined issue (#2382)
  • fix http_transport Recv and Close race condition on buff (#2374)
  • update protoc-gen-micro install doc
  • zookeeper registry delete event (#2372)
  • delete redundant lines (#2364)
  • modify the dependencies urls (#2363)
  • ignore unexported field (#2354)
  • Fix Micro CLI's proto comments (#2353)

Features

  • Extend client mock with ability to test publish, and a few useful method like SetResponse and SetSubscriber (#2375)
  • go micro dashboard (#2361)

4.4.0 (2021/11/11)

Bug Fixes

  • fix(#2333): etcd grpc marshal issue (#2334)

Features

  • upgrade to go 1.17 (#2346)
  • add nats and redis events plugins
  • add events package (#2341)

4.3.0 (2021/11/01)

Bug Fixes

  • flatten cli (#2332)
  • m3o client changed
  • use vanity url for cli command
  • fix broker nsq plugin nil pointer error (#2329)
  • fix config json slice parsing (#2330)
  • replace ioutil with io and os (#2327)
  • fixing #2308 (#2326)
  • Fix Micro CLI by removing replace line in go.mod
  • remove unnecessary dependencies between plugins
    1. use default memory registry in grpc plugins (#2317)
  • Add update rule to Makefile (#2315)
  • Plugins (#2311)

Features

  • Rename gomu to micro (#2325)
  • stream CloseSend (#2323)
  • strip protoc-gen-micro go mod

BREAKING CHANGES

  • go install go-micro.dev/v4/cmd/micro@v4
  • go install go-micro.dev/v4/cmd/protoc-gen-micro@v4
  • upgrade go micro to support stream.CloseSend

4.2.1 (2021/10/14)

Bug Fixes

  • fix gomu.

4.2.0 (2021/10/13)

Bug Fixes

  • fix examples go mod.
  • update go sums.
  • move to go-micro.dev.
  • upgrade protoc-gen-micro to v4.

4.1.0 (2021/10/12)

  • v4.1.0.

4.0.0 (2021/10/12)

Features

  • Vanity URL go-micro.dev(#2271).

BREAKING CHANGES

  • upgrade github.com/asim/go-micro/v3 to go-micro.dev/v4.

3.7.0 (2021/10/11)

  • Add latest version (#2303).

3.6.0 (2021/08/23)

3.5.2 (2021/07/06)

  • Tag it and bag it.

3.5.1 (2021/04/20)

  • Minor bug fixes.

3.5.0 (2021/01/29)

  • kill the bugs.

3.0.1 (2021/01/20)

  • Tag with protoc changes.

3.0.0 (2021/01/20)

  • V3.

BREAKING CHANGES

  • upgrade github.com/micro/go-micro/v2 to github.com/asim/go-micro/v3.
  • change default transport from gRPC to mucp, using grpc server/client plugins.

3.0.0-beta.3 (2020/09/29)

  • Secret implementation of config. Supporting config merge (#2027)
  • remove transport options
  • read service package (#2026)
  • env config implementation (#2024)
  • runtime: remove builder package (moved to micro) (#2023)
  • Fix branch names support for k8s runtime (#2020)
  • fix config bug (#2021)
  • runtime: minor fixes for local runtime (#2019)
  • remove memcache and update gomod
  • Add errors to config methods (#2015)
  • store/file: fix segmentation violation bug (#2013)
  • Config interface change (#2010)
  • proxy/grpc: fix client streaming bug (EOF not sent to the server) (#2011)
  • client/grpc: fix stream closed bug (#2009)
  • store/file: don't keep connection to boltdb open (#2006)
  • runtime/builder with golang implementation (#2003)
  • store: implement s3 blob store (#2005)
  • store: add blob interface with file implementation (#2004)
  • auth: remove micro specific code (#1999)
  • Fix running subfolders (#1998)
  • api: fix request body re-sequencing bug (#1996)
  • add Name to auth.Account as a user friendly alias (#1992)
  • Fixing top level run outside repo (#1993)
  • runtime: normalised service statuses (#1994)
  • Add 'Namespace' header to allowed CORS headers (#1990)
  • Remove all the external plugins except grpc (#1988)
  • util/kubernetes: fix TCPSocketAction bug (#1987)
  • Fixing the metric tagging issue here (#1986).

3.0.0-beta.2 (2020/09/05)

  • Cut a v3 beta 2.

3.0.0-beta (2020/08/12)

  • write nil when expiry is zero.

3.0.0-alpha (2020/07/27)

  • v3 refactor (#1868).

2.9.1 (2020/07/03)

  • push tags to docker hub (#1766).

2.9.0 (2020/06/12)

  • Fix regex detection. Fixes #1663 (#1696).

2.9.0-rc5 (2020/06/11)

  • Merge branch 'master' into release-2.9.0.

2.9.0-rc4 (2020/06/11)

  • Merge branch 'master' into release-2.9.0.

2.9.0-rc1 (2020/06/11)

  • Merge branch 'master' into release-2.9.0.

2.8.0 (2020/05/31)

  • Rewrite Auth interface to use Rules
  • Add Cache interface into the Client for request caching
  • Fix atomic sequence updates in Client
  • Update go mod deps
  • Fix ipv6 parsing in mdns registry
  • Add namespacing to the default runtime
  • Replace go-git with v5
  • Increase register ttl to 90 seconds.

2.7.0 (2020/05/18)

  • Fix the rpc handler json rpc body parsing
  • Use caddyserver/certmagic instead of mholt
  • Add HasRole to Account
  • Add jwt refresh token generation
  • Fix rpc stream close locking race
  • Add auth namespace env var
  • Strip the router penalty code
  • Add file upload util
  • Fix killing processes in runtime
  • Pass namespace to runtime commands
  • Generate account on start
  • Check errors in cockroachdb.

2.6.0 (2020/05/04)

  • Fix discord bot authentication header
  • Improve api rpc regexp matching
  • Change auth account access via context
  • Create a jwt implementation of auth
  • Fix grpc content-type encoding bug
  • Consolidate proxy/network env var logic
  • Change secrets interface naming
  • Log file path in the logger
  • Change location of network resolver
  • Add Store to service options
  • Fix default runtime log parsing
  • Add namespace checks to k8s runtime
  • Add proper git checkout in local runtime
  • Add database/table options for store
  • Add pki implementation
  • Import qson.

2.5.0 (2020/04/15)

  • api/router/registry: extract path based parameters from url to req (#1530).

2.4.0 (2020/03/31)

  • There can be only one! (#1445).

2.3.0 (2020/03/17)

  • grpc client/server fixes (#1355).

2.2.0 (2020/02/28)

  • Rename Auth Validate to Verify
  • Replaces noop auth with base32 generated tokens
  • Change Excludes to Exclude
  • Add token option to auth
  • Add profile option and flags for debug
  • Add config loading for auth token
  • Move before start to before listening.

2.1.2 (2020/02/24)

  • fix router panic (#1254).

2.1.1 (2020/02/23)

  • update go modules (#1240).

2.1.0 (2020/02/13)

  • Exclude Stats & Trace from Auth (#1192).

2.0.0 (2020/01/30)

  • v2 release.

1.18.0 (2019/12/08)

  • Add golang ci linter
  • Add race detection to travis
  • Please the linter
  • Do some perf optimisations on slice alloc
  • Move http broker to use single entry in registry
  • Strip the grpc metadata filtering
  • Strip the old codec usage
  • Disable retries in client when MICRO_PROXY is enabled
  • Strip old X-Micro headers
  • Add debug/log streaming implementations
  • Add first debug/log interface
  • Huge network/tunnel refactor to fix bugs
  • Fix proxy slice allocation bug
  • Splay out some of the network events
  • Default to AdvertiseLocal for router
  • Add runtime filtering with Type
  • Remove SIGKILL processing.

1.17.1 (2019/11/27)

  • fix rpc server go routine leak
  • add a psuedo socket pool
  • update debug buffer to return entries.

1.17.0 (2019/11/27)

  • Add github related issue templates
  • Add Dockerfile for predownloaded go-micro source
  • Regenerate all the protos to move to *.pb.micro.go
  • Fix api handler to parse text/plain as default content type
  • Fix event handler to allow GET requests
  • Change http broker ids to go.micro.http.broker-uuid
  • Require protocol field in metadata to query services via client
  • Process raw frames in call to Publish
  • Complete proxy support for processing messages
  • Proxy support for publishing of messages
  • Fix grpc connection leak by always closing the connection
  • Add a debug ring buffer
  • Add broker to tunnel and network
  • Force network dns resolver to use cloudflare 1.0.0.1
  • Add option to specify whether server should handle signalling
  • Change mdns request timeout to 10ms rather than 100ms
  • Add router AdvertiseNone and AdvertiseLocal strategies
  • Rename runtime packager to builder
  • Add full support for a kubernetes runtime.

1.16.0 (2019/11/09)

  • Pre-make slices for perf optimisation
  • Add runtime flag and k8s runtime
  • Add debug/profile for pprof profiling
  • Reduce go routines in mdns registry and registry cache
  • Optimise the router flap detection.

1.15.1 (2019/11/03)

  • Router recovery penalty should be below 500.

1.15.0 (2019/11/03)

  • go fmt -s
  • web generate service on registration
  • downgrade some network messages to trace
  • fix tunnel panic on deleting link
  • add postgres store
  • change grpc recover logging
  • add runtime service
  • add kubernetes runtime
  • add runtime notifier
  • proxy add header based routing for Micro-{Gateway, Router, Network}
  • network hash address based on service + node id
  • metadata add mergecontext function.

1.14.0 (2019/10/25)

  • Remove consul registry
  • Change store Sync endpoint to List
  • Remove cloudflare-go usage in store
  • Add non-backwards compatible link changes.

1.13.2 (2019/10/22)

  • Fix proxy selection to use round robin strategy.

1.13.1 (2019/10/19)

  • Fix divide by zero bug in broker.

1.13.0 (2019/10/18)

  • Fix network recursive read lock bug
  • Add certmagic random pull time
  • Strip http broker topic: prefix.

1.12.0 (2019/10/17)

  • Add ACME Provider interface
  • Implement certmagic ACME Provider
  • Add certmagic Store implementation
  • Add broker service implementation
  • Add ability to set grpc dial and call options
  • Add etcd registry and other plugins
  • Add Network.Connect rpc endpoint
  • Resolve network node dns names
  • Support Network.Routes querying
  • Fix caching registry bugs
  • Move gossip registry to go-plugins
  • Add router advertise strategy
  • Add Cloudflare store implementation
  • Add store service implementation.

1.11.3 (2019/10/12)

  • Fix the quic-go checksum mismatch by updating to 0.12.1.

1.11.2 (2019/10/12)

  • Fix cache error check.

1.11.1 (2019/10/07)

  • Fix cache registry deadlocking bug.

1.11.0 (2019/10/01)

  • This is likely the last release of v1.

1.10.0 (2019/09/11)

  • Add grpc client code application/grpc content-type
  • Move client to use stream dialer
  • Add network implementation
  • Add dynamic plugin loading
  • Add multilink usage in proxy
  • Add registry implementation
  • Scope mdns to .micro domain
  • Support grpc server processing by default
  • Add tunnel broker.

1.9.1 (2019/08/19)

  • Fix waitgroup race condition.

1.9.0 (2019/08/19)

  • Fix grpc codec for broker publishing
  • Use the connection pool for streaming
  • Send EOS from client when closing stream
  • Add stream header to mucp protocol
  • Add stream multiplexing in the server
  • Fix watcher bug in file config source
  • Fix monitoring watcher to only look at mucp services
  • Only check router status on lookup failure
  • Fix proxy streaming and client request processing
  • Fix host:port processing for messaging systems
  • Add start method to the router
  • Fix router race condition for default values
  • Add loopback detection to the tunnel
  • Add connection retry logic to tunnel
  • Make log levels accessible for the logger
  • Add proxy muxer for internal calls.

1.8.3 (2019/08/12)

  • Fix nats draining
  • More verbose selector errors to return service name
  • Move handler debug package
  • Add a monitoring package
  • Fix consul address parsing
  • Fix server extraction code
  • Add tunnel implementation
  • Add util log level
  • Add util io package to wrap transport socket.

1.8.2 (2019/08/06)

  • Point release for micro
  • Adds travis caching
  • Removes unused network code
  • Adds tunnel interface
  • Consul agent check
  • Router handler interface
  • Non host:port fixes.

1.8.1 (2019/07/31)

  • Use mdns 0.2.0 release tag.

1.8.0 (2019/07/29)

  • Move the selector into client
  • Change broker.Publication to broker.Event
  • Move cmd into config
  • Enable default json processing in api
  • Remove port from registry
  • Memory broker/transport race fixes
  • GRPC codec fix
  • Client pool interface
  • Router interface/service implementations
  • Config decoding fixes
  • Memory store expiration fix
  • Network link/tunnel/resolver packages
  • Proxy router caching
  • Registry util functions.

1.7.0 (2019/06/21)

  • Update go mod
  • Move mock data out of memory registry
  • wrap the grpc codecs to support framing
  • change grpc resolution to use service.method
  • support full proxying via grpc
  • add text codec
  • move data/store
  • add network interface
  • add router package and implementation
  • move options to config/options
  • send gossip updates on register/deregister
  • fix node add/del bug
  • add handler wrapper back into core router.

1.6.0 (2019/06/07)

  • Massive go.mod dependency cleanup _ Moved etcd, memcache, redis sync things to go-plugins _ uuid to google uuid * blew away go.mod
  • Add better proxy interface and features
  • Add new options interface.

1.5.0 (2019/06/05)

  • Fix go mod issues.

1.4.0 (2019/06/04)

  • Final consolidation of all libraries.

1.3.1 (2019/06/03)

  • Fix broken pipe bug. Don't send message when client closed connection..

1.3.0 (2019/05/31)

  • The great rewrite.

1.2.0 (2019/05/22)

  • Update go mod
  • Fix mock client
  • Fix retries logic
  • Fix consul api change
  • Use consul client for watcher
  • Fix gossip data races
  • Add registry check function.

1.1.0 (2019/03/28)

  • Update go mod
  • Fix endpoint extractor generation.

1.0.0 (2019/03/05)

  • 1.0.0 release.

0.27.1 (2019/03/05)

  • Fix nil consul client.

0.27.0 (2019/02/23)

  • Remove buff check in http transport
  • Change default version to latest
  • Add exchange routing
  • Update go modules.

0.26.1 (2019/02/13)

  • Fix gossip registry
  • Update go modules for rcache.

0.26.0 (2019/02/13)

  • Update go modules
  • Add gossip registry rejoin
  • Move selector to rcache.

0.25.0 (2019/02/04)

  • Add server request body.

0.24.1 (2019/02/01)

  • Various bug fixes
  • Backwards compatible with 0.14 and older
  • Fix mdns and gossip race conditions
  • Use official h2c server
  • Enable support for MICRO_PROXY.

0.24.0 (2019/01/30)

  • Add go mod.

0.23.0 (2019/01/29)

  • Move headers from X-Micro to Micro
  • Remove Register/Deregister methods from server
  • Move register_interval to be internal
  • Add subscriber context option.

0.22.1 (2019/01/22)

  • Fix broken error handling
  • now returns error from ServeRequest router.

0.22.0 (2019/01/18)

  • Address backwards compatibility.

0.21.0 (2019/01/17)

  • Make MDNS the default registry
  • Move mocks to be memory implementations
  • Add metadata.Copy function.

0.20.0 (2019/01/14)

  • BREAKING CHANGES.

0.17.0 (2019/01/03)

  • Offline inbox for http broker
  • JSON/Proto/GRPC codecs
  • HTTP proxy from environment.

0.16.0 (2018/12/29)

  • Fix cache/gossip data race
  • Rename cache selector to registry.

0.15.1 (2018/12/18)

  • Selector cache lookup optimization.

0.15.0 (2018/12/13)

  • Public NewSubscribeOptions
  • http2 broker support
  • Timeout error function
  • Consul Query Options
  • Gossip registry
  • RPC Codec renaming.

0.14.1 (2018/11/22)

  • bug fix socket headers.

0.14.0 (2018/11/21)

  • use google uuid
  • add http handler option.

0.13.0 (2018/11/15)

  • add local/remote ip methods
  • various linting things
  • get checks on 0 ttl
  • accept loop.

0.12.0 (2018/10/09)

  • reorder server flag
  • atomic increment sequence
  • new error method.

0.11.0 (2018/08/24)

  • Support Consul Connect registration
  • Add/Use Init for initialisation from cmd.

0.10.0 (2018/07/26)

  • Fix broker locking
  • Add RetryOnError as default retry policy
  • Fix mock client reflection
  • Support dialtimeout only above 0
  • Add verbose client errors
  • Allow client retries to be 0.

0.9.0 (2018/06/09)

  • Reset server address on shutdown
  • Set default pool size to 1
  • Support reinitialising connection pool
  • Set retries to 1 by default
  • Return error for subscribers.

0.8.0 (2018/04/20)

  • Rework of interfaces.

0.7.0 (2018/04/10)

  • Move misc to util package
  • Add register ttl and interval flags
  • Fix protoc-gen-micro example.

0.6.0 (2018/04/05)

  • Add consul TCP check
  • Atomic increment rpc stream sequence.

0.5.0 (2018/03/04)

  • Support consul services without version
  • Switch to stdlib context.

0.4.0 (2018/02/19)

  • Add WatchOption which allows filtering by service
  • Add Options method to registry
  • Add Conflict error
  • Only watch selected services in cache.

0.3.0 (2018/01/02)

  • https support for consul
  • subscriber deadlock fix
  • selector top level option.

0.2.0 (2017/10/29)

  • Performance improvements.

0.1.4 (2017/09/04)

  • sort handler/subscriber endpoints
  • pass options to new subscriber.

0.1.3 (2017/08/15)

  • Bug fix nil consul http client.

0.1.2 (2017/07/20)

  • respond when codec errors out.

0.1.1 (2017/06/12)

  • Fix potential panic/waitgroup bug.

0.1.0 (2017/06/12)

  • Initial release.