Skip to main content

jeeves-pr-stack

jeeves-pr-stack is a plugin for jeeves that helps manage stacks of GitHub pull requests. It aims to simplify the code review process by organizing pull requests that depend on each other.

Installation

poetry add --group dev jeeves-pr-stack

Motivation

While pull requests are a powerful tool for code review, they tend to become larger and larger, and thus more difficult for the reviewer to tackle.

One possible way to resolve that is to split implementation of a feature into two or more pull requests. For instance,

  • PR #42 Backend for the Super Feature directed from super-feature-backend branch to main branch,
  • and PR #43 Frontend for the Super Feature directed from super-feature-frontend branch to super-feature-backend branch.

The PRs are written in such a way that the first of them can be independently merged to main and deployed without breaking the system. This makes the process of code review faster and easier, and allows to deploy more often.

Let's call such structures PR Stacks.

Caveats

Managing PR Stacks manually can be tedious; for instance, every time when changing #42 you need to rebase #43. It becomes particularly annoying when the length of the stack is more than 2.

jeeves-pr-stack comes to the rescue.

Commands

j stack

View the current PR Stack.

j stack push

  • Create a new PR in current branch if none exists, or use the one that is there,
  • And set the base branch of this PR to point to another open PR in the repository, stacking one PR on top of another.

j stack pop

  • Fetch the bottom-most PR of current stack,
  • Merge it into the repository main branch,
  • Redirect the follow-up PR to point to the main branch so as to make it mergeable,
  • And delete the branch of the PR that was merged.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jeeves_pr_stack-0.1.3.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jeeves_pr_stack-0.1.3-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file jeeves_pr_stack-0.1.3.tar.gz.

File metadata

  • Download URL: jeeves_pr_stack-0.1.3.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.5 Linux/6.2.0-39-generic

File hashes

Hashes for jeeves_pr_stack-0.1.3.tar.gz
Algorithm Hash digest
SHA256 4d15a5abf756d2ccd8ef809db04a2b55472e829e3be050d816848cee506dd9ee
MD5 068c97751ea0cb0f0be796767e9d7111
BLAKE2b-256 3d642bb0f7789d3e2cec985cfa7fa0b4e531bd446dc77294db9c55d63609f3f5

See more details on using hashes here.

File details

Details for the file jeeves_pr_stack-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: jeeves_pr_stack-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.11.5 Linux/6.2.0-39-generic

File hashes

Hashes for jeeves_pr_stack-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 694337aafddcc5f086b5c93656826b7a6940bf6d88eef925f6f9506f404b9ce5
MD5 6a860e8463432c899914f81a734d4418
BLAKE2b-256 41c6a886c29ee26c1c47373bbbfb614e329a0b8175efcb735a260d7d75729492

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

This release

0.1.3 This release

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page