Release schedule
----------------

The util-linux package uses the <major>.<minor>.<maintenaince> version
numbering scheme.  Since the major version is pretty much fixed, any
release means an increment of the minor number.  The minor version is
incremented roughly twice per year.  The easiest way to estimate when
the next version will appear, is to look at the time stamp of the last
release.

Before each release there are a few release candidates, which will be
collectively tested.  During the test period changes to the code base
are restricted.  Usually there are two release candidates.

  what	 length		what will be accepted into upstream
  ---------------------------------------------------------
  rc1	 1-2 weeks	bug fixes only
  rc2	 1-2 weeks	translations, fatal/trivial bug fixes

The period between a release and the next release candidate can be considered
as the merge window.

The release tarball is generated by "make distcheck" command.

Release criteria
----------------

For all releases it is required that:

   - make checkincludes passes
   - make checkconfig passes
   - make distcheck passes
   - cd tests && ./run.sh passes
   - an out-of-tree build works
     (cd .. && mkdir build && cd build && ../util-linux/configure && make)

   - ideally: a build with uClibc works, and --with-slang works

See also
--------

../README
