feat: favorite bug

Labels: area/bugs kind/feature lifecycle/stale priority/awaiting-more-evidence triage/needs-information

Timeline

Michael Muré (MichaelMure) opened

I was thinking about how I usually work with a bug tracker and I realized that I often keep several bugs open in a browser tab to keep in my mind or to have a quick glance without having to loop up for them.

This behavior is difficult to replicate with the terminal UI. Having a query for the bug you are assigned to come close but it's not the same thing.

My idea is to have the ability to favorite arbitrary bug and have a query to select the marked bugs. These metadata would not be persisted in the bug state but only locally.

Does that ring a bell for someone else ?

Michael Muré (MichaelMure) added label RFC

Michael Muré (MichaelMure) commented

The more I think about this, the more it sounds like a good idea. 10/10 will implement.

Michael Muré (MichaelMure) added label Easy pick

Michael Muré (MichaelMure) commented

Required for this is (each are relatively easy and short scoped):

  • in cache.RepoCache, add code to store and load a list of favorite bugs to/from a file on disk. Mark cache.BugExcerpt accordingly when they are loaded
  • in the termui, in the list, display the favorites bugs with a different color
  • in the termui, sort the bug list to have the favorites bugs first
  • in the termui, add a keybinging to toggle the favorite status of a bug, connect that to the cache to update the file on disk
  • add the "favorite" field in the graphql schema
  • add a new filter in the query language (see the cache package).

Amine (a-hilaly) added label hacktoberfest

Alidar Asvarov (Alidar40) commented

I will try to solve this issue

Michael Muré (MichaelMure) commented

@Alidar40 Thanks for looking into that.

There is a bunch of technical documentation in /doc. Also, join the chat at https://gitter.im/the-git-bug/Lobby if you need help.

Michael Muré (MichaelMure) commented

@Alidar40 sorry for the super later reply (I'm traveling at the moment). It's a good start, keep up the good work :)

Michael Muré (MichaelMure) commented

Hey @Alidar40, what's up with this ? :)

Michael Muré (MichaelMure) commented

Could you open a PR ?

github-actions (github-actions) commented

This bot triages untriaged issues and PRs according to the following rules:

  • After 90 days of inactivity, the lifecycle/stale label is applied
  • After 30 days of inactivity since lifecycle/stale was applied, the issue is closed

To remove the stale status, you can:

  • Remove the lifecycle/stale label
  • Comment on this issue

github-actions (github-actions) added label lifecycle/stale

sudoforge removed label Easy pick

sudoforge removed label hacktoberfest

sudoforge removed label RFC

sudoforge removed label lifecycle/stale

sudoforge added label area/bugs

sudoforge added label kind/feature

sudoforge added label priority/awaiting-more-evidence

sudoforge added label triage/needs-information

github-actions (github-actions) commented

This bot triages issues in order to help the maintainers identify what needs attention, according to the following lifecycle rules:

  • After 90 days of inactivity, lifecycle/stale is applied
  • After 90 days of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied

This bot will not automatically close stale issues.

To remove the stale status, you can:

  • Remove the stale label from this issue
  • Comment on this issue
  • Close this issue
  • Offer to help out with triaging

To avoid automatic lifecycle management of this issue, add lifecycle/frozen.

github-actions (github-actions) added label lifecycle/stale

github-actions (github-actions) removed label lifecycle/idle