Commit Graph

87 Commits

Author SHA1 Message Date
Tatsuhiro Tsujikawa 9683f88e6a Add NGHTTP2_DEFAULT_HEADER_TABLE_SIZE macro
Use this macro in Python sources.  Python module constant
HD_DEFLATE_HD_TABLE_BUFSIZE_MAX was renamed as
DEFLATE_MAX_HEADER_TABLE_SIZE since the previous name was awkward.
2014-05-11 21:38:30 +09:00
Tatsuhiro Tsujikawa 2e5c7f598f Fix bug HPACK deflater does not send context update after table size change 2014-05-11 21:25:27 +09:00
Tatsuhiro Tsujikawa 6e7d0286e3 python: Utilize return value of nghttp2_submit_push_promise 2014-05-10 23:45:05 +09:00
Tatsuhiro Tsujikawa b041218a2a python: Fix function include path 2014-05-08 01:03:28 +09:00
Tatsuhiro Tsujikawa efd90c349d python: Output seqno in hpackmake.py, utilize it in hpackcheck.py 2014-04-23 00:55:54 +09:00
Tatsuhiro Tsujikawa 6a598d8fb8 python: Fix parellel `make distcheck` and not distribute nghttp2.c
It seems that setup.py gets deleted before python executes it in
clean-local.  To prevent this situation, we just use .NOTPARALLEL.

Previously we distribute nghttp2.c in python, which is cythonized C
source code from nghttp2.pyx.  Since it is distributed in archive it
exists in source directory.  But we use python distutils which
operates in build directory and does not support C source files in out
of tree directory (i.e., not under the build directory).  Copying C
source file to build directory is a bit dirty, so we just decided not
to ship nghttp2.c.
2014-04-21 00:51:12 +09:00
Tatsuhiro Tsujikawa 5240f8ad7e python: Update to draft version to 7 in hpackmake.py 2014-04-20 23:02:56 +09:00
Tatsuhiro Tsujikawa 5b3deec186 Fix python build on windows
Patch from Gisle Vanem

