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

Page dies with "Error: timeout" on OS X #8

Closed
s1341 opened this issue Aug 23, 2019 · 12 comments
Closed

Page dies with "Error: timeout" on OS X #8

s1341 opened this issue Aug 23, 2019 · 12 comments

Comments

@s1341
Copy link

s1341 commented Aug 23, 2019

I tried installing the latest release, and building from source. In both cases, when I pipe anything to page I get the text "Error: Timeout" and neovim exits.

@s1341
Copy link
Author

s1341 commented Aug 23, 2019

Ok. Compiled neovim from source and that seems to fix it.

@s1341
Copy link
Author

s1341 commented Aug 23, 2019

Nope. I was wrong. Compiling neovim from source did NOT fix this issue.

@I60R
Copy link
Owner

I60R commented Aug 27, 2019

Sorry, for delayed response.

I don't have access to any OS X machine, so I cannot debug it by myself.

Could you redirect to page with RUST_LOG=trace RUST_BACKTRACE=1 and provide output?

@s1341
Copy link
Author

s1341 commented Aug 27, 2019

[INFO][page] options: Options {
address: None,
arguments: None,
config: None,
command: None,
command_post: None,
instance: None,
instance_append: None,
instance_close: None,
name: None,
filetype: "pager",
sink_open: false,
sink_print: false,
back: false,
back_restore: false,
follow: false,
follow_all: false,
query_lines: 0,
page_no_protect: false,
command_auto: false,
split_right: 0,
split_left: 0,
split_above: 0,
split_below: 0,
split_right_cols: None,
split_left_cols: None,
split_above_rows: None,
split_below_rows: None,
files: []
}
[TRACE][new nvim process] args: --cmd 'set shortmess+=I' --listen /var/folders/h9/m5lk4kcn5s11qg9yw6gllb2r0000gn/T/neovim-page/socket-SZQBTeszf634YTp2lmORjIzynhwyxf1Z

@I60R
Copy link
Owner

I60R commented Aug 27, 2019

Does it work with TMPDIR=/tmp set when redirecting to page ?

@s1341
Copy link
Author

s1341 commented Aug 28, 2019

nope. Same error

@JeanMertz
Copy link

I've got the same error, also on macOS. Not sure what's happening though, but wanted to corroborate what @s1341 is saying.

@I60R
Copy link
Owner

I60R commented Sep 12, 2019

There are two problems with macOS:

  1. Seems like a bug in FSEvents (page uses it to await until neovim's socket becomes available).
    Create events for sockets and pipes are swallowed, only Remove are delivered

  2. Don't allows to find actual path to PTY device associated with :term buffer.
    On Linux it's possible to obtain /dev/pty/* by following /dev/stdout symlink but on macOS it only produces fd/1 which of course isn't useful for page.


So, both of them will require some hacks to allow page to work properly on macOS.


Edit:

Actually there's a way to resolve /dev/pty/* path. Neovim :term buffer provides channel property, and there's nvim_get_chan_info() function which allows to get info about channel. This info contains "pty" property

@I60R
Copy link
Owner

I60R commented Sep 14, 2019

Here is a new release v2.0.0 where all MacOS problems are fixed (at least for me - tested it on MacOS run in VirtualBox).

Thank you for reporting this!

@I60R I60R closed this as completed Sep 17, 2019
@s1341
Copy link
Author

s1341 commented Sep 20, 2019

Confirmed working. Thanks for the prompt fix!

@JeanMertz
Copy link

Works for me as well. Awesome, and thank you 👍

@braham-snyder
Copy link

braham-snyder commented Aug 14, 2022

The latest release gives me the same bug again, Error: timeout. v2.3.5 still works for me though. (I haven't tested versions in between.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants