From patchwork Fri Oct 17 14:54:59 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mike Holmes X-Patchwork-Id: 38878 Return-Path: X-Original-To: linaro@patches.linaro.org Delivered-To: linaro@patches.linaro.org Received: from mail-la0-f70.google.com (mail-la0-f70.google.com [209.85.215.70]) by ip-10-151-82-157.ec2.internal (Postfix) with ESMTPS id 40C48202DB for ; Fri, 17 Oct 2014 14:55:27 +0000 (UTC) Received: by mail-la0-f70.google.com with SMTP id ge10sf575845lab.5 for ; Fri, 17 Oct 2014 07:55:26 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:delivered-to:from:to:date:message-id:subject :precedence:list-id:list-unsubscribe:list-archive:list-post :list-help:list-subscribe:mime-version:errors-to:sender :x-original-sender:x-original-authentication-results:mailing-list :content-type:content-transfer-encoding; bh=DWOkRsVQAEr+pehTSxNZJ2ZNA2FOVgHE8lpCEgaqPQk=; b=c2Bady23t6fp2Eu/ORo2mnVAvBbjChW1fZ/YpOCDkftskD/n4Cf/ASB6cw5XP/Fpq9 /kZyR2y3KDnX+kIasbgZd/8vGeJQIPIa0Vr0U+iK9A7CsiVHl15FTiT9mmJl7m1zobAF nKwRtRpWgQSMn8MZB+wVnWyx2FVwsGVxJvkdmTZ3q0X2p6xxO+wkv3rcPjIVgebBQVSL er9oeqN45pT5ee1hve4LhvmFzN/8R5ypEV76Hq6Lk7dc9lKQ4y8m6HW6VS3/z0Y17nUL fAmjCvYWhuqKouZdOuBGbx6x2oZgZqMkg/12TE4Yo5V4MONdsubH7uzFCRtV3IpCt3qi q5WQ== X-Gm-Message-State: ALoCoQmRWJP8rkZt/9EMWfjaoZSVOEIW5yIBfEfWm728IIUsl8a1eKE97wE1QQeM4k0CwmlldeI9 X-Received: by 10.112.254.226 with SMTP id al2mr1464596lbd.1.1413557725996; Fri, 17 Oct 2014 07:55:25 -0700 (PDT) X-BeenThere: patchwork-forward@linaro.org Received: by 10.152.205.108 with SMTP id lf12ls235933lac.48.gmail; Fri, 17 Oct 2014 07:55:25 -0700 (PDT) X-Received: by 10.112.97.236 with SMTP id ed12mr9629075lbb.10.1413557725762; Fri, 17 Oct 2014 07:55:25 -0700 (PDT) Received: from mail-la0-f46.google.com (mail-la0-f46.google.com. [209.85.215.46]) by mx.google.com with ESMTPS id yn9si2466061lbb.10.2014.10.17.07.55.25 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 17 Oct 2014 07:55:25 -0700 (PDT) Received-SPF: pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.215.46 as permitted sender) client-ip=209.85.215.46; Received: by mail-la0-f46.google.com with SMTP id gi9so836455lab.5 for ; Fri, 17 Oct 2014 07:55:25 -0700 (PDT) X-Received: by 10.152.5.38 with SMTP id p6mr4769356lap.44.1413557725647; Fri, 17 Oct 2014 07:55:25 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patch@linaro.org Received: by 10.112.84.229 with SMTP id c5csp242831lbz; Fri, 17 Oct 2014 07:55:24 -0700 (PDT) X-Received: by 10.140.107.11 with SMTP id g11mr12082537qgf.38.1413557723561; Fri, 17 Oct 2014 07:55:23 -0700 (PDT) Received: from ip-10-35-177-41.ec2.internal (lists.linaro.org. [54.225.227.206]) by mx.google.com with ESMTPS id c1si2594378qam.57.2014.10.17.07.55.22 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Fri, 17 Oct 2014 07:55:23 -0700 (PDT) Received-SPF: none (google.com: lng-odp-bounces@lists.linaro.org does not designate permitted sender hosts) client-ip=54.225.227.206; Received: from localhost ([127.0.0.1] helo=ip-10-35-177-41.ec2.internal) by ip-10-35-177-41.ec2.internal with esmtp (Exim 4.76) (envelope-from ) id 1Xf8w5-0002H3-BR; Fri, 17 Oct 2014 14:55:21 +0000 Received: from mail-qg0-f52.google.com ([209.85.192.52]) by ip-10-35-177-41.ec2.internal with esmtp (Exim 4.76) (envelope-from ) id 1Xf8vy-0002GW-MV for lng-odp@lists.linaro.org; Fri, 17 Oct 2014 14:55:14 +0000 Received: by mail-qg0-f52.google.com with SMTP id q108so622338qgd.39 for ; Fri, 17 Oct 2014 07:55:09 -0700 (PDT) X-Received: by 10.140.101.133 with SMTP id u5mr759295qge.84.1413557709465; Fri, 17 Oct 2014 07:55:09 -0700 (PDT) Received: from fedora1.holmesfamily.ws ([98.221.136.245]) by mx.google.com with ESMTPSA id j34sm1046448qge.41.2014.10.17.07.55.08 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 17 Oct 2014 07:55:08 -0700 (PDT) From: Mike Holmes To: lng-odp@lists.linaro.org Date: Fri, 17 Oct 2014 10:54:59 -0400 Message-Id: <1413557700-29546-1-git-send-email-mike.holmes@linaro.org> X-Mailer: git-send-email 1.9.1 X-Topics: Architecture patch Subject: [lng-odp] [PATCH ARCH 1/2] Add release management X-BeenThere: lng-odp@lists.linaro.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: , List-Help: , List-Subscribe: , MIME-Version: 1.0 Errors-To: lng-odp-bounces@lists.linaro.org Sender: lng-odp-bounces@lists.linaro.org X-Removed-Original-Auth: Dkim didn't pass. X-Original-Sender: mike.holmes@linaro.org X-Original-Authentication-Results: mx.google.com; spf=pass (google.com: domain of patch+caf_=patchwork-forward=linaro.org@linaro.org designates 209.85.215.46 as permitted sender) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org X-Google-Group-Id: 836684582541 Add text defining the release procedure and release numbering. Signed-off-by: Mike Holmes --- release.dox | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 release.dox diff --git a/release.dox b/release.dox new file mode 100644 index 0000000..7cde777 --- /dev/null +++ b/release.dox @@ -0,0 +1,70 @@ +/* Copyright (c) 2014, Linaro Limited + * All rights reserved + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +/** +@page release Release Management +The odp.git repo contains the API which is of primary concern when addressing the release numbering, the linux-generic implementation is not the focus of the release. + +@section release_numbering Release Numbering (ODP-..) + +The API uses a three digit release number, for ODP this number refers to +- The API header definitions +- The reference implementation (linux-generic) +- The documentation +- The API test & validation suite that certifies each of the above. + +@image html ODP_versioning.png "Version history diagram" width=\textwidth +@image latex ODP_versioning.eps "Version histroy diagram" width=\textwidth + + +The ODP API generation.major version will only change at well-defined release points. +An API release will be tagged @code ODP-.. @endcode and bug fix releases on the platform will be tagged @code ODP-..- @endcode +No release will ever be made without incrementing the release number, the change will be according to the following guidelines. +Every change in API version will require a recompilation, relinking will not be sufficient. +The header file odp_version.h contains helper macros for dealing with ODP versions in application code. +@note The version refers to API source compatibility and not binary compatibility. + +@subsection generation (ODP-) +The ODP generation is intended to be a very slow moving digit that will only increment on very significant changes the ODP API is structured. +A change to this digit indicates a break in backwards compatibility. + +@subsection major (ODP-.) +A change to this digit indicates a break in backwards compatibility. +@note The incompatibility covers the whole ODP API, however the change may be a tiny change to an esoteric function that is not used by a given application. + +- Altering API signature +- Altering a structure other than adding optional items at the end. +- Changing the required calling sequence for APIs +- Changes to the installed structure i.e. the output from "make install" moves a file in a way that breaks compilation. +- New elements added to an enum that is an output from ODP. + +@subsection minor (ODP-..) +The minor digit is for changes that are backwards compatible. +For example changes such as the addition of a new API. +Existing application code shall not have to change if the new API is not used. +- Adding a new struct +- Adding a new function +- Adding an additional alternate API to an existing on such that the old API remains. +- New element to an enum that is an input to ODP + +@subsection sub (ODP-..-) +The sub digit is used for backward compatible changes +The sub number is implementation driven. +Any existing app should work as before with the caveat that a bug fix may change the executable behavior (hopefully improve it) +- Optimize the implementation +- Documentation updates that do not affect the API +- bug fixes in implementation + +@section point_release Point Release Schedule +Point releases will be made throughout the year, a lose target is once per quarter depending on the feature load. +For example a release 1.1.0 that is made will regularly have support until the next point release is made at which time support for 1.1.0 would be dropped. + +@section lts Long Term Stable (LTS) +Long term stable release will be retroactively be selected from the point releases already made. +The determination will be made by the ODP steering committee (SC). +The duration of support will be decided by the SC. + +*/