Commit Graph

129 Commits

Author SHA1 Message Date
Manfred Touron fd2d4f12dc Bump homebrew@1.6.1 2017-01-19 05:46:18 +01:00
Manfred Touron ad9464963b Post-release version bump 2017-01-19 05:39:43 +01:00
Manfred Touron ab578adf86 v1.6.1 2017-01-19 05:35:41 +01:00
Manfred Touron ce15e256e9 Merge pull request #45 from gurjeet/master
Do not exit on EOF
2017-01-05 14:57:25 +01:00
Gurjeet Singh e153cff9c8 Implement poison-pill method to exit infinite loops
All cooperating goroutines regularly try to read from the shared "poison"
channel.  If the read succeeds, they exit by calling die(), assuming
somebody else cracked open the poison pill.

When any of these goroutines is done with its job, it signals other
goroutines to exit by calling open_poison() on the shared channel.

This approach takes advantage of the fact that reads from a closed
channel always succeed.

The driving goroutine (Client.Loop() in this case), is called from the
"main" goroutine. And because when the "main" goroutine exits, the whole
program exit (using os.Exit()) irrepective of liveness of other goroutines,
we could not use the same "poison" channel to wait in the driving goroutine.

Instead, we use sync.WaitGroup to wait for spawned goroutines, because
we want the spawned goroutines to cleanup and exit cleanly.
2016-12-17 14:00:47 -08:00
Gurjeet Singh 3e895cf209 Do not exit on EOF
Forward the EOF to GoTTY, and let the server-side decide if it wants to
terminate the connection. The server closes the connection, and in
response we terminate the readLoop which in turn signals writeLoop to
terminate via the QuitChan.

This allows for the user to pipe commands to gotty-client, and capture
all the result sent by the server. For eg. when gotty is launched as
`gotty -w bash`, the following command would now wait to capture all
output from the server.

for (( i = 0 ; i < 2; ++i )); do echo echo $i; echo sleep 2; done | ./gotty-client https://gotty.example.com

Before this patch, gotty-client used to exit on encountering EOF from
the left side of the pipe.
2016-11-07 15:36:48 -08:00
Manfred Touron 037503a6fd
Add 'make install' target
Signed-off-by: Manfred Touron <m@42.am>
2016-09-28 10:14:36 +02:00
Manfred Touron 92f0c24d5b Merge pull request #43 from QuentinPerez/race
Fix race condition
2016-05-24 14:12:48 +02:00
Quentin Perez 75dcc71909
Fix race condition 2016-05-24 10:41:51 +02:00
Manfred Touron de92c1cd12
Bump homebrew 2016-05-23 16:21:00 +02:00
Manfred Touron 704ff9ffa8
Post-release version bump 2016-05-23 16:19:45 +02:00
Manfred Touron 5d0546d272
v1.6.0 2016-05-23 16:12:38 +02:00
Manfred Touron 2cf3fdbc50
Update changelog 2016-05-23 16:11:15 +02:00
Manfred Touron 24014b266d Merge pull request #42 from QuentinPerez/patch-1
fix codegangsta signature
2016-05-23 16:08:27 +02:00
Quentin Perez 32e6aaaebb
vendor: update 2016-05-23 15:54:44 +02:00
Quentin Perez 13a7a7bc5d
fix Action signature (#41) 2016-05-23 15:53:29 +02:00
Manfred Touron f002ddbff9 Merge pull request #40 from QuentinPerez/vendor-1
vendor: update
2016-05-07 11:06:38 +02:00
Quentin Perez 8b3ffd593d
vendor: update 2016-05-07 10:28:57 +02:00
Manfred Touron 770fab0722 Merge pull request #39 from QuentinPerez/deps
bump deps
2016-04-23 18:46:00 +02:00
Quentin Perez 6e5c65ed0f
bump deps 2016-04-23 18:03:08 +02:00
Manfred Touron 74b2689597 Merge pull request #38 from QuentinPerez/deps
deps: update vendor directory
2016-04-07 23:16:26 +02:00
Quentin Perez 0bcb832815
deps: update vendor directory 2016-04-07 18:16:01 +02:00
Manfred Touron f59a1ba979 Update Ascii-art schema 2016-03-09 13:57:25 +01:00
Manfred Touron 2917a33cd8 Update README.md 2016-02-24 17:17:23 +01:00
Manfred Touron 1574cdbda5 Update Changelog (#36) 2016-02-24 15:55:48 +01:00
Manfred Touron 9ebdfdc417 Update Changelog (#36) 2016-02-24 15:55:40 +01:00
Manfred Touron c75f980780 Merge pull request #36 from byung2/proxy
Support of '--use-proxy-env' (Add Proxy support)
2016-02-24 15:54:28 +01:00
lhb b65d82045a Add Proxy support 2016-02-24 17:54:33 +09:00
Manfred Touron 0c2f4fdffc Merge pull request #35 from QuentinPerez/patch=2
maligned: struct of size 80 could be 72
2016-02-20 16:20:02 +01:00
Quentin Perez d5df9cce0e maligned: struct of size 80 could be 72 2016-02-20 15:56:14 +01:00
Manfred Touron 8daca46617
Bump homebrew@1.5.0 2016-02-18 11:56:14 +01:00
Manfred Touron 9b21318fe9
Post-release version bump 2016-02-18 11:50:52 +01:00
Manfred Touron 9ba65719ad
v1.5.0 2016-02-18 11:31:13 +01:00
Manfred Touron 5bd35abc24
Add bash/zsh autocomplete scripts 2016-02-18 11:21:57 +01:00
Manfred Touron 89282e8364
Add autocomplete support (#19) 2016-02-18 11:19:29 +01:00
Manfred Touron 1706850d99
Update Changelog 2016-01-04 12:28:50 +01:00
Manfred Touron 25db7ca9f5
godep-save 2016-01-04 12:27:51 +01:00
Manfred Touron d07f4c2d62
Rewrite imports for godep 2016-01-04 12:27:45 +01:00
Manfred Touron 4971744381
Imported Makefile from github.com/moul/golang-boilerplate 2016-01-04 12:27:32 +01:00
Manfred Touron 9be5908a5b
Update Changelog (#34) 2015-12-30 07:19:18 +01:00
Manfred Touron 02ca2750ff Merge pull request #34 from mickael9/patch-1
Fix terminal data being interpreted as format string.
2015-12-30 07:17:40 +01:00
Mickaël Thomas c8cae01560 Fix terminal data being interpreted as format string.
This caused invalid % sequences to be replaced with %!X(MISSING) in the terminal.
2015-12-30 06:27:56 +01:00
Manfred Touron 366c920c7c
Bump homebrew 2015-12-09 19:48:13 +01:00
Manfred Touron e6e834bcc3
Post-release version bump 2015-12-09 19:46:23 +01:00
Manfred Touron 1c35271872
v1.4.0 2015-12-09 19:25:55 +01:00
Manfred Touron ed75eae386 Merge pull request #33 from moul/skip-tls
Support of --skip-tls-verify
2015-12-09 18:59:25 +01:00
Manfred Touron fad5173a1b
Support of --skip-tls-verify 2015-12-09 18:58:57 +01:00
Manfred Touron dcf603df90 Merge pull request #32 from QuentinPerez/patch-1
Don't print buff if an error occurred
2015-11-19 00:56:46 +01:00
Manfred Touron 3272e1cae9 Merge pull request #31 from QuentinPerez/xc
Fix cross compile
2015-11-19 00:56:29 +01:00
Quentin Perez f6d1fcac25 Don't print buff if an error occurred 2015-11-19 00:23:01 +01:00