A WSGI server based on Rust Hyper
Project description
Razorbird
Razorbird is a WSGI application server for Python. Well, or just me trying to learn some Rust.
Needless to say, do not use it for anything serious. Apart from being hampered by my poor Rust skills, it has serious flaws:
- Request is buffered in memory without any restrictions.
- Response is not streamed but concatenated to a byte string.
- Single process/single threaded cause I haven't found out how to make Tokio threads work with PyO3.
- The server is always (hardcoded) bound to http://127.0.0.1:8000 .
- Signal handling is an example of horrible duct taping.
Patches welcome!
Installation
I have been lazy to upload wheels, so you'll need access to a functional Rust
environment with cargo
, rustc
etc. Then just install from sdist:
$ pip install razorbird
Usage
Don't.
Well, if you'd really like to give it a spin, just run
$ razorbird your.module.name
your.module.name
should contain a WSGI callable named application
, app
or api
, but that is customizable from the command line.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file razorbird-0.2.0.tar.gz
.
File metadata
- Download URL: razorbird-0.2.0.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.2 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71faa777e41d16bce0f09d8217c8fbc633281def893e1bf8a29086ad9352ca34 |
|
MD5 | 4cff51c10aee637211feaaa5763a76a4 |
|
BLAKE2b-256 | 0c9395d42a9c89b9f3c1ae471582a254ebe847a9de15f2a46e7c4ec9937418f1 |