Eli Uriegas
48aa51b739
Merge pull request #413 from r0fls/loop-signal-handlers
...
use try/except when adding loop sig handlers
2017-02-13 10:13:56 -06:00
Raphael Deem
41c6125e1b
use try/except when adding loop sig handlers
2017-02-12 14:43:00 -08:00
Eli Uriegas
bb3d48f98b
Merge pull request #412 from seemethere/improving_performance
...
Header performance gains
2017-02-12 15:48:45 -06:00
Raphael Deem
b5e46e83e2
ensure_future -> add_task
2017-02-12 12:29:12 -08:00
Angus Hollands
2340910b46
Update deprecation message
...
Fix bug with single callbacks
2017-02-12 18:15:14 +00:00
Eli Uriegas
d8c4c1525d
Merge pull request #406 from agoose77/master_pre_patches_1
...
Cleanup middleware decorator
2017-02-12 12:14:50 -06:00
Eli Uriegas
6713ef7726
Remove unused import
2017-02-12 12:09:06 -06:00
Eli Uriegas
ae7555b065
Performance was down so this brings it back up
...
Changes from #378 introduced about a 10k request/sec slowdown. This
tries to rememdy it while keeping the same functionality but it's still
not as fast as 0.3.1
2017-02-12 12:05:14 -06:00
Angus Hollands
ee6ff0cc60
Add deprecation and old API
2017-02-12 12:28:02 +00:00
Raphael Deem
94b2352c2c
add ensure_future method
2017-02-11 17:40:17 -08:00
Eli Uriegas
cf3f943feb
Merge pull request #409 from r0fls/loop-attribute
...
add loop property
2017-02-11 18:31:50 -06:00
Eli Uriegas
55c4d583b9
Merge pull request #410 from r0fls/extensions
...
add extension to docs
2017-02-11 18:31:16 -06:00
Raphael Deem
0e1bb6ab04
add loop property
2017-02-11 16:28:35 -08:00
Raphael Deem
7944cff7a5
add extension to docs
2017-02-11 15:31:58 -08:00
Angus Hollands
8b08a370c5
Remove todo
2017-02-11 14:39:32 +00:00
Angus Hollands
2d5fd2fe1c
fix test
2017-02-11 14:35:44 +00:00
Angus Hollands
b5e50ecb75
Use app decorator instead of run arguments for before_start
...
Mirror listener of blueprints
2017-02-11 14:30:17 +00:00
Angus Hollands
e00c9d0ee0
Fix line length
2017-02-11 12:39:04 +00:00
Angus Hollands
be9c9f045a
Cleanup middleware decorator
2017-02-11 12:27:25 +00:00
Raphael Deem
75fca1b9c7
Merge pull request #402 from agoose77/patch-1
...
Don't ask for uvloop on windows
2017-02-10 12:11:12 -08:00
Angus Hollands
1436fb3ef4
Don't ask for uvloop on windows
...
This is a tricky issue, but essentially uvloop is unavailable on windows. This means for windows users, we have to install Sanic with no requirements, and then manually specify all requirements apart from uvloop.
However, Sanic will work with standard asyncio event loop. So, I propose we remove the uvloop requirement on windows. This patch doesn't touch any demo imports.
2017-02-10 13:14:36 +00:00
Raphael Deem
2bfd127218
Merge pull request #400 from aquacash5/master
...
added build folder to .gitignore
2017-02-09 23:13:49 -08:00
Kyle Blöm
de5da63d5c
added build folder to .gitignore
2017-02-09 18:49:11 -08:00
lixxu
fb419eaa36
fix bug: netloc always in url if SERVER_NAME defined in config even _external not true
2017-02-09 18:26:17 +08:00
lixxu
cf2a363e5e
improve url_for to support multi values for one arg, add _anchor/_external/_scheme options
2017-02-09 16:44:23 +08:00
Eli Uriegas
7401facc21
Merge pull request #398 from seemethere/fix_errors_from_content_range
...
Fixes errors related to #378
2017-02-08 20:06:02 -06:00
Eli Uriegas
579afe012b
Fixes errors related to #378
2017-02-08 19:59:34 -06:00
Eli Uriegas
4f856e8783
Merge pull request #378 from aquacash5/master
...
Added the tests, code formatting changes, and the Range Request feature.
2017-02-08 19:39:29 -06:00
Eli Uriegas
eb059183f7
Merge branch 'master' into master
2017-02-08 19:37:32 -06:00
Eli Uriegas
419156f7cc
Merge pull request #397 from seemethere/increment_031
...
Increment to v0.3.1
2017-02-08 19:23:20 -06:00
Eli Uriegas
b7f7883fb7
Increment to v0.3.1
2017-02-08 19:22:51 -06:00
Eli Uriegas
a5a7490bca
Merge pull request #379 from youknowone/exception
...
Let exception handler handle inherited exceptions
2017-02-08 19:20:42 -06:00
Eli Uriegas
6724d8131c
Merge pull request #387 from subyraman/url-for-v3
...
Add `url_for` method for simple routes, blueprints, HTTPMethodView
2017-02-08 19:20:09 -06:00
Raphael Deem
a19bb15070
Merge pull request #389 from chenfengyuan/fix_run_async_demo
...
fix run_async demo
2017-02-07 14:58:48 -08:00
Eli Uriegas
2ee0147848
Merge pull request #386 from youknowone/sanic_endpoint_test
...
Fix sanic_endpoint_test working with redirects
2017-02-07 10:57:05 -06:00
Eli Uriegas
252f1add7e
Merge pull request #394 from brian-bates/tox-cleanup
...
Add missing dependency to tox.ini
2017-02-07 10:55:52 -06:00
Jeong YunWon
413c92c631
Let exception handler handle inherited exceptions
...
Original sanic exception handler only could handle exact matching
exceptions. New `lookup` method will provide ability to looking up
their ancestors without additional cost of performance.
2017-02-07 21:08:31 +09:00
Suby Raman
36d519026f
reject unnamed handlers
2017-02-06 11:11:00 -05:00
Fengyuan Chen
aa54785918
fix always warning loop is passed issue
2017-02-06 11:11:00 -05:00
Raphael Deem
d6b386083f
Merge pull request #390 from chenfengyuan/pass_loop_warning
...
fix always warning loop is passed issue
2017-02-05 14:01:41 -08:00
Brian Bates
82f383b64f
Add missing dependency
...
Added missing `aiofiles` to tox.ini and cleaned up requirements files.
2017-02-05 11:44:01 -08:00
Jeong YunWon
a15ee3ad06
Fix sanic_endpoint_test working with redirects
...
Before fix, it raises error like:
```
tests/test_utils.py F
================================= FAILURES =================================
______________________________ test_redirect _______________________________
app = <sanic.sanic.Sanic object at 0x1045fda20>, method = 'get', uri = '/1', gather_request = True, debug = False
server_kwargs = {}, request_args = (), request_kwargs = {}
_collect_request = <function sanic_endpoint_test.<locals>._collect_request at 0x1045ec950>
_collect_response = <function sanic_endpoint_test.<locals>._collect_response at 0x1045ec7b8>
def sanic_endpoint_test(app, method='get', uri='/', gather_request=True,
debug=False, server_kwargs={},
*request_args, **request_kwargs):
results = []
exceptions = []
if gather_request:
def _collect_request(request):
results.append(request)
app.request_middleware.appendleft(_collect_request)
async def _collect_response(sanic, loop):
try:
response = await local_request(method, uri, *request_args,
**request_kwargs)
results.append(response)
except Exception as e:
exceptions.append(e)
app.stop()
app.run(host=HOST, debug=debug, port=PORT,
after_start=_collect_response, **server_kwargs)
if exceptions:
raise ValueError("Exception during request: {}".format(exceptions))
if gather_request:
try:
> request, response = results
E ValueError: too many values to unpack (expected 2)
sanic/utils.py:47: ValueError
During handling of the above exception, another exception occurred:
utils_app = <sanic.sanic.Sanic object at 0x1045fda20>
def test_redirect(utils_app):
"""Test sanic_endpoint_test is working for redirection"""
> request, response = sanic_endpoint_test(utils_app, uri='/1')
tests/test_utils.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
app = <sanic.sanic.Sanic object at 0x1045fda20>, method = 'get', uri = '/1', gather_request = True, debug = False
server_kwargs = {}, request_args = (), request_kwargs = {}
_collect_request = <function sanic_endpoint_test.<locals>._collect_request at 0x1045ec950>
_collect_response = <function sanic_endpoint_test.<locals>._collect_response at 0x1045ec7b8>
def sanic_endpoint_test(app, method='get', uri='/', gather_request=True,
debug=False, server_kwargs={},
*request_args, **request_kwargs):
results = []
exceptions = []
if gather_request:
def _collect_request(request):
results.append(request)
app.request_middleware.appendleft(_collect_request)
async def _collect_response(sanic, loop):
try:
response = await local_request(method, uri, *request_args,
**request_kwargs)
results.append(response)
except Exception as e:
exceptions.append(e)
app.stop()
app.run(host=HOST, debug=debug, port=PORT,
after_start=_collect_response, **server_kwargs)
if exceptions:
raise ValueError("Exception during request: {}".format(exceptions))
if gather_request:
try:
request, response = results
return request, response
except:
raise ValueError(
"Request and response object expected, got ({})".format(
> results))
E ValueError: Request and response object expected, got ([{}, {}, {}, <ClientResponse(http://127.0.0.1:42101/3 ) [200 OK]>
E <CIMultiDictProxy('Content-Type': 'text/plain; charset=utf-8', 'Content-Length': '2', 'Connection': 'keep-alive', 'Keep-Alive': 'timeout=1')>
E ])
sanic/utils.py:52: ValueError
```
2017-02-05 13:57:04 +09:00
Fengyuan Chen
29680cb515
fix always warning loop is passed issue
2017-02-04 16:09:09 +08:00
Fengyuan Chen
884749f345
fix run_async demo
2017-02-04 15:27:46 +08:00
Suby Raman
5c63ce666c
punctuation
2017-02-02 14:21:59 -05:00
Suby Raman
5632d073be
update docs
2017-02-02 13:00:15 -05:00
Suby Raman
f9056099f9
all works
2017-02-02 12:52:48 -05:00
Suby Raman
7c09ec29f7
rebase
2017-02-02 12:21:14 -05:00
Eli Uriegas
6f0b09509e
Merge pull request #213 from sfstpala/master
...
Make it possible to disable the logo by subclassing Config
2017-02-01 23:07:52 -06:00
Eli Uriegas
31c53d67e2
Merge pull request #384 from seemethere/update_static_tests
...
Updates static tests to test for issue #374
2017-02-01 15:20:34 -06:00