Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

termui hanging in FreeBSD #387

Closed
njthomas opened this issue May 15, 2020 · 7 comments
Closed

termui hanging in FreeBSD #387

njthomas opened this issue May 15, 2020 · 7 comments
Labels
bug Something isn't working Non-actionable Something that is not an actual task TermUI Concerns the interactive terminal UI

Comments

@njthomas
Copy link

When I start termui, I see the git-bug termui interface, but none of my keys work. I have to kill the process to get out.

  • this is only happening on FreeBSD
  • it is happening FreeBSD 11.3 and 12.1 (I've not tested with 12.0)
  • it is not happening on OpenBSD (tested on 6.6)
  • in FreeBSD, I used both the ports/pkg version (v0.7.1), but I also compiled v0.7.1, and v0.70 from src
  • it does not seem to be SHELL dependent (it happens in both zsh and bash)
  • I have built v0.5.0 from src and the problem does not happen there
  • I believe I first saw the problem on or about 2019-09-18 because of this comment: feat: search by inverse label #99 (comment) (I did not have time then to investigate further)
  • will try and investigate further, in the meantime, I'm asking other FreeBSD users to try and replicate

FWIW, all other git-bug operations seem to work (add, ls, ls-label, etc.)

@lcook
Copy link
Contributor

lcook commented May 15, 2020

FreeBSD port maintainer for git-bug here.

As the go package awesome-gocui is using a custom fork of termbox, it's slightly outdated and hasn't inherited the FreeBSD fixes from upstream and subsequently causing these issues you're experiencing. Since applying the patch aforementioned I'm no longer facing this issue, either:

  • Fixes are merged into the forked termbox awecome-gocui uses;
  • awesome-gocui switches it's custom fork to the upstream version.

In any case it would be worth creating an issue there mentioning this. For now, I'll submit a patch on FreeBSD bugzilla including the fixes and we can go from there.

Edit: Report has been submitted on bugzilla. As per standards, it'll await for review and will be merged when someone gets an opportunity to. If you want to try this fix locally, apply this patch to the port and rebuild.

@MichaelMure MichaelMure added bug Something isn't working TermUI Concerns the interactive terminal UI labels May 15, 2020
@MichaelMure
Copy link
Owner

FreeBSD port maintainer for git-bug here.

Ho hello, thank you !

So if this patch is accepted in the FreeBSD package, does that mean that this problem is resolved in practice ? Otherwise there is still the possibility to fork the forked (sight) go-termbox and pin this version in git-bug but that's something I would gladly avoid if possible.

@lcook
Copy link
Contributor

lcook commented May 15, 2020

So if this patch is accepted in the FreeBSD package, does that mean that this problem is resolved in practice ?

In theory, it's resolved in practice via the package; only because a band-aid is being applied to this very particular case—what it doesn't do is solve the underlying issue. It doesn't stop someone from manually cloning this repo on FreeBSD, building and facing what's been described above. Since it's a one-liner fix it wouldn't be too difficult to have it merged into the fork at awesome-gocui/termbox-go. However, I'm not sure if/when it'll be merged seeing that it hasn't had that much activity.

I suggest:

  1. Creating a pull-request on awesome-gocui/termbox-go addressing the upstream fix;
  2. Mentioning that you can install the package on FreeBSD (pkg install git-bug) somewhere in the README;
  3. Pinning this issue so FreeBSD users can find this thread.

I'll happily complete both 1 and 2. I don't mind either way, really. :)

@MichaelMure
Copy link
Owner

Yes the best scenario is to have that merged upstream. Not sure it's going to happen soon because they are in the process of ditching entirely go-termbox to use tcell instead (awesome-gocui/gocui#45). This is a rather slow and painful process.

1 and 2 sounds good to me. Let's keep this issue open as well until it's fully resolved.

uqs pushed a commit to freebsd/freebsd-ports that referenced this issue May 15, 2020
Amended:
 * Import upstream fix for termui [1] as mentioned here [2].
   We can now _actually_ use 'git bug termui' without it
   indefinitely hanging.

[1]: nsf/termbox-go@58d4fcb
[2]: MichaelMure/git-bug#387

PR:		246486
Submitted by:	Lewis Cook <vulcan@wired.sh> (maintainer)


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@535333 35697150-7ecd-e111-bb59-0022644237b5
uqs pushed a commit to freebsd/freebsd-ports that referenced this issue May 15, 2020
Amended:
 * Import upstream fix for termui [1] as mentioned here [2].
   We can now _actually_ use 'git bug termui' without it
   indefinitely hanging.

[1]: nsf/termbox-go@58d4fcb
[2]: MichaelMure/git-bug#387

PR:		246486
Submitted by:	Lewis Cook <vulcan@wired.sh> (maintainer)
@lcook
Copy link
Contributor

lcook commented May 15, 2020

In other news, the FreeBSD bugzilla report has been reviewed and merged fixing this issue for the package.

Not sure it's going to happen soon because they are in the process of ditching entirely go-termbox to use tcell instead

For now I think it's best to wait and see what happens in regards to this, then to act accordingly for termbox.

Jehops pushed a commit to Jehops/freebsd-ports-legacy that referenced this issue May 16, 2020
Amended:
 * Import upstream fix for termui [1] as mentioned here [2].
   We can now _actually_ use 'git bug termui' without it
   indefinitely hanging.

[1]: nsf/termbox-go@58d4fcb
[2]: MichaelMure/git-bug#387

PR:		246486
Submitted by:	Lewis Cook <vulcan@wired.sh> (maintainer)


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@535333 35697150-7ecd-e111-bb59-0022644237b5
@njthomas
Copy link
Author

Confirmed that the patch fixes the FreeBSD port version, and I was able to apply the same patch and build git-bug from GitHub source.

@MichaelMure MichaelMure added the Non-actionable Something that is not an actual task label Jun 28, 2020
@MichaelMure
Copy link
Owner

This should be resolved now as gocui doesn't use termbox anymore.

svmhdvn pushed a commit to svmhdvn/freebsd-ports that referenced this issue Jan 10, 2024
Amended:
 * Import upstream fix for termui [1] as mentioned here [2].
   We can now _actually_ use 'git bug termui' without it
   indefinitely hanging.

[1]: nsf/termbox-go@58d4fcb
[2]: MichaelMure/git-bug#387

PR:		246486
Submitted by:	Lewis Cook <vulcan@wired.sh> (maintainer)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Non-actionable Something that is not an actual task TermUI Concerns the interactive terminal UI
Projects
None yet
Development

No branches or pull requests

3 participants