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.2.tar.gz (35.2 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.2-py3-none-any.whl (68.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pbi_parsers-0.8.2.tar.gz
  • Upload date:
  • Size: 35.2 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.2.tar.gz
Algorithm Hash digest
SHA256 3ba557684ecd5038baae6a0ccc83c2e73d236450f5481c9417b87846e1a72ae4
MD5 85380c3b00b43e07b7a34c1da14b6cdb
BLAKE2b-256 344e7e2c41dcc6b4f45f0e00609a65177f7731aaae6543e00ed430b3c38a3938

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pbi_parsers-0.8.2-py3-none-any.whl
  • Upload date:
  • Size: 68.2 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 89ad2deb8934d6f9dc9206ba253e346536c903c0a75292e6c733cbb27a0dc166
MD5 ab6dc66200da584c74f358e1303b05c7
BLAKE2b-256 a5d57c1d5f84828b22a020fcb2288ebe414e2fc496f74dc920b11bdfb5ef0b19

See more details on using hashes here.

Provenance

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