
Linux 5.0 - doener
https://lore.kernel.org/lkml/CAHk-=wjuG6HiGbD7DCGfvDvhr_1WZUR-eYF2qWGbYyn9k6unvg@mail.gmail.com/T/#u
======
Nux
"But I'd like to point out (yet again) that we don't do feature-based
releases, and that "5.0" doesn't mean anything more than that the 4.x numbers
started getting big enough that I ran out of fingers and toes.

    
    
                    Linus"

~~~
ksec
I remember it was briefly discussed but I cant search it on Google.

If it isn't a feature release schedule, why they don't have have the Year as
Version number? So Linux 2019.1 or Linux 19.1 , The First Release of 2019.

~~~
jsight
I'm not sure that it would be less confusing to do that. Old kernels are still
maintained too, so you'd have new releases like 2018.42 still happening in
late 2019. And then people would wonder why some server is running a "year old
kernel" when exploits came out less than six months ago.

What's wrong with simple monotonically increasing digits?

~~~
Someone1234
Exactly. For a real world example, Ubuntu's current LTS release 18.04 is
running Linux Kernel 4.15 (released Jan-2018). Using a year version format it
would be Linux 2015.15.

A lot of less technical people and fake security "experts" are going to freak
out about a "2015" kernel. In general people seem less interested in how
something is, than how something appears. That's why most companies still
insist on password complexity rules and disable pasting to password fields,
because it FEELS safer.

------
maddyboo
The entire Wikipedia section [1] dedicated to the history of the Linux
kernel's versioning scheme is quite interesting.

A funny detail is that the 0.x version series progressed as 0.01, 0.02, 0.03,
0.10, 0.11, 0.12, 0.95, 0.96, 0.97, 0.98, and finally 0.99.

I found an archived message [2] from Linus dated 19 Dec '91 with a note about
that jump directly from 0.12 to 0.95:

    
    
       Note: The version number went directly from 0.12 to 0.95, as the
       follow-on to 0.12 was getting feature-full enough to deserve a number
       in the 0.90's
    
    

[1]:
[https://en.wikipedia.org/wiki/Linux_kernel#Version_numbering](https://en.wikipedia.org/wiki/Linux_kernel#Version_numbering)

[2]:
[https://www.cs.cmu.edu/~awb/linux.history.html](https://www.cs.cmu.edu/~awb/linux.history.html)

~~~
majewsky
The way I recall the story is that once X11 was running on Linux, Linus
thought that he was nearly done and bumped the version number way up to 0.95.
Then it turned out to take quite a lot more work to get stable, so 0.99 went
up to "patchlevel 16z" or something.

~~~
tyingq
Here's all the .99 versions:
[http://www.oldlinux.org/Linux.old/docs/history/0.99.html](http://www.oldlinux.org/Linux.old/docs/history/0.99.html)

Compare to earlier ones and you can see the reluctance to bump to 1.x

[http://www.oldlinux.org/Linux.old/docs/history/0.98.html](http://www.oldlinux.org/Linux.old/docs/history/0.98.html)

------
r4um
[https://kernelnewbies.org/LinuxChanges?rev1=371](https://kernelnewbies.org/LinuxChanges?rev1=371)

~~~
captn3m0
Link gives a 403

~~~
qubex
That's correct... they moved forward 398 major releases since the this article
was released.

------
ahriman
5.0 changelog:
[https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/Change...](https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.0)

~~~
aorth
Kernel Newbies has a much more accessible summary than a git log. :)

[https://kernelnewbies.org/Linux_5.0](https://kernelnewbies.org/Linux_5.0)

------
jl6
I always wondered if in the far future there is a semantic wasteland waiting
for apps that rapidly increase their version number. The difference between a
version 65 and a version 66 is fairly manageable for average humans, just in
terms of length of the number. But what about when comparing version 19753 and
version 19754?

~~~
laumars
People need to stop thinking about version numbers as being something
meaningful. Particularly in the era of package managers, CI pipelines and
version pinning. eg many places would could use git commit hashes where the
latest is pulled in by the CI pipeline for testing on the dev environments and
then prod is version pinned to a specific hash until testing has vetted a
newer commits as being safe for deployment.

edit: I'm curious why I'm getting so heavily down voted when the evidence is
clearly there that the majority of projects versioning is completely
arbitrary. Sure, there are some notable exceptions but when you're building
complex secure systems you are often forced down the version pinning route
with controlled and tested deployments for a great many software components.

~~~
yjftsjthsd-h
Version numbers certainly can be meaningful. They're frequently not used that
way, but ex. semver is genuinely quite useful when people actually use it.

~~~
simonh
How about incrementing the version number by an amount proportional to the
lines that have changed in the code base. So 10% of lines have changed and 20%
of lines have been added, so increment version number from 5.6 to 7.28.

~~~
badsectoracula
What if you come up with a better algorithm for version 7.28 that is 80%
shorter?

~~~
simonh
One of my favourite Apple history anecdotes:

[https://www.folklore.org/StoryView.py?project=Macintosh&stor...](https://www.folklore.org/StoryView.py?project=Macintosh&story=Negative_2000_Lines_Of_Code.txt)

With my tongue firmly still in my cheek, I'd say increment the version number
by the difference. So if you deduct 5% of the code and add another 15%, then
increment the version number by 20%.

------
catlover45
What the are the best resources for learning how the kernel currently works? I
tried reading a bunch of O'reilly books on the subject, like device drivers,
and the Love books, but they are all for 2.x kernels which are super ancient
at this point.

------
paulcarroty
New features:
[https://www.phoronix.com/scan.php?page=article&item=linux-20...](https://www.phoronix.com/scan.php?page=article&item=linux-2019-features&num=1)

------
user5994461
Meanwhile on Redhat, still running on kernel 2.6.x

Things are about to double.

------
narven
And another version that does not work out of the box for me... awesome. Need
to wait till 6.0 to use this one.

