Bug #1725
MAUS Version Number can be too large for ROOT Classdef
100%
Description
The MAUS version number X.Y.Z is encoded as x*1e6 + y*1e3 + z and set as the ClassDef VersionID
ROOT's TBufferFile::WriteVersion cannot accept version numbers > 16383 [ 0x3FFF ]
Updated by Rajaram, Durga over 8 years ago
- Target version set to Future MAUS release
The encoding is done in
src/common_cpp/Utils/VersionNumber.hh
This has not been a problem so far for versions X.Y.Z where X=0
But with attempting to release v1.0.0, the encoded version handed to ROOT is now = 1e6 which is too large for TBufferFile::WriteVersion
I am not sure if there was a reason for encoding it this way, but if there's nothing sacred about it, I propose changing the encoding to
X*1000 + Y*100 + Z
Any objections?
Updated by Rajaram, Durga over 8 years ago
The complaint from ROOT is in the release-candidate log file:
http://test.mice.rl.ac.uk/view/Release/job/MAUS_release_candidate/ws/install.log
Updated by Rajaram, Durga over 8 years ago
The encoding I proposed would create a conflict with the old encoding if one tries to load e.g.
old v0.1.2 with new v1.2.0or
old v0.9.7 with new v9.7.0but I doubt anyone is going to do that...
Updated by Rajaram, Durga over 8 years ago
- Status changed from Open to Closed
- Target version changed from Future MAUS release to MAUS-v1.0.0
- % Done changed from 0 to 100
Changed and pushed, candidate passed.
Closing.