New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the version protocol header #19

Closed
flowersinthesand opened this Issue May 1, 2017 · 2 comments

Comments

Projects
None yet
1 participant
@flowersinthesand
Member

flowersinthesand commented May 1, 2017

Now that the beta is over, it's time to version protocols, one for socket and one for each transport. Generally, version information is referenced in the handshaking so the protocol header would be proper.

  • Add cettia-version w/ the initial value 1.0.
  • Add cettia-transport-version w/ the initial value 1.0.

@flowersinthesand flowersinthesand added this to the 1.0.0-RC1 milestone May 1, 2017

@flowersinthesand flowersinthesand self-assigned this May 1, 2017

@flowersinthesand

This comment has been minimized.

Show comment
Hide comment
@flowersinthesand

flowersinthesand May 3, 2017

Member

We need to set up a policy regarding protocol versions to deal with this issue. For now, the following should be enough:

  • Given the server and the client, both implementation should work unless the major version is different.

It means that 1.1 server should behave as 1.0 server to work with 1.0 client and vice versa. It can be achieved by exchanging each implementation's protocol version when handshaking.

Member

flowersinthesand commented May 3, 2017

We need to set up a policy regarding protocol versions to deal with this issue. For now, the following should be enough:

  • Given the server and the client, both implementation should work unless the major version is different.

It means that 1.1 server should behave as 1.0 server to work with 1.0 client and vice versa. It can be achieved by exchanging each implementation's protocol version when handshaking.

@flowersinthesand

This comment has been minimized.

Show comment
Hide comment
@flowersinthesand

flowersinthesand May 3, 2017

Member

As for transport versioning, it will apply to only transports Cettia maintained, i.e. HTTP streaming and HTTP long polling except WebSocket.

Member

flowersinthesand commented May 3, 2017

As for transport versioning, it will apply to only transports Cettia maintained, i.e. HTTP streaming and HTTP long polling except WebSocket.

flowersinthesand added a commit that referenced this issue May 3, 2017

Add the version protocol header
* A workaround for URI in WebSocket transport seems to conflict with the current version of `ws` package.

Fixes #19

flowersinthesand added a commit to cettia/cettia-java-server that referenced this issue May 4, 2017

flowersinthesand added a commit to cettia/cettia-javascript-client that referenced this issue May 5, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment