From patchwork Thu Feb 26 20:00:06 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 129 Return-Path: X-Original-To: u-boot-concept@u-boot.org Delivered-To: u-boot-concept@u-boot.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1772136087; bh=EauK7EDK/GyXH/LnoLmC3/5iEbnLu8nX8sB17dPsWrU=; h=From:To:Date:CC:Subject:List-Id:List-Archive:List-Help:List-Owner: List-Post:List-Subscribe:List-Unsubscribe:From; b=GW59FFMCro3dSe0Nsl+VM9l6HjtDEfplmYr1Z6yFeRr4hZNIrFldR4qsKHd9Ztgwk 4idJAEjC50fQ46s5vtp/CThot9KvtZMXQy84Qj0azL55hVFUUcNFq8rde5m+Tx7yzc RL66MsZFa71pWEOwwEQ/DNo6YvOwtja6+dknp4c0kEx3rzpzP+caBzYQttKI6w6D4m aNTBxGvT2blaGkv6POdKIjM1aQf0BXqg9p+CqQfCFkum7udCC2dD61/mg63blM82se YXruW8C6gSQ5SBboay8CqJeIDapl9UZ6rAA/BX1mULux1NC8GlxnFKiR9PKu7cMF/b sAt9p/djUnkYQ== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 758FC69E2D for ; Thu, 26 Feb 2026 13:01:27 -0700 (MST) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id CgMR0-vQoQ0u for ; Thu, 26 Feb 2026 13:01:27 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1772136087; bh=EauK7EDK/GyXH/LnoLmC3/5iEbnLu8nX8sB17dPsWrU=; h=From:To:Date:CC:Subject:List-Id:List-Archive:List-Help:List-Owner: List-Post:List-Subscribe:List-Unsubscribe:From; b=GW59FFMCro3dSe0Nsl+VM9l6HjtDEfplmYr1Z6yFeRr4hZNIrFldR4qsKHd9Ztgwk 4idJAEjC50fQ46s5vtp/CThot9KvtZMXQy84Qj0azL55hVFUUcNFq8rde5m+Tx7yzc RL66MsZFa71pWEOwwEQ/DNo6YvOwtja6+dknp4c0kEx3rzpzP+caBzYQttKI6w6D4m aNTBxGvT2blaGkv6POdKIjM1aQf0BXqg9p+CqQfCFkum7udCC2dD61/mg63blM82se YXruW8C6gSQ5SBboay8CqJeIDapl9UZ6rAA/BX1mULux1NC8GlxnFKiR9PKu7cMF/b sAt9p/djUnkYQ== Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 6039069D79 for ; Thu, 26 Feb 2026 13:01:27 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1772136086; bh=jpybDoLW0vqiyM80txaaExWySpHSbaj/uv/xnuOi9r4=; h=From:To:Cc:Subject:Date:From; b=WvmlOI04RHg4dLxChbBszrVR2N7gXVXZ4vcpsXU2ZUC5tCo2ubbcOC2SRW6vnbuHi 03vhxJbtS7/BmqtWIiw2WhHl3gtnIO//p19hjTXCRKd4+cepqRttrrbTmHyhtqypBb QImK/y7Qcb19Mtedi1oFEabX2RCSlzCEjYscaTtNUcIGZazLHO5+b2vy2ocCWSxrye 8grWmxyy9WGsIklWp68MRRIluXTyNgaui6UQH3HEsrI13Pms3OvNyCr3ZXIstT7s5W PveEZkPOK9xU7fa59oaPKZ00IOKIG7CwuIYaHqYYUNRhi8NeGNG19DNqKUK2zX0TQz H/Mwr+A9t3/aQ== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 0488669D79; Thu, 26 Feb 2026 13:01:26 -0700 (MST) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10026) with ESMTP id uoAzCPXse6vt; Thu, 26 Feb 2026 13:01:25 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1772136081; bh=VD6cQGXnEdTMF2JeAIT5ebH/Af9CZUqVlctHWxsgU7A=; h=From:To:Cc:Subject:Date:From; b=E2fdA+FCrzohM8g+OP93OZTuK1388mkqMW/JjTKAiv8c+oAJMDRN+8KuS1ZU6ZOt/ ny8RwJyLXD49evB5mDQFXgrx7LJMo+xLinRlHCZFIdOVx1kSvYJ2jggXp4HrjpluV+ lKovvaCtMbbvGfBJVR4SJSWeFq08VLfpOWNV21QfVEl6+OA673SBsM3H/FW3jpNUoX g2r6SJACLr0ZOBBF2PTQyN7vi5/PP8aCuJ6ceX8QUoePeKhmn0xlYAg7/tQ9tN8jKJ m/W/I5nEh4aDR4C8ONP2lbqretXy9c6SCjJNmLB52ACb7JLkqAXBDdqFGJ/OjxmaUd UuIXiQxZ89+dA== Received: from u-boot.org (unknown [73.34.74.121]) by mail.u-boot.org (Postfix) with ESMTPSA id 77F7C69D4A; Thu, 26 Feb 2026 13:01:21 -0700 (MST) From: Simon Glass To: U-Boot Concept Date: Thu, 26 Feb 2026 13:00:06 -0700 Message-ID: <20260226200106.1727176-1-sjg@u-boot.org> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Message-ID-Hash: 5PNMAGPHCZVGNLQPQWTNSRP5OGQGYYRD X-Message-ID-Hash: 5PNMAGPHCZVGNLQPQWTNSRP5OGQGYYRD X-MailFrom: sjg@u-boot.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Simon Glass X-Mailman-Version: 3.3.10 Precedence: list Subject: [Concept] [PATCH 00/32] patman: Add multi-upstream support List-Id: Discussion and patches related to U-Boot Concept Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Simon Glass Add support for associating each series with an upstream remote, so that patman can automatically select the correct patchwork server, sendemail identity, To address and send options. This avoids having to remember which settings to use for each project. The series includes a v5 schema migration to add the necessary columns, accessor functions, command-line wiring, and documentation for the multi-upstream workflow. Simon Glass (32): patman: Expand the prep_series() comment patman: Reject database versions newer than supported patman: Add upstream and send settings to the database schema patman: Add an upstream column to the series table patman: Warn about series with no upstream after migration patman: Auto-detect upstream for series during migration patman: Show upstream in series list patman: Add set-upstream command for series patman: Associate patchwork projects with upstreams patman: Add upstream parameter to project_set() and project_get() patman: Add get_series_upstream() helper patman: Wire up per-upstream patchwork project in commands patman: Add patchwork list command patman: Make remote a required positional for patchwork project commands patman: Group remotes by project in patchwork list patman: Allow specifying project when adding an upstream patman: Rename -u/--use-commit to -1/--use-first-commit patman: Add per-upstream patchwork URL patman: Allow setting the upstream when adding a series patman: Add 'ls' and 'list' aliases for list subcommands patman: Add per-upstream send settings to the database patman: Support sendemail identity and series-to in the send path patman: Wire up per-upstream send settings in commands patman: Add an 'upstream set' command to update settings patman: Use notice() for database migration messages patman: Add header and tidy columns in upstream list patman: Update series description when adding a new version patman: Improve send feedback and upstream list formatting patman: Improve autolink wait with progress and backoff patman: Filter out AI co-developer tags from patches patman: Update series description on scan patman: Document multi-upstream setup tools/patman/cmdline.py | 72 +++++- tools/patman/control.py | 89 +++++++- tools/patman/cser_helper.py | 79 ++++++- tools/patman/cseries.py | 246 ++++++++++++++++++--- tools/patman/database.py | 292 +++++++++++++++++++++--- tools/patman/patchstream.py | 7 +- tools/patman/patman.rst | 167 ++++++++++++++ tools/patman/send.py | 25 ++- tools/patman/series.py | 3 +- tools/patman/test_common.py | 1 + tools/patman/test_cseries.py | 405 ++++++++++++++++++++++++++++++---- tools/u_boot_pylib/gitutil.py | 5 +- 12 files changed, 1251 insertions(+), 140 deletions(-)