git: ecc11b1dbdc2 - main - devel/ghpr: github pull request
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 07 Mar 2026 23:34:02 UTC
The branch main has been updated by imp:
URL: https://cgit.FreeBSD.org/ports/commit/?id=ecc11b1dbdc2ef933636e87da3c5c46b86d38b3b
commit ecc11b1dbdc2ef933636e87da3c5c46b86d38b3b
Author: Warner Losh <imp@FreeBSD.org>
AuthorDate: 2026-03-07 22:41:56 +0000
Commit: Warner Losh <imp@FreeBSD.org>
CommitDate: 2026-03-07 23:33:10 +0000
devel/ghpr: github pull request
Tool to help FreeBSD developers land github pull requests, initial
version.
Sponsored by: Netflix
---
devel/Makefile | 1 +
devel/ghpr/Makefile | 30 ++++++++++++++++++++++++++++++
devel/ghpr/distinfo | 3 +++
devel/ghpr/pkg-descr | 16 ++++++++++++++++
4 files changed, 50 insertions(+)
diff --git a/devel/Makefile b/devel/Makefile
index 8b22f5a3695b..fb9937c11aea 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -833,6 +833,7 @@
SUBDIR += gh
SUBDIR += ghidra
SUBDIR += ghostie
+ SUBDIR += ghpr
SUBDIR += ghq
SUBDIR += ghub
SUBDIR += gilt
diff --git a/devel/ghpr/Makefile b/devel/ghpr/Makefile
new file mode 100644
index 000000000000..ae987c7e917e
--- /dev/null
+++ b/devel/ghpr/Makefile
@@ -0,0 +1,30 @@
+PORTNAME= ghpr
+DISTVERSIONPREFIX= v
+DISTVERSION= 1
+CATEGORIES= devel python
+
+MAINTAINER= imp@FreeBSD.org
+COMMENT= GitHub Pull Request landing tool for FreeBSD
+WWW= https://github.com/bsdimp/ghpr
+
+LICENSE= BSD2CLAUSE
+
+RUN_DEPENDS= gh:devel/gh \
+ git:devel/git
+
+USES= python:3.8+ shebangfix
+SHEBANG_GLOB= *.py
+USE_PYTHON= py3kplist
+
+USE_GITHUB= yes
+GH_ACCOUNT= bsdimp
+
+NO_ARCH= yes
+NO_BUILD= yes
+
+PLIST_FILES= bin/ghpr
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKSRC}/ghpr.py ${STAGEDIR}${PREFIX}/bin/ghpr
+
+.include <bsd.port.mk>
diff --git a/devel/ghpr/distinfo b/devel/ghpr/distinfo
new file mode 100644
index 000000000000..19d7169c97d4
--- /dev/null
+++ b/devel/ghpr/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1772906313
+SHA256 (bsdimp-ghpr-v1_GH0.tar.gz) = c75e7148f0cbe965c0c7c156b3359ce85dd9920959695bb94d55fbdbcacc9881
+SIZE (bsdimp-ghpr-v1_GH0.tar.gz) = 20765
diff --git a/devel/ghpr/pkg-descr b/devel/ghpr/pkg-descr
new file mode 100644
index 000000000000..8c4ca22497a4
--- /dev/null
+++ b/devel/ghpr/pkg-descr
@@ -0,0 +1,16 @@
+ghpr is a Python-based tool to land GitHub pull requests into FreeBSD
+repositories.
+
+It streamlines the process of integrating GitHub pull requests by combining
+PR initialization, staging, and pushing into a unified command-line interface.
+
+Key features:
+- Creates and maintains a dedicated staging branch for PR integration
+- Downloads PRs and rebases them with automatic conflict detection
+- Adds appropriate commit metadata (reviewer info and PR references)
+- Tracks PR status through GitHub labels ('staged' and 'merged')
+- Pushes changes upstream while automatically closing associated PRs
+- Supports dry-run mode and verbose output for debugging
+- Handles conflict resolution workflows
+
+Requires the GitHub CLI (gh) with configured authentication.