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

Switch from the solar theme to the PyData bootstrap theme

As the latter is responsive, much cleaner, and much more pleasant to
read. It is also under acti...

45b1d754256c986a45f590edcd193a938cccf4a1 authored almost 5 years ago
Bugfix unblock sending when the connection closes

This allows the send_task to unblock and exit when the connection
closes. This should prevent th...

1e350e4fd5b22257227e06d03d134b9681a4c404 authored almost 5 years ago
Fix trio with multiple workers

The `shutdown_trigger` argument of `worker_serve` needs to be a callable returning an awaitable,...

4b614d837842b935f3917ab3f27dc4ec070d8379 authored almost 5 years ago
Following the release of 0.9.2 bump to +dev

b062659a476e7508e8c4ea5cb329a13b0e24074b authored almost 5 years ago
Bump and release 0.9.2

f164a8c48aecf18a87d8edc50c44d5dd890bf212 authored almost 5 years ago
Fix linting following 6f243df889ff008bf8a8175010b660d92892669c

59aaa5d8d07f317c5b7ddfea1ee14f35732baf33 authored almost 5 years ago
Bugfix support multiple workers on Windows for Python 3.8

The proactor event loop is the default in Python >= 3.8 and sadly
errors with WinError87,

T...

42c2f6f5c9534f4a8912614a8a19a6317ee01a26 authored almost 5 years ago
Bugfix catch NotADirectoryError alongside FileNotFoundError

This should prevent Hypercorn crashing if it tries to stat a file that
is within a path that is ...

2397db2c904564c940adee0770ccd50b02831d2f authored almost 5 years ago
Bugfix trio syntax error

The filter method is a class method, rather than an instance method.

992f7b9893c5c1c560dfeecff455f0f16e1bcf89 authored almost 5 years ago
Bugfix HTTP/1 connection recycling

If a subsequent request on a kept alive connection is received before
the http stream indicates ...

41c30e25b420bdb1630285964557adf7ef32fa60 authored almost 5 years ago
Following the release of 0.9.1 bump to +dev

4e6a6076c7942f0d7aa8930b760e4d0e0a547eb1 authored almost 5 years ago
Bump and release 0.9.1

0880aeb52ba00df3bbe3896497864bfc105881ac authored almost 5 years ago
Bugfix H3_ALPN constant usage

This fixes 0e8b1a02c8e1ddb31d163443b29e8ae52312f1c9 to use the updated
specification,
https://de...

6a6388e3635a3657041a2564b0d74d49eb136224 authored almost 5 years ago
Update gitlab badge

At some point it seems to have changed from build to pipeline.

00dc9f8c19454df4dc0f836237cc1270b95536ef authored almost 5 years ago
Utilise the H3_ALPN constant

This ensures that the latest version (supported by the installed
aioquic library) is always used.

0e8b1a02c8e1ddb31d163443b29e8ae52312f1c9 authored almost 5 years ago
Fix CI following src move

This was missed in 6f243df889ff008bf8a8175010b660d92892669c

398510392f08ee74b51340c9b4c9df28295138f3 authored about 5 years ago
Move source to the src directory

This is to ensure that the setup works correctly, and follows a trend
in the Python community of...

6f243df889ff008bf8a8175010b660d92892669c authored about 5 years ago
Add scope check in DispatcherMiddleware

7da4c8e2542d702f9df11a5c8960d1181e079fb5 authored about 5 years ago
Update formatting following black upgrade

277eac7ea00fc80153df08e08bda52ac013404c5 authored about 5 years ago
Add basic statsd documentation

This indicates the basics for how to use it, hopefully allowing people
to start and report back....

bb4fe0ef0ba9619d8073e8767c291cece7d3d166 authored about 5 years ago
Support Python 3.8

Now that Python 3.8 has been released.

cd265280c13798bef524f83646776b366bed04f3 authored about 5 years ago
Fix mypy upgrade issues

39511801b66fc732b5e91cc210aa5066a6e1adea authored about 5 years ago
Allow the access log atoms to be customised

This follows the Gunicorn API by adding an atoms method that returns
the atoms mapping. This wil...

932b5aaa7ba77409373499d34900be4e90497689 authored about 5 years ago
Bugfix catch NotImplementedError alongside AttributeError

In Python 3.8 the former error is raised rather than the latter on
Windows.

a8ba7f62dd8f1a937ecf1ca3e5486e7d64df3e54 authored over 5 years ago
Following the release of 0.9.0 bump to +dev

eff35830f0abc1a450e2c47f4cd81e2fd913a0c2 authored over 5 years ago
Bump and release 0.9.0

271712f8b0f943eb592f79339474a992dbad4d33 authored over 5 years ago
Update development status classifier to Beta

These don't mean much to me, but Alpha is misleading at this stage of
development.

6bee5afe5718931e2a2b230d60ca7c5a0cc18096 authored over 5 years ago
Allow the Alt-Svc headers to be configured

If specified the configured Alt-Svc headers are used in preference to
auto generated ones. This ...

e3ffc31015dfaf2fe3aa644229ade5eb12a795d4 authored over 5 years ago
Add dispatcher middleware

This allows for multiple applications to be served based on the root
path that matches the mount.

c8515f9160f413e9126764922e21e39f4f579a71 authored over 5 years ago
Fix mypy issues

The latest version correct the reported lines for errors.

f116f69eb1184ca47243044d85e633334d3d5cd2 authored over 5 years ago
Support logging configuration setup

This follows the Gunicorn configuration naming, and allows users to
specify the logging configur...

2d9e0bbb7bf0963b6384cecf62154963427aba3d authored over 5 years ago
Switch log format to be the same as Gunicorn's

This is also the common log format (with referrer and user agent
appended to the end).

2dcf0e573c3830bca5d281973a8592f34b8991d1 authored over 5 years ago
Following the release of 0.8.4 bump to +dev

46d9fea9a455d1c61e95d20f688660b37e78ce3f authored over 5 years ago
Bump and release 0.8.4

6f04e6353a34ff24207c03f01ac5b8b19c0fb83b authored over 5 years ago
Bugfix server push pseudo headers

As 3bdcd536068f89f743df0157eefcefa0a42baec5 removed the pseudo headers
the HTTPStream can no lon...

e9b43f58d7bc900be8ed7e2d1a13652663a6544b authored over 5 years ago
Following the release of 0.8.3 bump to +dev

3602e279527653a38982e6f3a33e2631f18b4f9a authored over 5 years ago
Bump and release 0.8.3

ab41618a6fdbcb9f36899c1fff9be2d23c620179 authored over 5 years ago
Stop advertising h3 in the ALPN protocols

As it cannot be served over TCP.

010a399cff85d5b3ed0ad796aba9c17c86ebfa90 authored over 5 years ago
Fix the HTTP/3 draft version usage

It is now 23, as advertised in the Alt-Svc.

71fa0946a57a6edc0050943ff29ed390d0a6aed5 authored over 5 years ago
Use QuicConfiguration.load_cert_chain for h3

172b55838f168b1776fb17c5c6e36be8a167e598 authored over 5 years ago
Bugfix remove run_forever usage in worker_serve

This fixes an error introduced in
836540ac4ce099ecedd7c99e5d18a92652962e55. The issue was that i...

bab0d3c6390f0840db9050cdb6bbdb6797640168 authored over 5 years ago
Update h3 Alt-Svc header

This version should be recognised by Chrome.

e12dbebbd9d338a6daab21338ed63448c4f15a14 authored over 5 years ago
Fix formatting error introduced in ffd7d69761e9d2143a6d4ae3ad2abfcf808ebfd2

dfb2c6db96bac005ab3d1a9fcd25ea468fd7e1a1 authored over 5 years ago
Add missing test requirements

This allows the following to work

pip install -e '.[tests]'
pytest

ffd7d69761e9d2143a6d4ae3ad2abfcf808ebfd2 authored over 5 years ago
Bugfix remove signal handling from worker_serve

The worker_serve function is meant to be used in an environment
whereby the caller sets the even...

836540ac4ce099ecedd7c99e5d18a92652962e55 authored over 5 years ago
Bugfix clarify lifespan error messages

If the app handling the lifespan fails before the startup the message
should make it clear there...

2bdea45cd58103f4adaf1377b3cdf526e464d182 authored over 5 years ago
Bugfix ensure keep alive timeout is not active when pipelining

Previously if the h11 protocol entered a read block state it would
prevent the keep alive update...

88fdaf5341f7a77958abe32d7fd41c8a1934eca8 authored over 5 years ago
Test the validation that headers are bytes tuples

9918dab3f960ccaf4e67e9781dcf98bc83bec353 authored over 5 years ago
Filter and reject Pseudo headers

The ASGI specification has recently been updated to disallow pseudo
headers being passed to or r...

3bdcd536068f89f743df0157eefcefa0a42baec5 authored over 5 years ago
Replace RequestReceived with HeadersReceived in h3

As the former is deprecated for the latter.

14d099be2bd6d8f4f7f1e4fdc9c183de76bf150f authored over 5 years ago
Support HTTP/3 server push

This utilises the new aioquic functionality to server push over
HTTP/3. As with HTTP/2 this shou...

