Brian Warner
0ee56e12b0
change 'list' protocol, make room for nameplate attributes
2016-05-22 11:01:44 -07:00
Brian Warner
53bbcc33f6
new file, state-machine based
2016-05-20 18:49:20 -07:00
Brian Warner
181ef04a91
break out more message components, use SidedMessage
2016-05-20 16:39:59 -07:00
Brian Warner
05aa5ca76e
WIP Wormhole
2016-05-20 13:51:05 -07:00
Brian Warner
3b86571de3
fix py3
2016-05-20 12:12:07 -07:00
Brian Warner
390cd08b53
better command/response names: allocate+allocated, claim+claimed
2016-05-20 11:35:30 -07:00
Brian Warner
6c5b517ad1
hush
2016-05-20 11:10:17 -07:00
Brian Warner
ce06d379d9
remove old tests
2016-05-20 11:09:45 -07:00
Brian Warner
0a14901e94
full coverage of websocket
2016-05-20 11:08:10 -07:00
Brian Warner
399efb374c
don't close websocket when mailbox is deleted
...
This made sense for ServerSentEvent channels (which has no purpose once
the channel was gone), but not so much for websockets. And it prevented
testing duplicate-close.
2016-05-20 11:07:21 -07:00
Brian Warner
f044ef0efa
tests almost good
2016-05-19 23:50:22 -07:00
Brian Warner
335ed00cb7
build out tests
2016-05-19 19:55:11 -07:00
Brian Warner
e39a8291e3
checkpointing: server roughed out
2016-05-19 18:09:17 -07:00
Brian Warner
0e72422ffa
WIP
2016-05-19 14:18:49 -07:00
Brian Warner
5994eb11d4
WIP new proto
2016-05-18 00:16:46 -07:00
Brian Warner
2ea5d96290
Channels don't need "welcome" anymore
2016-05-17 17:35:44 -07:00
Brian Warner
a74b1b1e3a
WIP: new server protocol
2016-05-16 22:04:25 -07:00
Brian Warner
5dd91c7311
test too-many-allocate, allocate+claim
2016-05-13 00:46:12 -07:00
Brian Warner
c4c0cf71eb
add test
2016-05-13 00:43:59 -07:00
Brian Warner
1198977e06
SCHEMA CHANGE: channelids are now strs, not ints
...
This will enable the use of large randomly-generated hex or base32
channelids, for post-startup or resumed-connection channels.
2016-05-13 00:37:53 -07:00
Brian Warner
c14e982ae7
rendezvous: allow multiple channels per connection
2016-05-12 18:01:56 -07:00
Brian Warner
31491bb939
update docs
2016-05-12 17:48:26 -07:00
Brian Warner
85dc0fd41b
change server API: "release" instead of "deallocate"
2016-05-12 17:46:15 -07:00
Brian Warner
2c2cf29564
update comment: sent -> server_tx
2016-05-12 17:12:04 -07:00
Brian Warner
bdc9066c23
rendezvous: change add_listener signature
...
Pass in a handle and a pair of functions, rather than an object with two
well-known methods. This should make it easier to subscribe to multiple
channels in the future.
2016-05-12 17:03:57 -07:00
Brian Warner
a34fb2a98b
remove plain-HTTP (non-WebSocket) rendezvous server
2016-05-12 16:56:19 -07:00
Brian Warner
104ef44d53
provide wormhole() as a function, rather than a class constructor
...
You must always provide a reactor= argument. In the future, omitting the
reactor= argument is how you ask for a blocking Wormhole.
2016-05-12 16:45:54 -07:00
Brian Warner
d87aba40e4
rename _confirm message to just "confirm"
2016-05-12 16:45:54 -07:00
Brian Warner
d0ef53fc4d
remove phase= from the Wormhole API
...
Phase are now implicit and numbered.
2016-05-12 16:45:54 -07:00
Brian Warner
501af4b4ec
rename send_data/get_data to just send/get
2016-05-12 16:45:54 -07:00
Brian Warner
49785008bb
remove blocking implementation: it will return
...
It will return as a crochet-based wrapper around the Twisted
implementation.
2016-05-12 16:45:54 -07:00
Brian Warner
4dfa569769
docs: remove named phases, Wormhole is now a record pipe
2016-05-12 16:45:54 -07:00
Brian Warner
a4ce663c31
tox.ini: pyflakes-1.2.3 is out, and works
...
This no longer suffers from the bug which caused pyflakes to crash when
it sees "from . import x".
2016-05-12 16:43:46 -07:00
Brian Warner
d725364a5e
MANIFEST.in: don't include misc/web npm stuff
2016-05-08 23:27:31 -07:00
Brian Warner
8bf60d6562
update NEWS for 0.7.6 release
2016-05-08 23:19:15 -07:00
Brian Warner
54f6057191
overhaul dump-timing JS
...
Do all the work in JS.
2016-05-06 18:53:28 -07:00
Brian Warner
5501a6bf1c
simplify timing, add msgid
2016-05-06 18:53:28 -07:00
Brian Warner
5530c33185
rdv_ws: send acks for each message
...
but only if the client is modern enough to include "id" in the message,
which lets us avoid sending acks to an 0.7.5 client (which would cause
them to abort, they don't like unrecognized server messages).
The acks let the client learn the server_rx time of messages that
terminate on the server, like "allocate" and "claim".
2016-05-06 18:51:28 -07:00
Brian Warner
644c7c6840
DB schema change: add/store/return msgid
...
This enables dump-timing to correlate sender logs with receiver logs.
2016-05-06 18:29:58 -07:00
Brian Warner
8a80242532
rdv_ws: deliver "server_tx", not "sent"
...
Update twisted/transcribe.py to accept it, update tests.
2016-05-06 18:29:58 -07:00
Brian Warner
d2dfc325d8
deliver stored server_rx to clients
...
This enables the "dump-timing" tools to display more information.
2016-05-06 18:29:58 -07:00
Brian Warner
959ab4baca
rdv_ws: get server_rx at a better place
2016-05-06 18:29:58 -07:00
Brian Warner
d9ba55621b
Channel.add_message(server_rx=): add new arg
2016-05-06 18:29:58 -07:00
Brian Warner
fe2dfc1a35
DB schema change: rename 'when' to 'server_rx'
2016-05-06 18:29:58 -07:00
Brian Warner
cd9f6e4377
ignore unknown rendezvous messages
...
I should have added this earlier, so 0.7.5 would be tolerant of new
server messages.
2016-05-06 18:29:19 -07:00
Brian Warner
3f5b66eddc
pyflakes-1.2.2 is broken too
2016-05-06 15:45:48 -07:00
Brian Warner
7b6c015233
travis: use tox, temporarily disable coverage
...
I don't yet know how to get tox to run the equivalent of "coverage run
`which trial` wormhole.test", since tox doesn't use a shell. But I want
to switch travis to tox so we get the same dependencies (in particular
the pyflakes constraint) everywhere. I'll figure out how to re-enable
coverage data soon.
2016-05-06 09:00:02 -07:00
Brian Warner
46fb9d9cfc
tox: reject pyflakes-1.2*, due to a bug
...
https://bugs.launchpad.net/pyflakes/+bug/1560134 causes an internal
error in pyflakes 1.2.0 and 1.2.1 when it encounters one of our "from .
import x" statements.
2016-05-06 08:54:25 -07:00
Brian Warner
a671982ab0
rdv: add comment
2016-05-05 19:13:05 -07:00
Brian Warner
58e95cff0d
rdv_ws: avoid magic method-name concatenation
2016-05-05 19:11:21 -07:00