Re: Proposal of changing generating version of mdadm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/20/21 8:43 AM, Tanska, Kinga wrote:
Hi,

recently we diagnosed few issues with 'mdadm -version' output.
Main problem is that end output varies on few conditions. We come with
simplified proposal. First let's describe current schema:

mdadm - version - date - extraversion
(example: mdadm - v4.2-rc2 - 2021-08-02 - extraversion)

or

mdadm - version - date
(example: mdadm - v4.2-rc2 - 2021-08-02).

VERSION could be taken from code (see ReadMe.c:31), but when git is
installed and .git directory is available in mdadm workspace, version
is replaced with output from # git describe HEAD command. It is assumed
that git command should return last tag from repo, which should contain
information about last release. This might not be true, especially if user
uses tags to mark internal milestones or custom mdadm spins.

The second problem is DATE, which corresponds to date of last release.
When few patches are picked onto HEAD date is not reliable. In my opinion
DATE is not needed. Usually, packages do not contain this element, e.g.
-	# git --version
		git version 2.27.0
-	# gcc --version
		gcc (GCC) 8.3.1 20191121 (Red Hat 8.3.1-5)
-	# yum --version
		4.2.23

To make it const and reliable, I propose removing DATE and always
use VERSION from code. VERSION shall keep general release information.
I would like to move the changeable elements into EXTRAVERSION. This
field will respect following conditions:
-	user definition first
        	(by respecting EXTRAVERSION=xxx during compilation)
-	if not defined by user, result of # git describe HEAD
-	else empty.

Example output:
mdadm - version - extraversion (example: mdadm - v4.2-rc2 - extraversion).
Thanks for any opinion about this proposition.

Hi Kinga,

I am not against changing the format, however I worry that doing so may
break scripts and tools in the field that nobody is maintaining or have
thought of. If we are to change the output, I suggest making a new flag
that provides the details you want and we can deprecate the old one, but
leave it in place.

Thoughts?

Jes


Thanks for your response.
I'm wondering if this change will be used if not will be set as default. I suggest providing a new flag with old, deprecated version, for any of uses where it couldn't be changed. I can add a description which clarify the change and describe flag, for anybody who will meet errors with scripts after this change.

Regards,
Kinga Tanska



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux