Show a cover letter.

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

{
    "id": 2227542,
    "url": "http://patchwork.ozlabs.org/api/covers/2227542/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260423220022.2180059-1-jsnow@redhat.com/",
    "project": {
        "id": 14,
        "url": "http://patchwork.ozlabs.org/api/projects/14/?format=api",
        "name": "QEMU Development",
        "link_name": "qemu-devel",
        "list_id": "qemu-devel.nongnu.org",
        "list_email": "qemu-devel@nongnu.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20260423220022.2180059-1-jsnow@redhat.com>",
    "list_archive_url": null,
    "date": "2026-04-23T22:00:09",
    "name": "[00/12] qapi: add formal \"intro\" section",
    "submitter": {
        "id": 64343,
        "url": "http://patchwork.ozlabs.org/api/people/64343/?format=api",
        "name": "John Snow",
        "email": "jsnow@redhat.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/qemu-devel/cover/20260423220022.2180059-1-jsnow@redhat.com/mbox/",
    "series": [
        {
            "id": 501255,
            "url": "http://patchwork.ozlabs.org/api/series/501255/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/qemu-devel/list/?series=501255",
            "date": "2026-04-23T22:00:11",
            "name": "qapi: add formal \"intro\" section",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/501255/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2227542/comments/",
    "headers": {
        "Return-Path": "<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>",
        "X-Original-To": "incoming@patchwork.ozlabs.org",
        "Delivered-To": "patchwork-incoming@legolas.ozlabs.org",
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=redhat.com header.i=@redhat.com header.a=rsa-sha256\n header.s=mimecast20190719 header.b=ZIKzh/fj;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"
        ],
        "Received": [
            "from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g1qmd0h5kz1yJn\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 08:01:19 +1000 (AEST)",
            "from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wG26F-0005gL-2p; Thu, 23 Apr 2026 18:00:43 -0400",
            "from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <jsnow@redhat.com>) id 1wG26D-0005fr-Se\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 18:00:41 -0400",
            "from us-smtp-delivery-124.mimecast.com ([170.10.133.124])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <jsnow@redhat.com>) id 1wG26B-0005mP-JG\n for qemu-devel@nongnu.org; Thu, 23 Apr 2026 18:00:41 -0400",
            "from mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com\n (ec2-35-165-154-97.us-west-2.compute.amazonaws.com [35.165.154.97]) by\n relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3,\n cipher=TLS_AES_256_GCM_SHA384) id us-mta-54-LvMGL4HeOQyPafX1YdE1FA-1; Thu,\n 23 Apr 2026 18:00:28 -0400",
            "from mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com\n (mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.4])\n (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n (No client certificate requested)\n by mx-prod-mc-06.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS\n id 227D818003F6; Thu, 23 Apr 2026 22:00:27 +0000 (UTC)",
            "from jsnow-thinkpadp16vgen1.westford.csb (unknown [10.22.64.143])\n by mx-prod-int-01.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP\n id E55CC30078C2; Thu, 23 Apr 2026 22:00:23 +0000 (UTC)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com;\n s=mimecast20190719; t=1776981637;\n h=from:from:reply-to:subject:subject:date:date:message-id:message-id:\n to:to:cc:cc:mime-version:mime-version:content-type:content-type:\n content-transfer-encoding:content-transfer-encoding;\n bh=Az8FOwflkNU6LVUkwPy9FYx12SR+O87ECfoZMmd72YA=;\n b=ZIKzh/fjAPm3WtZtvegLL0QiryEqrr+c4k72GiADHrWj7B11Vbj9icesF1I5G6Ta/pUSDq\n px3bO02Ms+WgJUzPCBEUCVz1uLEDB3RvclNJQWUUg5MRHNyTmC53x8Pyi/5EqgTCSXo3uw\n Zg2Zzx24QgfirJ850l0fDg0/iSQppXw=",
        "X-MC-Unique": "LvMGL4HeOQyPafX1YdE1FA-1",
        "X-Mimecast-MFC-AGG-ID": "LvMGL4HeOQyPafX1YdE1FA_1776981627",
        "From": "John Snow <jsnow@redhat.com>",
        "To": "qemu-devel@nongnu.org",
        "Cc": "Igor Mammedov <imammedo@redhat.com>,\n Mauro Carvalho Chehab <mchehab+huawei@kernel.org>,\n \"Michael S. Tsirkin\" <mst@redhat.com>, Michael Roth <michael.roth@amd.com>,\n Markus Armbruster <armbru@redhat.com>, Ani Sinha <anisinha@redhat.com>,\n Gerd Hoffmann <kraxel@redhat.com>, Eric Blake <eblake@redhat.com>,\n Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>, =?utf-8?q?Philippe_Ma?=\n\t=?utf-8?q?thieu-Daud=C3=A9?= <philmd@linaro.org>, =?utf-8?q?Marc-Andr=C3=A9?=\n\t=?utf-8?q?_Lureau?= <marcandre.lureau@redhat.com>,\n Richard Henderson <richard.henderson@linaro.org>,\n Paolo Bonzini <pbonzini@redhat.com>,\n Peter Maydell <peter.maydell@linaro.org>, John Snow <jsnow@redhat.com>",
        "Subject": "[PATCH 00/12] qapi: add formal \"intro\" section",
        "Date": "Thu, 23 Apr 2026 18:00:09 -0400",
        "Message-ID": "<20260423220022.2180059-1-jsnow@redhat.com>",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "quoted-printable",
        "X-Scanned-By": "MIMEDefang 3.4.1 on 10.30.177.4",
        "Received-SPF": "pass client-ip=170.10.133.124; envelope-from=jsnow@redhat.com;\n helo=us-smtp-delivery-124.mimecast.com",
        "X-Spam_score_int": "-20",
        "X-Spam_score": "-2.1",
        "X-Spam_bar": "--",
        "X-Spam_report": "(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001,\n DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001,\n SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no",
        "X-Spam_action": "no action",
        "X-BeenThere": "qemu-devel@nongnu.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "qemu development <qemu-devel.nongnu.org>",
        "List-Unsubscribe": "<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>",
        "List-Archive": "<https://lists.nongnu.org/archive/html/qemu-devel>",
        "List-Post": "<mailto:qemu-devel@nongnu.org>",
        "List-Help": "<mailto:qemu-devel-request@nongnu.org?subject=help>",
        "List-Subscribe": "<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>",
        "Errors-To": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org",
        "Sender": "qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"
    },
    "content": "Hiya, this is a series that explores a potential syntax for a\ndesignated \"Intro\" section. Markus knows why I want this, but for\neveryone else: a designated \"Introduction\" section is useful for the\ndesired \"inliner\" feature for the new QAPI doc system. Commits explain\na bit more. This is prep work and doesn't really change anything\ntangibly except source code syntax for the QAPI docs.\n\nIt is designed so that this conversion can happen incrementally with\nno actual difference to the rendered manuals, so each QAPI module can\nbe converted one at a time for easier review and merging in an\narbitrary order.\n\nThis series demonstrates conversion of just four modules; if I'm given\na thumbs up, I will convert the rest of QAPI, one module (or\nmaintainer stanza) per patch like how I handled adding\ncross-references.\n\nJohn Snow (12):\n  tests/qapi: generate output in source order\n  qapi/docs: remove unused QAPIDoc subsection members\n  qapi/docs: make remaining subsection members \"private\"\n  qapi/docs: add \"Intro\" section\n  qapi/docs: adjust stub member insertion algorithm\n  qapi/docs: remove implicit Plain section\n  qapi/docs: add \"Intro\" section parsing\n  qapi/docs: Add rendering for INTRO sections\n  qapi: convert intro sections for accelerator.json\n  qapi: convert intro sections for acpi-hest.json\n  qapi: convert intro sections for acpi.json\n  qapi: convert intro sections for audio.json\n\n docs/devel/qapi-code-gen.rst            |  17 +-\n docs/sphinx/qapidoc.py                  |  52 +++---\n qapi/accelerator.json                   |  24 +--\n qapi/acpi-hest.json                     |   5 +-\n qapi/acpi.json                          |  23 +--\n qapi/audio.json                         | 112 ++++---------\n .editorconfig                           |   1 +\n scripts/qapi/parser.py                  | 204 ++++++++++++++----------\n tests/qapi-schema/doc-good.out          |  30 ++--\n tests/qapi-schema/doc-missing-colon.err |   2 +-\n tests/qapi-schema/test-qapi.py          |  15 +-\n 11 files changed, 239 insertions(+), 246 deletions(-)"
}