I'm leaning toward agreeing with Simon. The upgrade tests should just mock out the version number (that's why we use mock in the first place), and I'm pretty sure they do already. At minimum I'd suggest using the flags in the registry instead of depending on sys.argv, and collecting the bzr version code to a single place that is used in both setup.py and OpenLP as a whole.
-- You received this bug notification because you are a member of OpenLP Core, which is subscribed to OpenLP. https://bugs.launchpad.net/bugs/1751626 Title: -d flag is used in a very confusing way Status in OpenLP: Won't Fix Bug description: in the startup code the parameters accepted include --dev-version (-d). What's irritating is that it's not actually used there. The values are also not actually passed along somewhere else. However the about dialog still correctly displays the bzr revision if started with -d. So a little searching showed the following. The argument is defined in openlp.core.app.parse_options but only used in openlp.core.version.get_version Since the dev_version is not stored somewhere or passed to some place, get_version actually checks sys.argv searching for "-d" or "--dev- version" This is not very nice to people reading the code. It very much looks like the argument definition is not actually used. My request: * either completely remove the functionality * or properly use the parsed value, so it's clear it actually does something. also having the bzr check code in openlp.core.version.get_version is probably not the best idea. Especially since the code includes a comment that it's a duplicate of code in setup.py Further rants: in setup.py the code is not actually exactly the same, there are modifications and there is a comment that it is a duplicate of the no longer existing openlp.core.common.checkversions.py This illustrates that comments are bad for the reason that they are often not updated when the code changes. This can lead to comments confusing more than helping. In short: Remove the flag, remove the code from get_version and only have it in setup.py The flag is only useful for people running from bzr so devs, which should know what they are running and even if they don't they should know how to get that information without reverting to the about tab. To manage notifications about this bug go to: https://bugs.launchpad.net/openlp/+bug/1751626/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp