Changes:
2.14.2
------
* Ensure man pages are shown at full width
* Fix subject in `ci-status` docs
* Indicate in docs that you can do plain `git push` after
`hub pr checkout` #2467
* Fix using hub inside git worktree #2489
2.14.1
------
* Fixed script/build when running from within the downloaded hub
tarball
Changes:
2.14.0
------
Features:
* New command: `hub issue update` #2432
* New command: `hub issue transfer` #2363
* Support git flag `hub version --build-options` #2440
* Refuse to follow HTTP 301/302 redirects for non-GET requests #2442
Fixes:
* Fix `hub help <cmd>` on Windows #2384
* Ensure that `grep` command is being used in shell completions #2390
* Consult global `git config color.ui` setting when `--color=auto` #2378
Improvements:
* Print more user-friendly HTTP 40x errors #2446
* Enable debugging file uploads via `HUB_VERBOSE=1 hub release create -a <file>`
* Improve parsing malformed YAML config files #2380
Add necessary logic to generate and install hub man pages.
We could use the existent targets provided by Makefile by introducing a gmake
tool dependency and adjusting install.sh but it is probably easier to mimic it
and rarely new commands are added to hub (so possible HUB_COMMANDS sync against
${WRKSRC}/Makefile should hopefully scale). We can revisit that in the future
if that will not be the case.
PKGREVISION++
Changes:
2.13.0
------
* New command: hub gist
* Add git pr show --format=... flag
* Add hub api --obey-ratelimit flag
* hub help: support compressed man pages
* Add hub release download --include=PATTERN flag
* hub help: Enable hub help --web <command>
* hub release: Retry attaching release assets on 5xx server errors
* hub pr checkout fixes
+ handle case when the PR given matches the current branch
+ avoid overriding existing branch merge config
* hub release: Fail fast when attempting to attach unavailable files
* Honor HTTPS_PROXY, NO_PROXY environment variables
* Strip "co-authored-by" lines when populating PR body from git log
* git compatibility: have hub <cmd> --help open the man page
* hub fork bash completion improvements
* hub pr fish completion improvements
2.12.8
------
* hub compare: improve upstream branch detection & error messages
* hub compare: allow slash character in branch names
* hub api: fix GraphQL requests made to Enterprise hosts
* Docs: clarify --message, --file, and --edit flags
2.12.7
------
* Fix password prompt on Windows
Changes:
2.12.6
------
* Fix Windows build
2.12.5
------
* Correctly resolve ~/.ssh/config hostname aliases on Windows
* Added hub pr to fish completions script
* Have fish completions script wrap git if hub is aliased
2.12.4
------
Bug fixes
* Fix invocation of hub --paginate
* Consistently expand all occurrences of {owner} and {repo} in hub api
* Docs: unlist %NC/%Nc among available fields in hub pr list --format
Enhancements
* GitHub Actions compatibility: infer GITHUB_USER value from
GITHUB_REPOSITORY if available
* Handle TERM signal during password prompt in terminal
* Use consistent quote style in hub sync output
Changes:
2.12.3
------
* Allow hub use within GitHub Actions by specifying GITHUB_USER
* Show friendlier error message when GITHUB_TOKEN is set, but fetching
the current user fails
Changes:
2.12.2
------
* Improve `pull-request` push target detection for `git config push.default`
is "upstream", but when the current branch does not have upstream
configuration
Changes:
Fixes:
- hub pull-request: Avoid crash when the current branch is pushed to a
non-GitHub remote
- BROWSER environment variable now supports values with spaces in them
(must be shell-quoted)
- hub help: support man appearing in a path that has spaces
- Docs: mention that comma-separated lists must not have spaces
Changes:
2.12.0
------
## Features
* Add `hub pr show [<number>]` command to open a pull request in the browser
* Add `hub api --paginate` option to automatically fetch all pages of results
* Add `hub pull-request --no-maintainer-edits` flag to disallow project
maintainers being able to push to your branch
* `hub issue -M` can now accept milestone names instead of just numbers
* Abort `hub pull-request` with a helpful error message if the current branch
wasn't pushed to a git remote
* Drop support for legacy `hub.http-clone` git config value
## Fixes
* Fix querying git configuration when GIT_TRACE is used
* Support detached HEAD if `hub pull-request --head` was passed
* Fix newline in `hub create` error message
* Ensure HTTP connection reuse across API calls
Changes:
2.11.2
------
* Avoid crash in hub remote argument parsing
* Fix hub -C mydir merge <URL> by propagating global git arguments to Before/
After chains
* Preserve tilde ~ character in man pages
2.11.1
------
* Fix non-draft pull requests for certain repositories
2.11.0
------
* Create draft pull requests with hub pull-request --draft
Draft pull requests are considered work in progress: they don't
automatically request others for review and they are not mergeable while in
their draft state.
2.10.2
------
* Fix compatibility with git when run with no arguments: hub --git-dir=.git
* Fix issue/PR --format %L output in no-color mode
2.10.1
------
* Fix writing over existing cache files in hub api
* Allow repository names that start with a - character
* List api among custom hub commands in help
Changes:
2.10.0
------
Features
- New hub pr list --format fields %pS and %pC for PR state and color
o %pS: "open", "draft", "merged", or "closed"
o %pC: green, gray, purple, or red
- Have commands with rich output respect the --color flag
o default: --color=auto
o --color is equivalent to --color=always
o --color=never disables color for TTYs
Fixes
- Make man pages parseable with whatis
- Make hub checkout work independently of remote refspec
Changes:
2.9.0
-----
Features
- Add support for hub ci-status --format <FORMAT> string
- Add hub create --remote-name <REMOTE> flag
- Allow passing in a raw request body via hub api --input <FILE>
- Cache HTTP 4xx (except 403) server responses in hub api --cache
Fixes
- Ensure consistent ordering of hub ci-status -v results
- Avoid crashing on invalid GitHub hostname
- Fix parsing empty string within command-line arguments
2.8.4
-----
- Add hub api -H flag to set HTTP request headers
- Add hub api -i flag to output HTTP response headers
- Change how hub api deals with HTTP errors:
- HTTP response is now printed on stdout regardless of HTTP status
- No longer print an extra newline after HTTP response body
- No more Error: HTTP {STATUS} message on stderr
- hub exits with status 22 instead of 1
- Fix hub execution under WSL (Windows Subsystem for Linux)
pkgsrc changes:
* Add logic to generate man page via pre-install target instead of
generating it manually
Changes:
### Changes since v2.7
* New `hub api` command for scripting with GitHub API
<https://github.com/github/hub/pull/2016>
* Re-implement CLI flag parsing so that `--message <MSG>` is equivalent to
`--message=<MSG>` <https://github.com/github/hub/pull/2008>
* Re-implement `make man-pages` in Go instead of Ruby
<https://github.com/github/hub/pull/1990>
* `issue create --label` is now `issue create --labels` to align with
existing documentation
* Output crash debugging information on stderr instead of stdout
* Build improvements:
- respect environment LDFLAGS
- strip the build path from resulting executable
- enable reproducible builds with SOURCE_DATE_EPOCH
Changes:
2.7.1
-----
* Respect chosen Enterprise host on `hub init -g`
* Ensure consistent order of options when prompted to choose between
multiple configured GitHub hosts
* Ensure alphabetical sort of `hub issue labels` output
* Improve contrast of label text vs. its background color
* Various documentation formatting tweaks
Changes:
2.7.0
-----
## Features
* Add support for `hub pr list --state=merged`
* Add base/head/merge commit SHA and merged date information to
`hub pr list --format=FORMAT`
* Un-deprecate converting issues to pull requests with
`hub pull-request -i <issue>` 2a748a048d6903eca78332a484e63f8d647caf02
## Fixes
* Improve detecting default `hub pull-request` base branch name
* Avoid the `Aborted: the origin remote doesn't point to a GitHub repository`
error by allowing other git remotes as fallback
* Improve `hub create` dealing with an existing "origin" remote
* Fix 256-color terminal support for macOS Terminal.app
* Don't choke on literal `%` output characters when using `--format=FORMAT`
* Replace deprecated Dial with DialContext
## Documentation
* Document how we scan git remotes and branch tracking information
https://hub.github.com/hub.1.html#CONVENTIONS
* Indicate that long-form CLI flags with values must use the equal sign like `--message=VALUE`
Changes:
2.6.1
-----
- Fix using git aliases for git 2.20
- Add support for passing multiple --message options for compatibility
with git
- Allow the %h token in HostName value read from ssh config
Changes:
2.6.0
-----
Features
--------
- Use "scissors" line to delineate comments in editable messages instead of
stripping away lines that start with #. This helps preserve Markdown
headings in hub pull-request, hub release create, and similar commands
that open a text editor interactively.
Everything above the following line is kept in the message; everything
below is discarded:
# ------------------------ >8 ------------------------
- New command hub issue show <NUMBER>
- Add hub release show --format=<FORMAT> functionality
- hub pr list --format=%rs lists requested reviewers
- Add support for communicating with GitHub Enterprise over Unix socket
# ~/.config/hub
example.com:
user: USER
oauth_token: TOKEN
unix_socket: /path/to/socket
Fixes
-----
- Prevent hub create setting a public upstream when creating a private repo
- Fix hub create in place of a renamed repo
- Fix hub release create/edit/delete when there are multiple git remotes
- Auto-detect private/pushable repos in hub remote add
- Fix hub ci-status exit code when there is only Checks
- Allow hub compare <RANGE> even if not on any branch
- Ensure consistent sort direction when listing issues, PRs
- Match requested team names by slug instead of name in
hub pull-request -r <TEAM>
Changes:
2.5.1
-----
* `hub issue create`: ignore the `.github/ISSUE_TEMPLATE` directory instead of
crashing
* `hub pull-request`: avoid re-requesting reviewers in case of CODEOWNERS
* `hub ci-status`: handle cases when Checks API is unavailable, like older
GitHub Enterprise
* Handle HTTP 422 message format from server response
* Ignore crash for malformed `~/.config/hub` file
* Clarify `hub init -g` documentation that it doesn't imply `hub create`
* `hub clone`: add more documentation about git protocol used
pkgsrc changes:
- Delete patch-github_editor.go, imported upstream
- Adjust SUBST_SEDs commands for the current man page
- Manually regen files/hub.1 man page
Changes:
2.5.0
-----
Features
- Have ci-status also query Checks API
Fixes
- Do not pass `--cmd' to vi editor to ensure compatibility with older vi
- Simplify cherry-picking commits from pull request URLs
- Allow single-character branches/tag names in hub compare
- Fix hub compare for Enterprise when <USER> is specified
- Support remote add -t BRANCH argument
- Bash shell completion fixes for git 2.18
- Documentation fixes
Changes:
2.4.0
-----
### Features
* `hub delete [<OWNER>/]<REPO>`
* Add `hub compare --copy` flag
* Add `hub release --format=<FORMAT>` option
* Add `hub pull-request --no-edit` flag
* When checking out a pull request, ensure that `git push`with no arguments
works
* Support XDG Base Directory Specification
### Tweaks
* Enable `hub pr list -h <BRANCH>` when owner isn't specified
* Include `docs/` in list of locations to look up pull request and issue
templates in
If the editor used matches the `\b(?:[gm]?vim|vi)(?:\.exe)?$' regular
expression hub automatically add as arguments `--cmd'. The `--cmd' passed is
probably supported only by vim so delete the `|vi' from the RE in order to not
append possible non-standard arguments to non-vim vi-s.
(This was spotted using `hub pull-request' that failed due non supported
argument passed to vi)
Bump PKGREVISION
pkgsrc changes:
- Add a files/hub.1 to avoid picking up devel/ruby-ronn as a TOOL_DEPENDS
Changes:
2.3.0
-----
This is a long-awaited release of hub with an abudance of new features.
Thank you everyone for testing out prereleases, reporting bugs, and
submitting pull requests! The work of 76 contributors went into
this release.
## New commands
* `hub issue`: list and create issues and labels
Usage: hub issue [-a <ASSIGNEE>] [-c <CREATOR>] [-@ <USER>]
[-s <STATE>] [-f <FORMAT>] [-M <MILESTONE>]
[-l <LABELS>] [-d <DATE>] [-o <SORT_KEY> [-^]]
[-L <LIMIT>]
hub issue create [-oc] [-m <MESSAGE>|-F <FILE>] [-a <USERS>]
[-M <MILESTONE>] [-l <LABELS>]
hub issue labels [--color]
* `hub pr list`: list pull requests for the current repository
* `hub pr checkout <NUMBER>`: checkout a pull request by its number
* `hub release`: list, create, edit, and delete releases and attachments
Usage: hub release [--include-drafts] [--exclude-prereleases]
[-L <LIMIT>]
hub release show <TAG>
hub release create [-dpoc] [-a <FILE>] [-m <MESSAGE>|-F <FILE>]
[-t <TARGET>] <TAG>
hub release edit [<options>] <TAG>
hub release delete <TAG>
* `hub sync`: fetch updates from remote repository and sync all local
branches to their upstream equivalents, purging merged ones
## Improved commands
* `hub pull-request` now has the ability to set assignees, labels,
reviewers, and milestones.
Usage: hub pull-request [-focp] [-b <BASE>] [-h <HEAD>]
[-r <REVIEWERS> ] [-a <ASSIGNEES>]
[-M <MILESTONE>] [-l <LABELS>]
hub pull-request -m <MESSAGE>
hub pull-request -F <FILE> [--edit]
hub pull-request -i <ISSUE>
* `hub pull-request` and `hub issue create` now support pull request and
issue templates.
* Commands that print the resulting URL, such as `hub pull-request` or
`hub create`, now accept `--copy` to put the URL to the system clipboard
instead.
* `hub pull-request` now supports `--push` and `--open` flags to push the
head branch to the remote and open the resulting PR in a web browser,
respectively.
* `hub pull-request` now strips away the `Signed-off-by` line and the commit
signature when generating the default pull request message.
* Commands that take input via `-m` or `-F` arguments now also respect
`--edit` to additionally edit the text in a text editor before submitting.
* Support `core.commentchar=auto` git configuration when editing
pull request/issue/release message in a text editor.
* Support `/OWNER/REPO/pull/XYZ/commits/SHA` format of URLs as argument to
`cherry-pick`, `am`, and `apply`.
* Commands such as `cherry-pick`, `merge <PR-URL>`, and `checkout <PR-URL>`
don't leave leftover git remotes anymore.
* New `hub compare -b BASE` flag.
* New `hub fork --org=ORGANIZATION` flag.
* New `hub fork --remote-name=NAME` flag to configure the new git remote.
* New, manpage-based help system; see `hub help hub` and
`hub help hub-<command>`.
* Added fish shell completion script.
* When prompted to authenticate with username/password, pasting a
Personal Access Token now works just as well instead of the password.