2.2.0
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!
Notes
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.
Changelog
Added
-
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
-
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.
Changed
- Internally a lot of code was using string views. Maintaining this was a bit cumbersome and required frequent reallocations. A lot of these uses have been refactored to use plain C-Strings now. This also involved changing some code to use the new
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.