Skip to main content

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

Project description

Overview

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.7.12.tar.gz (31.7 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.7.12-py3-none-any.whl (65.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for pbi_parsers-0.7.12.tar.gz
Algorithm Hash digest
SHA256 e27b676f8b257cc6eb7b1adb89de21af65e1a67e38d7fc6e94d7fea0d5fb573e
MD5 7f6c7788b12df242530bab4c6f24f2b2
BLAKE2b-256 e392306e0a149aa67ee53e24ac2e8cb78480d88799eaae7fbd087632716daf05

See more details on using hashes here.

Provenance

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

Publisher: publish-to-pypi.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.7.12-py3-none-any.whl.

File metadata

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

File hashes

Hashes for pbi_parsers-0.7.12-py3-none-any.whl
Algorithm Hash digest
SHA256 eecb25766bb4ca909de2cd0a0ccec62b244255876cf5f9813060e94a8d515fa6
MD5 3acf206c707410b6dc804b810336bbc9
BLAKE2b-256 81b537e0f38226f030e16ad832507dbe29c55d9427ec142fc14c7e93c6b81c24

See more details on using hashes here.

Provenance

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

Publisher: publish-to-pypi.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