1.6 KiB
1.6 KiB
Upgrade instructions from v0.4.X
In v1.0.0 we introduced a couple of breaking changes, to keep a stable API until version v2.
Migrating Pub/Subs
All Pub/Subs (excluding go-channel implementation) were moved to separated repositories.
You can replace all import paths, with provided sed:
find . -type f -iname '*.go' -exec sed -i -E "s/github\.com\/ThreeDotsLabs\/watermill\/message\/infrastructure\/(amqp|googlecloud|http|io|kafka|nats|sql)/github.com\/ThreeDotsLabs\/watermill-\1\/pkg\/\1/" "{}" +;
find . -type f -iname '*.go' -exec sed -i -E "s/github\.com\/ThreeDotsLabs\/watermill\/message\/infrastructure\/gochannel/github\.com\/ThreeDotsLabs\/watermill\/pubsub\/gochannel/" "{}" +;
Breaking changes
message.PubSubinterface was removedmessage.NewPubSubconstructor was removedmessage.NoPublishHandlerFuncis now passed tomessage.Router.AddNoPublisherHandler, instead ofmessage.HandlerFunc.message.Router.Runnow requirescontext.Contextin parameterPrometheusMetricsBuilder.DecoratePubSubwas removed (because ofmessage.PubSubinterface removal)cars.ObjectNamewas renamed tocqrs.FullyQualifiedStructNamegithub.com/ThreeDotsLabs/watermill/message/infrastructure/gochannelwas moved togithub.com/ThreeDotsLabs/watermill/pubsub/gochannelmiddleware.Retryconfiguration parameters have been renamed- Universal Pub/Sub tests have been moved from
github.com/ThreeDotsLabs/watermill/message/infrastructuretogithub.com/ThreeDotsLabs/watermill/pubsub/tests - All universal tests require now
TestContext. - Removed
contextfromgooglecloud.NewPublisher