304585a3df50bbfb33f04b38aa8e7104b3fa5cc5 authored over 5 years ago
Complete 6779f7e5bcc81098210322af71eee8b79bd9f02b for Trio workers

47d47015bfae796c8c5cbc54ba19c16e47334e6d authored over 5 years ago
asyncio: tcp_server: update keep_alive_timeout after handling data

Otherwise the connection is considered to be "idle" still, although
`data` contains the request ...

6779f7e5bcc81098210322af71eee8b79bd9f02b authored over 5 years ago
tox: use `{posargs}`, pytest: use `testpaths`

This allows for `tox -e py37 -- …` to pass through args to pytest.

pytest: configure `testpaths...

0bee779b531b8ae1fac786df1b4aab15ac441753 authored over 5 years ago
Fix TypeError with `--error-logfile`

It was assigning `--error-log`, which typically is the sentinel object
then.

b2452e13358588e7a840aa72c2c95150db9e8f02 authored over 5 years ago
Following the release of 0.8.2 bump to +dev

db9ec5a947ad8538fbbb309d2b3c4c2539e7df25 authored over 5 years ago
Bump and release 0.8.2

d8fac8072166ae90007e346ea098e28c568cefd0 authored over 5 years ago
Bugfix correct the alt-svc for HTTP/3

Other reference servers utilise this version.

6b3bbcc292f68889b9fa3cf0144325a4f9ab6852 authored over 5 years ago
Correctly handle HTTP/3 request with no body

This change ensures that hypercorn responds correctly if it receives only a
HEADERS frame with t...

b511cd0e875d2f67cacc36d511183e1752825aab authored over 5 years ago
Loosen the aioquic requirement

This allows more rapid development of the interaction between aioquic
and Hypercorn at the expen...

06ca766de3bab56406905b88e18d69c797d2b236 authored over 5 years ago
Following the release of 0.8.1 bump to +dev

add11719fa4b61a8b0a4c167b2cfa7442877c188 authored over 5 years ago
Bump and release 0.8.1

d1988d539b9b7ac80c8aea930e76396007cf80bc authored over 5 years ago
Bugfix make unix socker ownership and mask optional

This alters 72b2ca0718973e8300ce26521ec3d20f5f039022 to make changing
the ownership (and umask) ...

3fdbebc08d5431fe74470ce2a584db0178a59e4c authored over 5 years ago
Following the release of 0.8.0 bump to +dev

d0053e69d9eaccb928e060ed01e168eb08369f96 authored over 5 years ago
Bump and release 0.8.0

9d52873c30623073fe2aad7e581b6f1399dc034c authored over 5 years ago
Add HTTP/3 information to the readme

This gives the basic instructions on how to serve HTTP/3.

dae98515b6c8c7f990d19a8fda52df7602db6898 authored over 5 years ago
Take extra precautions establishing HTTP/3 connection

This catches ValueError exceptions which occur when parsing an invalid
QUIC packet.

It also ens...

3650bfaac272a419bf3be26daf79fd373fdad450 authored over 5 years ago
Add the ability to change permissions and ownerships of unix sockets

An example of how this is useful is to consider using Hypercorn with
nginx where nginx is config...

72b2ca0718973e8300ce26521ec3d20f5f039022 authored over 5 years ago
Bugfix don't send empty bytes (eof) to protocols

Closure is handled via explicit Closed events, rather than by passing
EOF markers (b""). This sh...

cd4427a03d86f8c34c2bb2eb573176e6a5b48751 authored over 5 years ago
Add some discussion about recent HTTP/2 attacks

Hypercorn (or rather H2) is potentially vulnerable to CVE-2019-9516,
0-Length Headers Leak. Hype...

83bd619f28290a7db2e6200406c3177cbca19cd7 authored over 5 years ago
Add a shutdown_trigger argument to serve functions

This allows the API usage to include an ability to trigger a graceful
shutdown. Without this the...

33a6f1a3847382921ec3d37143145d1bf06ee263 authored over 5 years ago
Use aioquic 0.5.0 for HTTP/3 support

d515c3bee10a3e95c380cb9a04b77713d6a35821 authored over 5 years ago
Support WebSockets over HTTP/3

It looks as if WebSockets are supported over HTTP/3 in the same manner
as over HTTP/2 which make...

ad39bb2ad7c5d662b2d5e76e6fb399e7b5cc540f authored over 5 years ago
Add client and server information for HTTP/3 connections

This is part of the ASGI scope requirement and helps make Hypercorn
more useful.

0aa5bf1431e38f5a0dc1b05e9d6cfe1731b32b90 authored over 5 years ago
Explain how to create a config instance in the API docs

This helps new users figure out how to serve an ASGI app.

3fce96473c94ae9da98572e81c9cf87515016828 authored over 5 years ago
Remove worker class warnings when using serve

It is very clear from the usage of serve what worker is being used, so
this is unlikely to be a ...

9aaff3546aab716a578d55e322f88e4c433ca0c2 authored over 5 years ago
Bugfix handle logger targets equal to None

This should fully disable the logging (so as to improve performance).

f3df2869ac88d336bdaf58ad583201d1f8f361a6 authored over 5 years ago
Bugfix WinError 10022 Invalid argument

On Windows it seems as if sockets must be explicitly shared to be used
in a different process to...

146e09556ec74eac2a37f31f831a00d3b2e7b780 authored over 5 years ago
Bugfix ensure a closure code is sent with the disconnect

The ASGI specification requires a code with the disconnect
message. The absence was causing erro...

f471b2efa726ba24426d830a77997f481e4f15f9 authored over 5 years ago
Initially support HTTP/3

This is still a work in progress and hence is not enabled by default,
instead hypercorn will nee...

7c1f519fe117f3fbcc6a62fcccdae2e8dfe0b61a authored over 5 years ago
Support the latest wsproto version

This allows the type checking to extend to usage of wsproto.

614dc12d82c7146aede9463a612d4b0ed8228e2c authored over 5 years ago
Bugfix catch and ignore OSErrors when setting up

These would be thrown if a socket disconnected during the setup e.g.
during the address parsing.

122abaa65bbe9bf3f893c3c1a1e31819ff080481 authored over 5 years ago
Support HTTP/2 prioritisation

This sends data as prioritised by the client using the Hyper priority
library to build and track...

e65378942636a74169d7549f8f84ab9172230661 authored over 5 years ago
Bugfix fix KeyError in close_stream

Previously if the close stream was called during the handling of the
CloseStream message sending...

d4bf215305674c3ae0c75a9f9d4d3c73188d16cc authored over 5 years ago
Bugfix Catch ClosedResourceError as well

fc6f5a108b0912d8c0504c2e335bd67be8599623 authored over 5 years ago
Update description in index.rst to include ASGI/3

9993785b852a0c3a694fe08311595d9647f4a7c6 authored over 5 years ago
Bugfix use the `at_eof` method

This seems the correct way to determine if the reader is at the EOF,
and therefore should lead t...

a2b2753aa01d5097b37e7806beaa216e4005c094 authored over 5 years ago
Simplify the h2 protocol code

min can take more than 2 arguments, and the negative chunk size case
is handled above in the whi...

4e60c1eae6cde3152c880c1f118402d37e6a238c authored over 5 years ago
Removed unnecessary fixtures and fixed test names

2dbfd4f17ffc883f14bff28a23a20d56a55fd519 authored over 5 years ago
Removed unnecessary fixture

39e4d8970638e838500e266b5f06c9bad67d61d5 authored over 5 years ago
For http/2 use version 2 not 2.0

86b0a7badc39ea23cd1d840b4bf0efa173a0e152 authored over 5 years ago
Made response headers optional

e81ea4cf9a6be8fb575d8d9530f9998d8d94849b authored over 5 years ago
Following the release of 0.7.2 bump to +dev

9955f437f6ee82df21464b87a36035e66d8b7375 authored over 5 years ago
Bump and release 0.7.2

50de172cca60ae096d286a3f6e5716e7464d9d4f authored over 5 years ago
Bugfix shield data sending in Trio working

This ensures that data fragments aren't sent (say if the sening task
is cancelled). Data fragmen...

a91f5abac47ed59d599f39f225d90cf8f1016833 authored over 5 years ago
Bugfix use finally clause

This better expresses the intent of 2108c41f5ba4a77e7ae0609ad88dc5ebae6b086e

6570cda728f191a7a2174c3ac0fd9a4fa9d2d88b authored over 5 years ago
Bugfix handle ASGI apps ending prematurely

Previously if an ASGI app errored Hypercorn would attempt to cleanup
and close the connection. H...

2108c41f5ba4a77e7ae0609ad88dc5ebae6b086e authored over 5 years ago
Bugfix move the trio socket address parsing within the try-finally

The socket connection could disconnect during the SSL handshake
(especially if it fails to hands...

c822afed5b3d5a126eb521af8849b6a19a1ff55a authored over 5 years ago
Bugfix change the h2 closed routine

It was possible for the streams dictionary to change size during
iteration (if a stream closed t...

9385f290d3fc7b80a622a829f5a73ed44be88ea9 authored over 5 years ago
Bugfix only delete the H2 stream if present

There is a race condition whereby a stream can be cancelled and then
finish (or vice versa) whic...

f12c9c5b4d9ebf4babb1140029304c5967dbdf73 authored over 5 years ago