Show a cover letter.

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

{
    "id": 126818,
    "url": "http://patches.dpdk.org/api/covers/126818/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/cover/20230511091408.236638-1-juraj.linkes@pantheon.tech/",
    "project": {
        "id": 1,
        "url": "http://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": "<20230511091408.236638-1-juraj.linkes@pantheon.tech>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20230511091408.236638-1-juraj.linkes@pantheon.tech",
    "date": "2023-05-11T09:14:04",
    "name": "[RFC,v3,0/4] dts: add dts api docs",
    "submitter": {
        "id": 1626,
        "url": "http://patches.dpdk.org/api/people/1626/?format=api",
        "name": "Juraj Linkeš",
        "email": "juraj.linkes@pantheon.tech"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/cover/20230511091408.236638-1-juraj.linkes@pantheon.tech/mbox/",
    "series": [
        {
            "id": 27977,
            "url": "http://patches.dpdk.org/api/series/27977/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=27977",
            "date": "2023-05-11T09:14:04",
            "name": "dts: add dts api docs",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/27977/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/covers/126818/comments/",
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 3532142A1B;\n\tThu, 11 May 2023 11:14:14 +0200 (CEST)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 0AF9242D62;\n\tThu, 11 May 2023 11:14:14 +0200 (CEST)",
            "from mail-ej1-f53.google.com (mail-ej1-f53.google.com\n [209.85.218.53]) by mails.dpdk.org (Postfix) with ESMTP id 13DA542D5E\n for <dev@dpdk.org>; Thu, 11 May 2023 11:14:13 +0200 (CEST)",
            "by mail-ej1-f53.google.com with SMTP id\n a640c23a62f3a-965ddb2093bso1171979066b.2\n for <dev@dpdk.org>; Thu, 11 May 2023 02:14:13 -0700 (PDT)",
            "from localhost.localdomain (ip-46.34.233.151.o2inet.sk.\n [46.34.233.151]) by smtp.gmail.com with ESMTPSA id\n qa8-20020a170907868800b0096a2eaa508asm1710090ejc.168.2023.05.11.02.14.11\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 11 May 2023 02:14:12 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=pantheon-tech.20221208.gappssmtp.com; s=20221208; t=1683796452;\n x=1686388452;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=iZ67FlUPvyhC6HUz4gn9YPIE7TNVrtCKCUUe5RkfDVk=;\n b=iv56oxt9QQmGy6m4VjKAjltzHlLKh2be7HsuZD/op5KLsRD7alJwl1D2dPSiX28ZuQ\n ZIHqo3/bmcNzJ3bTmhIvL0TahDJvNLiuReGjQE3X0bY5TFrkyXjOTbrxZ40yXf8PyU1L\n c7M230PIgadSyMfHrEU4xyQGM6DfBy1qUnk3iq7ZylhoCSLIFibdsWDmMSZ//BHMTAEs\n wNJlG1bAvbBtflBzPAeGG2y7ct6OL0hclbfDqJT4+Bn6G2UI7QtI8HNoujzWWkNuGLIq\n i+4/jmTs55sKFcnCStZvS+CfAoH79tiETgkpybP7a2I0ea4ca2t1I3FGoorNuDcKLk+7\n oTIg==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20221208; t=1683796452; x=1686388452;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=iZ67FlUPvyhC6HUz4gn9YPIE7TNVrtCKCUUe5RkfDVk=;\n b=gDxQY5unKfp/0NIj/LKLnGd6lYbyDussIY/TqSDIBLAgmuGSPai1Py+SuezBXJE7f+\n 0DpLEJ0YxIvcEA7LvrZ3PEpB2jF2g/HSRI2zcY1G0XTfELQWRnlTSc+t2kimHJlE2aLS\n Easm6agY/S1+aMbrxoO70Xe9B/tqpJAjVO0jduc0sl5/RqyqRp28/9xXdYX17abqeqX8\n kFZtGvC1dtZgBK8ZeRdyKYiGr6vLmpY6vUQUvJEP767qxqwUYmE6sA//89gsrI3qNIHD\n N01SzSx+bxwO1O4twCUwjN8T1TXXwvY6om8KVuHIZZcG84lK0yAbXqWyg9ofzr1ZpTp1\n NX7A==",
        "X-Gm-Message-State": "AC+VfDwkabHhM3S5uhQW+qAaR8x+HDBLLp3hx1k2s6yduP5qvv2gN+CL\n 8cpo/De5akEEc43d03eIc1TYXg==",
        "X-Google-Smtp-Source": "\n ACHHUZ7xqjSVaL3NlNB6nZpYRqNhhgP0Ulmy+Pq7C+HwiIZQGkNhL/Ir+SwkR5mgdvrBqr/46CDuxQ==",
        "X-Received": "by 2002:a17:907:3d9e:b0:96a:bb6:7309 with SMTP id\n he30-20020a1709073d9e00b0096a0bb67309mr8325231ejc.62.1683796452676;\n Thu, 11 May 2023 02:14:12 -0700 (PDT)",
        "From": "=?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>",
        "To": "thomas@monjalon.net, Honnappa.Nagarahalli@arm.com, lijuan.tu@intel.com,\n bruce.richardson@intel.com, wathsala.vithanage@arm.com,\n jspewock@iol.unh.edu, probb@iol.unh.edu",
        "Cc": "dev@dpdk.org, =?utf-8?q?Juraj_Linke=C5=A1?= <juraj.linkes@pantheon.tech>",
        "Subject": "[RFC PATCH v3 0/4] dts: add dts api docs",
        "Date": "Thu, 11 May 2023 11:14:04 +0200",
        "Message-Id": "<20230511091408.236638-1-juraj.linkes@pantheon.tech>",
        "X-Mailer": "git-send-email 2.30.2",
        "In-Reply-To": "<20230504123749.1417259-1-juraj.linkes@pantheon.tech>",
        "References": "<20230504123749.1417259-1-juraj.linkes@pantheon.tech>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=UTF-8",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "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"
    },
    "content": "Augment the meson build system with dts api generation. The api docs are\ngenerated from Python docstrings in DTS using Sphinx. The format of\nchoice is the Google format [0].\n\nThe guides html sphinx configuration is used to preserve the same style.\n\nThe build requires the same Python version and dependencies as DTS,\nbecause Sphinx imports the Python modules. Dependencies are installed\nusing Poetry from the dts directory:\n\npoetry install --with docs\n\nAfter installing, enter the Poetry shell:\n\npoetry shell\n\nAnd then run the build:\nninja -C <meson_build_dir> dts/doc\n\nThere's only one properly documented module that serves as a\ndemonstration of the style - framework.testbed_model.node. When we agree\non the docstring format, all docstrings will be reformatted.\n\n[0] https://google.github.io/styleguide/pyguide.html#s3.8.4-comments-in-classes\n\nJuraj Linkeš (4):\n  dts: code adjustments for sphinx\n  dts: add doc generation dependencies\n  dts: add doc generation\n  dts: format docstrigs to google format\n\n buildtools/call-sphinx-build.py               |  29 +-\n doc/api/meson.build                           |   1 +\n doc/guides/conf.py                            |  22 +-\n doc/guides/meson.build                        |   1 +\n doc/guides/tools/dts.rst                      |  29 +\n dts/doc/doc-index.rst                         |  20 +\n dts/doc/meson.build                           |  51 ++\n dts/framework/config/__init__.py              |  11 +\n .../{testbed_model/hw => config}/cpu.py       |  13 +\n dts/framework/dts.py                          |   8 +-\n dts/framework/remote_session/__init__.py      |   3 +-\n dts/framework/remote_session/linux_session.py |   2 +-\n dts/framework/remote_session/os_session.py    |  12 +-\n .../remote_session/remote/__init__.py         |  16 -\n .../{remote => }/remote_session.py            |   0\n .../{remote => }/ssh_session.py               |   0\n dts/framework/settings.py                     |  55 +-\n dts/framework/testbed_model/__init__.py       |  10 +-\n dts/framework/testbed_model/hw/__init__.py    |  27 -\n dts/framework/testbed_model/node.py           | 164 ++--\n dts/framework/testbed_model/sut_node.py       |   9 +-\n .../testbed_model/{hw => }/virtual_device.py  |   0\n dts/main.py                                   |   3 +-\n dts/meson.build                               |  16 +\n dts/poetry.lock                               | 770 ++++++++++++++++--\n dts/pyproject.toml                            |   7 +\n dts/tests/TestSuite_hello_world.py            |   6 +-\n meson.build                                   |   1 +\n meson_options.txt                             |   2 +\n 29 files changed, 1058 insertions(+), 230 deletions(-)\n create mode 100644 dts/doc/doc-index.rst\n create mode 100644 dts/doc/meson.build\n rename dts/framework/{testbed_model/hw => config}/cpu.py (95%)\n delete mode 100644 dts/framework/remote_session/remote/__init__.py\n rename dts/framework/remote_session/{remote => }/remote_session.py (100%)\n rename dts/framework/remote_session/{remote => }/ssh_session.py (100%)\n delete mode 100644 dts/framework/testbed_model/hw/__init__.py\n rename dts/framework/testbed_model/{hw => }/virtual_device.py (100%)\n create mode 100644 dts/meson.build"
}