michaeljmarshall commented on code in PR #407: URL: https://github.com/apache/pulsar-site/pull/407#discussion_r1105042722
########## docs/client-libraries.md: ########## @@ -22,6 +22,14 @@ Pulsar supports the following language-agnostic client libraries: | REST | [User doc](client-libraries-rest.md) | [Bundled](pathname:///release-notes/) | [Bundled](https://github.com/apache/pulsar/tree/master/pulsar-broker) | | WebSocket | [User doc](client-libraries-websocket.md) | [Standalone](pathname:///release-notes/client-ws) | [Bundled](https://github.com/apache/pulsar/tree/master/pulsar-websocket) | +:::note + +**Client / Broker compatibility** + +A design goal of Pulsar is to ensure full compatibility between the same major version clients and brokers, e.g. 2.x clients are compatible with all 2.x brokers, etc. Review Comment: By my understanding, the goal is broader. The Pulsar binary protocol has never introduced breaking changes. The project's goal is to ensure full compatibility between brokers and clients across all versions. This is especially important since we're using a bit of a different understanding of major versions, and we're likely going to release 3.0 soon, and there is no foreseeable reason the protocol will break. For reference, we version the protocol by adding a new `ProtocolVersion` enum value any time a feature is added. When the client and broker connect, they establish a version to use, and both are supposed to adapt their behavior depending on the agreed upon version. Here is the source for that enum: https://github.com/apache/pulsar/blob/950ff441da28e144bdfb71c317a9bc339d4f05b7/pulsar-common/src/main/proto/PulsarApi.proto#L241-L266 @merlimat would you be able to speak to the historical evolution of the protocol? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
