@mattpolzin/harmony 1.2.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- harmony-npm/README.md +16 -3
- harmony-npm/harmony +4444 -3916
- harmony-npm/package.json +3 -3
harmony-npm/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Harmony is a small tool that helps teams keep GitHub reviews running smoothly. I
|
|
|
4
4
|
|
|
5
5
|
## Dependencies
|
|
6
6
|
### Runtime
|
|
7
|
-
Running Harmony only requires NodeJS
|
|
7
|
+
Running Harmony only requires NodeJS 14+ (and a local installation of `git`).
|
|
8
8
|
### Build time
|
|
9
9
|
Building the latest commits of Harmony requires a HEAD build of the Idris 2 compiler. Each release page also indicates the version of Idris 2 that particular release will build against.
|
|
10
10
|
|
|
@@ -13,6 +13,14 @@ Alternatively, you can build Harmony with Docker (see [Docker Build](#docker-bui
|
|
|
13
13
|
## Installation
|
|
14
14
|
For any installation, you need to have a GitHub [Personal Access Token](https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token).
|
|
15
15
|
|
|
16
|
+
Your Personal Access Token should have the following permissions:
|
|
17
|
+
- `repo` (Full control of private repositories)
|
|
18
|
+
- `read:org` (Read org and team membership, read org projects)
|
|
19
|
+
- `read:user`
|
|
20
|
+
- `user:email`
|
|
21
|
+
- `read:discussion`
|
|
22
|
+
- `read:enterprise` (Read enterprise profile data)
|
|
23
|
+
|
|
16
24
|
You can eiher add the PAT to your environment as the `GITHUB_PAT` variable (perhaps exporting it from your shell resource file or profile) or you can store your PAT in Harmony's config file. The first time you start Harmony, it will ask you to configure your PAT if you don't want to use the Environment variable. You only need one of (a) the ENV var and (b) the config property and the environment variable will take precedence if you have both set.
|
|
17
25
|
|
|
18
26
|
### NPM
|
|
@@ -22,7 +30,7 @@ You can install Harmony via npm directly by running `npm install -g @mattpolzin/
|
|
|
22
30
|
You can install any Harmony release by downloading the `harmony-npm.tar.gz` file from the GitHub Release page, unzipping it, and running `npm install --global`.
|
|
23
31
|
|
|
24
32
|
### From Source
|
|
25
|
-
The
|
|
33
|
+
The build script assumes a HEAD build of Idris 2 is installed on your system. For an alternative, see the [Docker Build](#docker-build) instructions below.
|
|
26
34
|
|
|
27
35
|
Build Harmony from source with a call to `make`. Then install it globally with `make install`.
|
|
28
36
|
|
|
@@ -83,7 +91,7 @@ Would you like harmony to assign teams in addition to individuals when it assign
|
|
|
83
91
|
Creating config...
|
|
84
92
|
```
|
|
85
93
|
|
|
86
|
-
Once configured, Harmony supports the following commands: `branch`, `pr`, `assign`, `contribute`, `whoami`, `reflect`, `list`, `graph`, `config`, and `sync`.
|
|
94
|
+
Once configured, Harmony supports the following commands: `branch`, `pr`, `label`, `assign`, `contribute`, `whoami`, `reflect`, `list`, `graph`, `config`, and `sync`.
|
|
87
95
|
|
|
88
96
|
### Branch
|
|
89
97
|
Running `harmony branch` will print the URI for accessing the currently checked out branch on GitHub.
|
|
@@ -97,6 +105,9 @@ If you need to create a PR still, you will be prompted for a branch to open the
|
|
|
97
105
|
|
|
98
106
|
Many operating systems have an `open` command (though the name "open" is not ubiquitous); this means you can run something like `open $(harmony pr)` to open a web browser to an existing PR for the current branch.
|
|
99
107
|
|
|
108
|
+
### Label
|
|
109
|
+
Running `harmony label {<label>} [...]` will help you create a PR if one does not exist yet and then it will apply the given labels to the PR.
|
|
110
|
+
|
|
100
111
|
### Assign
|
|
101
112
|
Running `harmony assign {<team> | +<user>} [...]` will help you create a PR if one does not exist yet and then it will pick someone to review the PR (from one of the listed teams) and assign both that user and the teams you listed as reviewers of the PR.
|
|
102
113
|
|
|
@@ -155,6 +166,8 @@ Running `harmony list <team>` will list the members of the given GitHub Team.
|
|
|
155
166
|
### Graph
|
|
156
167
|
Running `harmony graph <team>` will graph the relative review workload of each of the members of the given GitHub Team.
|
|
157
168
|
|
|
169
|
+
You can optionally graph completed PR reviews with the `--completed` flag as well, though these are not considered for Harmony's weighting algorithm for review workload.
|
|
170
|
+
|
|
158
171
|
### Config
|
|
159
172
|
Running `harmony config <property>` will read the given configuration property. `harmony config <property> <value>` will set the configuration property.
|
|
160
173
|
|