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

Versioning #45

Open
walterimaican opened this issue Feb 14, 2021 · 5 comments
Open

Versioning #45

walterimaican opened this issue Feb 14, 2021 · 5 comments
Assignees
Labels
tech debt Code quality needs improvement

Comments

@walterimaican
Copy link
Collaborator

Assuming that PR #44 is merged, there will be three separate package.json files:

  • root level, name: billy
  • backend, name: backend
  • frontend, name: frontend
    each with their own version.

There should be a standard system of versioning, where the versions for both backend and frontend are meaningful, and the version for the root package.json (billy) ties in with the version released via the GitHub Actions CI/CD (ie. the main version should match release version).

@walterimaican walterimaican added the tech debt Code quality needs improvement label Feb 14, 2021
@jfabellera
Copy link
Owner

Does bumping the version of either frontend or backend result in billy's version being bumped as well?

@jfabellera
Copy link
Owner

In terms of CI, should changing the version in the root package.json cause a release/tag push on GitHub?

@walterimaican
Copy link
Collaborator Author

I don't believe bumping the version of either frontend nor backend will automatically bump billy version. A design choice should be made to either set up automatic bumps (ie. some yarn script that reads the versions of frontend and backend and autobumps billy) OR completely eschew the separate versions for frontend and backend (ie. set them at 0.0.0 forever) and only bump billy.

I believe that in terms of CI, changing the version for billy (ie. root package.json) should cause a release/tag push.

@jfabellera
Copy link
Owner

I don't believe bumping the version of either frontend nor backend will automatically bump billy version.

Sorry, I meant is it a convention or best practice to have the root version as an aggregation of the two sub versions? Or is all versioning up to the developer's discretion? Personally, I see no reason not to have the frontend/backend versions affect the root version, and automatic bumping is something I'll look into, but just wanna make sure it makes sense to do.

I believe that in terms of CI, changing the version for billy (ie. root package.json) should cause a release/tag push.

I agree.

@walterimaican
Copy link
Collaborator Author

Sorry, I meant is it a convention or best practice to have the root version as an aggregation of the two sub versions? Or is all versioning up to the developer's discretion?

I am not sure if there is a set convention on this matter.

However, given that the two main components here are unlikely to be used outside of Billy, there isn't a particular need to have semantic versioning for each component. I believe that a single version at the root level should be sufficient, and we can leave the versions for the components at some arbitrary value, such as 0.0.0 or 1.0.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
tech debt Code quality needs improvement
Projects
None yet
Development

No branches or pull requests

2 participants