"""
I tried to build this extension on Windows, but failed since
ws2_32.lib is needed in libraries
"""
2014-04-07 22:15:15 +09:00
Tatsuhiro Tsujikawa f3f031f94c Merge branch 'wsgi' of https://github.com/alekstorm/nghttp2 into alekstorm-wsgi 2014-04-07 21:16:24 +09:00
Alek Storm be7aa8f53a Add experimental WSGI server implementation 2014-04-06 21:33:32 -07:00
Tatsuhiro Tsujikawa c9f3de5f6b python: Fix compile error 2014-04-05 19:16:40 +09:00
Tatsuhiro Tsujikawa 9d9eb48258 python: Update according to HPACK change, but flags are not used yet 2014-04-02 02:16:39 +09:00
Tatsuhiro Tsujikawa 60a2c260a5 Define NGHTTP2_CLIENT_CONNECTION_PREFACE macro
NGHTTP2_CLIENT_CONNECTION_PREFACE has the same content with
NGHTTP2_CLIENT_CONNECTION_HEADER, which is now obsoleted by
NGHTTP2_CLIENT_CONNECTION_PREFACE.
2014-03-30 21:02:25 +09:00
Tatsuhiro Tsujikawa ab2dc5967d Replace HTTP/2.0 with HTTP/2 2014-03-30 19:26:37 +09:00
Tatsuhiro Tsujikawa d07bb1ddff Rework outbound frame buffers 2014-03-13 22:11:02 +09:00
Tatsuhiro Tsujikawa 358b4386d3 Introduce nghttp2_buf to ease buffer management 2014-03-11 01:47:38 +09:00
Tatsuhiro Tsujikawa ddf6162528 python: Use distutils to build/install python bindings
automake version is a bit picky about installation location and uses
different compiler flags from distutils. We prefer official distutils.
Now nghttp2.c, which is generated by cython, is distributed in
archive.
2014-02-27 00:58:21 +09:00
Tatsuhiro Tsujikawa 52cec35906 python: Fix NameError if asyncio is not available 2014-02-26 00:54:16 +09:00
Tatsuhiro Tsujikawa 13cc3f2fe9 src, python: Only produce header_table_size when it is changed 2014-02-25 23:55:06 +09:00
Tatsuhiro Tsujikawa 7cf574d0d8 python: Update doc 2014-02-25 23:29:50 +09:00
Tatsuhiro Tsujikawa 911ffb24fa python: Set NPN in HTTP2Server.__init__ 2014-02-25 21:25:31 +09:00
Tatsuhiro Tsujikawa add07c4303 python: Encode headers in UTF-8 if they are given in unicode 2014-02-25 21:21:35 +09:00
Tatsuhiro Tsujikawa 98715f4374 python: Add HTTP/2 server using asyncio 2014-02-25 01:47:09 +09:00
Tatsuhiro Tsujikawa e74fbdf6b4 Merge branch 'master' into draft-10 2014-02-13 23:45:41 +09:00
Tatsuhiro Tsujikawa fd88c6160d HPACK post -05 updates
* Use 1 Huffman code table for both request and response
* Remove complicated deflater side table size management
* Add encoding context update
* Fix memory leak in inflater
2014-02-13 23:22:52 +09:00
Tatsuhiro Tsujikawa 39aaad5ad8 Fix out-of-tree build for python 2014-02-11 23:41:25 +09:00
Tatsuhiro Tsujikawa e7fc2951b8 nghttp2_hd: Define dedicated struct for HPACK deflater and inflater 2014-01-26 17:53:04 +09:00
Tatsuhiro Tsujikawa 5082ce5107 hpackmake.py: Add --deflate-table-size option 2014-01-21 23:04:31 +09:00
Tatsuhiro Tsujikawa a42cb13628 hpackmake.py: Add option parser 2014-01-21 21:50:01 +09:00
Tatsuhiro Tsujikawa 7048c56583 python: Update to latest nghttp2_hd spec 2014-01-17 02:27:42 +09:00
Tatsuhiro Tsujikawa 2e11f01ae6 python: Add -fno-strict-aliasing flag 2014-01-11 17:49:42 +09:00
Tatsuhiro Tsujikawa 47f20d5e83 Integrate Python bindings build into `make`
Now require python >= 2.7
2014-01-11 01:01:28 +09:00
Tatsuhiro Tsujikawa 0f89a19fa0 python: Add python script to generate hpack-test-case json files
See https://github.com/Jxck/hpack-test-case for the json file
format.
2014-01-05 23:50:12 +09:00
Tatsuhiro Tsujikawa 5c88e92e96 python: Add python script to check hpack-test-case json files
See https://github.com/Jxck/hpack-test-case for the json file
format.
2014-01-05 23:40:04 +09:00
Tatsuhiro Tsujikawa a2ceae23a3 python: Handle name/value is NULL but its length is positive
This happens when deflater local header table is smaller than
inflater header table size. We use the same notation
"**DEALLOCATED**" for such name/values with hdtest programs.
2013-12-21 23:02:48 +09:00
Tatsuhiro Tsujikawa efb25f723f Update README.rst in python dir 2013-12-20 01:35:59 +09:00
Tatsuhiro Tsujikawa cd5043f68c python: Remove unnecessary variables 2013-12-18 21:17:32 +09:00
Tatsuhiro Tsujikawa bddfa3c0b6 python: Add method to get/print header table 2013-12-18 00:20:14 +09:00
Tatsuhiro Tsujikawa 415b9d07d8 python: Refactor class 2013-12-17 23:53:49 +09:00
Tatsuhiro Tsujikawa 9d630901fa Add check for cython and substitute python and cython in Makefile.am 2013-12-16 21:46:50 +09:00
Tatsuhiro Tsujikawa 3c63936d3a Fix error on `make distcheck` 2013-12-15 16:36:43 +09:00
Tatsuhiro Tsujikawa 4e0ca71ef0 python: Add experimental python extension module
To build extension module, cython is required.
The module is not built with `make` in the top directory.
A user has to run `make build_ext` in python directory.
Currently header compression objects are available for testing.
2013-12-14 23:54:09 +09:00
Tatsuhiro Tsujikawa 0edce70343 Rebranding nghttp2 2013-07-13 00:43:06 +09:00
Tatsuhiro Tsujikawa a4c7f17aa2 python: Escape '\' in server example code 2012-09-13 23:10:47 +09:00
Tatsuhiro Tsujikawa 1f2109bb0b python: Bump up version number to 0.1.2 2012-09-12 22:38:10 +09:00
Tatsuhiro Tsujikawa c1b130acd0 python: Don't raise exception from Session.resume_data()
In practice, Session.resume_data() will be used without checking there
is deferred data or not. Actually, there is no API to check this.  So
it is better not to raise exception. Instead return False to notify
error. If the method succeeds, it returns True.
2012-09-10 22:10:54 +09:00
Tatsuhiro Tsujikawa 3d694c89c5 python: Escape \n in long_description 2012-08-28 23:00:24 +09:00
Tatsuhiro Tsujikawa adbf33c0b8 Add python wrapper to distribution 2012-08-28 22:07:43 +09:00
Tatsuhiro Tsujikawa fb72f47199 python: Bump up package version to 0.1.1 2012-08-28 21:55:46 +09:00
Tatsuhiro Tsujikawa 6cc62c5f22 python: shutdown socket at the end of the event loop 2012-08-28 21:39:24 +09:00