Skip to main content

Power BI lexer, parsers, and formatters for DAX and M (Power Query) languages

Project description

Overview

PyPI Downloads Python Coverage Status Repo Size FOSSA Status FOSSA Status

Based on Crafting Interpreters. Library provides lexers, parsers, and formatters for DAX and Power Query (M) languages. Designed to support code introspection and analysis, not execution. This enables developement of ruff-equivalent tools for DAX and Power Query. It also enables extracting metadata from DAX and Power Query code, such PQ source types (Excel, SQL, etc.) and DAX lineage dependencies.

For more information, see the docs

Installation

python -m pip install pbi_parsers

Dev Instructions

Set Up

python -m venv venv
venv\Scripts\activate
python -m pip install .
pre-commit install

Running the Documentation Server

python -m pip install .[docs]
mkdocs serve -f docs/mkdocs.yml

Deploy docs to Github Pages

mkdocs  gh-deploy --clean -f docs/mkdocs.yml

Testing

pip install -e .

Build Wheel

python -m build .

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

pbi_parsers-0.8.1.tar.gz (34.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pbi_parsers-0.8.1-py3-none-any.whl (67.8 kB view details)

Uploaded Python 3

File details

Details for the file pbi_parsers-0.8.1.tar.gz.

File metadata

  • Download URL: pbi_parsers-0.8.1.tar.gz
  • Upload date:
  • Size: 34.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pbi_parsers-0.8.1.tar.gz
Algorithm Hash digest
SHA256 59b52cca0dc1dd27f5dada696b93837bd448328233fd17c1c30225bbc752cb3c
MD5 edef95dce7b56a2417b832338839f01d
BLAKE2b-256 f605675d7d683e505020038f244c09b4a0df46d617b9e8838004a86f4d359982

See more details on using hashes here.

Provenance

The following attestation bundles were made for pbi_parsers-0.8.1.tar.gz:

Publisher: deploy.yml on douglassimonsen/pbi_parsers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pbi_parsers-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: pbi_parsers-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 67.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pbi_parsers-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4d370026319853e8a12f8996bb3904b8dc8fb693945cf2fbec9d6056e051b03e
MD5 12e1e9ca488226673345717dbc2bf5a9
BLAKE2b-256 d47b6f6558df3982f615de24205a79a55ae593c1beaf27051fa50c95666467fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for pbi_parsers-0.8.1-py3-none-any.whl:

Publisher: deploy.yml on douglassimonsen/pbi_parsers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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