Mantis Bug Tracker

View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000338LoaderGeneral Featurespublic2011-10-24 08:512012-09-12 20:19
ReporterFred 
Assigned ToFred 
PriorityurgentSeverityfeatureReproducibilityN/A
StatusresolvedResolutionfixed 
PlatformAllOSAllOS VersionAll
Product Version0.1.0-SNAPSHOT 
Target Version0.1.0Fixed in Version 
Summary0000338: Add Thorough Version Information To Build
DescriptionThis task includes quite a few things:

 - Add a version string inside the application that is externally generated/configured
 - Set the initial version to 0.1.0-SNAPSHOT
 - Add a way of including the prefix of the HEAD git hash after that like Dave has done in MTX in 0000321 (top work Dave!)
 - Make the window title read "FreeEMS Loader 0.1.0-SNAPSHOT-<hashprefix>" for dev builds (without the current underscore)
 - Add a release mechanism to remove the -SNAPSHOT-<hashprefix> part of the version for release builds
 - Make the about window scroll bar start at the top, not bottom and add version, githash, date/time of build to that information above the license
 - While you're in there, add a blurb about who has worked on and influenced the loader, "Written by Sean Keys with contributions from DaveA and SeanS and ideas from FredC" or similar.

TagsNo tags attached.
Issue TypeTask
Risk of Breakagelow
Attached Files

- Relationships

-  Notes
User avatar (0002026)
Fred (administrator)
2012-09-04 21:02
edited on: 2012-09-06 23:48

I don't care about most of this except that it should have version in the title bar and about box, and that versin should come from git using this:

'git describe --dirty=-DEV --always'

'git rev-parse HEAD' should also be used to put the full hash in the about box.

This is now the number ONE priority over all other loader shit such that I can accurately report bugs and people using binaries on other platforms can know what they're using. Mike does this in his build, check out his method, maybe you can learn, but not copy/paste, something :-) Dave does it too, see 0000321 for info on that.

Priority raised to urgent.

User avatar (0002059)
sean94z (reporter)
2012-09-06 23:48

Almost done, let me revise my last changes so it matches better, to this request. I'm doing a truncate in my code to trim the hash.

commit 3241c12d592b93c2a303fde4c91a429e07ca4b9d
Author: Sean Keys <skeys@ipdatasys.com>
Date: Thu Sep 6 16:36:07 2012 -0700

    Added Git Hash to window title. Time to roll out a new winBin


Should be finished tonight !
User avatar (0002060)
sean94z (reporter)
2012-09-07 04:07

Hi please try this hash.

commit 1dfe26754c7d29bed27be75be5c38421f7095d09
Author: Sean Keys <skeys@ipdatasys.com>
Date: Thu Sep 6 21:04:33 2012 -0700

    [338] Add build info, to build, so that it is visible, to the user.

Let me know, thx!
User avatar (0002061)
Fred (administrator)
2012-09-07 09:01

Close but no cigar :-)

The file that contains the binary of the data must be rebuilt every time.

You should put a date/time into it too.

If you don't rebuild it every time you can get bogus results which, as discussed recently, are worse than no results.
User avatar (0002098)
sean94z (reporter)
2012-09-10 21:56

I think "git tag" can act as my mechanism....

git tag -a 0.1.0 -m "Test version"

git describe --tags
0.1.0

mod file
git commit -am "Subsequent commit"

git describe --tags
0.1.0-1-ga7aafb8


I would just have to manually remember to set the tag to "xxx-SNAPSHOT" when required.
User avatar (0002099)
Fred (administrator)
2012-09-10 21:58

what? What has that to do with my complaint?
User avatar (0002100)
sean94z (reporter)
2012-09-10 22:01

It has to do with solving this part of the complaint:
"- Add a release mechanism to remove the -SNAPSHOT-<hashprefix> part of the version for release builds"

Git can be my mechanism(after the appropriate code changes have been made of-course).
User avatar (0002101)
Fred (administrator)
2012-09-10 22:04

Ahhh. No, no it can't. You need a script that tests, tests repo state, tags, builds, packages, uploads for that.
User avatar (0002102)
Fred (administrator)
2012-09-10 22:07

Try running release on the firmware and see what happens. Delete the changes afterward, though. Use a fresh clone of my repo for it.
User avatar (0002119)
sean94z (reporter)
2012-09-12 16:01

hmmmm not sure I can do it in the same way since my make files are generated by qmake.....

It might be wise to have make call qmake etc....
User avatar (0002120)
Fred (administrator)
2012-09-12 17:20

Pretty sure you can feed directives and tasks in. If not, sure, wrap it.
User avatar (0002121)
Fred (administrator)
2012-09-12 17:20

WTF? Why are we talking about release shit on this issue. No more. This issue is about version information. All you have to do is mark a certain file "always build" which MUST be possible.
User avatar (0002122)
sean94z (reporter)
2012-09-12 17:59

LOL, let me do that so I can close this one haha.
User avatar (0002123)
sean94z (reporter)
2012-09-12 19:50

Add a release mechanism to remove the -SNAPSHOT-<hashprefix> part of the version for release builds

is the only thing left to do..... i think
User avatar (0002124)
Fred (administrator)
2012-09-12 20:09

I apologise. Don't consider that part of this issue. Make a new one, fill it out with what you know about quality releases and do it there.
User avatar (0002125)
sean94z (reporter)
2012-09-12 20:19

In that case please have a look at this hash.

commit 9b0c1e88a9062cc009e8c86f7764c0aa5a209a00
Author: Sean Keys <skeys@ipdatasys.com>
Date: Wed Sep 12 12:40:29 2012 -0700

    Made use of QMAKE_POST_LINK qmake variable so that about type information is always built


thx!


Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker