Skip to main content

An async/await-native I/O library for humans and snake people

Project description

https://cdn.rawgit.com/python-trio/trio/9b0bec646a31e0d0f67b8b6ecc6939726faf3e17/logo/logo-with-background.svg

The Trio project’s goal is to produce a production-quality, permissively licensed, async/await-native I/O library for Python. Like all async libraries, its main purpose is to help you write programs that do multiple things at the same time with parallelized I/O. A web spider that wants to fetch lots of pages in parallel, a web server that needs to juggle lots of downloads and websocket connections at the same time, a process supervisor monitoring multiple subprocesses… that sort of thing. Compared to other libraries, Trio attempts to distinguish itself with an obsessive focus on usability and correctness. Concurrency is complicated; we try to make it easy to get things right.

Trio was built from the ground up to take advantage of the latest Python features, and draws inspiration from many sources, in particular Dave Beazley’s Curio. The resulting design is radically simpler than older competitors like asyncio and Twisted, yet just as capable. Trio is the Python I/O library I always wanted; I find it makes building I/O-oriented programs easier, less error-prone, and just plain more fun. Perhaps you’ll find the same.

This project is young and still somewhat experimental: the overall design is solid and the existing features are fully tested and documented, but you may encounter missing functionality or rough edges. We do encourage you do use it, but you should read and subscribe to issue #1 to get warning and a chance to give feedback about any compatibility-breaking changes.

Vital statistics:

  • Supported environments: Linux, MacOS, or Windows running some kind of Python 3.5-or-better (either CPython or PyPy3 is fine). *BSD and illumus likely work too, but are not tested.

  • Install: python3 -m pip install -U trio (or on Windows, maybe py -3 -m pip install -U trio). No compiler needed.

  • Tutorial and reference manual: https://trio.readthedocs.io

  • Bug tracker and source code: https://github.com/python-trio/trio

  • License: MIT or Apache 2, your choice

  • Code of conduct: Contributors are requested to follow our code of conduct in all project spaces.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

trio-0.2.0.tar.gz (309.0 kB view details)

Uploaded Source

Built Distribution

trio-0.2.0-py3-none-any.whl (245.5 kB view details)

Uploaded Python 3

File details

Details for the file trio-0.2.0.tar.gz.

File metadata

  • Download URL: trio-0.2.0.tar.gz
  • Upload date:
  • Size: 309.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for trio-0.2.0.tar.gz
Algorithm Hash digest
SHA256 dd1133cbf649ca4abf26d868485b19e6f368a6d5ddf75b7c178154c900cbb556
MD5 5189606a0863fe5fc7d48ac06cd6fccd
BLAKE2b-256 c20f9c435e994419f863538f175f6dfa3041a14eb4681d0f09e8417fb949bf27

See more details on using hashes here.

File details

Details for the file trio-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for trio-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 088f1b7b14887f838f378dd23408be5dc82119a368a88fcbeccf1ded0c5487d7
MD5 662dc97d93b91fb33bdbe0e4e91e0cba
BLAKE2b-256 21d374c9b105b771f5f5be40e2d087213b1dd794537eb58e21c0334172945908

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page