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.9.1.tar.gz (36.1 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.9.1-py3-none-any.whl (76.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pbi_parsers-0.9.1.tar.gz
  • Upload date:
  • Size: 36.1 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.9.1.tar.gz
Algorithm Hash digest
SHA256 d10c438883fc842eefd1d0f48145df89679a584c812694226a7031331634a6c2
MD5 625c13fb0d60b0b9a97bdee407e3db59
BLAKE2b-256 a2efd606b8148402370d57da988e6b140c1b18c07987997df5cfddc273b88619

See more details on using hashes here.

Provenance

The following attestation bundles were made for pbi_parsers-0.9.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.9.1-py3-none-any.whl.

File metadata

  • Download URL: pbi_parsers-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 76.5 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.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 55180ca0ad8ae53038b14d392efce231b35fda059390a20dffcea29869e7f568
MD5 808cd464c44c9c0037fada3d24d5f3f5
BLAKE2b-256 be58c47a707135040b08205dac8b7f6497e9388031ee89cce78b4f741085ce82

See more details on using hashes here.

Provenance

The following attestation bundles were made for pbi_parsers-0.9.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