From patchwork Tue Jun 16 05:20:07 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: ChenQi X-Patchwork-Id: 90162 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 13FF2CD98DA for ; Tue, 16 Jun 2026 05:20:30 +0000 (UTC) Received: from mx0a-0064b401.pphosted.com (mx0a-0064b401.pphosted.com [205.220.166.238]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.147732.1781587223297873743 for ; Mon, 15 Jun 2026 22:20:23 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@windriver.com header.s=PPS06212021 header.b=HmTd0cb4; spf=permerror, err=parse error for token &{10 18 %{ir}.%{v}.%{d}.spf.has.pphosted.com}: invalid domain name (domain: windriver.com, ip: 205.220.166.238, mailfrom: prvs=06275b3310=qi.chen@windriver.com) Received: from pps.filterd (m0250810.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 65G4qepN2727607; Mon, 15 Jun 2026 22:20:22 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=windriver.com; h=cc:content-transfer-encoding:content-type:date:from :message-id:mime-version:subject:to; s=PPS06212021; bh=dLp/MHL5l aFvhTEMhWR3mUEYVlchWbqLLvWR8GQjy9M=; b=HmTd0cb4yggWnr5mVhZmpI7qY gyalvxWxtOV9Ko1TO2lNRaoUv46ePTrf9JsHvLSD9p4V7bkMp0w0zkjk70xdZTiN LBmqS+tbZyQZ+UZuq7hGnqyaxtP9vWckrTLRo6ZCp8aqlM/v2w3aJlgLYNWY32z8 eFhSaAg/6eqhRuPBXnzkHCR2vLdYLIYx7jOpx6hpjjXdMC04NQPy7P26ZbPPzV/K 0e+Xn19c6NgqJ9DyVTMljjsoL/pKl1qnuZ6iatrsiyvRxoNVHEK0URLSmGQex2Wv QBpICDihQejF2i8g8UoyM6Hchcg/AfHEMILQSwe/mENTe8tE3RAT66RKzIPVA== Received: from cy7pr03cu001.outbound.protection.outlook.com (mail-westcentralusazon11010063.outbound.protection.outlook.com [40.93.198.63]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 4es2g0bxpt-2 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Mon, 15 Jun 2026 22:20:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nsqsAIcDoPrgBMqAtbJdGwiivjunT/Xh1DtjuzyuiMqbdIVelBg7JNeEcUtgE8WgtkL9OtCBdzPoAkPJ6tddpIklEH4+HUvsEthhp/gnZDDe2Yr2B3nr1bLWHwNHFtkcC44LqaZvCqAPQ1mA+id6LhEA2khMic3pVOU1/XI0Z0IvAN5BEx4zHXf/0EzkQ3XzrTGFyJyPWJWn+pD1U3Csmx7LH16zMoDi/Uz+SSCB2c5HLdjuQYkB0hJsIQr01CGZJ1S5h3lBgYhtZx+u/XYURRidvvlwxPK08ezpMTH1eh/UI8l6luIT5DctFtvgI1yyWBv8vIFI9E5qvTiUbFd4DQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=dLp/MHL5laFvhTEMhWR3mUEYVlchWbqLLvWR8GQjy9M=; b=Q7JseK0inCjE7NL46oKrEk/cJKuhBNjCDAqTidtdcKDCIbqPvSjXM9Ttr6vyuHF3v0Z6rNnM122IbDbxHAaaTHAI1LdZpYS3NmMOC7F38/6Fz+yVRxRipw2zMgqxcvv8XenRKvXlBvgpK8UMtXSI9VA0Aq8PHJHQ8JZ3gwR5Hgx+598QcxjcGXtJvpLpJRSLIr7KWb7Ot4qmP5pwdWN2WgPc028iFO8JF9XlEody3sFDIPZDtp7+5b28Ngqr3Yi8o/Dz/DEma3dGK+kV64cjAmLPy9vL/vjkvAJ1vE7+l+LHuMqsueTprZ0R3hG8rSVJdXMCYiz8ik7Ygpd1wEMe6A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=windriver.com; dmarc=pass action=none header.from=windriver.com; dkim=pass header.d=windriver.com; arc=none Received: from CO6PR11MB5602.namprd11.prod.outlook.com (2603:10b6:303:13a::5) by PH8PR11MB9533.namprd11.prod.outlook.com (2603:10b6:510:39f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.113.18; Tue, 16 Jun 2026 05:20:19 +0000 Received: from CO6PR11MB5602.namprd11.prod.outlook.com ([fe80::5ad6:8f90:b01d:2c62]) by CO6PR11MB5602.namprd11.prod.outlook.com ([fe80::5ad6:8f90:b01d:2c62%3]) with mapi id 15.21.0113.015; Tue, 16 Jun 2026 05:20:19 +0000 From: Qi.Chen@windriver.com To: docs@lists.yoctoproject.org Cc: alex.kanavin@gmail.com, paul@pbarker.dev, Randy.MacLeod@windriver.com Subject: [docs][PATCH V2 1/3] ref-manual/classes.rst: add upstream-stable-release-point class documentation Date: Mon, 15 Jun 2026 22:20:07 -0700 Message-ID: <20260616052012.3286114-1-Qi.Chen@windriver.com> X-Mailer: git-send-email 2.54.0 X-ClientProxiedBy: SJ0PR03CA0170.namprd03.prod.outlook.com (2603:10b6:a03:338::25) To CO6PR11MB5602.namprd11.prod.outlook.com (2603:10b6:303:13a::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR11MB5602:EE_|PH8PR11MB9533:EE_ X-MS-Office365-Filtering-Correlation-Id: 09656c63-2af7-489b-11ac-08decb66f4db X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|23010399003|38350700014|18002099003|11063799006|56012099006; X-Microsoft-Antispam-Message-Info: jVyMUwL1/BM1AOSLv9YdEeMKvLO8Sl9SJzG+ypVsJUU9yqJB96j+C60TX5EZ5lG/C8hEiRVWt4g4dMTBOSAoBqaw8kAkkrdN3afhGszXLk0sVT51UJ+jLO/HiSFnSnZ9iZM/AuO77MvlqyFJ4IF2HtV9iXcLq+eM6787IfSX5nA6ZYRknEFxz+zsNrywop04XftL4+3DETroSzgosq3bggWOu+Vfqw88M59BLQ/V7tSHdd98tKwsb3OvAQ+b3YwJ9Kh0RHvg23sBWg+Vt62kYe79weQrZ1P/5obvyxVLG5BNlW9gvXQxYc2MhG/hG4e6iqTY+bmfk8qu7Eol/q+aK29IDMyEtn7miJzgzrjVNpPer3YeprqH7mf2nQHM9PRw/ug/z/erOX6wMgu2C4XVEnKahfXx7uD4LCObxx5/bjy2zXOLntp96aUAhoQGIdeEsuKR/ANxdTqf/astKUoumwlpc62QZRl3hh+mWn1/17b01J4DBOjvyHOXx/FSyfKCr+2nRAeBiQDyq72FhgX6EmS4vGzKLMXBBf19hqET8MeZnsjSwcYpN3so0mPgVMqLO26QwzxOxAFs5MDNGOhqcZmfez9CVRTG/XqrRk7cuOgpNK2Tdteztpwg7LlCGp4i6afsIcd73qdA2ypsMzCENeeZ07BoQ+d5yUSqNQUIi7nfLTy/XodXfZkjMGwwCSbyJ+lyJOpCKPC0Nr1m8AwOdqgTt8oHL3/vdxwEwhukJz3xKLhvFr1MbRss2IMBeQI9 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR11MB5602.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(23010399003)(38350700014)(18002099003)(11063799006)(56012099006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?8hUC/MJw7+kAlXafD+wzqFR2FWNp?= =?utf-8?q?x2d9xMUmAelCVC6fo87d1tqtWUAr83am/+jcm//xrg1Q7r//Gbg6TvDv7vlmPMcFh?= =?utf-8?q?EcFA7me7swe7RlqYzK7ak2M/nqPSJTZuLraEAbbBmNb0yVRGNc4mbK6c61oPjSMqX?= =?utf-8?q?Gw+q+Sx25biDzX5sN6SQ2fjmmArsjd+3yro51NypBrQvfl7ktYlxA31WnW8zp05Dq?= =?utf-8?q?mIh8cZDMOVJj4vt2K9ObebBzJSfHpwbAi+kRy7WA+BoKzFTSa8rSFJ/28LlFFr83Z?= =?utf-8?q?Q538migg1nbEzwpgYHXJRq8xCLx2DJ1FKUBHfOokf7MMPPcR9QMtYXIPmRiNATeCh?= =?utf-8?q?S+NWvw0ugOLM5xU/5q0xI2BVPQOoqfiDGwaGBpS60VRHXJ5giJXIA9y03l0k14bla?= =?utf-8?q?kYXV4+OXMu9yi6zbRJBaJMyemCzbV/IlyXaJ5DijMdIkadfxhe5YbfG4gDqNc4mQr?= =?utf-8?q?0zs2vaVSLwZXnaQU6qg/Ayf8ZNaaQJOf/9sKhv20hSf2MM7FEji0v9FT71bgOtwXd?= =?utf-8?q?4YwObT/8QYl7bAiTDsMhfXiR8iXG25QGdvFyi2jUDfi+oFEp1mQJ5fIZJO7XlBagz?= =?utf-8?q?8rBvmsFR2vSxrHi/KFezeQqzbW/Q20KLo0eyt1BVGqa9ZNW8x7pd/wgkRpxTJL662?= =?utf-8?q?Hd9V4DuCgHOtCCTgrvBg0shtTGB4QwpSMSAHxiRRq7DNqS3f+n2XiLaVLOwPjM0Dp?= =?utf-8?q?4pf9Wt3UNMOgcnQyiS8BXLIQNMb/GlElThhv8UPvrneTcSCMm03wMT8E4vdo+rMkT?= =?utf-8?q?lmo+VJeYYJGL10v+vjhmu3z+pkTFqJwILK/gjppCPwV2puXgdvCTDGDLkdW6BOsR+?= =?utf-8?q?xmm6AmN6L6Dy/bb73Jwzz1h/dmntOnkIWruhPZy+JopVLXn7dQ01IqOk9UsO6lQLf?= =?utf-8?q?GyAPYuRukz7NKiMurws3vRl8vHxJAZL/C53u2iRlPsXxj2O4f/qCEZ9LaOc55Gi4w?= =?utf-8?q?1IysaKjTk4p2PEgDGtuYAZ1zppJVC5UGVgaoUI7iUnXOWi4h0UpPQsNwFlMKojUUP?= =?utf-8?q?xPsB6jHR07/VQ428sExBa392glCUstykuQdWLp/Owtsud/sSrGe8H3dUXQLLoJY98?= =?utf-8?q?5G8/MzJkcKhnlZUjp/7HvUCxaICxd3ChTAUqPBebnlqBkeCZrADU6510+1hVwnfA4?= =?utf-8?q?96XnbpZbDcNLKwJQVkc89NEY3vfFsfJsWE5Pa6IxVZ+jMVcjMPNk5sMqLfd8B5kBi?= =?utf-8?q?tZajYV+1dnC+5oyBhTzuTVyOplhn107W8PkADeVLbJGGtYFCL/MyuXpC6Io6NGrI+?= =?utf-8?q?aq2E0xcNTeknMeX/NsppfTpY0vy5dM3urFdHfmfwL7iVgTpQRrGdlryf6hbIdQSmk?= =?utf-8?q?kI2yWjYCz0q3oJWBQfZldf0t1srXrygqfHfRTM6cQcB/h1aQPFMJHetvZyWePNk3a?= =?utf-8?q?s85OAYtC9bzhyXzmTPpzJaOha7gHQ2xT2lldzI/lnCLxfx53lG1vezSil+809onKx?= =?utf-8?q?2GD8y1Mb/QndyHnio7V4e9VOwlkmxO/gexMnre1WfUVFkyeRHEvgu/K1jVh7su9Mj?= =?utf-8?q?dlW0go5BjzqGad1Jy6cUK06/ZOlDs89pgrkF3y22vxCJ3PXPQC5Qc3XyV6x3CnbIu?= =?utf-8?q?k/UcrG6gB5RNC3Ea63LtcWkFmkPHF2RFJOV0pDji/63lqfR7J63HyhWtEDtJ5fFbJ?= =?utf-8?q?8LKp0JvnOiAdBB/a/8wA37nPtJpCiv1g=3D=3D?= X-Exchange-RoutingPolicyChecked: ISuBG8IuhGWij913uv3NNBmkwR2etUaqn+DYRiyRU+jYI9mwYzQ79Aw0G3Wla4AzdjCjUgZWN+u4lBsx22zGhcnkRmCfg7ZfB5lKTI3e4exK2fE3/DYhdpzNycHDn4iTURIslmTStKHrM+C0vspXWDcbJLTo1KqY33nUf7kcyh8jk9AoW32TtmB198UScoo4Lf1UAH20Rv0/GA619Vpv5LgqpAtTM/7f126alMwpISviUPALdcnBpAokixpzsmZiJmqBKRTuFft3NKtTm2Hy1NMpLTpqS2WfrhJmf5ezaNYMg5kspS7X/KzmCclnnGALq33azeSImal8R5DzJje+OQ== X-OriginatorOrg: windriver.com X-MS-Exchange-CrossTenant-Network-Message-Id: 09656c63-2af7-489b-11ac-08decb66f4db X-MS-Exchange-CrossTenant-AuthSource: CO6PR11MB5602.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2026 05:20:19.0027 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ddb2873-a1ad-4a18-ae4e-4644631433be X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: yli0oGop0yJnnNPwG+/VNHfdxoaXh74QPSF2H3E8cQhXZOhiZ8heEoGzL7SAi0aKzOjpKD7D+tWrFjQGRr38nA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB9533 X-Authority-Analysis: v=2.4 cv=ZJ/nX37b c=1 sm=1 tr=0 ts=6a30dd16 cx=c_pps a=nBoeifw3k4y6eW1CqgP3Vw==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=VkNPw1HP01LnGYTKEx00:22 a=bi6dqmuHe4P4UrxVR6um:22 a=HK-ge7EqtdluswH-FwHe:22 a=t7CeM3EgAAAA:8 a=ljOHmGDoImW_DtJpQMQA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=FdTzh2GWekK77mhwV6Dw:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjE2MDA1MCBTYWx0ZWRfXxnEbniQfTb90 u8dS5fTfDVKX+Ksccrgir5cyxs08A71atjL0LpcOMEK+Ee8hBhdMqZpl42ZzTHyhlujyPZ14g5y 2afnMOD2qaG2XH6wcz1cLcMgrT0Cz7x2NtNNlQjtW3RMo9gWzvEb+oUyiAtzW7lkWr81QdpVXyc eC+n7cNK6SRBhfzDUiQbNe0hSgoz2jCNKqdmmt/V41K+J1JKOHOX4ypAVMHn9lRFHo62MqZJjsZ SJZzJDxvNr+TqK5jbfxkvG5H5xQTUkJb5Xwbw98vrbYNWPM3HH1Lik1iwls11zMNMGk1Z3BvE45 f05nDuJkG3N6Y+OqDI7ZMSB0eVPiF05xJd0Khu7smnDzXMFp279zdl+SNrjaXbTgqx0iASvBnT2 3xess+BlGTqe3Kju6b4bjLEiM1ErRjxiAS8g9YeNLh/A4bkHwjKmU3JyQJcae62EMyEmQJuXaSn cbGf2OAictzxHJLDZSg== X-Proofpoint-ORIG-GUID: E3_35AFPItwWHhJ_gYUtu_QFHxgWfe7J X-Proofpoint-Spam-Info: AW1haW4tMjYwNjE2MDA1MCBTYWx0ZWRfX6AEkgOeZs5Zm nm+qaUNd3G5kyt92P7QahTS999ZkAfV+QXn78M7VIRDwFZT2e2g9dEhkrU29Uz+JHFqhIg05wFh ryQlCqMkDbzvUvpVpAi6CR34w3CThhyk/TbPZs0F/TcRgRnEADyf X-Proofpoint-GUID: E3_35AFPItwWHhJ_gYUtu_QFHxgWfe7J X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-16_01,2026-06-15_04,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 clxscore=1015 lowpriorityscore=0 suspectscore=0 spamscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606040000 definitions=main-2606160050 X-MIME-Autoconverted: from 8bit to quoted-printable by mx0a-0064b401.pphosted.com id 65G4qepN2727607 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 16 Jun 2026 05:20:30 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/9727 From: Chen Qi Document the upstream-stable-release-point bbclass which automatically generates UPSTREAM_STABLE_RELEASE_REGEX for recipes with dot-separated version schemes, enabling stable point release upgrades. Signed-off-by: Chen Qi --- documentation/ref-manual/classes.rst | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst index 95e07f85a..f0d9b1d55 100644 --- a/documentation/ref-manual/classes.rst +++ b/documentation/ref-manual/classes.rst @@ -3655,6 +3655,30 @@ Three variables control this class: :term:`INITSCRIPT_PACKAGES`, :term:`INITSCRIPT_NAME` and :term:`INITSCRIPT_PARAMS`. See the variable links for details. +.. _ref-classes-upstream-stable-release-point: + +``upstream-stable-release-point`` +================================= + +The :ref:`ref-classes-upstream-stable-release-point` class automatically +generates the :term:`UPSTREAM_STABLE_RELEASE_REGEX` variable for recipes +whose version uses a dot-separated scheme. This enables stable point release +upgrades — version upgrades constrained to the same stable series (e.g. +``1.4.2`` to ``1.4.3`` but not to ``1.5.0``). + +The class uses the :term:`STABLE_VERSION_PARTS` variable (defaults to ``"2"``) +to determine how many leading dot-separated parts of :term:`PV` constitute the +stable prefix. For example: + +- With ``PV = "1.4.2"`` and ``STABLE_VERSION_PARTS = "2"`` (default), the + generated regex is ``^1\.4(\.\d+)*$``. +- With ``PV = "259.5"`` and ``STABLE_VERSION_PARTS = "1"`` (e.g. systemd), the + generated regex is ``^259(\.\d+)*$``. + +For recipes whose stable version part is not dot-separated (e.g. openssh uses +``10.2p1``), set :term:`UPSTREAM_STABLE_RELEASE_REGEX` directly instead of +inheriting this class. + .. _ref-classes-useradd: ``useradd*`` From patchwork Tue Jun 16 05:20:08 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: ChenQi X-Patchwork-Id: 90161 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0EB27CD98D2 for ; Tue, 16 Jun 2026 05:20:30 +0000 (UTC) Received: from mx0a-0064b401.pphosted.com (mx0a-0064b401.pphosted.com [205.220.166.238]) by mx.groups.io with SMTP id smtpd.msgproc02-g2.147305.1781587223265672813 for ; Mon, 15 Jun 2026 22:20:23 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@windriver.com header.s=PPS06212021 header.b=qoFq+TB3; spf=permerror, err=parse error for token &{10 18 %{ir}.%{v}.%{d}.spf.has.pphosted.com}: invalid domain name (domain: windriver.com, ip: 205.220.166.238, mailfrom: prvs=06275b3310=qi.chen@windriver.com) Received: from pps.filterd (m0250810.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 65G4qepM2727607; Mon, 15 Jun 2026 22:20:21 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=windriver.com; h=cc:content-transfer-encoding:content-type:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= PPS06212021; bh=R01EzcQtMYeD0H1edN23mtvkvwIa84mX8CdACb/Q1Dg=; b= qoFq+TB3AkfYspZsZoQk4OMXbUAkLjbEZAle3TP4VQyD+GVMFTDl2cvhAQPqM0ET qS+swtf5vrXCWkdTO7CFwo3J/ygN4ChsZDsWU54M3LSNRtSX/huXyjLtW/x/HKfj aNT78rRRIQTgDn8ZghYqODEV0CfAp9NdSj7V+rUSjueCJqOxqQDu/2ujdgTHFAF2 tnMYGDDmLeB6vINSxYZxU7Yce2UMIQ6KDL8tRzsq4/DBM8Mm635HQrlu+hO5UtGo lxHR28/pch5kuGSCR0gq151YxodldDAapCkT7Ix8dcuKFyw5TJeTqtwUxTsA/Fh0 tKfapejFTSJLHzHJgp81eQ== Received: from cy7pr03cu001.outbound.protection.outlook.com (mail-westcentralusazon11010063.outbound.protection.outlook.com [40.93.198.63]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 4es2g0bxpt-1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Mon, 15 Jun 2026 22:20:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wPSwqqKnFMr7DY12iWLQzCsMHxjxvyiqdgRFgds5HQX9gFPiwRhyByEVt63pHJxasyiVm8WwrsynMVk3JRZZmV2CzxIRclJupv8ulzGsnsJvFjkouhtOoG605XdD6ibvBaErPVwGNSo1y0REhYORvhzvHnpTtQflxcSiOKP+1/Ktpn16BTCtvF+kxt4+pJCew8LJIGfpv+r8YTeyMphdVqRA914d+q38qhWHEiMVmh55poOM05MoKYQpFL/OAaoauwPAm/1V3jxGbkPmVCXzKJgBCeInvy7BH6nE850+IVNjanKj6RmIbBziIPc9n8Lt1nNmVxEelEbbAHbha4ixQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=R01EzcQtMYeD0H1edN23mtvkvwIa84mX8CdACb/Q1Dg=; b=cLi18eJ7CdGSp/7XFFgZuzFODHvBnrmhPRipt8UZX3CrjJALcFENWM7N/RJSIqlP/JSijGyhFGOGg72uY9uX6DCI9Oa7rXeFMYWvZAGypJknR+34Czyjmx7mjKQpIvQByyAUuBhdsTBIeLxc6Zq0heUX2kU7pOoGnx8t+cZEzVNwtIMSik+07xx9VPOUc358LBaRnrCUHXEKTLLnHef2nQXmWTAIQqe8iYWEwvXFitW4APZxEMKsxmvcm159DhVI/jnLRYdNXX6FD6FLTXJ6rFDMkYcWH6Iboeku3hV+i6NL+fqKOZZyxjrSxDCpzOUFk+YyCyKJD/nTQqvTU2ykpw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=windriver.com; dmarc=pass action=none header.from=windriver.com; dkim=pass header.d=windriver.com; arc=none Received: from CO6PR11MB5602.namprd11.prod.outlook.com (2603:10b6:303:13a::5) by PH8PR11MB9533.namprd11.prod.outlook.com (2603:10b6:510:39f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.113.18; Tue, 16 Jun 2026 05:20:19 +0000 Received: from CO6PR11MB5602.namprd11.prod.outlook.com ([fe80::5ad6:8f90:b01d:2c62]) by CO6PR11MB5602.namprd11.prod.outlook.com ([fe80::5ad6:8f90:b01d:2c62%3]) with mapi id 15.21.0113.015; Tue, 16 Jun 2026 05:20:19 +0000 From: Qi.Chen@windriver.com To: docs@lists.yoctoproject.org Cc: alex.kanavin@gmail.com, paul@pbarker.dev, Randy.MacLeod@windriver.com Subject: [docs][PATCH V2 2/3] ref-manual/variables.rst: add UPSTREAM_STABLE_RELEASE_REGEX and STABLE_VERSION_PARTS Date: Mon, 15 Jun 2026 22:20:08 -0700 Message-ID: <20260616052012.3286114-2-Qi.Chen@windriver.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260616052012.3286114-1-Qi.Chen@windriver.com> References: <20260616052012.3286114-1-Qi.Chen@windriver.com> X-ClientProxiedBy: SJ0PR03CA0170.namprd03.prod.outlook.com (2603:10b6:a03:338::25) To CO6PR11MB5602.namprd11.prod.outlook.com (2603:10b6:303:13a::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR11MB5602:EE_|PH8PR11MB9533:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b6aa2cb-0698-4be0-2c1a-08decb66f526 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|23010399003|38350700014|22082099003|18002099003|11063799006|56012099006; X-Microsoft-Antispam-Message-Info: 8ILvmKPlascBmloxKdFUbkQR7diBBrcfH964eS4VzA2UhmDz3PMAgQTBBiv8qUgKHPGNfezW6tmgN6m7BQnTwlmvMtcCPh4MTLHAOd1acNpMT4XseRP271VaiFC3ZDgor4PQjZXA6ppO6hoeJ5/3Ofk5jUUedSbz7mzVMVsU0oyzwEozFvag274qmB5QZPgGkfQL5xD8xStQC5K+57ePnwMFzIYVUOS/NASPqMI9E8qdnST/gUDf8iCgfxBpj215yA2r9o4U6ArU3mCbYvl/Y/M94YjIohLqyotkyb3P88jn0fTAqenwlbGGl/sW1B1I/pFmmtdbvlB2yfXyMjg6NzzAz4D3zljgBK1tB5CO4HYYFK7WofR1pnDix5AzEK6TLin5CutykX4RW58qV0x5CGO4OEVBDCtAAHHj3xTT7DtMpHPF/Nu1rJ2mvVK+z1xbEwytUT38sJP6EDhK61cCMImOmCqPHRb8GlyvvGtd/Gu2NvPtnI8rRlq3EhTFsrL28zOmc+v8cH2sdKAftoS9K7FmZfGBURiPTgGYD6znnRAfk+EnMIHldIoOlWv4GWyyyxAixFdkJeyKERL2Mt54MygMDR/uzcSCzJ0ZtfjMjpiy+AZ1XXwPEUwKIcFD975rS9HFBwWpo0yBlEuASXrKnmNxWWMpT2kRS6mDGDPj7dtlHYunBowzCCr8DtF0OFq3i51sq12YOGKheK92EJulO2wyQcWXE0wDB5u1GVCkvE9pL2SUYWgDdKN5bPFPizp4 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR11MB5602.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(23010399003)(38350700014)(22082099003)(18002099003)(11063799006)(56012099006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: HfYwUtFTN8zLit+LNpbMEE1mbV6YnK9HtwUG0wlVf/0/5gaZywD3c5zPZYBMgn/j2QbazG6BMHPdt123Y7gmQ/DxKHDPELbweBDf54eqyqJS0th+8d7nhtmAhOBa9sZsKGSno9rZANpEgN8qJXrNR8AnMFBTbmAYyTDy62zfzGlwWh+zbQ4VgoTIBu3IuZFM3a6JRM4pcGgZBCLqcxsIkFec2HN59K1YMGOHWoC7+q5rhxu/CgxQw1vomoaU4EX5uLi8OvvYewHIyrypMHZ2ukGo8zEiiqHwhiU36hrGQnCdwNrs4UJXCpmW7w9nHHZXG8DOANwUPbBpwd3+byLxK+4aP6597xESp4j9I89K6ngK1ZyFm0Kr2dH39R9wcqUdKmvg0Fm8ZouVv85+lGyHw4HV+DtmvHp6LdeKfp525gIlDlsllqcinobB8ahFl+/JrgFOhlgCC3coXf4y0831VeJyYuM+U6vwoxP9ie9GEJqjQnLN4lxUYW2tq3XwAlUSDyDf8M7jyCrzFxBfdX5WH4Pv+Xsmzl/EYwZmxaSxgizVO2ZRGt5rjdRssWaZ6q2Nd1DGxqA+TpXOIY1KVf7NbDJF+x0SzOKAn/1DqASeqNzcVNW1hOsX9YQysWnBy7wFqdSNbTz5S3crV+C3It7ZX8KsXVxMNr4MHGOXjsvQGLDKFZX7zffETmWEXsnRAaca0EPWA3rmC8Uefq7tjS799xu7cqsUYzUtiudbYUxhGS3jx8E05HaZn1yXjMMU1OMNWF+gsGckHWL8LhJcxE9Mu0OXRp7WHtBxHFxgjfVjboQKhU3ENd/HGAOnr0ZNGuQm61uLRwMJboaHIbfmPWbYuQVjICN2ARVpsWQqyvhKwrLmlxAZ0rCAh0FiW102UyqO+Z410dio3kY6O3Q0SKhPdssCBPkVm7O+Gih3psn2AJ/nO5IU+OyaMxuGXv4Bu2jIPuV1IaWD2SvOJmqSfa5iwz/fpggfZZ9HwWm9tg79PMhugL1KIapiLc7kpFunMLuplR0Jznm4Ct60jEui5zP/BiEm+RYZwG/kTNNeyQsLcw8uIiqZ95si720rcHkZ5xDoalJWqp2lc9xOK/i3/QICwirmu4Bfrlu9w/RoxfH7Fd30NkLsaDK3/QGTSDjQw8GEnGQXqHDzq3znfmmIpmQ7rGsl6NLGUj2wc0Z/Pqp9OEktXMiNYJhQheJoGnm1MswMfACUGryfAxX0SocvRZfhkSI7WQrIxZuPVNQSQfd2sGjQ1DaGH4Z60mnECaZ/6MYnGlCOPFhs8Wg5RLcfd1qs8C6LCnzMAnlyv+zbcZASUw9z0MuDZIkCcBItfM7uitVXSSJrOHLjwM1mtfG8AHbTfWzuIQFJSJ7xWHLKV7R0ffhND4CPyq5qBDhgOf0zbb0jbcw2erVIbhec8pW9vGmAQYchAUpQfWTkV1LUnuhLIZTq0z+wkR8B9oRHwjLxSrfV3zW7nbXtn5iyNkgSloKzUUQ3add9RJ04/fYmIQ56p/whcPULYWp2bXSshcWuovroMpYZf1inzYtip5UtQm6mgW+3uVMQ8p4+JBJdU49Cnw6QpU9WDfobZu2S50A5aAfNoLANUY0aGy4OAKDiQFnI+j9UUWYjJiqxP+9dDp54qq7/sLDTjcQVKArPf6lwT6HbzPynsVz1ogh+EDWrw+hkIVD/jQmsZIs/tqw7hluXwH8/5yxxh7Zcdd4DGKj25YO3LbxC/+DKYj5olWouao09vg== X-Exchange-RoutingPolicyChecked: pl+z1G1ksxpBvRMhEmGvJ/SqEcaea9B3b/ImN4mEUdFFeooMgV91qk30ENZwbg3J1sjUeCic5+nB5qLrGIs8kuFXe+9Ip81glDK/zPsACt0e339lGmEVcRkwVgvdVkvZ7E3stnVx+ayxepIuehRMITp/RdxXZf/nLKqHIe/jguoGdOwC/Yai5jlrW7fQEw12c8I7y56MdA5txvO7bbBUCZLBdaEaO2SdGx4tRKCTrM6aln/wV1Bf/jFaoAQmkGWSxUsTYOple6rjD2XXuAPl0eKEtDkPPp44fnpiwaYNh4YAUwgp6uFI63w3rsYNJpkIkjBDTgR1kglK1AqHCwWL0w== X-OriginatorOrg: windriver.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b6aa2cb-0698-4be0-2c1a-08decb66f526 X-MS-Exchange-CrossTenant-AuthSource: CO6PR11MB5602.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2026 05:20:19.5321 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ddb2873-a1ad-4a18-ae4e-4644631433be X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: FCu2FTMouMpzYIL7euVYwjeXpjDFsIxJHdPwb3i1F2oj/D1xk1dyNymRzIdBNsqm8YduuqYpNJuC7ZLU+8L78w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB9533 X-Authority-Analysis: v=2.4 cv=ZJ/nX37b c=1 sm=1 tr=0 ts=6a30dd15 cx=c_pps a=nBoeifw3k4y6eW1CqgP3Vw==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=FelO9ux0wxsA:10 a=VkNPw1HP01LnGYTKEx00:22 a=bi6dqmuHe4P4UrxVR6um:22 a=HK-ge7EqtdluswH-FwHe:22 a=t7CeM3EgAAAA:8 a=e08-atkVFR6WX4J2vB4A:9 a=FdTzh2GWekK77mhwV6Dw:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjE2MDA1MCBTYWx0ZWRfX2cEUwrc+oeIM VsIeFdx4myTSs2oaMGj+UI5gDROXJA9W0ow7xqII3fdH4BZC6F97q3Iy6FLP//ZDhM58/0F1aNW KZw6wOX3nYCTvUDI+XPuulO9Zqn8R2q4bkdIti8DgoJcuuXpShoIFtDu/XvR6ga79D6UgdBxw1e b9dpmrtxeAcMO7/9J01Kdc8IRq0IJjr62KUOv7bQRVprrIAfMJfJ+bstBBzAt0UHOXdiEMTp/KT e9nLccGezgKUwcl8E/z9f3808/d6hioA5+FdBaR6AvKyxbNYeTLdOfjmAZso1XV28Qcrx2YlzlK 1lAcf8xPXVcitZ/qQ17WLuQrs/Pjk680R4AAOVPWLv37vgtxEtKFecqyRyzk4LRDo/i4cwiblCu wFY240LtgD4Gh2h3EMlMqevsnyJHcxHZrxxMPFOtRkrVDSh7DgSQSraVNapyk15NVKq2QfgXkgr nPrXWkdYNR/G0DU/3hg== X-Proofpoint-ORIG-GUID: sQ7YHzXvMHdeB02FPq1DrADXwBqT7sOD X-Proofpoint-Spam-Info: AW1haW4tMjYwNjE2MDA1MCBTYWx0ZWRfXyNQEpbcBFQrd yx5y/aRY5jrbZIjQdqjjUcLw545tTTXXYl4kHAvNmN1MqXqiuHbgSvueQyjcVBsSwoQtn1ZfA5G HzH7tT3l4CrLCyoeqp862Nvc+jxfc1/6gc47Saot+vqZlyVPg3ru X-Proofpoint-GUID: sQ7YHzXvMHdeB02FPq1DrADXwBqT7sOD X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-16_01,2026-06-15_04,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 clxscore=1015 lowpriorityscore=0 suspectscore=0 spamscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606040000 definitions=main-2606160050 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 16 Jun 2026 05:20:30 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/9729 From: Chen Qi Document the two new variables used for stable point release upgrades: - UPSTREAM_STABLE_RELEASE_REGEX: filter regex for upstream version checks - STABLE_VERSION_PARTS: controls how many version parts form the stable prefix Signed-off-by: Chen Qi --- documentation/ref-manual/variables.rst | 28 ++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index fe3d5a999..cb11f7901 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst @@ -10097,6 +10097,15 @@ system and gives an overview of their function and contents. SSTATE_SKIP_CREATION = "1" + :term:`STABLE_VERSION_PARTS` + The number of leading dot-separated components of :term:`PV` that + constitute the stable version prefix. Used by the + :ref:`ref-classes-upstream-stable-release-point` class to generate + :term:`UPSTREAM_STABLE_RELEASE_REGEX`. Defaults to ``"2"``. + + For example, with ``PV = "259.5"`` and ``STABLE_VERSION_PARTS = "1"``, + the generated regex matches versions starting with ``259``. + :term:`STAGING_BASE_LIBDIR_NATIVE` Specifies the path to the ``/lib`` subdirectory of the sysroot directory for the build host. @@ -12001,6 +12010,25 @@ system and gives an overview of their function and contents. UPSTREAM_VERSION_UNKNOWN = "1" + :term:`UPSTREAM_STABLE_RELEASE_REGEX` + A regular expression used to filter upstream versions during version + checks so that only versions within the same stable series are + considered. When set, BitBake's fetchers (git, wget, crate) apply this + regex to discovered upstream versions and discard any that do not match. + + For example, if a recipe is at version ``1.4.2`` and the regex is + ``^1\.4(\.\d+)*$``, then ``1.4.7`` would be a valid upgrade candidate + but ``1.5.0`` would not. + + For recipes with dot-separated versions, inherit the + :ref:`ref-classes-upstream-stable-release-point` class to generate this + variable automatically. For other versioning schemes, set it directly:: + + UPSTREAM_STABLE_RELEASE_REGEX = "^10\.2p\d+$" + + See :ref:`ref-manual/release-process:stable point release upgrades` for + the criteria under which this variable should be set. + :term:`USE_DEVFS` Determines if ``devtmpfs`` is used for ``/dev`` population. The default value used for :term:`USE_DEVFS` is "1" when no value is From patchwork Tue Jun 16 05:20:09 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: ChenQi X-Patchwork-Id: 90163 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2BFE0CD98CE for ; Tue, 16 Jun 2026 05:20:30 +0000 (UTC) Received: from mx0a-0064b401.pphosted.com (mx0a-0064b401.pphosted.com [205.220.166.238]) by mx.groups.io with SMTP id smtpd.msgproc01-g2.147733.1781587223812871640 for ; Mon, 15 Jun 2026 22:20:23 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="dkim: body hash did not verify" header.i=@windriver.com header.s=PPS06212021 header.b=KJhHvUim; spf=permerror, err=parse error for token &{10 18 %{ir}.%{v}.%{d}.spf.has.pphosted.com}: invalid domain name (domain: windriver.com, ip: 205.220.166.238, mailfrom: prvs=06275b3310=qi.chen@windriver.com) Received: from pps.filterd (m0250810.ppops.net [127.0.0.1]) by mx0a-0064b401.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 65G4qepO2727607; Mon, 15 Jun 2026 22:20:22 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=windriver.com; h=cc:content-transfer-encoding:content-type:date:from :in-reply-to:message-id:mime-version:references:subject:to; s= PPS06212021; bh=ahYqaRpfpBXvLvg+rHQIz6uixkY8tvHGIfcxeYwBTUY=; b= KJhHvUim1aFeTqSXnGrE5BIaH+8RWdmeJ4ibDbg7ue/7QsA++jUVPazthEWPXcDt 4UM5yaEFWTvKsk82zonDUd/7q6+t3LEgpfA81xjkCk6FTAR9PNkORJQaHPes/HES FAFu9s6Jn7BJBIz3yiLJh5FOtT9+gDBwF3rZLcqthD1g0g95bmInmsCKdqIl3CHG iBonwZw1aK9gKGuW2ePZCNpPVkMlh2EPGa+21eeLQgNFY2ncAsic83rwbnodeGt5 vFh2HFjrTuJGvqqUk/U5HloBU9uzLV92UA3G2MlxWvUvdzKerR4rHW/Iagpo9gLw a6eYgYxn/NUZ2Cj54qOasQ== Received: from cy7pr03cu001.outbound.protection.outlook.com (mail-westcentralusazon11010063.outbound.protection.outlook.com [40.93.198.63]) by mx0a-0064b401.pphosted.com (PPS) with ESMTPS id 4es2g0bxpt-3 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Mon, 15 Jun 2026 22:20:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pOCjBtrWAXmwrOs/q25tT7iT8jCpyYJ6EbCBRRNFNbo7Kv2L+TZU5QuNk6eV92wDLHevThUyJPiLm9s/lrW6lqQ/Pne/ZX9h39C/AflkjLng2ompBYRtwB7rk9aMGIYRk6uIIYpMKtqFuwrytSdkL46KDN9Vdedf1Q/oesFJeCOejjGK1zhSx/BP7lgMXFAHvALK3yJMzCymzGvn2dckPeWKrMZ5dpw9+7tNHU3B+dUbFoYzM2EQUVlFQKHKekSxJ2CFpg00y7srbRZASzizk2hNjDyQVT9LKUMPICB12CAJCvBL9S/Z6gniFWc/q6Hg6jSA3HMUYTrKV78ZWsTqHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ahYqaRpfpBXvLvg+rHQIz6uixkY8tvHGIfcxeYwBTUY=; b=iOgRHVVAgSaA5XIqgUSQQYnVCbfsOvJ2+mxIWZ4ciyTUWRT8MpizAj/qKeNbgpESTawaNlZg7P7xrjDCPuran4n7K1nyKcl0nUhtiF5uIpKxnQjeakWbkVF6/0qvCzYWdaEW6k3+ZiKzADxCOkBClD96ScPDBZku9HkpPuddSndxmi0aDrh3SJPBHXy3Nj8iBDj7YUdjNjvdzhGl6TCEIqYjPyRN0RYU/3t83OPwCkD0vGa7fI7+vUQppr77oNY1A4py7JwpPMBE63N47cuoW2uv87lw56cOub/k2lAq/O9MAG+4+H8n7Gxa2IecKdgp3T8RWKgsohCNAe+2lYG5OQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=windriver.com; dmarc=pass action=none header.from=windriver.com; dkim=pass header.d=windriver.com; arc=none Received: from CO6PR11MB5602.namprd11.prod.outlook.com (2603:10b6:303:13a::5) by PH8PR11MB9533.namprd11.prod.outlook.com (2603:10b6:510:39f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.113.18; Tue, 16 Jun 2026 05:20:20 +0000 Received: from CO6PR11MB5602.namprd11.prod.outlook.com ([fe80::5ad6:8f90:b01d:2c62]) by CO6PR11MB5602.namprd11.prod.outlook.com ([fe80::5ad6:8f90:b01d:2c62%3]) with mapi id 15.21.0113.015; Tue, 16 Jun 2026 05:20:20 +0000 From: Qi.Chen@windriver.com To: docs@lists.yoctoproject.org Cc: alex.kanavin@gmail.com, paul@pbarker.dev, Randy.MacLeod@windriver.com Subject: [docs][PATCH V2 3/3] ref-manual/release-process.rst: add patch acceptance policies and stable point release upgrades Date: Mon, 15 Jun 2026 22:20:09 -0700 Message-ID: <20260616052012.3286114-3-Qi.Chen@windriver.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260616052012.3286114-1-Qi.Chen@windriver.com> References: <20260616052012.3286114-1-Qi.Chen@windriver.com> X-ClientProxiedBy: SJ0PR03CA0170.namprd03.prod.outlook.com (2603:10b6:a03:338::25) To CO6PR11MB5602.namprd11.prod.outlook.com (2603:10b6:303:13a::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO6PR11MB5602:EE_|PH8PR11MB9533:EE_ X-MS-Office365-Filtering-Correlation-Id: 6aec02df-c5e6-4e32-b6a2-08decb66f593 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|52116014|23010399003|38350700014|22082099003|18002099003|11063799006|5023799004|56012099006|6133799003; X-Microsoft-Antispam-Message-Info: Y3phdj8JepPIbWsqc/DPU9j5lqVZoCu5WMzNiCNyfbIUYQJ9tiFFvf5iJQpWcW67VlbdEg1HZQMc9RojuAoVEPfZkvFH9UlQ2t5w7uPb5eOnOBSlLk1Wk9yTnQnfuf0dLsPVsjlvhcvetBwr8JOJRzvcWpZDdc52rSYs7aqIgDG7HwLr4Xdm9/ys4H0jXCGlAGtHv+OPnTxUd3z47NqTBd0fbITdLwUwG8Xi6SiO5HtmbRsNQMIsOfyC/qmPxQoXsgr+mg0e5pao9RMNyhDFMrKYER7QFAkgWrGC849324uBUbZ9ubzxKENhTkAE0rSpnFzuu4AGWv/KtUeFb7v/FC/YtpsY1CEdWEuKcP5Ltjh3HY3dHXdf8B9Ya1lMj86aQX4GmRvpeAOP0n7VX0OhpgxDwccrslAR+zjmSNzudeCoHPTeZymUE1ipJF7YKPo5vlTSlltnlKY2JPJiw3n4zW1WQl4LWfZ6RK9EYQBSUyY+ks4pz7JQ/B2dTcFA//dZ5bUPz64ag7OV+4HWOh6y0T9x2qkfLBb9DX4s3/3Che1Swr3OcXdrE0Pf2JsjO4crlhTyJX1xNBxnvk1PpMSoTtCYyvg8IJMVLTORF2xFcn8mSxfOwRCM5Xof7cMFx0XO/NF/LwB5lwkXPN0i69/YS5YaWgsvhklHBq9XIAKe3Np7SSVNW2cGpSIXnOEOw0XsuHW/8P4lEomnH1hO/3WXgrP0TXaSTzTqtnPRH6tFKZ3PQQDIcIKnrVk8GVp4l84O X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO6PR11MB5602.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(52116014)(23010399003)(38350700014)(22082099003)(18002099003)(11063799006)(5023799004)(56012099006)(6133799003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?HA8F+oOossTZHxnBl1Zh/TscTI/g?= =?utf-8?q?TNwHiJK8+cEkClhiPNrcaz6UdBo9N5eBcZ9A0ys9DS8lcc8P1WydHw//2C10EIoKC?= =?utf-8?q?hZrYiZ04ey8L2tHPlMBW5c/nNI1LMJi8mE1x+x8Y4f2UUliM4kiw42Pu97RVBfKTG?= =?utf-8?q?uAtCg27G9j/y6mVoq77CKl/dz9Ec3G8oGpobuQGqAot14Bn4nFo9FgwT3/Jdpzlfk?= =?utf-8?q?z7BvZXgvQZBY4zW/ZOqAlq5mc6tq3x7q3sORfNsGHosvcBlg26fk6z9YO1Cl/r+9x?= =?utf-8?q?waqUggNKwagSdzIWqC2oV2Qgul71eCHKE4sHx41vvfmBf/IMuod4VHx7/GHauEa57?= =?utf-8?q?sKFgm34mCTbVBFjfNOac6AXzfVFZ96/GRgQdxtwJs4g8BRthVzN+lWH4WS8SU2vKU?= =?utf-8?q?2pEZsrLBC8xhVEaIwv+nBNfqjamBIP+OV0VgypOzslXMdJ1WsihwAwspB5+ioRrt2?= =?utf-8?q?0L6YHa6zPdAQublhxeTiQxxRguu5xcuQWdK2RKFguZe9D7M8SARtkNdWu6NjgRNBJ?= =?utf-8?q?F/SCvX3KdISCyg9YcdYnppUye2/mcebC2t0Lvqln9lIpG3tQGWaG/WXBf7Z3vcUxy?= =?utf-8?q?8AacDegYKxpLYKoPOHraASu6jO5QW9iTLS7bPr9OY5NuJyc/Z8oQezF/V4+0Ey/QR?= =?utf-8?q?6ditEnbAgXBMgUydx+irqJifE3H0sRUtnpBkgHD8kR7pvOebjSx4VDZdn01L6L+MY?= =?utf-8?q?Hc0hm439eZOowOm4aqC5/O0x8lbt2NG+pxRWaHkyXK33uH09uWXS9lsqODRPhHsfu?= =?utf-8?q?6jOMkjKtaQZ8WfYWQn+v9HbS6cE5bgzqWVBbdCsU7EGG0GnXeLiaY2QZbL2VimEJ4?= =?utf-8?q?hFzjuBU1vLfumLo+4TSm7oCxlLKvmz7wLigKCSDwUNOxf6Z4obVn1QjZP6zmR/PyS?= =?utf-8?q?UAgjV3Z3jMC4y8BU9Ht/q8B8Mo/UIQR5XxcJwdtc42td3Gbj0+Vfd7LIiTRiBg9AH?= =?utf-8?q?U/nf6uar8AU0JB7IZVBiYomtVSUzy8bWBSf6dfjHzxo10yGoSJlmofkdWnY127an0?= =?utf-8?q?cX4dSe2JuSgR5qHe415qBZmcGRcPK7s9BwY0iO4GncB+fjDHkyRN+4g/YUTNetT6r?= =?utf-8?q?99oFLk8lD7Y7J0FbsdNNvCxaRKYxvfoWabO2JJUvIRnB/oIudia4SxdqyGTNBmUwA?= =?utf-8?q?oYuo7rOo2/CM/QbmU44egiqxQ4UozxnrA9KIWTpVCVEhSxq2/hIe5F6wWEmfvN+U6?= =?utf-8?q?PKiIFjwIvi5yNYgUN3j6cfK2vXMM9Z911Rsf8wEZ8csiHsB0t/tn4FZzUONuax89P?= =?utf-8?q?+kswOLxi+1qO+zuoWK8AFX3RePbghbpzPGJP/16bHodFQPBI7Zdr45OHy3hKaWfv8?= =?utf-8?q?nWZP0545cHqqX3S6pOwjznn5uT5vQvxqpgDfjETmiJf/qeBG+JvD6CukHl36yQQLc?= =?utf-8?q?7lltdYXk0osv+WAUr6qZhfZzbcpd0GRfoMnVIvocAAr9cF716pRBRTJCHMI4r1PDw?= =?utf-8?q?X5SSoV0gNX57hCmI7xMgTa3ZhpxwDxPXzbZuYWZ+0Lu0P7B6ZWDKJmm6fHF4cVMDB?= =?utf-8?q?hqTbfNwMYwVusd8/Q5ld/1MuS+KpdVu3J+zYrKlF0TGegELvypq8yIYx6kAlGKRnC?= =?utf-8?q?3lqS1PRClpG4zp1BlMb0HiLTsQZS5jHlU3GKfiFR7Ol0UvD/2uGlee4L0Z+lx4S1c?= =?utf-8?q?S6eQoS8Z5hJtcdSnGrSwUflAlOSfNuKA=3D=3D?= X-Exchange-RoutingPolicyChecked: Bxt/v8lGrvffKtdFcDxW48RpSz+XaT0QKFRvrYSh/zx+U9KN84H7ehyWMX5x537P8rlIRzLX8b3GJ1D1H7QcdbyOY7eVtfTqizydxidKSrq47W0J5o2XB+Clj6G+4A+OdIpinN5TT5jdzUZuPVA4++wT3WATuYrU0dbU9SQ8crmx8hshk8NatJoHKeDtG/yl0C0b4MmQqCaveS5jyAlndRiEKc51SWMu/t8tfuRIurEA28rb43IIzf62GC6s+rAAEYcFCfqjXXxzzu8LOCAt6fVM/h1p1/TbK3HRPO76BZbywKHf+Z0SvkZs1EAEqASlFafZtI+mwp3OE6fjcCfDSA== X-OriginatorOrg: windriver.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6aec02df-c5e6-4e32-b6a2-08decb66f593 X-MS-Exchange-CrossTenant-AuthSource: CO6PR11MB5602.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Jun 2026 05:20:20.2017 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 8ddb2873-a1ad-4a18-ae4e-4644631433be X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ZYM6rZ7bFDAI+uet1FyF8gnYrDbQg9vlJVXsi7dtCJ8RxWn66R8cITBMp0iknGFMzhmQZmklItihuNk1D2ni8w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB9533 X-Authority-Analysis: v=2.4 cv=ZJ/nX37b c=1 sm=1 tr=0 ts=6a30dd16 cx=c_pps a=nBoeifw3k4y6eW1CqgP3Vw==:117 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=z/mQ4Ysz8XfWz/Q5cLBRGdckG28=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=VkNPw1HP01LnGYTKEx00:22 a=bi6dqmuHe4P4UrxVR6um:22 a=HK-ge7EqtdluswH-FwHe:22 a=t7CeM3EgAAAA:8 a=VShSNdALnTx5IIslTvEA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=FdTzh2GWekK77mhwV6Dw:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjE2MDA1MCBTYWx0ZWRfX+4OEUsfER6zN m8Wz64F3R0tdwiy1jHD5JFJ1zUYaIBCTJLvkcrU7RZ3gE1WvcGQpvwL3lIbTjXwa1rKYfGnNaH8 r7btUrHulDm90exnWT4DTMYk25onx/OwDG+Xgqjyi7mNanFfR8KEFpxkpufshv+OSnlLFDv64Kf V2EFUwTdkATlVyBPdpSbhdMDKIf/vAE2PAcf2S65PlYOUTrZml7UieBgPa1SpA8H3+ar3uOZFJB czad96OirsFQFmzOjZwJgXJfgRthIBQkiNHe3LtS1HRZUAK3KeVFR3NdU+yt5JpIP9fLdIUyj6+ FBTn8omOeEYdLZanzX7prEGaqeMagqL6oWSwMDVzc28kkfHntqxn70cLfDdUAe4+DbMVe40mT+i ZxTGhK5N8/tV1KeMySkZ1IcPA88VD61lpgKF6LO3TvrCW/EV9Nrj4L6cqglFvJVxms+RMm7blBE Fps/ONvm6pWVmSbd0dw== X-Proofpoint-ORIG-GUID: mOfaY9ivMkIiLbUC5rZfd_CnVRDSvC7I X-Proofpoint-Spam-Info: AW1haW4tMjYwNjE2MDA1MCBTYWx0ZWRfX8pxExl97s4Tw YJazZyFcVfyGm5gliDScufYBRslXc7u7hlePE1bCL6TosTUDxW9uu9N+Kl0pc1ePHJVZI/hz5t/ a/xNg5JMQc1VjYd4bNoeEywZUJa0V5fEURPxsAnW1wb9wBpsL/yM X-Proofpoint-GUID: mOfaY9ivMkIiLbUC5rZfd_CnVRDSvC7I X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-16_01,2026-06-15_04,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 clxscore=1015 lowpriorityscore=0 suspectscore=0 spamscore=0 bulkscore=0 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606040000 definitions=main-2606160050 X-MIME-Autoconverted: from 8bit to quoted-printable by mx0a-0064b401.pphosted.com id 65G4qepO2727607 List-Id: X-Webhook-Received: from 45-33-107-173.ip.linodeusercontent.com [45.33.107.173] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 16 Jun 2026 05:20:30 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/9728 From: Chen Qi Document patch acceptance policies and stable point release upgrades, including criteria for qualifying upstreams and how stable release regexes constrain version checks. Signed-off-by: Chen Qi --- documentation/ref-manual/release-process.rst | 114 +++++++++++++++++++ 1 file changed, 114 insertions(+) diff --git a/documentation/ref-manual/release-process.rst b/documentation/ref-manual/release-process.rst index a55187c14..fa712869a 100644 --- a/documentation/ref-manual/release-process.rst +++ b/documentation/ref-manual/release-process.rst @@ -127,6 +127,120 @@ stable release. exception to this policy occurs when there is a strong reason such as the fix happens to also be the preferred upstream approach. +.. _ref-stable-lts-patch-acceptance-policies: + +Stable/LTS Patch Acceptance Policies +===================================== + +All changes must have already been accepted into the current master release +and any other release still within its stable support window. + +**Acceptable:** + +- Security and CVE fixes +- Fixes for bugs +- Version updates which follow an upstream stable series or LTS that aligns with + the original release (based on compatibility). See + :ref:`ref-manual/release-process:stable point release upgrades` for details. + +.. note:: + + Once :term:`UPSTREAM_STABLE_RELEASE_REGEX` has been accepted for a recipe, + version upgrades matching the accepted pattern are considered acceptable + by default (with the usual ability to reject if upstream fails to follow + their own stable guidelines). + +**Potentially acceptable:** + +- Fixes so the codebase works with newly released distros + +**Unacceptable:** + +- General version upgrades +- New features +- ABI/API breakage +- Metadata improvements and refactoring, unless this is a dependency of a + required fix + +.. _ref-stable-point-release-upgrades: + +Stable Point Release Upgrades +============================= + +Some upstream projects maintain stable branches that only collect bug fixes +and security patches — similar to the Yocto Project's own stable release +policy. For recipes tracking such upstreams, it is possible to perform +*stable point release upgrades* (e.g. upgrading from 1.0.2 to 1.0.3) rather +than only accepting backported patches. This is the mechanism behind the +"acceptable: version updates which follow an upstream stable series" policy above. + +Criteria for Qualifying Upstreams +--------------------------------- + +Setting :term:`UPSTREAM_STABLE_RELEASE_REGEX` for a recipe means that certain +version upgrades can be confidently treated as stable point upgrades under +OpenEmbedded's criteria. The Automated Upgrade Helper (AUH) will then +automatically send patches to upgrade recipes with this variable set during +stable releases. + +.. note:: + + Patches to upgrade recipes without this variable may still be submitted + for stable branches, but the barrier for acceptance is high. The commit + message needs to justify that the version upgrade follows our stable + branch policy or that there is an exceptional reason for taking the + upgrade. + +A recipe may have :term:`UPSTREAM_STABLE_RELEASE_REGEX` set based on the +following criteria: + +1. **Upstream stable branches exist** --- the upstream project maintains + branches named with a stable version component, and there is evidence + that these branches only collect bug-fix and security-fix changes + (no new features or ABI/API breakage). For example, util-linux version + ``2.41.3`` has three parts in its version and upstream has branches like + ``stable/v2.41`` with two parts. This demonstrates that bumps in the + third part (e.g. ``2.41.3`` to ``2.41.4``) are stable point releases. + Similarly, systemd maintains ``stable/v259-stable``. + +2. **Upstream maintainer confirmation** --- the upstream project's maintainer + explicitly confirms that a bump in a certain part of the version is + bug-fix only. + +3. **Clear historical or common-sense evidence** --- the project's change + history clearly shows that a certain class of version bump is bug-fix + only, or it is widely understood convention. For example, openssh's + ``p`` suffix increments (``10.2p1`` to ``10.2p2``) and kmod's patch-level + bumps are historically bug-fix only releases. + +.. note:: + + Patches to set :term:`UPSTREAM_STABLE_RELEASE_REGEX` are sent against the + master branch first and follow the normal review process. Once accepted on + master they may be backported to stable release branches. Exceptions may be + made when necessary, e.g. setting :term:`UPSTREAM_STABLE_RELEASE_REGEX` on + a stable branch for a recipe which has since been removed on master. + +How Stable Release Regexes Work +------------------------------- + +The stable point upgrade mechanism uses a *filter regex* to constrain the +upstream version check so that only versions within the same stable series +are considered. When a recipe sets :term:`UPSTREAM_STABLE_RELEASE_REGEX`, the +version-checking infrastructure in BitBake's fetchers (git, wget, crate) +applies that regex to filter discovered upstream versions. Only versions +matching the regex are considered as upgrade candidates. + +For example, if a recipe is currently at version ``1.4.2`` and the regex is +``^1\.4(\.\d+)*$``, then version ``1.4.7`` would be a valid upgrade candidate +but ``1.5.0`` would not. + +For recipes whose version uses a dot-separated scheme, the +:ref:`ref-classes-upstream-stable-release-point` class can automatically +generate this regex. For other versioning schemes, set +:term:`UPSTREAM_STABLE_RELEASE_REGEX` directly in the recipe. + + .. _ref-long-term-support-releases: Long Term Support Releases