Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/nonebot/nonecorn

ASGI server that forked from hypercorn, with extra features beyond asgi spec
https://github.com/nonebot/nonecorn

Explain how to disable signal handling

This snippet allows the default behaviour of Hypercorn < 0.11 to be
restored.

3cc31bdb3bdef530aeaf542dfd0fca8cde4f6787 authored over 4 years ago
Following the release of 0.11.0 bump to +dev

2f2e9803647a4be5ea44573b3758f8fe2d16976e authored over 4 years ago
Bump and release 0.11.0

8b130b1b9628491b98b7504269533a6875e032ae authored over 4 years ago
Introduce new access log atoms

This makes it easier to log the path or URL with a querystring.

3fc569df7a0b9ff781495b5ed61488a30a206d96 authored over 4 years ago
Allow HTTP -> HTTPS redirects to host from headers

This allows the server to redirect to whatever host is present in the
headers rather than having...

c200d692d22bd053d35bda7de3693f34fd30b024 authored over 4 years ago
Get QUIC socket addresses from themselves

Since `--bind-quic` may contain a combination of IP addresses, UNIX
socket addresses and file de...

f038f9e54946065d463511d4f97a4ea415358528 authored over 4 years ago
Add a warning for UNIX QUIC sockets

Since "alt-svc" cannot be used to redirect to these sockets, they may
not be used.

ec294bab1d009dc651732a27a29ec79633300364 authored over 4 years ago
Add socket type check

b3194de8ff7f19f89468b16b4cf46a067932b418 authored over 4 years ago
Handle sockets given as file descriptors properly

Currently file descriptors are converted into python sockets using
`socket.fromfd`, this method ...

9690f8c6d354bd8f5e43cd577c309bcb2b88add8 authored over 4 years ago
Bugfix handle lifespan in WSGI middleware

This just returns, rather than erroring or otherwise. This is the
correct action as lifespan can...

3cde8e7f191381d7a44e8b2a9b2c9925afbb3b61 authored over 4 years ago
Bugfix allow lifespan completion if app just returns

This ensures that if the app just returns (rather than erroring or
responding to messages) the l...

58a789b576a1321fbbb89f34db6f1d8acbe0eddc authored over 4 years ago
Change configuration loading for python files

Previously using the `python:` prefix on the command line would load a
python file path, this is...

ab0f6b6fc49ddf8cc78670df6796b5c41555bc8d authored over 4 years ago
Fix 76930bb661e32cb3028b4c787202fcc752271d8f linting

0462326d91893df562147421dadea412d4597560 authored over 4 years ago
Fix python_version usage in 76930bb661e32cb3028b4c787202fcc752271d8f

15bfd2427ccd48ee4ecf1906f6dda57b738ee969 authored over 4 years ago
Don't Require 'typing_extensions' in Python 3.8+

According to the documentation only Python version 3.7 and above are
supported by Hypercorn. Pyt...

76930bb661e32cb3028b4c787202fcc752271d8f authored over 4 years ago
Minor naming and style changes

To match the style I use in Hypercorn.

c6df3becf73df7be03451d53f5685aaadd4bbd80 authored over 4 years ago
Upgrade black and reformat

59afd56050dcec483b6ddd1c760ed01a6d3b91c6 authored over 4 years ago
don't propagate hypercorn.access messages by default

f011b7a4c4fb061a8a22ba7d850918fdca6ff98e authored over 4 years ago
remove explicit level for hypercorn.error

25fe1094cf1ce62b044fc195617df3ec5ba92f23 authored over 4 years ago
use log level from CONFIG_DEFAULTS as a default value

76e729c137f12862538f284e1dca7fda650bc403 authored over 4 years ago
tests for --loglevel option

ac7b0b4059f229a541fe1b50a9c1e3e177fc996c authored over 4 years ago
remove default value for --log-level option

b71b4e93928dca8796ce22a99418c4a11068a87c authored over 4 years ago
discard unused handler definition

502b94e17f7f8b313c4357672a2b3b89a0e0a78d authored over 4 years ago
fix format warnings

37cfb561fc7976306c8cd99d1b820d3fc90885f2 authored over 4 years ago
remove handler from hypercorn.error to avoid duplicate messages, remove propagate default value

1eb74d0fee48e27b75701dcd5a1ad3e43a03459b authored over 4 years ago
remove hypercorn.access handler to maintain backward compatibility

34fe786345661f5d4692dd52979f47440e4e66f6 authored over 4 years ago
target root logger to stderr by default

e35a7fd2a4c73d0dfd0b32341f5e3dba041e1081 authored over 4 years ago
disable_existing_loggers is no longer required

