inasafe / inasafe

InaSAFE - QGIS plugin for estimating impact from natural disasters
www.inasafe.org
GNU General Public License v3.0
256 stars 136 forks source link

version inconsistency? #309

Closed mbernasocchi closed 10 years ago

mbernasocchi commented 11 years ago

https://github.com/AIFDR/inasafe/blob/7ae27f8b41668724beec5043c9bc205c150914ff/__init__.py is there a reason why metadata.txt and version have 0.6.0 but version(): """Version of the plugin.""" return 'Version 0.5.0'

uniomni commented 11 years ago

I know :-) What should we call the bleeding edge?

On 3 October 2012 18:14, Marco Bernasocchi notifications@github.com wrote:

https://github.com/AIFDR/inasafe/blob/7ae27f8b41668724beec5043c9bc205c150914ff/__init__.py is there a reason why metadata.txt and version have 0.6.0 but version(): """Version of the plugin.""" return 'Version 0.5.0'

— Reply to this email directly or view it on GitHubhttps://github.com/AIFDR/inasafe/issues/309.

ingenieroariel commented 11 years ago

In my opinion we should set version in two places:

1. safe/init.py, the following way, this is the python-safe version:

version = (0, 6, 0, 'alpha', 0)

2. metadata.txt (the qgis-safe or inasafe version):

version=0.6.0 status=alpha

Longer version of the response:

Furthermore, and answering the 'bleeding edge' version question, here is how I think we should be handling it and why I created safe/common/version.py.

We should call the bleeding edge:

0.6-dev{dateandtime}

this is done automatically when the version string is set as:

version = (0, 6, 0, 'alpha', 0) get_version(version) '0.6dev20121002080808'

version = (0, 6, 0, 'beta', 2) get_version(version) '0.6b2'

version = (0, 6, 0, 'final', 0) get_version(version) '0.6'

This was working before this commit [1](that I did not notice until yesterday) and I would like to revert:

For the record, below is how python itself handles versioning, and the version string produced is (or was) compatible with the normalized version described in PEP386 [2], the code implementing it was borrowed from Django, and was on that project vetoed by one of the authors of pip.

sys.version_info sys.version_info(major=2, minor=7, micro=2, releaselevel='final', serial=0)

I should also say that versioning is really important to me, as the different releases of safe-geonode and other tools depending on the core should really be able to compare the different versions to understand a requirement like the following, and be able to decide wether or not a different version should be installed without making our end users wonder why things are not compatible.

"python-safe>=0.5"

Ariel.

[1] https://github.com/AIFDR/inasafe/commit/04d8ba3a464294b17b6534c4fdfe00b71502de8a [2] http://www.python.org/dev/peps/pep-0386/

On Wed, Oct 3, 2012 at 7:57 AM, Ole Nielsen notifications@github.comwrote:

I know :-) What should we call the bleeding edge?

On 3 October 2012 18:14, Marco Bernasocchi notifications@github.com wrote:

https://github.com/AIFDR/inasafe/blob/7ae27f8b41668724beec5043c9bc205c150914ff/__init__.py is there a reason why metadata.txt and version have 0.6.0 but version(): """Version of the plugin.""" return 'Version 0.5.0'

— Reply to this email directly or view it on GitHub< https://github.com/AIFDR/inasafe/issues/309>.

— Reply to this email directly or view it on GitHubhttps://github.com/AIFDR/inasafe/issues/309#issuecomment-9103681.