@mattpolzin/harmony 6.3.1 → 6.5.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.
Files changed (4) hide show
  1. package/README.md +22 -38
  2. package/harmony +1261 -947
  3. package/man/harmony.1 +16 -13
  4. package/package.json +1 -1
package/README.md CHANGED
@@ -46,16 +46,14 @@ installed with flakes enabled, you can run it as
46
46
  `nix run github:mattpolzin/harmony`.
47
47
 
48
48
  ### Build time
49
- Building the latest commits of Harmony requires a HEAD build of the Idris 2
50
- compiler. Each release page also indicates the version of Idris 2 that
51
- particular release will build against.
52
-
53
- Alternatively, you can build Harmony with Docker (see
54
- [Docker Build](#docker-build)).
49
+ Harmony can be built with `nix` or using `make` which in turn requires you have
50
+ the `pack` Idris2 package manager installed.
55
51
 
52
+ Building the latest commits of Harmony is only tested to work against the latest
53
+ package collection but may work from one that is sufficiently recent as well.
56
54
  ### Testing
57
- Tests can be run with `make test`. You'll need a few common tools in your `PATH`
58
- to run all the tests:
55
+ Tests can be run with `make test`. You'll need a few common tools (in addition
56
+ to the tools required to build harmony) in your `PATH` to run all the tests:
59
57
  - `realpath`
60
58
  - `sed`
61
59
  - `xargs`
@@ -91,35 +89,12 @@ adding `https://gh-harmony.cachix.org` to the list of `substituters` and
91
89
  list of `trusted-public-keys`.
92
90
 
93
91
  ### From Source
94
- The build script assumes a HEAD build of Idris 2 is installed on your system.
95
- For an alternative, see the [Docker Build](#docker-build) instructions below.
92
+ The build script assumes `pack` with a recent version of the package collection
93
+ is installed on your system.
96
94
 
97
95
  Build Harmony from source with a call to `make`. Then install it globally with
98
96
  `make install`.
99
97
 
100
- ### Docker Build
101
- If you want to build Harmony without installing Idris 2 on your system, you can
102
- build Harmony within a Docker container and then install the resulting
103
- Javascript onto your system.
104
-
105
- First, download the latest nightly Docker image:
106
- ```shell
107
- docker pull mattpolzin2/idris-docker:nightly
108
- ```
109
-
110
- Then, from a directory containing this Harmony git repository, build Harmony:
111
- ```shell
112
- docker run --rm -v "$(pwd):/build" \
113
- mattpolzin2/idris-docker:nightly \
114
- bash -c "apt-get update && apt-get install -y git && cd /build && make"
115
- ```
116
-
117
- At this point you are done with Docker. From the same directory, install Harmony
118
- globally:
119
- ```shell
120
- npm install --global
121
- ```
122
-
123
98
  ## Bash completion
124
99
  Set up Bash completion by adding the following to your Bash resource file or
125
100
  profile:
@@ -227,6 +202,12 @@ Not all configuration properties can be read/set with this command.
227
202
  `branchParsing` (`none`/`jira`/`github`)
228
203
  : Optionally extract a Jira ticket slug or GitHub issue number from the branch name and prepend it to the PR title or body to link the PR and ticket/issue.
229
204
 
205
+ `bugfixPRTitlePrefix` (optional string)
206
+ : A string to prefix default PR titles with when the branch the PR is being created from is determined to be a bugfix branch (branch name starts with 'bugfix'). For example, a common prefix is '[fix]'.
207
+
208
+ `addPrTreeDescription` (`true`/`false`)
209
+ : Determines whether to add a tree of PRs to the description for any PR that is into a branch other than the `mainBranch` configured.
210
+
230
211
  `defaultRemote` (optional string)
231
212
  : When pushing new branches, what remote destination should be used.
232
213
 
@@ -329,13 +310,16 @@ organization.
329
310
 
330
311
  Running `harmony list <team>` will list the members of the given GitHub Team.
331
312
 
332
- ## `pr [--draft | --ready] [-i/--into {<branch-name>}] [#label, ...]`
313
+ ## `pr [--draft | --ready] [-i/--into {<branch-name>}] [--print-tree] [#label, ...]`
333
314
  With a branch checked out will reach out to GitHub to determine if there is an
334
315
  open PR for that branch. If there is a PR, Harmony will print a URI that can be
335
- used to view the PR. If there is not a PR, Harmony will help you create one. New
336
- and existing PRs can be marked as drafts by specifying the `--draft` flag with
337
- the `pr` command or they can be marked as ready for review with the `--ready`
338
- flag. The default behavior for new PRs is to mark them ready.
316
+ used to view the PR. If there is not a PR, Harmony will help you create one. The
317
+ `--print-tree` flag will print a tree of PRs for branches between the current
318
+ one and the `mainBranch` of the repository instead of just printing the URI for
319
+ the current branch's PR. New and existing PRs can be marked as drafts by
320
+ specifying the `--draft` flag with the `pr` command or they can be marked as
321
+ ready for review with the `--ready` flag. The default behavior for new PRs is to
322
+ mark them ready.
339
323
 
340
324
  If you need to create a PR still, you will be prompted for a branch to open the
341
325
  PR against (merge into, eventually), a title for the PR, and a description for