Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You are linking to 10-STABLE release notes, and 10.0-RELEASE is something else, than STABLE branch. STABLE's are a bit ahead of RELEASE's and are considered to be less stable than RELEASE's - the wording is a bit misleading.


That doesn't make much sense. In what kind of versioning scheme does a release not contain the same code as the stable branch in a specific version?

In that case calling them "Release notes" is even more confusing...


In short what you get from STABLE branch is what version 10.1 will have.

Here is an explanation:

- RELEASE is actual release that is forked out (it will only contain security and other critical fixes) of the STABLE branch.

- STABLE is just a development branch (currently it is anything in version 10) as opposed to CURRENT which is a bleeding edge.

- CURRENT is what will be next version (version 11), once they finish adding features it will become next STABLE branch and CURRENT will be used for version 12.

While everything that ends up at STABLE needs to go through pointyhat build system, so it should always compile and pass regression testing, there's still a possibility of things breaking up.

Since 10.0 is about to be released STABLE contains what will become 10.1.

Here's example how the branches look like:

    ----------------- CURRENT (version 11)
     \
      -STABLE (version 10) ---
         \                  \
          - 10.0-RELEASE     - 10.1-RELEASE
             \     \
              -p1   -p2
At this time since 10.0 was just released 10-STABLE will be very close to 10.0-RELEASE


RELEASE is an artifact. STABLE is a development branch for the current non-experimental (stable) branch and from which releases are cut. It's still a development branch, though, so things can break on it.

Since 10-RELEASE was just cut it's probably close (identical?) to 10-STABLE, but that won't last long.


In this case STABLE refers to the ABI, not the code itself. RELEASE is code that doesn't change, other than security patches and major bugs.

It is confusing, however, but there is some logic to it.


It is unfortunate that FreeBSD chose those names to attract people to the pre-release versions. What's needed is a section of the website clarifying:

CURRENT = alpha, dev

STABLE = beta, rc

RELEASE = passed all tests and released

That's not to say that things never break in releases. I've seen gjournalled disks (on a gmirror) require fsck (in 8 and 9 -REL) and carp fail (in 7 -REL). Other than those FreeBSD has been the most reliable, secure and up-to-date of any Unix or Linux distribution I've used. My only request would be a policy discouraging ports with perl build-deps, most of which seem to be one-liners that could easily use awk, sed and/or grep instead of forcing a perl build on every upgrade (most not even bothering to remove the build-deps when done).


Nitpickingly, sure, but mere hours since the release was cut, they're for all intents and purposes identical.


less stable than release? that's news to me. have any official wording to back that up? I'm intensely curious


http://www.freebsd.org/doc/handbook/current-stable.html

> FreeBSD-STABLE is the development branch from which major releases are made. Changes go into this branch at a different pace, and with the general assumption that they have first gone into FreeBSD-CURRENT for testing. This is still a development branch, however, and this means that at any given time, the sources for FreeBSD-STABLE may or may not be suitable for any particular purpose. It is simply another engineering development track, not a resource for end-users.


'-STABLE' refers to ABI/KBI stability.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: