version numbers

5 views
Skip to first unread message

David P. Anderson

unread,
Nov 29, 2022, 7:14:16 PM11/29/22
to boinc_dev email List
There's confusion around BOINC version numbers.
We currently have 4 things that are versioned:
- the client software: currently 7.20.2
- the server software (scheduler, web etc.): currently 1.2.1, I think
- the wrapper: currently 26018 (though the versions we provide are 26016)
- vboxwrapper: currently 26206

But - for example - scheduler replies have a <scheduler_version> element,
but it's a client version number.
The "server status" web page shows a server version number,
but it's always 1.1.0 (taken from html/inc/server_version.inc).

The file version.h has things like
#define BOINC_VERSION_STRING "7.21.0"
with no indication of whether it's a server or client version
(this is a relic of the old days when there was no distinction).

configure.ac contains a version number,
with no distinction between client and server.
There's a script "set-version.py" that seems to set all 4 version
numbers to the same thing!

---------------

Kind of a mess. To fix, we need to

1) define procedures for updating each of the 4 version numbers
(e.g. running a script or changing a particular file)

2) changing the code in various places so that it uses
the right version number.
My PR https://github.com/BOINC/boinc/pull/3448
is a step in this direction but isn't quite right.

I suggest that we have a zoom call (with at least me, Laurence, and Vitalii)
to discuss this.

-- D

Vitalii Koshura

unread,
Nov 29, 2022, 7:17:51 PM11/29/22
to David P. Anderson, boinc_dev email List
Hello David,

Just for the record, 'set-version,py' sets a version for client/manager only (everywhere needed).
I'm ok to have a call to discuss this versioning issue we have now.

Best regards,
Vitalii Koshura


ср, 30 нояб. 2022 г. в 01:14, David P. Anderson <da...@berkeley.edu>:
--
You received this message because you are subscribed to the Google Groups "boinc_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to boinc_dev+...@ssl.berkeley.edu.
To view this discussion on the web visit https://groups.google.com/a/ssl.berkeley.edu/d/msgid/boinc_dev/CAFtuuLQU5q8537hZ3hEXvq%3DKw97M7Mq72EXE7xUcncXVRp9BvQ%40mail.gmail.com.

David P. Anderson

unread,
Nov 29, 2022, 7:29:44 PM11/29/22
to Vitalii Koshura, boinc_dev email List
Right - I didn't look at it closely enough.
I see there's also set-wrapper-version.py, and set-vbox-wrapper_version.py,
which do the same (e.g. update the win/mac project files) for the wrappers.
So we need to rename set-version.py to set-client-version.py,
add a set-server-version.py,
and then change some code here and there.

- D

Charlie Fenton

unread,
Nov 29, 2022, 10:11:43 PM11/29/22
to boinc_dev email List
On Nov 29, 2022, at 4:14 PM, David P. Anderson <da...@berkeley.edu> wrote:
> - the client software: currently 7.20.2


It's not that simple. The current Windows client version is 7.20.2. The current Mac version is 7.20.4 because a hot fix was needed to fix the screensaver and "Show Graphics" under MacOS 13 Ventura. And there will soon be a new curent version number for Linux and possibly Windows as a result of PR #5029.

Cheers,
--charlie

--
Charlie Fenton

Charlie Fenton

unread,
Nov 29, 2022, 10:17:59 PM11/29/22
to boinc_dev email List
On the Mac, a couple of additional steps are needed to update the version number.

[1] The local command-line utility SetVersion u[dates the various info.plist and InforPList.strings files, so that the Mac's Finder will show the correct version number for the Manager, screensaver, installer uninstaller and others.

The Xcode project builds SetVersion from clientgui/mac/SetVersion.cpp and invokes it as part of the build process in a Run Script phase after building the client or manager. SetVersion extracts the version information from version.h. It is used only internally by Xcode during the build process; it is not deployed externally.

(This is one of several reasons you can't just build the Mac client and manager using autoconf / make.)

[2] When building the installer, the version number must be passed on the command line to the shell script mac_installer/relesae_boinc.sh (mac_installer/relesae_brand.sh for branded versions) to show the current version number in the installer's ReadMe file and to correctly label the directories and zip files created by the script (for example, boinc_7.20.2_macOSX_universal.zip).

Cheers,
--Charlie

Richard Haselgrove

unread,
Nov 30, 2022, 3:56:56 AM11/30/22
to boinc_dev email List
The BOINC Manager also has a version number ('About' box), but that is updated by the same process as the client version.


The Server Status pages for CPDN and LHC currently report server version 1.2.1, and LHC-dev reports 1.4.0 because we've been testing the upcoming release. That part is working already - if you're seeing 1.1.0, it's because you're looking at a project which hasn't updated its server code recently.


The most significant remaining problem is the 'server version' reported in the scheduler reply to the client and available via <sched_op_debug> in the Event log. That's normally an odd number, from the development code in master at the time the server code was updated. LHC-dev reports server version 721 and Einstein reports 611. Now we have server versioning on the SSP, shouldn't the same figure be reported in a scheduler RPC?



--
You received this message because you are subscribed to the Google Groups "boinc_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to boinc_dev+...@ssl.berkeley.edu.

Laurence

unread,
Nov 30, 2022, 4:15:05 AM11/30/22
to boin...@ssl.berkeley.edu
We have a dev call already scheduled for tomorrow. We can put this on
the agenda.

Vitalii Koshura

unread,
Nov 30, 2022, 4:17:15 AM11/30/22
to Laurence, boin...@ssl.berkeley.edu
Hello Laurence,

Somehow I missed the invitation to the call tomorrow.
Could you please send it to me again?

Thank you in advance.

Best regards,
Vitalii Koshura


ср, 30 нояб. 2022 г. в 10:15, Laurence <laurenc...@cern.ch>:
--
You received this message because you are subscribed to the Google Groups "boinc_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to boinc_dev+...@ssl.berkeley.edu.
Reply all
Reply to author
Forward
0 new messages