github / gh-net

A network bridge between a Codespace and a local machine.
https://github.com/github/gh-net
284 stars 21 forks source link

you have no codespaces | thread 'main' panicked at 'byte index 50 is out of bounds of #24

Open jwilbur-godaddy opened 2 years ago

jwilbur-godaddy commented 2 years ago

Describe the bug

The CLI crashes when I run gh net start either as root directly, or when I use sudo.

Reproduce steps

root@LTTC-2BV65M3:/home/jwilbur# RUST_BACKTRACE=1 gh net start

you have no codespaces

thread 'main' panicked at 'byte index 50 is out of bounds of `[error] you have no codespaces
`', gh-extension/src/github_error.rs:7:18
stack backtrace:
   0: rust_begin_unwind
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5
   1: core::panicking::panic_fmt
             at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14
   2: core::str::slice_error_fail
   3: <gh_extension::github_error::GitHubError as core::convert::Into<telemetry::telemetry::telemetry_result::TelemetryResult>>::into
   4: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
   5: tokio::park::thread::CachedParkThread::block_on
   6: tokio::runtime::Runtime::block_on
   7: gh_extension::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

Expected behavior A clear and concise description of what you expected to happen.

Screenshots If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

Additional context

It was stated above, but this is on Windows Subsystem for Linux. I tested this while connected via GlobalProtect VPN.

legomushroom commented 2 years ago

@jwilbur-godaddy hey, thanks for reporting. The you have no codespaces message means that token gh cli has cannot list any Codespaces. If you do gh cs list it should result in the similar message. You can try to:

  1. Reauthenticate with codespaces claim: [sudo] gh auth refresh -s codespace

  2. Reuse token that you know works:

    • to get existing token: gh auth status -t
    • copy token from above, then:
[sudo] gh auth logout
echo {COPIED TOKEN} | [sudo] gh auth login --with-token

Let me know if any of these steps help šŸ˜Š

jwilbur-godaddy commented 2 years ago

I already figured that out from other issues, actually, but I was reporting this because of the crash. Sorry that wasn't clear. It shouldn't panic when that happens; it should just exit gracefully. But thank you!

legomushroom commented 2 years ago

Yeah I think it regressed, it was exiting normally(though with exit status of 1) but now it spills out the stack trace šŸ‘ I'll keep this issue open to trace the output cleanup work.