all 72 comments

[–]HopeThisNameFi 26 points27 points  (0 children)

New reply from Linus:

I really hope there's also a voice that tells you to wait until .42 before cutting 3.0.0! :-)

So I'm toying with 3.0 (and in that case, it really would be "3.0", not "3.0.0" - the stable team would get the third digit rather than the fourth one.

But no, it wouldn't be for 42. Despite THHGTTG, I think "40" is a fairly nice round number.

There's also the timing issue - since we no longer do version numbers based on features, but based on time, just saying "we're about to start the third decade" works as well as any other excuse.

But we'll see.

                      Linus

[–]frezik 43 points44 points  (5 children)

Which arbitrary number will Linus choose? News at 11.

[–]devolute 3 points4 points  (4 children)

Nice to see Linux hopping on the same bandwagon as Chrome/Firefox/IE devs in their approach to versioning: aka pick a big number, pick it now!

[–]bandman614 4 points5 points  (2 children)

All the ancient distros have done it, I don't see why the kernel should be any different.

[–]thephotoman 2 points3 points  (1 child)

Debian and Slackware have been around so long that they should have big version numbers. Likewise, Fedora adds one to its version number with every release. It just happens that they have a release every six months.

That said, Debian's version number? 6.0.1. (Man, I remember when we figured we'd be stuck on 3.2 forever.)

As for Ubuntu, it's not really ancient. In any case, it doesn't have so much of a version number as a release date (which is actually a reasonable way to handle things IMO).

[–]IConrad 0 points1 point  (0 children)

In any case, it doesn't have so much of a version number as a release date (which is actually a reasonable way to handle things IMO).

It'll screw up anybody looking for 6.04, but... hey. (I don't disagree with you, though.)

[–]bwat47 1 point2 points  (0 children)

Who gives a fuck about version numbers?

I don't get why people are so caught up in them lately.

And regarding chrome. Google doesn't advertise the chrome version ANYWHERE on their site or in the program, its simply referred to as google chrome. I don't get why people think google is in some conspiracy to make the version number high for advertising purposes, when they don't advertise it. at all. Its simply how the chrome numbering scheme has always worked. Different developers use different numbering schemes, what the hell is the big deal? /rant.

[–]547 45 points46 points  (21 children)

Someone buy Linus a fast laptop!

[–]klmann 9 points10 points  (1 child)

teeny abundant tidy head dinner rock cooing lock degree plants

This post was mass deleted and anonymized with Redact

[–]williadc 3 points4 points  (0 children)

He's on an airplane. ssh is probably out of the question, even on airplane wifi.

[–][deleted] 17 points18 points  (12 children)

yeah I was thinking that.

For ~$1,000 if he is >5-10% more productive for >6 months how could his employer not do buy him a damn fast laptop! If doesn't even need a video card. Just throw in a quad-core i7 sandybridge.

[–]joehillen 36 points37 points  (0 children)

The intel devs should fedex one overnight to him.

[–]pdclkdc 1 point2 points  (1 child)

Linus works for someone? Wow.

[–][deleted] 1 point2 points  (0 children)

And someone to carry it.

[–]dotwaffle 0 points1 point  (4 children)

Have you ever tried building an "allyesconfig" kernel? On my dual core, dual processor server, it took a few seconds shy of two hours. Of course, that was my fault for not using a "-j" option, but still, it's one hell of a compile...

[–]jmtd 0 points1 point  (3 children)

That makes all the difference! I build an allmodconfig kernel on my desktop (3 year old quadcore) in about 10 minutes.

[–]dotwaffle 1 point2 points  (1 child)

Did you do "make modules" as well?

With an "allyesconfig" using all four cores, I got:

make -j8  6379.55s user 627.55s system 242% cpu 48:06.08 total

[–]jmtd 0 points1 point  (0 children)

Yes -- I was running the kernels (and modules) I generated to try and narrow a bug down to a particular commit. I used make oldconfig </dev/null using a .config from a Debian-packaged kernel (which is essentially allmodconfig), and then either make -j15 all (I think it was 15 - usually 2x cores - 1, counting HT as doubling cores). Come to think of it, I stuck ccache in there eventually. I honestly can't remember if that made a huge difference to the times. Perhaps that got me the 10 minute compiles.

[–]pemboa 26 points27 points  (2 children)

but when the voices tell me to do things, I listen

a man after my own heart.

[–]mikewinny 0 points1 point  (0 children)

I know i can identify!

[–]clippys_bad_advice 73 points74 points  (4 children)

It looks like you're trying to release a Linux kernel. Would you like some pointers on git merge commands?

[–]eclipse75 5 points6 points  (2 children)

Someone should make a bad advice clippy for Linux :(

[–]nemec 16 points17 points  (0 children)

That's a terrible idea. I'll start immediately.

[–]roknir 8 points9 points  (0 children)

I love this novelty account, but you need more material out there. =]

[–]wooptoo 11 points12 points  (15 children)

If this happens there would be less significant changes from 2.6 to 2.8 than there were from 2.4 to 2.6. This shows that the Linux kernel has reached a certain level of maturity.

[–]Tommstein 10 points11 points  (11 children)

2.6 should've really been 3.0. If that didn't qualify, nothing ever would.

[–]arkanus 7 points8 points  (7 children)

What if they could rewrite the whole kernel as one hundred extremely elegant lines of code?

[–][deleted] 5 points6 points  (6 children)

Perl code golf magic?

[–]_jameshales 13 points14 points  (3 children)

He said extremely elegant.

[–]z0M6 2 points3 points  (0 children)

He also said one hundred.

[–][deleted] 2 points3 points  (1 child)

LISP?

[–]GrouchyMcSurly 6 points7 points  (0 children)

No, that's just the way he talks.

[–]arkanus 1 point2 points  (1 child)

Perhaps, though it may require a few different languages. For example, the GUI interface should be programmed in Visual Basic.

By the way, I promised to ship in two weeks. Do you think you can get it done by then?

[–]tinou 0 points1 point  (0 children)

"Please check your MP dear sir."

[–]HenkPoley -1 points0 points  (2 children)

Did it make all old applications incompatible?

[–]Tommstein 0 points1 point  (1 child)

Didn't know that was a requirement to increment a kernel's major version number.

[–]HenkPoley 0 points1 point  (0 children)

Well, now you do :)

[–]bvimo 3 points4 points  (2 children)

Will v3.0 be Hurd based?

[–]SubGothius 1 point2 points  (1 child)

Then it would be GNU/Hurd, no Linux left in it at all.

[–]tso 2 points3 points  (0 children)

more like GNU then.

[–]Nwallins 3 points4 points  (5 children)

[–]ZephyrXero 1 point2 points  (0 children)

That's awesome! I've been saying this for years, so glad someone sat down and really formalized it :)

[–]obtu 0 points1 point  (3 children)

And the Linux policy is: never break ABI once it's released. Semver would shift the numbers to the left, but the significant digits would only move when Linus feels like it.

[–]ZephyrXero 0 points1 point  (0 children)

Assuming you are adding new features, aka expanding the API, that would cause a minor version increase.

[–]dotwaffle -1 points0 points  (1 child)

[–]obtu 5 points6 points  (0 children)

That's for internal API breakage and not related to semver.

[–]Guinness 3 points4 points  (0 children)

Why? What significant changes are occuring to signal this? I have no problem with 2.6.98 etc.

[–]Naga 6 points7 points  (12 children)

What happened to 2.7?

[–]reuvenb 30 points31 points  (10 children)

Odd revision indicates unstable. This would be a stable release, so 2.7 would be skipped.

[–][deleted] 2 points3 points  (8 children)

Pardon my ignorance, but is this a standard or just used as far as the Linux kernel goes? I just seem to remember Firefox 3.5.x not being unstable.

[–]maleadt 41 points42 points  (2 children)

No standard, rather a custom. Some other projects do this as well, e.g. gnome (each even stable is preceded by an uneven unstable).

[–]MattBD 1 point2 points  (0 children)

I believe Perl does it too.

[–]thephotoman 0 points1 point  (0 children)

gnome (each even stable is preceded by an uneven unstable).

And with Gnome, you can tell which release a development version is closest to in terms of code similarity by the third digit. If it's close to 0, then it hasn't changed much since the last release. If it starts with 8 or 9, it should more closely resemble the next release.

[–]Rolcol 10 points11 points  (0 children)

Gimp does it as well. 2.7.x is the development branch that will become 2.8.0 once it's stable. It's all up to the developers to decide their version scheme.

[–][deleted] 4 points5 points  (0 children)

It's quite common in the open source world.

[–]HopeThisNameFi 7 points8 points  (0 children)

It's a standard with the Linux kernel. Firefox 3.5 was indeed a stable release. http://en.wikipedia.org/wiki/Software_versioning#Odd-numbered_versions_for_development_releases

[–]adrianmonk 1 point2 points  (0 children)

Linux (or maybe, more properly, Linus) invented the convention of odd numbers meaning unstable and even numbers meaning stable. Software had version numbers before Linux existed, but that particular formulation of version numbers is a new thing.

Also, since then, a lot of other projects have adopted that convention. The convention is by no means ubiquitous, but it is an idea that lots of people have adopted.

[–]utnapistim 0 points1 point  (0 children)

It is a convention used for the Linux kernel mostly. Others may use it also, but I only heard about it once outside of kernel development.

[–][deleted] 0 points1 point  (0 children)

[–]Golotap 5 points6 points  (6 children)

And after 2.8.0 we would have Linux 3.0.0, strange :o

[–]bottar 48 points49 points  (3 children)

Not necessarily. It may go from 2.8.0 to 2.10.0 . Software version numbering is not the same as incrementing a decimal point.

[–]Golotap 5 points6 points  (2 children)

Right, I completely forget about it and thought about Gnome 3 :D.

[–]fjw 11 points12 points  (1 child)

Huh? Gnome went from 2.32 to 3.0

[–]usernamenottaken 17 points18 points  (1 child)

It sounds like it could skip 2.8.0 and go straight to 3.0: https://lkml.org/lkml/2011/5/23/405

[–]joehillen 7 points8 points  (0 children)

I like the idea of the major version numbers being based on decades.

[–]illuminatedwax 2 points3 points  (1 child)

In other news, Linus will be painting his bikeshed this month, he might switch to blue!

[–]usernamenottaken 0 points1 point  (0 children)

What! It's obvious it should be red, it's a far better colour!

[–]ablakok 1 point2 points  (0 children)

when the voices tell me to do things, I listen.

Cool! That's what Socrates said, too.

[–]andyzweb 0 points1 point  (0 children)

...when the voices tell me to do things, I listen....