jupyterhub / binderhub

Run your code in the cloud, with technology so advanced, it feels like magic!
https://binderhub.readthedocs.io
BSD 3-Clause "New" or "Revised" License
2.57k stars 390 forks source link

Automatically update package.json version from setup.py #1692

Open manics opened 1 year ago

manics commented 1 year ago

Proposed change

An additional version string was added in https://github.com/jupyterhub/binderhub/pull/1689: https://github.com/jupyterhub/binderhub/blob/9e2e544709e3505e026dc2eeba4923be02a41e72/js/packages/binderhub-client/package.json#L3

Can we link this up to setup.py so that the version is automatically updated to match the BinderHub version?

Alternative options

Do nothing

Who would use this feature?

It would ensure all the npm package version matches the BinderHub version

yuvipanda commented 1 year ago

Would this mean we need to publish a version to PyPI each time we publish to npm?

manics commented 1 year ago

If we want automated releases (https://github.com/jupyterhub/binderhub/issues/1666) then yes.... unless we can have some logic to conditionally publish one package but not the other?

yuvipanda commented 1 year ago

IMO the breaking changes in these two packages might differ, so I think it's probably ok to version these separately?

consideRatio commented 1 year ago

We have adopted use pf tbump quite systematically with success and positive feedback, instead of writing code in setup.py, i suggest we hardcode it and let tbump update it in all locations we have the string.

For practical reasons I prefer to see only have one version to track for all parts in this repo, even if it could make sense to let a js client drift.

yuvipanda commented 1 year ago

Given there seems to be consensus on this, I'm happy to go with it especially as other people are doing the work :D :D

manics commented 1 year ago

I think we should keep versioneer (or some other automated versioning tool) because we're installing dev versions of BinderHub in production.