aboutsummaryrefslogtreecommitdiffstats
path: root/src/cmd/stream.rs
Commit message (Collapse)AuthorAgeFilesLines
* put vt100 in the streaming pathvt100-streamJesse Luehrs2019-11-121-33/+78
| | | | | this isn't quite ideal yet because it means we lose all scrollback - maybe this is okay?
* bump depsJesse Luehrs2019-11-061-2/+2
|
* move resizing out into a separate crateJesse Luehrs2019-10-271-29/+29
|
* move process out to a separate crateJesse Luehrs2019-10-241-5/+9
|
* move component_future to a separate crateJesse Luehrs2019-10-241-35/+25
|
* remove unnecessary tokio::spawn useJesse Luehrs2019-10-221-1/+2
|
* remove some duplicationJesse Luehrs2019-10-221-15/+19
|
* add a basic wizard to generate the initial config fileJesse Luehrs2019-10-211-1/+4
|
* use log::error! instead of eprintln!Jesse Luehrs2019-10-211-1/+1
|
* make running with no config file work againJesse Luehrs2019-10-201-4/+8
|
* these all need a default deserializationJesse Luehrs2019-10-201-0/+3
|
* exit with an error if we fail to parse the config fileJesse Luehrs2019-10-201-5/+7
| | | | | just using the defaults is confusing for subcommands that don't display errors by default (stream, record, etc)
* also move the flag definitions into the config readerJesse Luehrs2019-10-201-24/+3
|
* simplify config loadingJesse Luehrs2019-10-201-95/+32
|
* use separate configuration items for listen and connect addressesJesse Luehrs2019-10-191-5/+6
|
* don't allow configuring command to run except on the command lineJesse Luehrs2019-10-191-2/+2
|
* improve error messagesJesse Luehrs2019-10-191-8/+10
|
* debug-log the final configurationJesse Luehrs2019-10-181-1/+1
|
* load config data from a file tooJesse Luehrs2019-10-181-2/+5
|
* give component_future its own try_ready! macroJesse Luehrs2019-10-171-32/+13
| | | | this simplifies quite a lot of things
* ensure resize handling works everywhereJesse Luehrs2019-10-171-13/+13
| | | | | previously record wasn't getting resize events because they were being handled in the client (which record doesn't use)
* improve the interface of component_future a bitJesse Luehrs2019-10-171-29/+32
| | | | make it feel more like the standard futures::Poll/futures::Async
* refactor config handlingJesse Luehrs2019-10-171-93/+146
|
* factor out caching of the client oauth idJesse Luehrs2019-10-171-11/+3
|
* use a real enum for auth typesJesse Luehrs2019-10-171-5/+8
|
* use different logic for buffering on the client side vs serverJesse Luehrs2019-10-161-1/+1
| | | | | they have different needs and performance profiles, so try to be a bit more intelligent
* ensure that all bytes coming from the terminal actually get writtenJesse Luehrs2019-10-161-8/+7
| | | | | | | | | it's not actually safe to just skip over bytes when we see a reset escape sequence, because there might be other escape sequences changing the terminal state that don't get cleared by a reset. for instance, starting vim sends "switch to alternate screen" followed by "reset", and if those two come in the same packet, we were previously dropping the "switch to alternate screen" escape sequence, causing incorrect display.
* cache refresh tokens and use them when the existJesse Luehrs2019-10-161-1/+11
| | | | to avoid needing to go through the browser auth flow every time
* move address default out of the util functionJesse Luehrs2019-10-161-2/+2
|
* start implementing oauth authenticationJesse Luehrs2019-10-151-13/+23
|
* don't send terminal output messages unless we're connectedJesse Luehrs2019-10-151-1/+5
| | | | | the server won't be expecting terminal output messages during the process of a login flow, for instance
* send initial terminal size on process startJesse Luehrs2019-10-151-2/+6
| | | | | | sending it on connect meant that the terminal size wouldn't be set at all if there was a problem connecting to the server, which confuses programs running in the pty
* a few more tweaksJesse Luehrs2019-10-141-7/+8
|
* consolidate errorsJesse Luehrs2019-10-141-44/+14
|
* move common traits into a preludeJesse Luehrs2019-10-141-4/+1
|
* polling should be considered doing workJesse Luehrs2019-10-141-1/+1
|
* add tls support for clientsJesse Luehrs2019-10-121-22/+59
|
* generalize the client implementationJesse Luehrs2019-10-121-8/+23
|
* make all of my futures/streams not do any work until polledJesse Luehrs2019-10-101-9/+5
|
* make argument parsing more consistentJesse Luehrs2019-10-101-32/+34
|
* bump heartbeat interval to 30sJesse Luehrs2019-10-101-18/+6
| | | | | also stop trying to make it configurable, since there's really no need for that
* ensure that the length delimited codec expects the right packet sizeJesse Luehrs2019-10-091-1/+2
| | | | | | | | | this was causing errors because we were buffering up to 10MB of terminal data, but by default, the length delimited codec throws an error if it sees a packet of over 8MB. this drops the default buffer size to 4MB, and also ensures that if the buffer size changes that we update the codec max packet size to match (with some extra to handle overhead and other packet types).
* split Reconnect events into Disconnect/ConnectJesse Luehrs2019-10-081-1/+4
| | | | | | this makes the logic easier to follow, and also opens up the possibility of doing something different during times that we are actively disconnected
* cast -> streamJesse Luehrs2019-10-081-0/+332