No project description provided
Project description
Stackler
Working with Phabricator Stack has never been so easy.
$ stackler submit -m "rebase msg"
By continuing, this script will:
Update D157389 with [24a42cd9 1/3 Add Framework], message: rebase msg.
Update D157390 with [67cfa09f 2/3 Add UI], message: rebase msg.
Submit [7bc9760d 3/3 Add API] based on [67cfa09f 2/3 Add the UI framework fo...].
- Display the working stack
- Submit/Update all the commits into a Phabricator Stack
- Wrap around
git rebase <sha>^
to allow easy mid-stack edit
Install
With pipx
# get pipx, which runs a pip command easily
brew install pipx
pipx ensurepath
# use pipx to install stackler
pipx install stackler
Manual Install
# install from pip
pip3 install --user stackler
If your path isn't setup to work with pip already, as in if you see
WARNING: The script stackler is installed in
<pip-path>
which is not on PATH.
You need to add the pip executable path to your $PATH
. Here are some examples:
-
bash
echo -n 'PATH="$(python3 -m site --user-base)/bin:${PATH}"' >> ~/.bash_profile
-
zsh
echo -n 'PATH="$(python3 -m site --user-base)/bin:${PATH}"' >> ~/.zshrc
Develop
Roadmap
- Arc land Improvements
- Add the ability to
arc diff --create
- Landing on custom base / target
arc land --onto
- Add the ability to
- Complex Repo Support
- Exit gracefully when
.arcconfig
is not found - Support config file to point to
.arcconfig
- Exit gracefully when
- Environment Precheck
- Have a setup / doctor command to check environment setup
- Test and make sure the branches created by
arc work
work- Submission by multiple people on custom base
- Edit the stack (wrap around
git rebase -i
)- Wrap around
git rebase -i <target>^
to start the work of editing one commit - Wrap around
git rebase --continue
to complete the edit action
- Wrap around
- Basic functionality (submit the stack and chain the diffs)
- Print the stack
- Gracefully land
- Pull and rebase before landing
- Wrap around
arc land
- reset head after calling land
Setup Enviornment
poetry install
poetry config virtualenvs.in-project true
poetry shell
Make sure you use the Python in the virtual environment setup by poetry
. In
VS Code, use ⌘⇧P and enter Select Interpreter, then pick the one with python.
Linter and Formatter
As specified in the VS Code setting file
(.vscode/settings.json
), this project uses
pylint for linting and
autopep8 for auto formatting.
Publish
This is mostly an excerpt from Typer CLI's publish documentataion.
Add PyPI API Token (Once)
- Gain access to the PyPI project.
- Generate a token from https://pypi.org/manage/account/token/.
- Add the token to poetry.
poetry config pypi-token.pypi <pypi api token>
Publish to PyPI
- Make sure you bump the version.
- Publish.
poetry publish --build
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file stackler-0.2.2.tar.gz
.
File metadata
- Download URL: stackler-0.2.2.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.14 CPython/3.9.17 Darwin/22.3.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
dc4892e230b87ebe46d5fcf1107ec13145f544c143f91e218a25e5e402e9b04d
|
|
MD5 |
f736bce6fdd94bc16c2efb7126a0e8b6
|
|
BLAKE2b-256 |
428c8f6cd5f3a6e53e6dcd809993c20492946abe85491eb4e00555cf64b8d9d0
|
File details
Details for the file stackler-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: stackler-0.2.2-py3-none-any.whl
- Upload date:
- Size: 14.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.14 CPython/3.9.17 Darwin/22.3.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
cde1d47315499fb41ff9685875330bcbd4b75cc843d6e44b3dc2246673cf4ef2
|
|
MD5 |
d6cfb951c2ddfe8d32d09ec6d3287c65
|
|
BLAKE2b-256 |
f0cef06b94777d55abae1dee09d66816ee130b891ea9941dafd0c9bc151096bc
|