Skip to content
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

Consider some version-compatibility check between this library and the server it connects to #8

Open
marc-portier opened this issue Aug 19, 2022 · 1 comment

Comments

@marc-portier
Copy link
Contributor

marc-portier commented Aug 19, 2022

Since the /api endpoint is so kind to inform about the server side software version we could easily have this library embed some knowledge of the version boundaries [min, max] for safe operation of the library.

Depending on the outcome of the check and some 'operational -mode' the net effect could be

  • log all is ok, or else log the mismatch and suggested course of action (i.e. upgrade server or lib ?)
  • warn about the mismatch, yet still try on in best effort or bluntly fail and break

(Thought came up while pondering on #7 and how this might of have come to be.)

I know we are still in 0.*.* releases and thus little contract on upwards compatibility are to be expected. (assuming semver to be used on both api and lib)

Paradoxically though exactly that moving-target-environment only increases the need/usefulness of such guarding mechanism? (and suggests narrowing the min-max to maybe even exact match)

@linknum23
Copy link
Collaborator

It seems reasonable to add a check that the amplipi server is >= some version and == to the same major version, adding a warning that things may break otherwise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants