Skip to main content

No project description provided

Project description

OpenFGA DSL Parser (Python)

The OpenFGA DSL Parser provides utilities for parsing DSL file string inputs into an AST representation, as well as transforming them into a JSON representation.

This library is meant to be a utility for services using OpenFGA for their authorization solution, but need a way to translate from their DSL to the JSON format the HTTP API expects.

Usage

from openfga_dsl_parser import dsl_to_json
input = """type group
  relations
    define member as self
type resource
  relations
    define writer as self
    define reader as self but not writer"""

json = dsl_to_json(input)
print(json)

Development

Setup Python environment & install Maturin:

  1. python -m venv .nenv
  2. source .venv/bin/activate
  3. pip install maturin

Install & build package using Maturin for local testing:

maturin develop

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

openfga_dsl_parser_python-0.1.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distributions

openfga_dsl_parser_python-0.1.0-cp310-none-win_amd64.whl (152.8 kB view details)

Uploaded CPython 3.10 Windows x86-64

openfga_dsl_parser_python-0.1.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.5+ x86-64

openfga_dsl_parser_python-0.1.0-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (505.4 kB view details)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

openfga_dsl_parser_python-0.1.0-cp39-none-win_amd64.whl (152.8 kB view details)

Uploaded CPython 3.9 Windows x86-64

openfga_dsl_parser_python-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.5+ x86-64

openfga_dsl_parser_python-0.1.0-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (505.2 kB view details)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

openfga_dsl_parser_python-0.1.0-cp38-none-win_amd64.whl (152.6 kB view details)

Uploaded CPython 3.8 Windows x86-64

openfga_dsl_parser_python-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.5+ x86-64

openfga_dsl_parser_python-0.1.0-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (505.6 kB view details)

Uploaded CPython 3.8 macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

openfga_dsl_parser_python-0.1.0-cp37-none-win_amd64.whl (152.6 kB view details)

Uploaded CPython 3.7 Windows x86-64

openfga_dsl_parser_python-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl (1.0 MB view details)

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

openfga_dsl_parser_python-0.1.0-cp37-cp37m-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (505.7 kB view details)

Uploaded CPython 3.7m macOS 10.9+ universal2 (ARM64, x86-64) macOS 10.9+ x86-64 macOS 11.0+ ARM64

File details

Details for the file openfga_dsl_parser_python-0.1.0.tar.gz.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0.tar.gz
Algorithm Hash digest
SHA256 64331ba0591354b315036691eb0e2e5c359abe52e4ed56c407117267ba9b31ba
MD5 2dc44114694fc8a3b5ecf0f388b27446
BLAKE2b-256 d813e5d684fb869065d35a57fab3e04a563ed60ab0f69c86b999a08a7003e5a1

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-pp38-pypy38_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 16d06ebbe7440ecd8bfeb74c8321913c9fb66cefe17a66078dd675b680c01120
MD5 3186edd091df7769f0c24546cb4a5c57
BLAKE2b-256 d77facee673e9dc21d1294b6b0308968806676882dd2f0b8d45e2a3d3580ab15

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 be24aa8715f7ef779e569329260e5bff6693026ff3b64ecf5415a4424f7f464c
MD5 b2142bb1df24d1711e63dda75c9eadf6
BLAKE2b-256 3ab18725ab0e3650d4bbda958a03d26df8a7c99b3ec58aa51cbdf639a264bf87

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp310-none-win_amd64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 55eeeca55d5cb2805575717ec06d0e16b3a26fc11c965bfeb09ebfb57d824d60
MD5 284d52a839bdc7c7b9dd2add742bf118
BLAKE2b-256 4f9183f48d6e1828c8b2ee006bacf117c9ec91f5476311cfae7316a6cd06e333

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 62ff0d770e7511919f4bd9ef2e785a65f89fb4ab4fe5a0cc97745aa90e7c88c5
MD5 a151d9d9256d8fe00eb191e7fd9b710b
BLAKE2b-256 5c004e4029a11469c30d1d6d20cfd8f8062b6c752e5ca46466b9a1c8e0bf248a

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 997b2ea65e99c416cdc4b90a7f4cdeb49c5e02add36df2f6f718a041d864f76f
MD5 e66f4b88190f3ab39896af51f02ccc79
BLAKE2b-256 34d64d8c95723e7491eb59ffaa3dba0b8f749fb7ac7f2b4a152f106ee927852f

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp39-none-win_amd64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 5984d2d4309945ca0d7bfd62f637851847edd39a0089d7737749b7c1aaa6ac6a
MD5 c7aea730e62e3909f671286af393a461
BLAKE2b-256 38c776ca1827b07ffe1bae12529d12b75d1f12a52ad57cf238a6761119257c27

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 c9db2b486a05b06563671d86afccbc3761e6d016c7aec0d4e0082526b249d1a6
MD5 9145fe0825ec5400a95e6cd47861e031
BLAKE2b-256 f9c52e64ad18535e2f29c392ca932ac51f12e0e2cf7cb04e01c7f3fb9cde6c50

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 0b6969c535f86124bc3562e8c0190ddc0374a097e5b97da353897df927e47e79
MD5 f723db9458fc5502e6f7b9b85db34107
BLAKE2b-256 c082db47d1849db2890258ad0d44106e24262879b2cf49dfba2d3fd1d4a86dff

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp38-none-win_amd64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp38-none-win_amd64.whl
Algorithm Hash digest
SHA256 a4c0fe664a110501ada6d79971a2ea56132ab581bc58edf974f77e8ec90c9345
MD5 1953534d0c3fa17ac29240aff417d6aa
BLAKE2b-256 8b21d62d0e27b4a87a204f877fbf035a70171701983e048796be6cac817edc16

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 ccac17216fbec42e0c6a60ce792843e511f98ddf558e8ed2c77dde48603bf55a
MD5 c02e72fae9e58e27490bb5c91ed0046f
BLAKE2b-256 e99fcdc81e9e529e7a97d1cda6adf6ad9dc615c2a7ea4e58f00642b760204e21

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a0c98364b516f3e87fb94e3f0c6a04a12ae1c4b8445ef54801a47af79b47a35e
MD5 4f7c1fbf702ed6532385edd0d5c256fe
BLAKE2b-256 3155704c7eb564807ff236c1e21bddc6937f0ce9be1eb0931d59aedb9c609925

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp37-none-win_amd64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp37-none-win_amd64.whl
Algorithm Hash digest
SHA256 b72158b7ce3698a37244e1ecee1ae66371dd08a6f05da214c2685d988cc9d522
MD5 603885e9435a635eebba04db16b6b5f6
BLAKE2b-256 26d9ebc5d8e55a54c6f30b7ed122b8164a1ede81da6033fecc652e55b8845538

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8189e24e443d94a3eddd28852c90df09be84e6f1b43c400d2edd0a4d69364ab8
MD5 25a147e0dd50b86bb7018979382f6b9a
BLAKE2b-256 db0e86be309a9007990c7909406e1b82ad957e21a0652be673e1da61a7a8ba1c

See more details on using hashes here.

File details

Details for the file openfga_dsl_parser_python-0.1.0-cp37-cp37m-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for openfga_dsl_parser_python-0.1.0-cp37-cp37m-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 5960e011a49e1137df11ed63a69f7ff74b3e4d8e55496c7a0174ba1dd04ffe72
MD5 7259fb778f1c1dac9432162283e355dc
BLAKE2b-256 61d5b8de23537bac52364b8b41b15737bb5ef88ca853c14a2e7ec9f288c9d5fb

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