Skip to content

Feature request: Import from JSON? #1065

Open

Description

@arcanemachine

Hello, I know you're busy and this amazing project is already loaded with things to do. I am just wondering at the feasability of something I would like to do: import a JSON file into a freshly-cloned repo and populate a git-bug issue tracker with that data (which would be exported by git bug ls --format json). Sort of like a bridge, but with JSON instead of a specific git provider.

The background is that I've been having trouble with the bridges, both GitLab (I've tried the dev branch, still having issues), and GitHub (this one I should probably troubleshoot more).

Ultimately, what it comes down to is that I really like the git-bug interface, but my issues in dealing with the bridges led me to the realization that git-bug allows you to export the data as JSON. Because I use the issue tracker as a personal to-do list + notepad (and there are no other lightweight TUI programs (that I could find) that match the git-bug experience), if I was able to take that exported data and import it into a copy of the repo on another machine, then I would be able to use the awesome git-bug interface, with full portability, without any dependence on bridges which could break compatibility at any moment.

I hope this idea makes sense, and I hope it could be implemented without too much effort. :)

Thanks

Activity

  1. smoyer64 commented on May 7, 2023

    @smoyer64
    Collaborator

    Maybe I'm missing something but I use git-bug on several machines and just use git bug push and git bug pull. The main problem with this technique is that you need to create the identity on only one machine and copy it to the other machines. Ultimately, you're also going to want one identity even across repositories too (like you have at GitHub.) Perhaps a DID?

    Except for sharing between machines, I can envision other reasons for what amounts to a JSON bridge!

  2. arcanemachine commented on May 8, 2023

    @arcanemachine
    Author

    Thanks for the reply. I've just been having issues getting any form of portability working (tried GitLab bridge (even with new dev branch), also tried git bug push/pull), which seem to be related to #1003. I got it working through a GitHub bridge, but I had to set up a repo just for the issues since the original repo is on GitLab.

    I do think it would be nice to have a bridge using a protocol that won't break due to uncontrollable changes from external sources (e.g. API changes on third-party platforms), but I understand that this project doesn't have as many contributers as it deserves.

  3. smoyer64 commented on May 8, 2023

    @smoyer64
    Collaborator

    I'll have to run some tests but this week is pretty busy. I'm thinking the process of using git-bug on the second machine is probably the critical step and I'll document it if I get it working.

  4. arcanemachine commented on May 12, 2023

    @arcanemachine
    Author

    Well I got git bug push/pull working... Not sure what I did differently this time. I just created a new user, did a git bug pull, and everything worked as one would expect. Glad to have multiple backup options working!

    I'm still using the dev build that I compiled myself FWIW.

  5. mcepl commented on Mar 21, 2024

    @mcepl
    Contributor

    Maybe I'm missing something but I use git-bug on several machines and just use git bug push and git bug pull. The main problem with this technique is that you need to create the identity on only one machine and copy it to the other machines. Ultimately, you're also going to want one identity even across repositories too (like you have at GitHub.) Perhaps a DID?

    JSON files are easier to back up, and also it adds robustness for the situations when git-bug is broken, and it is not possible to migrate from higher to lower version. Like right now.

  6. github-actions commented on Jul 23, 2024

    @github-actions

    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
  7. mcepl commented on Jul 23, 2024

    @mcepl
    Contributor

    This is still completely alive.

  8. github-actions commented on Oct 22, 2024

    @github-actions

    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.

  9. mcepl commented on Oct 22, 2024

    @mcepl
    Contributor

    I hate this GitHub bot, and it seems hugely disrespectful to your users to use it.

  10. arcanemachine commented on Oct 22, 2024

    @arcanemachine
    Author

    I hate this GitHub bot, and it seems hugely disrespectful to your users to use it.

    Do you really think insulting the developer is going to encourage them to spend more time on this project? Nobody owes you anything.

  11. mcepl commented on Oct 22, 2024

    @mcepl
    Contributor

    And do you think that openly ignoring and disrespecting collaborators on your project will encourage them to help you? Of course, there are probably so endless flocks of collaborators eager to contribute, that the owner of the project doesn’t want anybody else to help. I guess.

    There is absolutely no reason for this bot to ever exist. Its only purpose is to hide existing bugs and pretend that the project is in much better shape than it actually is. There is zero cost of having open bugs, we have plenty of integers for new ones, maintainer just wants to show that he/she doesn’t care about their users, and it is more important for them to look like there are no problems than to actually help their users or even to encourage them to help each other.

    https://youtu.be/1lYgB_NHFYk

  12. MichaelMure commented on Oct 22, 2024

    @MichaelMure
    Contributor

    There is no endless flock of collaborator. Unfortunately, there is also a shortage of maintainer.

    I'm not a fan of that bot either, but as this is a collaborative project, not everything is done your way. And that's ok

  13. 7 remaining items

  14. sudoforge commented on Apr 21, 2025

    @sudoforge
    Contributor

    i thought of a use case i wasn't thinking of earlier: bulk issue creation.

    other than importing issues from a third party source (bridge), we don't currently have a way to create issues en masse (without requiring the user to for f in $FILES; do git bug new --file "$f"; done, but we could make it more ergonomic for sure). i'm not sure i think JSON is the right data format for doing this, but i can totally see the need for a bulk import, and since we export JSON, importing it makes sense.

  15. added this to the 0.9.0 (TBD) milestone on Apr 21, 2025
  16. mcepl commented on Apr 21, 2025

    @mcepl
    Contributor

    Just to the issue of the stale bot (and I don’t think we need to elaborate on this further): the only good solution of overloading issue trackers in my opinion is fierce and immediate triage on incoming issue reports. Anything else leads to discarding valuable user experience, or to the death of issue trackers, as described in my other comment.

  17. sudoforge commented on Apr 22, 2025

    @sudoforge
    Contributor

    @mcepl, the bot (rather, the pipeline that does this) is staying.

    git-bug is an open source, volunteer-driven project. "volunteer", in this context, means that people are donating their time (sometimes very limited due to other responsibilities), for free, in order to drive a project forward.

    things will slip through the cracks. the bot helps prevent this.

    you are making statements like this:

    the only good solution of overloading issue trackers in my opinion is fierce and immediate triage on incoming issue reports

    while not recognizing the fact that without the ability to dedicate one's full attention on a project, this is not possible, especially so in one with a large community and limited maintainers.

    i have stated multiple times, as does the bot itself, that it does not close issues. the video you've linked to clearly focuses on automatic closure of issues being the problem, not automatic labeling and commenting (which notifies the maintainers).

    to summarize your involvement in this thread:

    • you aren't offering help
    • you don't seem to comprehend, or at least have not acknowledged, that maintainers (at least, on this project) are real people with jobs, lives, and still donate their time for free in order to push a project they're passionate about forward
    • you continue to shift the conversation away from what the original poster needed, and have done so on multiple occasions
    • you are positioning yourself as an authority without context - as in, "let me tell you how you should run your project"

    this is not welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/serializationRelates to data serializationkind/featureRelates to a new featurepriority/backlogHigher priority than priority/awaiting-more-evidencetriage/acceptedThis issue is accepted

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions