Commit Graph

1387 Commits

Author SHA1 Message Date
Brian Warner
13b4a1793f server: OPEN/CLOSE on crowded mailbox should provoke "crowded" error
The Mailbox object throws CrowdedError, but WebSocketRendezvous wasn't
handling it specifically. The server responded by dropping the connection and
logging an "Unhandled Error", so the client would reconnect and then get the
same error again and again.

This changes WebSocketRendezvous to handle CrowdedError by sending a
"crowded" error response. The client should react to this by giving up on the
connection entirely, and not reconnecting.
2017-07-01 01:17:48 -07:00
Brian Warner
c58172632c Merge PR210 2017-07-01 01:10:03 -07:00
Brian Warner
af4df47fe7 rendezvous: fix misleading log message
We only log the internal (sqlite) ID of the nameplate, not the actual
small-integer name. While investigating misbehavior due to overload, I was
confused into thinking that users were getting nameplates in the 15000+
range, when in fact those were merely the internal database row ids.
2017-06-30 12:46:02 -07:00
Leo Arias
97b194ccd8 Fix the xkcd link markup 2017-06-30 12:51:28 -06:00
Brian Warner
c9ef7a64a2 Merge PR206
closes #206
2017-06-29 15:49:55 -07:00
Brian Warner
fc1bf4f141 README: minor reformatting, move tox down to Development 2017-06-29 15:49:34 -07:00
Pablo Oliveira
7088b0eb27 improve installation instructions
Added separated subsections for each OS (OS X, Linux, Windows) on the installation guide.
2017-06-29 15:45:59 -07:00
Brian Warner
faf41ca765 Merge PR202
closes #202
2017-06-29 07:54:35 -07:00
Leo Arias
919e46c0bb Use the latest git tag as the snap version
With this change it's easier to automate the continuous delivery of the snap, because when a verified tag is pushed to the repo the snap will get that version. There will be no need to manually change the version in the snapcraft.yaml.
2017-06-29 07:54:26 -07:00
Brian Warner
a312761fb9 Merge PR200 2017-06-29 07:53:09 -07:00
Brian Warner
532e0b5f55 Merge PR199 2017-06-29 07:52:05 -07:00
Brian Warner
01f1000ae9 Merge PR194 2017-06-29 07:50:23 -07:00
Brian Warner
1ed3ab003e README: more updates 2017-06-29 07:50:10 -07:00
Johan Lindskogen
97b601276f Make default option of prompt uppercase
Makes it clear what happens when user just presses `Enter`

See: https://stackoverflow.com/questions/7803728/standard-format-for-yes-no-questions-in-the-terminal
2017-06-28 21:36:45 +02:00
lanzelot1989
9d5a049424 Add relevant xkcd 2017-06-28 20:47:20 +02:00
Chandan Rai
e84eb547be corrected typo 2017-06-28 17:46:14 +05:30
Quentin Hibon
79f1d3bd0e Update README.md
Update Debian and Ubuntu installation instructions
2017-06-28 14:01:12 +02:00
Brian Warner
38097847c4 server: manage common args in the same way as client-side CLI
This now shares the _compose() decorator with wormhole.cli.cli, and removes
the arguments_to_config() function in favor of just copying all kwargs into
the Config object.
2017-06-26 23:05:16 +01:00
Brian Warner
1d5fee04ae Merge PR187
closes #187
closes #185
2017-06-26 21:59:59 +01:00
Jean-Paul Calderone
ec2e305b84 define start-like options just once 2017-06-26 21:38:18 +01:00
Brian Warner
9413edac47 Merge PR186: add server --relay-database-path and --stats-json-path
closes #186
2017-06-26 21:28:57 +01:00
Brian Warner
44a44738ec take new args for 'restart' too, fixes test failure 2017-06-26 21:26:32 +01:00
Jean-Paul Calderone
6b20cb760a Take cli args for db and stats paths 2017-06-26 21:26:32 +01:00
Jean-Paul Calderone
777d722b0d Let me use FakeConfig in another test method 2017-06-26 21:26:32 +01:00
Brian Warner
13ff2461b8 NEWS: update for 0.10.2 release 2017-06-26 21:01:35 +01:00
Brian Warner
3b0a8de114 Merge branch '180-websocket-error' 2017-06-26 20:44:00 +01:00
Brian Warner
5b3e816620 tests: cover enough of RendezvousConnector to exercise that last fix 2017-06-26 18:55:31 +01:00
Brian Warner
fa9382c716 handle WebSocket protocol errors correctly
The previous behavior was to throw an Automat exception, when a state machine
was given a LOST event from the initial non-connected state, and it didn't
have a handler for it. This version throws ServerConnectionError instead.

Still needs a test

refs #180
2017-06-26 18:55:31 +01:00
Brian Warner
bded01d3cc Merge branch 'restart' 2017-06-26 18:52:57 +01:00
Brian Warner
900c3f8c29 server: make 'restart' accept --disallow-list too
I should really move all the start/restart common arguments into a separate
place, to make it easier to avoid this problem in the future.
2017-06-26 17:49:37 +01:00
Brian Warner
4169545c28 server-restart: add failing test
"wormhole-server restart" was broken by the addition of --disallow-list,
because the Click parser wasn't update to include the argument. This test
should exercise that a basic no-argv invocation of both "start" and "restart"
can at least build the Service object successfully.

refs #151
2017-06-26 17:49:34 +01:00
Brian Warner
f282649f81 tests/ServerBase: control advertise_version=
we'll disable this for most tests, but a few want to see it in the welcome
message
2017-06-26 15:20:36 +01:00
Brian Warner
5e5dbd90b3 NEWS: update for 0.10.1 release 2017-06-26 14:03:13 +01:00
Brian Warner
bf96bab976 define IInputHelper 2017-06-26 13:52:23 +01:00
Brian Warner
57352431ab define IDeferredWormhole, add methods to (internal) IWormhole
refs #153
2017-06-26 13:51:58 +01:00
Brian Warner
3392db779d api.md: s/generate_code/allocate_code/ 2017-06-26 13:50:40 +01:00
Brian Warner
2f4232a0e7 server: only advertise the CLI version if requested
with --advertise-version=

refs #179
2017-06-26 13:49:24 +01:00
Brian Warner
572f6e3c16 NEWS: update for 0.10.0 release 2017-06-24 15:59:48 +01:00
Brian Warner
1345514c77 MANIFEST.in: include .dot files under docs 2017-06-24 15:58:37 +01:00
Brian Warner
b1d65f7483 Merge branch '157-unicode'
refs #157
2017-06-24 15:39:30 +01:00
Brian Warner
758dd5b9de use click.Path to make args.what unicode
refs #157 (unicode paths cause 'wormhole send' to crash), might fix it
2017-06-24 15:07:43 +01:00
Brian Warner
ec1f7ba6c9 more NEWS updates 2017-06-15 18:03:10 +01:00
Brian Warner
3f4723a5fa initial NEWS updates for the next release 2017-06-15 16:40:34 +01:00
Brian Warner
0970c3b7a1 Merge PR174: depend unconditionally on txtorcon
This adds no additional dependencies (txtorcon only depends on things that we
already depend upon anyways), and txtorcon itself is only 300kB. This removes
the need for using `pip install magic-wormhole[tor]` to get Tor support:
instead, just dod `pip install magic-wormhole`.

closes #174
2017-06-15 11:47:50 +01:00
Brian Warner
2575dbfad3 setup.py: require txtorcon all the time, remove 'tor' extra 2017-06-14 23:41:49 +01:00
Brian Warner
e7bb25907a Merge branch '68-first-failure' 2017-06-14 11:34:31 +01:00
Brian Warner
b66aacd968 bump Twisted dep to get ClientService.whenConnected(failAfterFailures=) 2017-06-14 10:41:55 +01:00
Brian Warner
8f97e4e7e2 if the first connection fails, abandon the wormhole
This provides a clear error in case the user doesn't have an internet
connection at all, or something is so broken with their DNS or routing that
they can't reach the server. I think this is better than waiting and
retrying (silently) forever.

If the first connection succeeds, but is then lost, subsequent retries occur
without fanfare.

closes #68
2017-06-14 10:40:46 +01:00
Brian Warner
caa25a05a1 Merge PR158
Closes #158
2017-06-01 22:12:21 +01:00
Brian Warner
117747306d setup.py: bump tqdm dep to 4.13.0
That's the first version that works on netbsd.
2017-06-01 21:58:27 +01:00