Skip to main content

Python Bidi layout wrapping the Rust crate unicode-bidi

Project description

https://badge.fury.io/py/python-bidi.png

Bi-directional (BiDi) layout for Python, wrapping the unicode-bidi crate.

Package documentation

API

The algorithm starts with a single entry point bidi.get_display.

Required arguments:

  • str_or_bytes: The string or bytes (i.e.: storage). If it’s bytes use the optional argument encoding to specify it’s encoding.

Optional arguments:

  • encoding: If unicode_or_str is a string, specifies the encoding. The algorithm uses unicodedata which requires unicode. This encoding will be used to decode and encode back to string before returning (default: “utf-8”).

  • base_dir: 'L' or 'R', override the calculated base_level.

  • debug: True to display the Unicode levels as seen by the algorithm (default: False).

Returns the display layout, either as str or encoding encoded bytes (depending on the type of str_or_bytes').

Example:

>>> from bidi import get_display
>>> # keep as list with char per line to prevent browsers from changing display order
>>> HELLO_HEB = "".join([
...     "ש",
...     "ל",
...     "ו",
...     "ם"
... ])
>>>
>>> HELLO_HEB_DISPLAY = "".join([
...     "ם",
...     "ו",
...     "ל",
...     "ש",
... ])
>>>
>>> get_display(HELLO_HEB) == HELLO_HEB_DISPLAY
True

CLI

pybidi is a command line utility (calling bidi.main) for running the display algorithm. The script can get a string as a parameter or read text from stdin.

Usage:

$ pybidi -h
usage: pybidi [-h] [-e ENCODING] [-d] [-b {L,R}]

options:
  -h, --help            show this help message and exit
  -e ENCODING, --encoding ENCODING
                        Text encoding (default: utf-8)
  -d, --debug           Output to stderr steps taken with the algorithm
  -b {L,R}, --base-dir {L,R}
                        Override base direction [L|R]

Examples:

$ pybidi -u 'Your string here'
$ cat ~/Documents/example.txt | pybidi

Installation

See docs/INSTALL.rst

Running tests

To run the tests:

pip install nox
nox

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

python_bidi-0.5.0.tar.gz (31.6 kB view hashes)

Uploaded Source

Built Distributions

python_bidi-0.5.0-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl (443.7 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-pp310-pypy310_pp73-musllinux_1_2_i686.whl (463.0 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ i686

python_bidi-0.5.0-pp310-pypy310_pp73-musllinux_1_2_armv7l.whl (540.8 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl (460.3 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (273.0 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (310.2 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (307.7 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (278.4 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (281.9 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl (283.0 kB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

python_bidi-0.5.0-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl (444.4 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-pp39-pypy39_pp73-musllinux_1_2_i686.whl (463.9 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ i686

python_bidi-0.5.0-pp39-pypy39_pp73-musllinux_1_2_armv7l.whl (541.7 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl (460.9 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (273.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (311.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (308.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (279.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (282.5 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl (284.1 kB view hashes)

Uploaded PyPy manylinux: glibc 2.5+ i686

python_bidi-0.5.0-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl (444.5 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-pp38-pypy38_pp73-musllinux_1_2_i686.whl (464.0 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ i686

python_bidi-0.5.0-pp38-pypy38_pp73-musllinux_1_2_armv7l.whl (541.9 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl (461.1 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (311.3 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (308.4 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (279.4 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (282.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-pp37-pypy37_pp73-musllinux_1_2_x86_64.whl (447.4 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-pp37-pypy37_pp73-musllinux_1_2_i686.whl (466.6 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ i686

python_bidi-0.5.0-pp37-pypy37_pp73-musllinux_1_2_armv7l.whl (544.1 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-pp37-pypy37_pp73-musllinux_1_2_aarch64.whl (464.4 kB view hashes)

Uploaded PyPy musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-pp37-pypy37_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (314.2 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-pp37-pypy37_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (311.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-pp37-pypy37_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (281.6 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (285.7 kB view hashes)

Uploaded PyPy manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp312-none-win_amd64.whl (142.9 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

python_bidi-0.5.0-cp312-none-win32.whl (137.5 kB view hashes)

Uploaded CPython 3.12 Windows x86

python_bidi-0.5.0-cp312-cp312-musllinux_1_2_x86_64.whl (442.0 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-cp312-cp312-musllinux_1_2_i686.whl (461.2 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ i686

python_bidi-0.5.0-cp312-cp312-musllinux_1_2_armv7l.whl (539.3 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-cp312-cp312-musllinux_1_2_aarch64.whl (458.6 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (271.4 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (307.5 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (306.1 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (277.1 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (280.2 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (281.6 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.5+ i686

python_bidi-0.5.0-cp312-cp312-macosx_11_0_arm64.whl (237.9 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

python_bidi-0.5.0-cp312-cp312-macosx_10_12_x86_64.whl (237.9 kB view hashes)

Uploaded CPython 3.12 macOS 10.12+ x86-64

python_bidi-0.5.0-cp311-none-win_amd64.whl (143.2 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

python_bidi-0.5.0-cp311-none-win32.whl (137.7 kB view hashes)

Uploaded CPython 3.11 Windows x86

python_bidi-0.5.0-cp311-cp311-musllinux_1_2_x86_64.whl (442.3 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-cp311-cp311-musllinux_1_2_i686.whl (461.3 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ i686

python_bidi-0.5.0-cp311-cp311-musllinux_1_2_armv7l.whl (539.3 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-cp311-cp311-musllinux_1_2_aarch64.whl (458.9 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (271.2 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (307.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (306.4 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (277.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (280.4 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (282.1 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.5+ i686

python_bidi-0.5.0-cp311-cp311-macosx_11_0_arm64.whl (237.9 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

python_bidi-0.5.0-cp311-cp311-macosx_10_12_x86_64.whl (238.0 kB view hashes)

Uploaded CPython 3.11 macOS 10.12+ x86-64

python_bidi-0.5.0-cp310-none-win_amd64.whl (143.1 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

python_bidi-0.5.0-cp310-none-win32.whl (137.6 kB view hashes)

Uploaded CPython 3.10 Windows x86

python_bidi-0.5.0-cp310-cp310-musllinux_1_2_x86_64.whl (442.4 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-cp310-cp310-musllinux_1_2_i686.whl (461.3 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ i686

python_bidi-0.5.0-cp310-cp310-musllinux_1_2_armv7l.whl (539.4 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-cp310-cp310-musllinux_1_2_aarch64.whl (459.0 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (271.3 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (307.9 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (306.4 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (277.2 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (280.5 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (282.0 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.5+ i686

python_bidi-0.5.0-cp310-cp310-macosx_11_0_arm64.whl (238.0 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

python_bidi-0.5.0-cp39-none-win_amd64.whl (143.2 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

python_bidi-0.5.0-cp39-none-win32.whl (137.7 kB view hashes)

Uploaded CPython 3.9 Windows x86

python_bidi-0.5.0-cp39-cp39-musllinux_1_2_x86_64.whl (442.1 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-cp39-cp39-musllinux_1_2_i686.whl (461.4 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ i686

python_bidi-0.5.0-cp39-cp39-musllinux_1_2_armv7l.whl (539.5 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-cp39-cp39-musllinux_1_2_aarch64.whl (458.6 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (271.4 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (307.5 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (306.1 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (277.3 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (280.3 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl (281.9 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.5+ i686

python_bidi-0.5.0-cp39-cp39-macosx_11_0_arm64.whl (238.0 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

python_bidi-0.5.0-cp38-none-win_amd64.whl (142.9 kB view hashes)

Uploaded CPython 3.8 Windows x86-64

python_bidi-0.5.0-cp38-none-win32.whl (137.5 kB view hashes)

Uploaded CPython 3.8 Windows x86

python_bidi-0.5.0-cp38-cp38-musllinux_1_2_x86_64.whl (441.7 kB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-cp38-cp38-musllinux_1_2_i686.whl (461.3 kB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ i686

python_bidi-0.5.0-cp38-cp38-musllinux_1_2_armv7l.whl (539.3 kB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-cp38-cp38-musllinux_1_2_aarch64.whl (458.3 kB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (271.1 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl (307.1 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (305.8 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (276.9 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (280.0 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl (281.4 kB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.5+ i686

python_bidi-0.5.0-cp37-none-win_amd64.whl (142.9 kB view hashes)

Uploaded CPython 3.7 Windows x86-64

python_bidi-0.5.0-cp37-none-win32.whl (137.5 kB view hashes)

Uploaded CPython 3.7 Windows x86

python_bidi-0.5.0-cp37-cp37m-musllinux_1_2_x86_64.whl (441.9 kB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ x86-64

python_bidi-0.5.0-cp37-cp37m-musllinux_1_2_i686.whl (461.3 kB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ i686

python_bidi-0.5.0-cp37-cp37m-musllinux_1_2_armv7l.whl (539.3 kB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ ARMv7l

python_bidi-0.5.0-cp37-cp37m-musllinux_1_2_aarch64.whl (458.4 kB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ ARM64

python_bidi-0.5.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (271.1 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

python_bidi-0.5.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl (307.2 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ s390x

python_bidi-0.5.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (306.0 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ppc64le

python_bidi-0.5.0-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (276.9 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARMv7l

python_bidi-0.5.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (280.1 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

python_bidi-0.5.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl (281.5 kB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.5+ i686

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