Installing#

Bytewax currently supports the following versions of Python: 3.8, 3.9, 3.10 and 3.11.

Installing with pip#

We recommend creating a virtual environment for your project when installing Bytewax.

For more information on setting up a virtual environment, see the official Python documentation for virtual environments.

Once you have your environment set up, you can install the latest version of Bytewax with:

$ pip install bytewax

We recommend that you pin the version of Bytewax that you are using in your project by specifying the version of Bytewax that you wish to install:

$ pip install bytewax==NOT_RELEASED.latest

When upgrading between versions of Bytewax, be sure to review the Changelog and our Migration Guide before updating.

Support for Type Checking and LSPs#

Bytewax includes support for type hints. You can use your editor or IDEs integration with mypy, Pyright, or VSCode Pylance to enable type checking while you are editing. Enabling type checking can help you catch errors when developing your dataflows.

import bytewax.operators as op

from bytewax.dataflow import Dataflow
from bytewax.testing import TestingSource

flow = Dataflow("integers")
# The return type of `op.input` is "bytewax.dataflow.Stream[builtins.str]"
stream = op.input("inp", flow, TestingSource(["one"]))

# mypy will error here: "Unsupported operand types for + ("str" and "int")"
stream = op.map("string", stream, lambda x: x + 1)

Bytewax provides a command line tool for managing dataflows, you can install this by downloading the binaries from the website or via homebrew.

$ brew tap bytewax/tap
$ brew install waxctl
Join our community Slack channel

Need some help? Join our community!

If you have any trouble with the process or have ideas about how to improve this document, come talk to us in the #questions-answered Slack channel!

Join now