Project

General

Profile

Bug #1725

MAUS Version Number can be too large for ROOT Classdef

Added by Rajaram, Durga over 8 years ago. Updated over 8 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
Start date:
30 July 2015
Due date:
% Done:

100%

Estimated time:
Workflow:
New Issue

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 ]

#1

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?

#2

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

#3

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.0
or
old v0.9.7 with new v9.7.0
but I doubt anyone is going to do that...

#4

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.

Also available in: Atom PDF