-
Notifications
You must be signed in to change notification settings - Fork 934
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 dev build version suffix #2254
Conversation
d6acfe1
to
af7854c
Compare
I think we need to have different suffixes for PRs and master branch. The "NHibernate (Release)" build runs for all branches. |
I'm not sure I understand the whole plan. Why? Are we going to publish PR binaries too? |
Not sure, but why not? |
Also, the publish step in TC could not be run only on specific branch. |
This comment has been minimized.
This comment has been minimized.
Wouldn't it be excessive? All those temporary in progress pr binaries... I don't think publishing them is a good idea. Also I'm currently not sure how to detect if it's PR build or not. |
This comment has been minimized.
This comment has been minimized.
I have the same thinking, I think that we should start only with publishing master branch for now and later if we see the need to have also PRs included, we could do that later. |
I am agree on not publishing packages for PRs, at least for now. But if possible, also include release fix branches (starting from 5.3.x). |
Guys I won't be able to do any coding in the following 3 weeks. So here some thoughts on how we can proceed further if anyone wants to step in.
For now I think of the following parameters that required on Team City (I've actuality already played with Team City parameters and added some of them to realease build) Params are available in nant as properties without <property name="nuget.publishing" value="false" overwrite="false" /> |
I do not get how we generate an actual release from this. I mean, NuGet package without the dev prefix, for actually releasing a new version. |
This pr should not affect release publishing. Just delete the suffix in release PR and do your release procedure as always. Maybe we should also add logic to skip dev publishing if suffix is missed.
That's just default behavior. Yeah - I guess it's better to use 3 digit version for consistency. |
And after release with the next PR or as separate commit we should add dev suffix back and specify next version number. That's the plan. |
Too much friction in my mind. |
First step is currently done anyway - version is updated in release PR. |
I don't see it as to much friction. As I said above I think without dev prefix - dev publishing should be disabled. So there is no rush in making those changes. PRs can be merged without it after release - they just won't be published. |
To reduce the friction, we may, in the same release package, generate both nuget with dev prefix and without. Or maybe, to allow handling it from the release PR, handle a release version and a dev version in the build files, with generation of NuGet packages for both, release zip for release. |
Your suggestions looks similar to this. And it adds additional full project recompilation + nuget packaging on each release build execution.
So all it saves is one edit in release PR - dev suffix removal. If you are OK with additional commit why bother at all with this additional development. Regarding updating two versions in release PR - you still need to manually adjust version in release branch. And you must know next version beforehand - I see it as additional inconvenience. Bumping version commit is something that could be done easily form github UI without PR. I don't see why it's considered so much trouble and worth adding additional 30+ secs on each release build execution. |
No matter what we decide regarding publishing I think this PR is useful anyway. It minimizes frictions that are required during release - version in common.xml is no longer need to be updated manually And let's start with something - I believe it's a minimal changes that allow us to publish dev builds. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ReleaseProcedure.txt
needs an update. Some of its instructions are no more valid with this PR. And it should contain additions to tell how to generate the release packages (zip and NuGet, without dev suffix).
There is also a version into doc\reference\master.xml
, which is still 5.2 while this PR bumps the version to 5.3. This causes the reference documentation generated by build to still be labeled 5.2, while the binaries are labelled 5.3.
Ok will check it tomorrow.
I don't think we should care about generated documentation as long it's not published. So I think it's OK to update it only with release - just to minimize the hassle with bumping dev version. |
Why not, provided we have proper instructions into ReleaseProcedure.txt. |
@@ -1,4 +1,4 @@ | |||
version: 5.2.7.{build} | |||
version: '{build}' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have nothing to add except clearing VersionSuffix before release. Do you have something else in mind? |
Related to #2251
With current PR state prepared nuget package looks like:
NHibernate.5.3.0-dev.2645.nupkg