Show a cover letter.

GET /api/covers/62469/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 62469,
    "url": "https://patches.dpdk.org/api/covers/62469/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/cover/1572967458-16487-1-git-send-email-mdr@ashroe.eu/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<1572967458-16487-1-git-send-email-mdr@ashroe.eu>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1572967458-16487-1-git-send-email-mdr@ashroe.eu",
    "date": "2019-11-05T15:24:14",
    "name": "[v8,0/4] doc: changes to abi policy introducing major abi versions",
    "submitter": {
        "id": 1310,
        "url": "https://patches.dpdk.org/api/people/1310/?format=api",
        "name": "Ray Kinsella",
        "email": "mdr@ashroe.eu"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/cover/1572967458-16487-1-git-send-email-mdr@ashroe.eu/mbox/",
    "series": [
        {
            "id": 7255,
            "url": "https://patches.dpdk.org/api/series/7255/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=7255",
            "date": "2019-11-05T15:24:14",
            "name": "doc: changes to abi policy introducing major abi versions",
            "version": 8,
            "mbox": "https://patches.dpdk.org/series/7255/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/covers/62469/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id D5EE6A04A2;\n\tTue,  5 Nov 2019 16:24:29 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id E9BB71BF57;\n\tTue,  5 Nov 2019 16:24:28 +0100 (CET)",
            "from q2relay142.mxroute.com (q2relay142.mxroute.com\n [160.202.107.142]) by dpdk.org (Postfix) with ESMTP id D45001BF55\n for <dev@dpdk.org>; Tue,  5 Nov 2019 16:24:26 +0100 (CET)",
            "from filter003.mxroute.com [168.235.111.26] (Authenticated sender:\n mN4UYu2MZsgR)\n by q2relay142.mxroute.com (ZoneMTA) with ESMTPSA id 16e3c2ac005000f36a.002\n for <dev@dpdk.org>\n (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES128-GCM-SHA256);\n Tue, 05 Nov 2019 15:24:24 +0000",
            "from galaxy.mxroute.com (unknown [23.92.70.113])\n by filter003.mxroute.com (Postfix) with ESMTPS id 6DC166115D;\n Tue,  5 Nov 2019 15:24:23 +0000 (UTC)",
            "from [192.198.151.44] (helo=localhost)\n by galaxy.mxroute.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128)\n (Exim 4.91) (envelope-from <mdr@ashroe.eu>)\n id 1iS0Ur-0003B2-CQ; Tue, 05 Nov 2019 10:11:53 -0500"
        ],
        "X-Zone-Loop": "f4764cee4cd5ca0a7ee657f747839043ae35ca09495b",
        "X-Originating-IP": "[168.235.111.26]",
        "From": "Ray Kinsella <mdr@ashroe.eu>",
        "To": "dev@dpdk.org",
        "Cc": "mdr@ashroe.eu, thomas@monjalon.net, stephen@networkplumber.org,\n bruce.richardson@intel.com, ferruh.yigit@intel.com,\n konstantin.ananyev@intel.com, jerinj@marvell.com, olivier.matz@6wind.com,\n nhorman@tuxdriver.com, maxime.coquelin@redhat.com, john.mcnamara@intel.com,\n marko.kovacevic@intel.com, hemant.agrawal@nxp.com, ktraynor@redhat.com,\n aconole@redhat.com",
        "Date": "Tue,  5 Nov 2019 15:24:14 +0000",
        "Message-Id": "<1572967458-16487-1-git-send-email-mdr@ashroe.eu>",
        "X-Mailer": "git-send-email 2.7.4",
        "X-AuthUser": "mdr@ashroe.eu",
        "Subject": "[dpdk-dev] [PATCH v8 0/4] doc: changes to abi policy introducing\n\tmajor abi versions",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "TL;DR abbreviation:\nA major ABI version that all DPDK releases during an agreed period support. ABI\nversioning is managed at a project-level, in place of library-level management.\nABI changes to add new features are permitted, as long as ABI compatibility with\nthe major ABI version is maintained.\n\nDetail:\nThis patch introduces major ABI versions, released aligned with the LTS release\nand maintained for one year through subsequent releases. The intention is that\nthe one year abi support period, will then be reviewed after the initial year\nwith the intention of lengthening the period for the next ABI version.\n\nABI changes that preserve ABI compatibility with the major ABI version are\npermitted in subsequent releases. ABI changes, follow similar approval rules as\nbefore with the additional gate of now requiring technical board approval. The\nmerging and release of ABI breaking changes would now be pushed to the\ndeclaration of the next major ABI version.\n\nThis change encourages developers to maintain ABI compatibility with the major\nABI version, by promoting a permissive culture around those changes that\npreserve ABI compatibility. This approach begins to align DPDK with those\nprojects that declare major ABI versions (e.g. version 2.x, 3.x) and support\nthose versions for some period, typically two years or more.\n\nTo provide an example of how this might work in practice:\n\n * DPDK v20 is declared as the supported ABI version for one year, aligned with\n   the DPDK v19.11 (LTS) release. All library sonames are updated to reflect the\n   new ABI version, e.g. librte_eal.so.20, librte_acl.so.20...\n * DPDK v20.02 .. v20.08 releases are ABI compatible with the DPDK v20 ABI. ABI\n   changes are permitted from DPDK v20.02 onwards, with the condition that ABI\n   compatibility with DPDK v20 is preserved.\n * DPDK v21 is declared as the new supported ABI version for two years, aligned\n   with the DPDK v20.11 (LTS) release. The DPDK v20 ABI is now depreciated,\n   library sonames are updated to v21 and ABI compatibility breaking changes may\n   be introduced.\n\nv8\n * Fixed intermediate build warnings, figure annotations and typo's.\n   (as suggested by John McNamara).\n\nv7\n * PNGs are now SVG. Some additional clarifications. Fixed typos and grammatical\n   errors. (as suggested by Thomas Monjalon and David Marchand)\n\nv6\n * Added figure to abi_policy.rst, comparing and contrasting the DPDK abi and\n   api. (as suggested by Aaron Conole)\n\nv5\n * Added figure to abi_policy.rst, mapping abi versions and abi compatibility to\n   DPDK releases. (as suggested by Neil Horman)\n\nv4\n * Removed changes to stable.rst, fixed typos and clarified the ABI policy\n   \"warning\".\n\nv3\n * Added myself as the maintainer of the ABI policy.\n * Updated the policy and versioning guides to use the year of the LTS+1 (e.g.\n   v20), as the abi major version number.\n\nv2\n * Restructured the patch into 3 patches:\n   1. Splits the original versioning document into an ABI policy document\n     and ABI versioning document.\n   2. Add changes to the policy document introducing major ABI versions.\n   3. Fixes up the versioning document in light of major ABI versioning. \n * Reduces the initial ABI stability from two years to one year, with a review\n   after the first year.\n * Adds detail around ABI version handling for experimental libraries.\n * Adds detail around chain of responsility for removing deprecated symbols.\n\n\nRay Kinsella (4):\n  doc: separate versioning.rst into version and policy\n  doc: changes to abi policy introducing major abi versions\n  doc: updates to versioning guide for abi versions\n  doc: add maintainer for abi policy\n\n MAINTAINERS                                        |    4 +\n doc/guides/contributing/abi_policy.rst             |  321 ++++++\n doc/guides/contributing/abi_versioning.rst         |  515 ++++++++++\n .../contributing/img/abi_stability_policy.svg      | 1059 ++++++++++++++++++++\n doc/guides/contributing/img/what_is_an_abi.svg     |  382 +++++++\n doc/guides/contributing/index.rst                  |    3 +-\n doc/guides/contributing/patches.rst                |    6 +-\n doc/guides/contributing/stable.rst                 |   12 +-\n doc/guides/contributing/versioning.rst             |  591 -----------\n doc/guides/rel_notes/deprecation.rst               |    6 +-\n 10 files changed, 2293 insertions(+), 606 deletions(-)\n create mode 100644 doc/guides/contributing/abi_policy.rst\n create mode 100644 doc/guides/contributing/abi_versioning.rst\n create mode 100644 doc/guides/contributing/img/abi_stability_policy.svg\n create mode 100644 doc/guides/contributing/img/what_is_an_abi.svg\n delete mode 100644 doc/guides/contributing/versioning.rst"
}