Discussion: Version retention policy in oe-core

Tom Rini tom_rini at mentor.com
Tue Feb 22 00:53:59 UTC 2011


All,

As has been discussed in a few places, there needs to be a policy that 
is followed about how long to retain old recipes within the oe-core 
repository as well as what to do with older versions of things.  There 
is a related question here of when to use DEFAULT_PREFERENCE = "-1".

We also have use cases such as:
- Public distribution X uses version A (pins)
- Private distribution X uses version A
- Upstream provides provides support (new releases) and clear guidelines 
on upgrading for version 4.0 (current), version 3.8 (previous and 
stable) and version 3.6 (further previous, stable).  Upstream is also 
working on version 4.1.x (unstable, active development).
- Upstream provides no clear policy about what's supported other than 
current.

After thinking about the brief discussion we had during todays TSC 
meeting, I would like to propose the following:

The goal of oe-core is to keep the latest stable version.  Exceptions 
will been needed for the toolchain components where architecture 
requirements or upstream problems may dictate that we need multiple 
versions (but versions for versions sake is not required, we are working 
within an SCM and retrieval of older ".z" type releases is easy).  With 
a release framework of X.Y.Z, going from X.Y.Z to X.Y.$((Z + 1)) should 
be a simple git mv.  When a new stable release happens (using the above 
example where 3.8 and 4.0 are both stable), 4.0 should be introduced 
with a DEFAULT_PREFERENCE of -1 and not moved to be the default until 
validation is complete for both oe-core and meta-oe using this version 
and the defined (separate item...) validation targets.  Once a new 
stable version is ready, it is up to meta-oe to decide if it's 
worthwhile to hold on to for now (and possibly delete even older 
versions, in this example 3.6.x).  If meta-oe passes for any reason, it 
would be up to interested layer maintainer(s) to pick it up.  In this 
case if a number of layers decide they really need it, they would be 
encouraged to volunteer to maintain it in meta-oe (as meta-oe should aim 
to support recipes that people are willing to support as needed).

When there is no clear policy from upstream we simply have to apply best 
judgement.

Related to this are:
- We want to encourage distributions that are tracking the latest to try 
and stay with the latest.
- We want to encourage recipes which people are interested in to be 
maintained long term to be maintained, long term, in meta-oe.
- We want to encourage distributions to work with and add to / maintain 
the core rather than deciding we have too frequent of an unhelpful churn 
(which is to say 4.0.1 -> 4.0.2 of $whatever is good, 4.0.1 -> 4.4.3 of 
$whatever is not).

-- 
Tom Rini
Mentor Graphics Corporation




More information about the tsc mailing list