Re: [Lazarus] Off topic. Version numbers
On Sat, 17 May 2014 21:44:35 +0200 Marco van de Voort wrote: > On Fri, May 16, 2014 at 08:14:11PM +0200, Mattias Gaertner wrote: > > > has changed between releases. Lets just hope nobody else follows the Web > > > Browser versioning scheme. > > > > Even it's only a tiny security bug fix you should use the new > > browser version. Users must not wait for big new browser features. > > True, but that behaviour is independent from the version numbering scheme. Some users underestimate minor versions and some fear updating major versions. A simple counter does not have this psychological ballast. > I agree a bit with Graeme. Such fast incrementing major versions convey > nearly no information anymore. Maybe that is intended. > Yes, old numbering schemes were only correct first magnitude, but at least > they conveyed the intent of developers and relations between releases. > > Moreover, version numbering systems will only be first order for most > projects (except a few very big ones like *nix kernels), since a reality is > simply that testing doesn't uncover all bugs and incompatibilities. I agree that FPC and Lazarus are different and should not use the single number version. I'm indifferent for 2 or 3 numbers. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On Fri, May 16, 2014 at 08:14:11PM +0200, Mattias Gaertner wrote: > > has changed between releases. Lets just hope nobody else follows the Web > > Browser versioning scheme. > > Even it's only a tiny security bug fix you should use the new > browser version. Users must not wait for big new browser features. True, but that behaviour is independent from the version numbering scheme. I agree a bit with Graeme. Such fast incrementing major versions convey nearly no information anymore. Yes, old numbering schemes were only correct first magnitude, but at least they conveyed the intent of developers and relations between releases. Moreover, version numbering systems will only be first order for most projects (except a few very big ones like *nix kernels), since a reality is simply that testing doesn't uncover all bugs and incompatibilities. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
Here we moved to year.month (like Ubuntu). 2014-05-16 14:58 GMT-03:00 Sven Barth : > On 16.05.2014 19:20, Graeme Geldenhuys wrote: > >> On 2014-05-16 08:40, Andreas Schneider wrote: >> >>> >>> >>> Well, in the browser business they seem to follow that idea to the other >>> extent, where it currently looks more like "hey we changed some lines of >>> code, let's release a new major version". >>> >>> >> >> And yes, I find that SO annoying! End-users now have no idea how much >> has changed between releases. Lets just hope nobody else follows the Web >> Browser versioning scheme. >> > > At my company we've recently switched to such a version scheme as well, > because with the old version scheme (a typical x.y.z scheme) customers > always wondered why they should update when only the last digit changed... > (Note: we are still using the x.y.z scheme internally to mark fix releases > etc., but to the user we only promote the major number) > > Regards, > Sven > > > > -- > ___ > Lazarus mailing list > Lazarus@lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus > -- Atenciosamente, Alexsander da Rosa -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On 2014-05-16 19:14, Mattias Gaertner wrote: > Even it's only a tiny security bug fix you should use the new > browser version. Users must not wait for big new browser features. I didn't say that. Simply increment the bugfix version and the browsers default "auto update functionality" will get it. It would also have been nice if they added functionality like an option to only auto-update security fixes and not major versions. Many programs have that option. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On Fri, 16 May 2014 18:20:55 +0100 Graeme Geldenhuys wrote: > On 2014-05-16 08:40, Andreas Schneider wrote: > > > > > > Well, in the browser business they seem to follow that idea to the other > > extent, where it currently looks more like "hey we changed some lines of > > code, let's release a new major version". > > > > And yes, I find that SO annoying! End-users now have no idea how much > has changed between releases. Lets just hope nobody else follows the Web > Browser versioning scheme. Even it's only a tiny security bug fix you should use the new browser version. Users must not wait for big new browser features. That's different for Lazarus. IMO that's comparing apples and oranges. Lazarus "major" releases usually contain several thousand svn revisions and a few incompatibilities. Some users might see no big difference, some users have to spend a lot of time to adapt their projects. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On 16.05.2014 19:20, Graeme Geldenhuys wrote: On 2014-05-16 08:40, Andreas Schneider wrote: Well, in the browser business they seem to follow that idea to the other extent, where it currently looks more like "hey we changed some lines of code, let's release a new major version". And yes, I find that SO annoying! End-users now have no idea how much has changed between releases. Lets just hope nobody else follows the Web Browser versioning scheme. At my company we've recently switched to such a version scheme as well, because with the old version scheme (a typical x.y.z scheme) customers always wondered why they should update when only the last digit changed... (Note: we are still using the x.y.z scheme internally to mark fix releases etc., but to the user we only promote the major number) Regards, Sven -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On 2014-05-16 08:40, Andreas Schneider wrote: > > > Well, in the browser business they seem to follow that idea to the other > extent, where it currently looks more like "hey we changed some lines of > code, let's release a new major version". > And yes, I find that SO annoying! End-users now have no idea how much has changed between releases. Lets just hope nobody else follows the Web Browser versioning scheme. Regards, - Graeme - -- fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/ -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On 16.05.2014 06:09, Flávio Etrusco wrote: > So in practice it's the same, no? ;-) > It feels a bit annoying to have high numbers in the major version, and > I guess that's why no project ever follows that scheme to the letter. Well, in the browser business they seem to follow that idea to the other extent, where it currently looks more like "hey we changed some lines of code, let's release a new major version". -- Best Regards, Andreas -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On Thu, May 15, 2014 at 1:29 PM, Mattias Gaertner wrote: > On Thu, 15 May 2014 13:19:41 -0300 > Flávio Etrusco wrote: > >> On Thu, May 15, 2014 at 7:36 AM, Santiago A. wrote: >> > >> > Have you heard about "Semantic Versioning 2.0.0" /http://semver.org/? >> > >> > It is a proposal about how to assign version numbers in order to deal >> > with compatibility and dependences. >> > >> > Perhaps Lazarus should thing about using it. >> > >> > In short, this system is: Version numbers is x.y.z[-] >> > "z" changes about bugs refactorization etc (patches number) >> > "y" changes about improvements that add new functionality, but don't >> > break compatibility (minor version number) >> > "x" Changes that break compatibility (mayor version number) >> > - is whatever you want (build beta RC1 etc) >> > >> >> Both Lazarus and FPC follow this numbering scheme already - maybe not >> very strictly, but they follow ;-) And the minor version number is >> even for stable release series, and odd in the trunk/development >> branch. > > Not quite. > Lazarus x has only changed once from 0 to 1, reflecting a new branch > and release system. > y is for incompatibilities and new features. > z is for bug fix releases. > > Probably it is possible to skip the x and use a y.z scheme. > > Mattias So in practice it's the same, no? ;-) It feels a bit annoying to have high numbers in the major version, and I guess that's why no project ever follows that scheme to the letter. Best regards, Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On Thu, 15 May 2014 13:19:41 -0300 Flávio Etrusco wrote: > On Thu, May 15, 2014 at 7:36 AM, Santiago A. wrote: > > > > Have you heard about "Semantic Versioning 2.0.0" /http://semver.org/? > > > > It is a proposal about how to assign version numbers in order to deal > > with compatibility and dependences. > > > > Perhaps Lazarus should thing about using it. > > > > In short, this system is: Version numbers is x.y.z[-] > > "z" changes about bugs refactorization etc (patches number) > > "y" changes about improvements that add new functionality, but don't > > break compatibility (minor version number) > > "x" Changes that break compatibility (mayor version number) > > - is whatever you want (build beta RC1 etc) > > > > Both Lazarus and FPC follow this numbering scheme already - maybe not > very strictly, but they follow ;-) And the minor version number is > even for stable release series, and odd in the trunk/development > branch. Not quite. Lazarus x has only changed once from 0 to 1, reflecting a new branch and release system. y is for incompatibilities and new features. z is for bug fix releases. Probably it is possible to skip the x and use a y.z scheme. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Off topic. Version numbers
On Thu, May 15, 2014 at 7:36 AM, Santiago A. wrote: > > Have you heard about "Semantic Versioning 2.0.0" /http://semver.org/? > > It is a proposal about how to assign version numbers in order to deal > with compatibility and dependences. > > Perhaps Lazarus should thing about using it. > > In short, this system is: Version numbers is x.y.z[-] > "z" changes about bugs refactorization etc (patches number) > "y" changes about improvements that add new functionality, but don't > break compatibility (minor version number) > "x" Changes that break compatibility (mayor version number) > - is whatever you want (build beta RC1 etc) > Both Lazarus and FPC follow this numbering scheme already - maybe not very strictly, but they follow ;-) And the minor version number is even for stable release series, and odd in the trunk/development branch. -Flávio -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Off topic. Version numbers
Have you heard about "Semantic Versioning 2.0.0" /http://semver.org/? It is a proposal about how to assign version numbers in order to deal with compatibility and dependences. Perhaps Lazarus should thing about using it. In short, this system is: Version numbers is x.y.z[-] "z" changes about bugs refactorization etc (patches number) "y" changes about improvements that add new functionality, but don't break compatibility (minor version number) "x" Changes that break compatibility (mayor version number) - is whatever you want (build beta RC1 etc) If I have a program that builds and works properly using version 3.20.123-2, I'm sure it will work: for 3.20.[*] and for 3.[20..infinite].[*] Perhaps it will work for 3.19, it depends on if I used new features added in 3.20 o not. It won't work for 4.* or 2.* Example: V 3.20.10 Tmyobject=class public procedure foo1; end; V 3.20.11 Tmyobject=class private myvar:integer; // new internal var, nothing really changes. Increment patch version number public procedure foo1; procedure foo2; end; V 3.21.11 Tmyobject=class private myvar:integer; public procedure foo1; procedure foo2; procedure fooNew; // New feature,programs that work with V 3.20 still work. Increment minor version number. end; V 4.1.1 Tmyobject=class private myVar:integer; public // *** procedure foo1; ** deprecated procedure foo2; // Foo1 removed, could break compatibility. Increment mayor version number procedure fooNew; end; The drawback is that is you must separate clearly bugs, new features and deprecating/changing functionality. Never the less, it is good for the user. wouldn't Lazarus team, as user of FPC, love that, when FPC releases 2.7, not to need to check what/if breaks with 2.6, just be sure nothing is breaks? As the document states "This is not a new or revolutionary idea. In fact, you probably do something close to this already. The problem is that "close" isn't good enough. Without compliance to some sort of formal specification, version numbers are essentially useless for dependency management. By giving a name and clear definition to the above ideas, it becomes easy to communicate your intentions to the users of your software. Once these intentions are clear, flexible (but not too flexible) dependency specifications can finally be made." -- Saludos Santi s...@ciberpiula.net -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus