Bot releases are hidden (Show)
I am pleased to announce the release of gcli 2.5.0!
Included are lots of bug fixes and a few new improvements such as optional support for lowdown to render markdown.
Thank you for all the contributions and bug reports.
You can find a summary of all the changes below.
Please report back in case you find bugs, bad documentation or other suggestions you have.
You can reach us on IRC in #gcli on Libara.Chat or on the mailing list at https://lists.sr.ht/~herrhotzenplotz/gcli-discuss.
You can find release tarballs here:
https://herrhotzenplotz.de/gcli/releases/gcli-2.5.0/
-R
flag to the comment subcommand that allows you toIn various configuration places and environment variables where
boolean values are accepted you can now specify true
as a truthy
value.
Submitted by: Gavin-John Noonan [email protected]
The configure script now exits gracefully whenever a required
program couldn't be found.
Reported by: Alexey Ugnichev [email protected]
A bug genereting invalid JSON when adding labels to a GitHub issue
was fixed.
The reviews cache directory is now automatically created if it
doesn't exist avoiding a 'No such file or directory' error when
invoking the review action for the first time.
Reported by: Bence Ferdinandy [email protected]
A few bugs in the patch parser have been fixed:
Reported by: Bence Ferdinandy [email protected]
The installation location of the manual pages of gcli has been
fixed. The latest release accidentially installed manual pages to
${DESTDIR}${PREFIX}/share/man
instead of
${DESTDIR}${PREFIX}/share/man/manX
.
Reported by: Bence Ferdinandy [email protected]
The pipelines subcommand has been refactored to accept actions
for pipelines. This allows cases where a pipeline triggers child
pipelines to be handled properly.
See gcli-pipelines(1)
for documentation.
Reported by: Bence Ferdinandy [email protected]
Published by herrhotzenplotz 4 months ago
I am pleased to announce the release of gcli 2.4.0 with a lot of new features and touch-ups!
Thank you for all the contributions and bug reports. Also a big thank you to all the testers during the pre-release phase.
You can find a summary of all the changes below.
Please report back in case you find bugs, bad documentation or other suggestions you have.
You can reach us on IRC in #gcli on Libara.Chat or on the mailing list at https://lists.sr.ht/~herrhotzenplotz/gcli-discuss.
You can find release tarballs here: https://herrhotzenplotz.de/gcli/releases/gcli-2.4.0/
Added a convenience flag -V
or --version
that prints the version of gcli.
Added an option to disable the spinner to indicate network activity
You can now either set disable-spinner=yes
in your default section in the config file, specify --no-spinner
as a command line flag or set the environment variable GCLI_NOSPINNER
to disable the spinner. This is useful for dumb terminal environments like acme where the \r
used by the spinner is not interpreted.
Submitted by: Gavin-John Noonan
Added an interactive status feature
Running gcli status
will now drop you into a prompt-based interactive TODO/notification menu. Currently this only supports issues however this will be extended in future releases. The old behaviour of gcli status
showing a list of notifications can be achieved by supplying the -l
or --list
option.
See also https://gitlab.com/herrhotzenplotz/gcli/-/issues/224
Experimental support for code review has been added
When enabling experimental features through either:
GCLI_ENABLE_EXPERIMENTAL
in the environment to yes
enable-experimental
in the default section of the gcli config file to yesyou will get a action review
on the pull request subcommand.
This subcommand will pull down the diff of the given pull request and loads it into your editor. You can then annotate the diff, save and quit. gcli will then parse the diff, extract comments and allows you to submit them as a review.
Please refer to the new gcli-pulls-review(1)
manual page that has been added for this feature.
Also note that this is experimental and may be buggy. However, testing is very much appreciated and I will gladly discuss ideas and usability issues.
Please check in on IRC (#gcli on Libera.Chat) for these matters and/or post to our mailing list at https://lists.sr.ht/~herrhotzenplotz/gcli-discuss.
Fixed resolving true .git directory when working inside a git worktree. This used to work before, however newer versions of git changed how these worktrees pointing to the true git directory.
Reported by: Robert Clausecker
Fixed bad error message extraction when API errors occured on GitLab. We now check for common error message fields in the returned payload from the GitLab API and choose the (probably) most useful one.
Fixed segmentation fault when displaying certain pull requests on Gitea.
Fixed some spelling mistakes in various manual pages
The GitLab API returns the list of comments in reverse chronological order. We now reverse this list to print the comments in the correct order such that a logical timeline of a conversation can be seen.
The build system of gcli has been migrated away from Autotools. The GNU autotools have been complicating and slowing down the gcli builds by a huge amount. Using autotools prevented easy cross-compilation of gcli because it would have required the use of GNU make. Instead of autotools we now use a hand-written configure script and a hand-written Makefile that gets pre-processed by the configure script. You can still invoke the configure script as expected however some options aren't available anymore.
Packagers are likely interested in the --release
flag of the configure script. Most other compilation environment flags are controlled by environment variables. Please refer to ./configure --help
for more information. The HACKING.md
file also includes valuable information including examples.
Out-of-tree builds are still fully supported.
If you encounter bugs / other difficulties due to these changes please report back!
Published by herrhotzenplotz 7 months ago
This is the version 2.3.0 release of gcli.
GCLI is available in FreeBSD Ports,
Debian,
NixPkgs,
the AUR
and PkgSrc.
Please download pre-autoconfiscated tarballs here.
Warning! The provided tarballs on GitHub and GitLab are not autoconfiscated. Please use the link above.
Thank you to all the contributors and folks bringing gcli to various distributions!
Please test and report back.
Development of gcli is being moved over to Sourcehut. Patches can be submitted to the respective mailing list.
See details on the gcli homepage.
For discussions there is now also an IRC Channel #gcli on Libera.Chat.
It is now possible to build gcli against libgcli as a DLL on cygwin.
Submitted by: Daisuke Fujimura
The pulls subcommand now allows searching for pull requests with a given search term.
The search terms can be appended to the regular pull subcommand for listing PRs:
$ gcli pulls -L bug segmentation fault
The above will search for pull requests containing »segmentation fault« and the label »bug«.
An interactive mode for creating both PRs and issues has been added.
You can now interactively create pull requests and issues by omitting their title:
$ gcli issues create
Owner [herrhotzenplotz]:
Repository [gcli]:
Title: foo
The following issue will be created:
TITLE : foo
OWNER : herrhotzenplotz
REPO : gcli
MESSAGE :
No message
Do you want to continue? [yN]
gcli was incorrectly using an environment variable XDG_CONFIG_DIR.
This variable has now been fixed to be XDG_CONFIG_HOME.
Submitted by: Jakub Wilk
Fixed a segmentation fault when listing forks
Fixed error when submitting a comment on Gitlab issues
The build on Haiku has been fixed. GCLI can now be compiled and used on this platform.
Published by herrhotzenplotz 9 months ago
This is the version 2.2.0 release of gcli.
GCLI is available in FreeBSD Ports, Debian Testing and NixPkgs.
Please download pre-autoconfiscated tarballs here.
Warning! The provided tarballs on GitHub and GitLab are not autoconfiscated. Please use the link above.
Thank you to all the contributors and folks bringing gcli to various distributions!
Development of gcli is being moved over to Sourcehut. Patches can be submitted to the respective mailing list.
See details on the gcli homepage.
For discussions there is now also an IRC Channel #gcli on Libera.Chat.
Preliminary (and thus experimental) support for Bugzilla has been added. For this a new yet undocumented attachments
subcommand has been introduced. Currently if no account has been specified it will default to the FreeBSD Bugzilla - this may however change in the future.
A search feature has been added to the issues subcommand. You can now optionally provide trailing text to the issues subcommand which will be used as a search term:
$ gcli issues -A herrhotzenplotz Segfault
This will search for tickets authored by herrhotzenplotz containing "Segfault".
Added partial support for auto-merge. When creating a pull request on Gitlab and Github you can set an automerge flag. Whenever this automerge flag is set a pull request will be merged once all the pipelines/checks on the pull request pass.
This feature is not fully documented yet as there are bugs in it, especially on Gitlab there are flaws. Please consider this feature unstable and experimental.
Fixed a segmentation fault when getting a 404 on Gitlab. This bug occured on Debian Linux when querying pipelines at the KiCad project. The returned 404 contained unparsable data which then lead to the error message to be improperly initialised.
Reported by: Simon Richter
Fixed missing URL-encode calls in Gitlab Pipelines causing 404 errors when using subprojects on Gitlab. You're now not forced anymore to manually urlencode slashes as %2F in the repos.
Reported by: Simon Richter
Fixed the patch generator for Gitlab Merge Requests to produce patches that can be applied with git am
. Previously the patches were invalid when new files were created or deleted.
Fixed Segmentation fault when the editor was opened and closed without changing the file. Several subcommands have been updated to also account for empty user messages.
Fixed incorrect colour when creating labels. In any forge the provided colour code was converted incorrectly and always producing the wrong colour.
Fixed a segmentation fault when listing Github gists
Fixed possible JSON escape bug when creating a Github Gist
Fixed gcli reporting incorrect libcurl version in the User-Agent header when performing HTTP requests.
Fixed possible segmentation fault when no token was configured in gcli configuration file.
gcli_jsongen
set of routines. Due to these changes there may be regressions that are only visible during use. If you encounter such regressions where previously working commands suddenly fail due to malformed requests please report immediately.Published by herrhotzenplotz 11 months ago
This is the version 2.1.0 release of gcli.
Good news! GCLI is now available in both Debian Unstable and Testing
as well as NixPkgs Unstable.
Please download pre-autoconfiscated tarballs here.
Warning! The provided tarballs on GitHub and GitLab are not autoconfiscated. Please use the link above.
Thank you to all the contributors and folks bringing gcli to various distributions!
Development of gcli is being moved over to Sourcehut.
Patches can be submitted to the respective mailing list.
See details on the gcli homepage.
For discussions there is now also an IRC Channel #gcli on Libera.Chat.
set-visibility
to the repos subcommand that allows updating the visibility level of a repository.request-review
to the pulls subcommand that allows requesting a review of a pull request from a given user.-M
flag to both the pulls and the issues subcommand to allow filtering by milestones.patch
action to the pulls subcommand. This allows you to print the entire patch series for a given pull request. Also added the missing implementations for this feature for Github and Gitea.title
action to both the issues and the pulls subcommand that allows updating their titles.repos
subcommand.status
subcommand now works properly on Gitea.Published by herrhotzenplotz about 1 year ago
This changelog does not follow semantic versioning.
You can download pre-autotoolised tarballs at: https://herrhotzenplotz.de/gcli/releases/gcli-2.0.0/
Please test and report bugs!
-L
flag to the issues
and pulls
subcommand to allow filtering by labelgcli pulls create
subcommand does not print the URL to the created release anymore.sys/queue.h
header. On GNU/Linux systems you might need to install it as part of libbsd.Published by herrhotzenplotz about 1 year ago
This is version 1.2.0 of gcli.
Please test and report bugs.
You can download autotoolized tarballs at: https://herrhotzenplotz.de/gcli/releases/gcli-1.2.0/
Published by herrhotzenplotz over 1 year ago
This is version 1.1.0 of gcli.
I have changed the versioning scheme to major.minor.patch
.
Please test and report bugs.
You can download autotoolized tarballs at: https://herrhotzenplotz.de/gcli/releases/gcli-1.1.0/
_XOPEN_SOURCE
to be set to 600 in the build system, thismilestone -d
in.gcli
file or by specifying-A
filter option to the pulls subcommand that searches onlyPublished by herrhotzenplotz over 1 year ago
This is a patch release since the issues subcommand for listing
issues was broken and thus useless for Github remotes. I am sorry
for the inconveniences.
Please test and report bugs on Gitlab, Github or via E-Mail.
You can download pre-autotoolized tarballs at
https://herrhotzenplotz.de/gcli/releases/gcli-1.0.3.1/.
Please also refer to the previous Changelog for a list of changes
and news.
Published by herrhotzenplotz over 1 year ago
This is version 1.0.3 of gcli.
You can download source tarballs at:
https://herrhotzenplotz.de/gcli/releases/gcli-1.0.3/
WARNING If you download the tarballs provided by Gitlab or Github
you need autoconf, automake and libtool installed on your system. The
tarballs on my website do not impose this requirement.
Please test and report bugs on Gitlab, Github or via E-Mail.
Published by herrhotzenplotz over 1 year ago
This is version 1.0.0 of gcli.
If you are new to the project, grab one of the tarballs from my site,
extract it and view the README.md
document. This gives you
instructions on how to build and install. I highly recommend reading
the manual pages.
IMPORTANT The tarballs provided by Gitlab and Github will not work
without you having autoconf, automake and libtool installed. You can
download pre-autotoolized tarballs at:
https://herrhotzenplotz.de/gcli/releases/gcli-1.0.0/
issues
subcommand and pulls
subcommand-n
option when fetching issues onmilestones
subcommandPlease test and report issues and bugs. Patches are highly welcome.
For cross-compilation issues see HACKING.md
.
Thanks to all contributors, testers and package maintainers who made
this release possible.
Published by herrhotzenplotz almost 2 years ago
Implement releases support for Gitea
When listing releases, print all assets instead of just one tarball URL
PR status on Gitlab now also prints the state of pipelines running on the Merge Request
pulls subcommand now has a checks
action that prints pipelines/CI runs for the PR
Add an api
subcommand that prints the JSON responses from the APIs (for debugging)
Fix bug where listing pipeline jobs for Gitlab gets stuck in an infinite loop
Port remaining tests to the autotools test framework
Fix wrong help messages and manual pages for pull requests
Implement a new generic table printer that doesn't truncate output
Fix various compiler warnings during the build process
Fix broken test url-encode test on NetBSD
Fix segmentation fault when creating releases on Github
Please note that the tarballs provided by Gitlab and Github will not work without you having autoconf, automake and libtool installed. You can download pre-autotoolized tarballs at:
Published by herrhotzenplotz almost 2 years ago
/!\ WARNING: The build system now uses autotools. You will have to run /!\
/!\ a configure script now. /!\
Changes:
Move Gitlab Code to generated parsers
Move Build System to Autotools
Better usage messages in all subcommands
Update man pages
Be less verbose by default:
More supported OSes: Alpine Linux, SunOS 5.11 (Illumos)
Make some subcommands output short tables instead of long
lists. To revert the old behaviour a -l / --long option
was added.
C99 Portability fixes.
You can download tar balls here:
https://herrhotzenplotz.de/gcli/releases/gcli-0.9.10-beta/
Report bugs at:
https://gitlab.com/herrhotzenplotz/gcli/issues
Or send an E-Mail to nsonack AT <herrhotzenplotz dot de>
Published by herrhotzenplotz about 2 years ago
Tarballs may be found at:
https://herrhotzenplotz.de/gcli/releases/gcli-0.9.9-beta/
Prebuilt FreeBSD packages for arm64 and amd64 can be found at:
https://herrhotzenplotz.de/gcli/pkg/FreeBSD
You can easily install it with the following command:
pkg add https://herrhotzenplotz.de/gcli/pkg/FreeBSD/`uname -m`/gcli-0.9.9.pkg
Published by herrhotzenplotz about 2 years ago
Changes:
- Add autodetection of forge type for Codeberg
- Implement creating comments for Gitea forges
- Fix bug 'error: forge types are inconsistent' in Gitea forges
- Implement adding labels when creating pull requests
- Split `-i` into `-o` and `-r` in `pulls create` and fix its man page
Tarballs may be found at: https://herrhotzenplotz.de/gcli/releases/gcli-0.9.6-beta/
Published by herrhotzenplotz over 2 years ago
Changes:
gcli
Tarballs may be found at: [https://herrhotzenplotz.de/gcli/releases/gcli-0.9.2-beta/] (https://herrhotzenplotz.de/gcli/releases/gcli-0.9.2-beta/)
Published by herrhotzenplotz over 2 years ago
See #103 and #104.
Adds a new option -r for choosing the git remote.
Published by herrhotzenplotz almost 3 years ago
Added support for multiple accounts. (#84)
Added various missing things for Gitlab.
WARNING: config file format has changed. Please update your ${HOME}/.config/ghcli/config file!
Published by herrhotzenplotz almost 3 years ago
New features:
Fixed a couple of wrong things in the man pages and updated those as well.