3a3a2aab1f755d88f081716fdcab2799c0ec4f2c authored over 4 years ago
call _create_logger after base logging configuration

b34e3272c413804fdcda72087b5521c6ecefcfcd authored over 4 years ago
cleanup _create_logger

d3da1c8c5d791eab4d5e4d4cb741619f40318b9e authored over 4 years ago
base logging config on CONFIG_DEFAULTS in all cases

d732aec07ad2a7f9a657660939554dc28f537c05 authored over 4 years ago
Fix mypy typing issue

1119d02aae91214eba47fb94e660a10f729083c5 authored over 4 years ago
Bugfix wait on the serving when running

This was implicitly the case before (as they ran in the event loop
anyway) but could result in s...

19cbe37e7fa653ea130cd50a6141f5533ce139e3 authored over 4 years ago
Bugfix ensure signals are always handled (asyncio)

If no shutdown trigger is provided then signal handlers are now
created by default (rather than ...

354e7c8263e55b83189a34aa99328579e0f997e9 authored over 4 years ago
Bugfix wait for tasks to complete when cancelled

This seems to be the best practice to avoid any confusing additional
errors.

dbaf6a4bc372522db9615375698d1613e43e609d authored over 4 years ago
Bugfix HTTP/1 recycling

41c30e25b420bdb1630285964557adf7ef32fa60 ensured that a closing stream
would handle events after...

fb7b110860b16887580b90cc67c6d228a0b06b1d authored over 4 years ago
Replace `only` with `rules`

Gitlab CIs API is changing.
Thanks to @perobertson

9ea071c028d9c9df1705cdde29394e3e71773138 authored over 4 years ago
Race condition in H11 handling

maybe_recycle may run while send(Updated()) is executing, thus it sets
can_read before handle_ev...

ccf477776a2fc5456cc44c6a1dd876f2fc28eb38 authored over 4 years ago
Following the release of 0.10.2 bump to +dev

3696cf2f92798777bb35aefc5fe41150b0d5ab9b authored over 4 years ago
Bump and release 0.10.2

c3ca27bceb4d59849ac6ae8c89f9ad887bd64850 authored over 4 years ago
Bugfix catch TimeoutError as well

This extends ab22c5c1 to also catch TimeoutErrors thereby fixing both
bugs.

391a2533cc85ea9a71f994a87155f38759911e1b authored over 4 years ago
Bugfix Trio dispatcher lifespan handling

This fixes 9a42bd5c5946a8ac88992b7d118b655a9ac06ea9 correctly for the
Trio version (with a test).

fad58013d2ca8109ca05a11e9ce23ec1449e88ba authored over 4 years ago
Bugfix dispatcher lifespan handling

The lifespan must be duplicated to all mounted apps and the return
messages combined. This does ...

9a42bd5c5946a8ac88992b7d118b655a9ac06ea9 authored over 4 years ago
Bugfix dispatcher middleware with non http/websocket scopes

The previous version would only pass on the scope to the first app.

56c2111d6be87fcd62a2cbe10a4799f8faa8ad50 authored over 4 years ago
Bugfix WSGI PATH_INFO and SCRIPT_NAME encoding

Both should be latin1 encoded not UTF-8 (as ASGI specifies). Thanks to
https://github.com/django...

62ca3a41cc4d0d1b0e0d42f9d3fdacefc67adb71 authored over 4 years ago
Update to isort > 5

80326336f035edcfa7a446c5f064d77e0442ecde authored over 4 years ago
Bugfix ensure HTTP/2 sending is active after upgrades

Previously the send task would not be running after an upgrade request
(as it would have trigger...

6de1301908aef735be82916ace4531938c2592b0 authored over 4 years ago
Bugfix raise an exception for unknown scopes to WSGI middleware

The correct action for a scope that cannot be handled by the
middleware (or passed on) is to rai...

ccfbe8460a5784fae4dc60b88de84db101aa5a09 authored over 4 years ago
[h2c] add missing Connection header field

1. Without this field, nghttp2 report the following errors:

[ERROR] Failed to parse HTTP Upgrad...

674862d8a54800951a1a196b015d95cdf86085d7 authored over 4 years ago
Following the release of 0.10.1 bump to +dev

9fbad6c0f7b18e6bce1db33bf38373702a4f541a authored over 4 years ago
Bump and release 0.10.1

6001f5d527c05c2826ed70b77f54ccc4af8f2e97 authored over 4 years ago
Add programatic usage to the README quickstart

This is a very common use case, and should be better advertised.

e7213689888b1d9ac883abc3fa774ded77d8e992 authored over 4 years ago
Remove pipenv reference

I prefer poetry, but pip indicates any manager can be used without
stating a preference.

37edacce2ba131760c10c2da9ebb20d6987f082a authored over 4 years ago
Bugfix handle receiving data after stream closure

If the stream closes earlier than the client, especially for
websockets when the server closes w...

ba4547238a402a1c233c2320556994b8a88fd74d authored over 4 years ago
Fix tests

Request lines end after two newlines
GET doesn't have a body

87e2db694c7a0305f788d9498f50482a3b229637 authored over 4 years ago
Refactor 005008924a7e4d39fb23a26527e039f10c8d904f

This is clearer and less prone to error.

78b229ce8a18183080636028345f31482afd073f authored over 4 years ago
Bugfix close streams on server name rejection

This prevents teh server crashing trying to handle the request body
after rejecting the request ...

005008924a7e4d39fb23a26527e039f10c8d904f authored over 4 years ago
Following the release of 0.10.0 bump to +dev

8170cdc6079f8c1203eee7b555f35914a21e9d12 authored over 4 years ago
Bump and release 0.10.0

75b012bff739f6839125561d01996f5b6656eca0 authored over 4 years ago
Add a graceful timeout on shutdown

This should give any tasks (requests, or background) the graceful
timeout to finish before they ...

241d97861875049e0d3a59fb0e01a49bd018cfd8 authored over 4 years ago
Add the ability to send websocket pings

This allows the connection to be kept alive (busy) until either the
client disconnects or the AS...

4a884dbf9701145d5659610248bf52e78ee85536 authored over 4 years ago
Refactor the event loop specific handling

Previously the event loop specific calls, e.g. spawn, sleep, time, all
had to be done within the...

887bd180ff550d7c807d999f7d9cf8cc47cfc45c authored over 4 years ago
Fix QUIC bind output

e1a3973c78f554540e0b01587114f73e8dcd083d authored over 4 years ago
Add WSGI middleware

This allows Hypercorn to serve WSGI applications via the use of this
middleware.

Whilst this ex...

d32ffd73a97ba8b24f9def1f21da80d67fcd85a3 authored over 4 years ago
Add support for server names

This allows the valid hosts to be configured and for Hypercorn to only
reply to these hosts (404...

f288675469199737227a858f1949076e67da220f authored over 4 years ago
Bugfix ignore BufferCompleteErrors when trying to send

This is another indicator of the connection being closed (depending on
which race condition wins...

eb520969b45253f1ca8d2703b6ddf33a292a851f authored over 4 years ago
Update testing

Switch from asynctest to the stdlib (with a backport as AsyncMock was
introduced in 3.8) and upd...

80e2ad5db107c42d42471ea64764d2b42202349c authored over 4 years ago
Improve the reloader efficiency

This is based on @blueyed work in !28.

Extracting the module paths is fairly expensive, as is y...

7caaadba5869983d8d391b09563a52042ef418b2 authored over 4 years ago
Bugfix handle SIGINT/SIGTERM on Windows

This follows Uvicorn and a suggestion from @selimb to ensure that the
signal handlers are presen...

2be7acdb7014055ff97c79d117ad7bccc9881a61 authored over 4 years ago
Correct the docs access log format default

414fbb80c0f4ddffdafa27fbb22217ea2e5cc2fa authored over 4 years ago
Bugfix don't error if send to a h11 errored client

If the client is in a errored state after the request line, for
example from sending body beyond...

6f300157d655f26784d289a4a3821f3afd421ba0 authored over 4 years ago
Add some docs on the loop's exception handler

This will help users understand how to ignore SSLErrors if they use
the API.

62b1faf9b040e7d20e9d53cfc96eaaa92f3086e1 authored over 4 years ago
Update HTTP/3 code for aioquic >= 0.9.0

The QuicConnection constructor now needs to be passed the Original
Destination Connection ID whe...

8b29cb1d67f56c76622b34411a3435a9967550e8 authored over 4 years ago
Bugfix f9b417b6e318b13a750d7b48ff217fd65c3d4c92

The loop argument should also have been removed.

5c0b8160ac0f28ac13d4e0e3235fd936fc24267b authored over 4 years ago
Upin pytest

It seems to work now

d5c3a0d357e91b93cc5a0b2b154bdde3b6b74690 authored over 4 years ago
Bugfix spawn_app usage

f092554447c0e811841a258b45856f467d8830d9 introduced a mandatory task
group argument that wasn't ...

f9b417b6e318b13a750d7b48ff217fd65c3d4c92 authored over 4 years ago
Following the release of 0.9.5 bump to +dev

fe12c0ae9ea89058e3e06eaf0992331a766609bc authored almost 5 years ago
Bump and release 0.9.5

540b10b70e3495587534bb61f3ae13352688db41 authored almost 5 years ago
Bugfix handle MissingStreamError and KeyError

Both are potentially raised if the stream (application) tries to send
events after the connectio...

e755bde0f34d6fe27e0d0ef9c541a7946562730a authored almost 5 years ago
Fix testing usage of `b""`

This follows the clarification in
https://github.com/python-hyper/h11/issues/100 that the empty
...

1c0b5fa291d4da1e796a4b6c85700264bdbab014 authored almost 5 years ago
Bugfix correctly cope with TCP half closes via asyncio

This introduces a simple version of the trio nursery to manage the
tasks spawned in the TCP serv...

f092554447c0e811841a258b45856f467d8830d9 authored almost 5 years ago
corrected handling of verify-flag argument and improved error message on bad values

7fc168c7c86854a28c6e6879ad50467e9c392871 authored almost 5 years ago
Bugfix also catch RuntimeError for uvloop workers

Trying to call write_eof on a closed uvloop stream will result in a
RuntimeError. As this was no...

c5827469b0b11efb26d5c288bd1944bf81e2b928 authored almost 5 years ago
Following the release of 0.9.4 bump to +dev

297bc774153d576b8ddbac039292c2a06b10ae74 authored almost 5 years ago
Bump and release 0.9.4

2579388e8a2375e4974a0375be53873c3c243d40 authored almost 5 years ago
Bugfix catch the correct timeout error

This fixes aa52319e648585ba2388e906593edee4b1fb5ed1

ab22c5c144257102c7a867ecbe6a03d2ee62cf85 authored almost 5 years ago
Bugfix AssertionError when draining

There can only be a single task waiting on the drain otherwise this
line raises an AssertionErro...

2700a5a84a6dcb0d4154ec6b1bf95e9905a4399a authored almost 5 years ago
Following the release of 0.9.3 bump to +dev

3e57b7d33cef09eb51122158a75c34e9a7a8fb4c authored almost 5 years ago
Bump and release 0.9.3

c0e45a5c1c61e7f3f698d770492a04b51e2b01bc authored almost 5 years ago
Bugfix trio has deprecated event.clear

As per

TrioDeprecationWarning: trio.Event.clear is deprecated since Trio
0.12.0; use mult...

289669a4fe2d397c012f91fbd62d2fed46ee8c50 authored almost 5 years ago
Bugfix ensure the send_task completes on timeout

It is important that the tasks spawned when a connection is
established complete. This wouldn't ...

c6dcf63fd948def0c2fdd76c5374828eaef8748c authored almost 5 years ago
Bugfix Ensure there is only a single timeout

This ensures the timeout update is atomic in that only one task can
delete and then create a tim...

d7757f19ce381a7f0ab974c33b0e539dc8ebe12c authored almost 5 years ago
Bugfix catch ConnectionRefusedError and OSError when reading

These are further exception variants when the client has disconnected,
this now triggers a conne...

f9798c6cb8ee824e69977475cbc96ebf587d754e authored almost 5 years ago
Bugfix HTTP->HTTPS redirect middleware path encoding

The path is percent decoded, which makes it unsuitable to be sent back
to the client as a reques...

ac07919034295dfbb0429209dbaff62fa7cdb269 authored almost 5 years ago
Bugfix cope with quick disconnection

This copes with disconnection when the handler tries to read the
peername i.e. Errno 107 Socket ...

b23a5ffb837ce21362fd39772aba7774a78bed51 authored almost 5 years ago
Pin pytest < 5.4 until pytest-sugar is fixed

See https://github.com/Teemu/pytest-sugar/issues/187.

de3961214d5d5b44b6fa8ed6711bc86ae720c54c authored almost 5 years ago
Correct min Python version on "Installation" page

d9214214701df939f8831ad3fa623c53ad45a007 authored almost 5 years ago
Update pandas-sphinx-theme to pydata-sphinx-theme

As the theme has renamed

eaa2f9631339eb376a38f913f551cd4babe5ca57 authored almost 5 years ago
Bugfix catch TimeoutError

The underlying socket can also raise a TimeoutError which should be
caught and handled as if the...

aa52319e648585ba2388e906593edee4b1fb5ed1 authored almost 5 years ago
Bugfix Trio HTTP/1 keep alive handling

This Partially reverts 13bbb7faeebed7462449d751b0e198079c120755

This was breaking keep alive ha...

4f3cb156f4b578495bdc24f47ce44df2d74ebc70 authored almost 5 years ago