Commit Graph

444 Commits

Author SHA1 Message Date
Aldo Cortesi
df962f8e7b Convert parse_pathod to generator 2015-06-07 16:11:32 +12:00
Aldo Cortesi
0da3e51e1c Make parse_pathoc a generator
This lets us do things like this:

get:/:ir,@1:x1000000000

It will also let us expand the language to include a "repeat forever" concept.
2015-06-07 13:18:33 +12:00
Aldo Cortesi
7412ec83f5 Refactor pathoc message receive to use queues and generators
This gives us a nicer, thread-safe interface.
2015-06-05 16:03:17 +12:00
Aldo Cortesi
d23691f98c Improve websocket logging 2015-06-05 12:04:40 +12:00
Aldo Cortesi
0a7da6a9b1 Rudimentary support for reflected websocket frames. 2015-06-04 23:57:23 +12:00
Aldo Cortesi
9311d60596 Test output to try to figure out why Travis no longer loves us 2015-06-04 20:42:11 +12:00
Aldo Cortesi
07d5b90ebf Shore up test suite. 2015-06-04 20:36:50 +12:00
Aldo Cortesi
182b79ab9e Refactor to allow dropping to websockets on any anchor point 2015-06-04 20:23:05 +12:00
Aldo Cortesi
fb1b9113a1 Try to fix test suite race like a savage. 2015-06-04 19:55:01 +12:00
Aldo Cortesi
80d191ff7c Try to appease Travis 2015-06-04 19:45:22 +12:00
Aldo Cortesi
ae9f470d2b Craft anchor is now specified as a regex
Unifies this with anchor points.
2015-06-04 19:09:38 +12:00
Aldo Cortesi
c5992b8d23 Refactor Pathod HTTP handlers for clarity 2015-06-04 18:37:13 +12:00
Aldo Cortesi
5a33f31041 Clarify nomenclature, complete nested frame language spec. 2015-06-04 18:14:25 +12:00
Aldo Cortesi
9fda74c65a Clarify language API, stub out nested websocket frames 2015-06-04 17:18:06 +12:00
Aldo Cortesi
5bee061849 Bump version 2015-06-04 11:15:07 +12:00
Aldo Cortesi
6122f2da44 Change test API to allow multiple pathoc requests
Add simple unit test for websocket server
2015-05-31 18:38:11 +12:00
Aldo Cortesi
2ebe994375 logging: Re-raise exception after output 2015-05-31 18:12:39 +12:00
Aldo Cortesi
effd29b51a Refactor logging, fix conversion to websocket handler 2015-05-31 18:03:41 +12:00
Aldo Cortesi
af66661212 Add timestamps to logs by everywhere 2015-05-31 17:25:36 +12:00
Aldo Cortesi
e7c255a3bb Refactor, fix a crashing bug by changing the way we specify SANs to pathod 2015-05-31 16:54:52 +12:00
Aldo Cortesi
88ab54fab0 Refactor pathod to allow switching protocol handlers 2015-05-31 14:12:51 +12:00
Aldo Cortesi
2a1a0e1ab2 Prevent autoflake from changing our API 2015-05-30 17:51:48 +12:00
Aldo Cortesi
a09f3e06c3 Factor logger out of pathoc, use it in pathod as well. 2015-05-30 17:43:01 +12:00
Aldo Cortesi
4ed5043c67 Add coding style check, reformat. 2015-05-30 12:03:13 +12:00
Aldo Cortesi
904760c6c2 Merge pull request #23 from Kriechi/fix-links
fix github links
2015-05-30 10:43:54 +12:00
Thomas Kriechbaumer
17db4486a8 fix typo 2015-05-29 20:15:37 +02:00
Thomas Kriechbaumer
64d6a11ce5 fix github links 2015-05-29 19:57:06 +02:00
Maximilian Hils
e8ee6d20fe fix typo 2015-05-26 19:08:55 +02:00
Aldo Cortesi
baf0bac39a Post-release version bump. 2015-05-26 10:43:42 +12:00
Aldo Cortesi
a43e3e29cf Remove server example for now. 2015-05-26 09:50:51 +12:00
Aldo Cortesi
dccd57f53b release prep: bump version, fix doc layout a bit 2015-05-18 10:46:19 +12:00
Aldo Cortesi
bcba55cc26 Strike times token on copy 2015-05-17 16:42:59 +12:00
Aldo Cortesi
abe1f09f2c HTTP and websocket requests now have an xN clause to repeat 2015-05-17 15:52:56 +12:00
Aldo Cortesi
d80fbc2410 websockets: raw body specification 2015-05-17 15:38:13 +12:00
Aldo Cortesi
bddf81edfc websockets: lINTEGER to specify payload length 2015-05-17 11:31:02 +12:00
Aldo Cortesi
cd2fb13b3e websockets: replace the "raw" with a simpler mechanism
You can now say "knone" to specifiy that no key should be generated
under any circumstances.
2015-05-17 11:04:53 +12:00
Aldo Cortesi
e4feba5433 Introduce and enfoce uniqueness constraints for language components 2015-05-17 10:43:30 +12:00
Aldo Cortesi
2ee60783b6 websockets: client and server flavors, key and mask specification 2015-05-16 11:31:53 +12:00
Aldo Cortesi
d66dedc6e7 websockets: mask specification
- Add a FixedLengthValue
- Use it to implement a 4-byte mask specifier
- Adjust docs
2015-05-16 09:42:47 +12:00
Aldo Cortesi
2beae27541 websockets: fix actions on frames 2015-05-05 11:16:29 +12:00
Aldo Cortesi
1dc2fa0424 pathoc: cope with errors during websocket frame read. 2015-05-05 10:59:37 +12:00
Aldo Cortesi
589deb9fe1 websockets: specification of fin, mask, rsv1-3 bits. 2015-05-04 10:48:35 +12:00
Aldo Cortesi
179cc8dc1f Split up language docs, document websocket code specification. 2015-05-04 09:54:59 +12:00
Aldo Cortesi
4b2e00acb3 Docs 2015-05-04 08:34:53 +12:00
Aldo Cortesi
5b6d3a80bb websockets: code specification 2015-05-03 13:54:52 +12:00
Aldo Cortesi
67d2993339 Lower-case rather than upper-case to canonicalize names
Marginally less finicky
2015-05-03 12:59:21 +12:00
Aldo Cortesi
3f5ec4b737 PreValue -> Value 2015-05-03 12:54:25 +12:00
Aldo Cortesi
cc434ded89 Clarify token/component split through naming
Tokens are now Tok*
2015-05-03 12:53:28 +12:00
Aldo Cortesi
e35e6d90b9 Remove bundled pyparsing, install as external package
Adapt ValueLiteral parsing to suit
2015-05-03 10:11:51 +12:00
Aldo Cortesi
bf71a9a2a0 base.PathodSpec -> http.PathodResponse 2015-05-03 08:56:19 +12:00