ezyang / ezyang/ghstack

Make locally-built ghstack easier to use

Open
#45 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

backlog
Dominant language
Python
Stars
1k
Forks
84
PR merge metrics
No merged PRs in 30d

Description

After the migration to Poetry (#32), it's a bit more difficult to use ghstack (e.g. for experimentation, to check or validate behaviors) while locally developing it. The solution given in the README is to use poetry shell, but that is a bit unergonomic because it requires one to cd into their clone of ghstack, run poetry shell, then cd out again.

One alternative could be to put a shell script like this on your PATH (assuming your clone of ghstack is in ~/github/ezyang/ghstack):

#!/usr/bin/env bash
$(cd ~/github/ezyang/ghstack && poetry run which ghstack) "$@"

The downside of this is of course that it has a hardcoded path. Maybe it would be worth it to add a Makefile to this repo such that make install automatically puts such a file on the PATH, using the actual path to the repo clone for the cd subshell command.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the README's current Poetry shell instructions and inspect the repository's Poetry configuration. Define the install workflow around the proposed Makefile and PATH wrapper, then verify that a locally built ghstack can be invoked without changing directories.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, shell
Domain
build-system, cli, developer-experience
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.