- 11 May, 2012 3 commits
-
-
Sam Rushing authored
header_set.__delitem__(): remove a header header_set.copy(): copy a header set
-
Sam Rushing authored
Bad_Response: new exception
-
Sam Rushing authored
-
- 10 May, 2012 1 commit
-
-
Sam Rushing authored
-
- 04 May, 2012 4 commits
-
-
Sam Rushing authored
-
Sam Rushing authored
-
Sam Rushing authored
server.start: set the thread name based on self.__class__ server.create_connection: allow the user to override the connection class (for spdy) tlslite_server.__init__, accept: allow the user to pass handshake_args down (for spdy)
-
Sam Rushing authored
-
- 03 May, 2012 5 commits
-
-
Sam Rushing authored
-
Sam Rushing authored
-
Sam Rushing authored
worm.kill(): remove from arena.worms at this point, rather than relying on the try/finally in the thread.
-
Sam Rushing authored
-
Sam Rushing authored
-
- 02 May, 2012 3 commits
-
-
Sam Rushing authored
Conflicts: coro/_coro.pyx
-
Eric Huss authored
-
Sam Rushing authored
-
- 01 May, 2012 3 commits
-
-
Sam Rushing authored
-
Sam Rushing authored
-
Sam Rushing authored
buffer.set16(): method to set a 16-bit length field after the data is emitted Packer.addbyte(): call underlying buffer add_byte(). Packer.addstring(): chr() call not needed Packer.endRR(): call self.buf.set16() to set RR length Unpacker.getstring(): ord() call not needed Unpacker.getHINFOdata(): useless, but since addHINFOdata() is there... Unpacker.unpack(): cut & paste typo
-
- 27 Apr, 2012 3 commits
-
-
Sam Rushing authored
-
Sam Rushing authored
-
Sam Rushing authored
-
- 16 Apr, 2012 4 commits
-
-
Eric Huss authored
-
Eric Huss authored
Conflicts: docs/tutorial.rst
-
Eric Huss authored
-
Hasan Alayli authored
I am going to merge this pull-request as I am certain it's better than the original linux_poller we have already.
-
- 14 Apr, 2012 4 commits
-
-
Sam Rushing authored
-
Eric Huss authored
-
Sam Rushing authored
-
Sam Rushing authored
-
- 13 Apr, 2012 7 commits
-
-
Sam Rushing authored
Conflicts: setup.py
-
Sam Rushing authored
Conflicts: setup.py
-
Sam Rushing authored
-
Sam Rushing authored
-
Sam Rushing authored
-
Sam Rushing authored
Use distribute_setup.py to help get pip working (and to ensure the correct version of distribute is present). Distribute>=0.6.16 is required to invoke Cython automatically. Check for Cython's presence manually: unfortunately the install_requires param to setup will never be seen if Cython is not present (due to the use of Cython's Extension module)
-
Sam Rushing authored
-
- 12 Apr, 2012 3 commits
-
-
Sam Rushing authored
-
Hasan Alayli authored
rename register_event to hint that it's private and get read of wait_for_read & wait_for_write as they are duplicate and not used anywhere
-
Hasan Alayli authored
In short: epoll royally sucks. The longer version: epoll doesn't allow 2 separate events to be maintained per fd. If we register an fd for read, and then decide to register it for write too, the later will overwrite the original registered read event unless we register READ|WRITE. It seems harmless but it's not. When we register for READ|WRITE and only a READ event arrives, we first receive the READ event, and in the next epoll_wait if a READ + WRITE event occurs we'll receive READ|WRITE because the original registered event is READ|WRITE. What this means is that we received READ twice here, once as READ and the second time when a WRITE & READ occured, READ|WRITE. We were not expecting the second READ event and w'ell have to ignore it. This behavior happens because we are not passing EPOLLONESHOT. The reason we don't want to do this is that the EPOLLONESHOT will get applied to both events (read + write) when we only need it for one. Ex: If we register for a READ event, followed by registering WRITE event READ|WRITE|EPOLLONESHOT this will mean if either of the READ or WRITE event occurs it will be EPOLLONESHOT and the second event will need to be registered. I certainly don't want to track such events and reregister them. Hence I am going with the first solution by not use EPOLLONESHOT and ignore events I am not expecting. If only epoll supports fd+event as a key rather than fd only.
-