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

CodeCamp2017: change versioning procedures #597

Closed
6 of 8 tasks
prjemian opened this issue Oct 25, 2017 · 11 comments
Closed
6 of 8 tasks

CodeCamp2017: change versioning procedures #597

prjemian opened this issue Oct 25, 2017 · 11 comments
Assignees
Labels
definitions enhancement high priority NIAC has requested The NIAC has requested this issue to be considered
Milestone

Comments

@prjemian
Copy link
Contributor

prjemian commented Oct 25, 2017

Versioning of each base class has not been so useful and the CodeCamp has requested some changes. Since the overall repository is versioned, the various NXDL files that are part of the repository are a snapshot at the time of the repository release. Version numbers of base classes seem unnecessary. Tagging of base classes has led to clutter in the tag history (now more than 100 tags) of the definitions repository.

However, the version number of application definitions has value to the community interested in that definition and should be retained.

The use of semantic versioning is not the best fit for the release practice of the NeXus definitions. The assignment of a revision being either major or minor adds discussion of little benefit, given the depth of description in the release notes now. A simpler practice is desired.

  • Base class version (in the NXDL file) can be removed.
  • NXDL version number for base classes should be made optional in the XML Schema.
  • For future releases, switch from semantic versioning to calendar versioning.
    • For example, the proposed March 2018 release NXDL 3.4 would be named 2018.3 (yyyy.mm). This change would still fit the tools that Python uses to automate version handling yet make clear to our community the date of any release.
    • Adopt a practice of release candidates named yyyy.mm.rc# (where # starts from 1, as needed), prior to final release of yyyy.m to resolve last minute changes that otherwise might require moving of the tag from one commit to another.
    • The final release candidate would gain full approval from the reviewers before the yyyy.mm release is tagged.
  • Post the documentation of the new release after the final release has been tagged (since the documentation build process uses the GitHub tag as the published version text).
  • Make sure the release procedures make note of these changes.
@prjemian prjemian added definitions enhancement NIAC has requested The NIAC has requested this issue to be considered labels Oct 25, 2017
@prjemian prjemian added this to the NXDL 3.4 milestone Oct 25, 2017
@prjemian
Copy link
Contributor Author

Changed bullet list in issue's original statement to be a checklist. As items become checked, cite a reference to the commit hash, issue comment, or equal. Close this issue once all are checked.

@prjemian prjemian self-assigned this Jan 30, 2018
@prjemian
Copy link
Contributor Author

prjemian commented Apr 3, 2018

To remove the version attribute from all NXDL files, remove this part from the NXDL Schema:

https://github.com/nexusformat/definitions/blob/master/nxdl.xsd#L230

@prjemian
Copy link
Contributor Author

prjemian commented Apr 3, 2018

How can we retrieve any arbitrary version of a specific NXDL?

@prjemian
Copy link
Contributor Author

prjemian commented Apr 3, 2018

We look through the releases on github:

@zjttoefs
Copy link
Contributor

zjttoefs commented May 2, 2018

We're almost there. Would it make sense to release now, or do we need to have all done before making a milestone release? @prjemian?

@prjemian
Copy link
Contributor Author

prjemian commented May 2, 2018

I'd like to get all changes we currently plan to the NXDL into one release rather than spread out.

@zjttoefs
Copy link
Contributor

zjttoefs commented May 2, 2018

Makes sense. Feel free to pull in all the tickets that I moved that you still want to address in this round. But in the telco we felt having releases at moderately regular intervals is more important than having completed all the work we could think of.

@prjemian
Copy link
Contributor Author

prjemian commented May 2, 2018

Agreed

@prjemian
Copy link
Contributor Author

The last two items should be resolved by #616

@prjemian
Copy link
Contributor Author

Since #616 is to remove the NXDL version number, that will be the action.

@prjemian
Copy link
Contributor Author

With those two actions being moved to #616, I'll tick them off here and close this issue. That work will be done in a branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
definitions enhancement high priority NIAC has requested The NIAC has requested this issue to be considered
Projects
None yet
Development

No branches or pull requests

2 participants