Skip to content

Latest commit

 

History

History
182 lines (170 loc) · 6.39 KB

todo.org

File metadata and controls

182 lines (170 loc) · 6.39 KB

gcli todos

Convert Github stuff to generated parsers [90%]

  • [X] Checks
  • [X] Comments
  • [X] Forks
  • [X] Issues
  • [X] Labels
  • [X] Pulls
  • [X] Retrieve Pulls Info
  • [X] Get PR merge message
    • [X] Releases
    • [X] Repos
    • [ ] Reviews
  • [ ] This is GraphQL!…needs to be solved later
    • [X] Status

Convert Gitlab stuff to generated parers [100%]

  • [X] Pipelines
  • [X] Merge Requests
  • [X] Comments
  • [X] Issues
  • [X] Review
  • [X] Labels
  • [X] Releases
  • [X] Forks
  • [X] Repos
  • [X] Status

handle errors from the github api

  • gcli_fetch
  • gcli_curl

find a better way to pass the content type to gcli_curl

Man page

fetch PR comments

leaks of huge buffers [50%]

We don’t care about the little strings we sometimes malloc. But the huge buffers are annoying.

  • [X] Valgrind [100%]
  • [X] issues
  • [X] issues create
  • [X] pulls
  • [X] pulls create
  • [X] comment
  • [X] reviews
    • [ ] custom LD_PRELOAD hack

issues comments doesn’t print the first comment

it seems to reside in the issue data itself

  • solved by printing issue summaries

we don’t handle pagination of the api results

speed up json_escape

repo-specific config file

comment under PR/Issue

make the use of C strings and string views more consistent

get rid of mktemp cuz binutils ld bitches about it

src/editor.o: In function `gcli_editor_get_user_message':
editor.c:(.text+0x108): warning: the use of `mktemp' is
		   dangerous, better use `mkstemp' or `mkdtemp'

Check for multiple Github remotes and choose the right one

Solved in commit 4be0ca8. Leave it up to the user to point at the right repo. Also, there are the -o and -r flags.

Valgrind the new fork stuff

Ask the user if they want to add a git remote if a fork is created

repos subcommand fails if -o is a user

Add docs for gists subcommand

add flags for sorting

  • [ ] gists
  • [ ] releases

Creating releases [100%]

  • [X] body
  • [X] choose a git tag
  • [X] attach files to release (aka assets)
  • [X] mark as prerelease or draft

pulls commit table header is weird

Check unnecessary includes

Valgrind again

write colors test for big-endian machines

Implement adding/removing labels from github prs

CI [83%]

  • [X] release resources properly
  • [X] check that we are connecting to github if we ever use the

ci subcommand see here

  • [X] (maybe) integrate ci checks in status subcommand
  • [X] Split status and summary subcommands:
  • summary should print header and commits
  • status should print summary and checks
    • [X] overflow bug in id
    • [ ] dump logs I dunno whether i really want to implement

that. the problem is that github is misbehaving and doesn’t give me any association from the checks api to the actions api. maybe I wanna add an actions subcommand that handles this very case for github.

Unify Gitea and Github code

Probably we want to make wrappers around the GitHub code for the cases where it works. For this to work, we need to mess with github_get_apibase() to return the right thing if we are looking at gitea.

Optimise pad() in file.c

Label shit

$ gcli labels
<red>bug</red> - something is broken
...
$ gcli labels create --description 'something is broken' --color FF0000 bug
$ gcli labels delete bug

On the review API

  • A PR has got reviews (could be none, could be a thousand)

Big refactor for libraryfication

Fix test suite

  • [X] Move config stuff to cmd and have callbacks that given the context give you the account details etc.

    This would allow you to create a mock context that returns only values that make sense in test contexts.

  • [X] Add support for a testing gcli context

Check errx calls if they print “error: ”

Check for calls to errx in submit routines

github_review_get_reviews is garbage

Clean up the generic comments code

Move printing routines to cmd code

Build a shared library

Remove global curl handle

  • [X] Put it into the context
  • [ ] Clean up handle on exit

Return errors from parsers

push_asset should not call errx but return an error code

Make getting a pull diff return an error code

Add a real changelog file

include docs/pgen.org in the distribution tarball

remove gcli_print_html_url

Test suite

Github [53%]

  • [ ] Checks
  • [X] Comments
  • [X] Forks
  • [ ] Gists
  • [X] Milestones
  • [X] Releases
  • [X] Repos
  • [ ] Reviews
  • [ ] SSH keys
  • [ ] Status
  • [X] Issues
  • [X] Labels
  • [X] Pulls

Gitlab [61%]

  • [ ] Comments
  • [X] Forks
  • [X] Milestones
  • [X] Pipelines
  • [X] Releases
  • [X] Repos
  • [ ] Reviews
  • [ ] SSH Keys
  • [X] Snippets
  • [ ] Status
  • [X] Issues
  • [X] Labels
  • [X] Merge Requests

Gitea

add an ATF macro for comparing string views

Think about making IDs unsigned long

get rid of html_url everywhere

Check the Kyuafile.in for requirements on test input