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.0.tar.gz (36.0 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.0-py3-none-any.whl (76.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pbi_parsers-0.9.0.tar.gz
  • Upload date:
  • Size: 36.0 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.0.tar.gz
Algorithm Hash digest
SHA256 a6944d807c274359bb3d77e1a7358337ecf256d69e9e5b71d8cdca2e72e6c82c
MD5 83bd76978f08d45605936227af0e4a44
BLAKE2b-256 34f98d2e2063825809ce4e658fa919165784dfc75374de0b3c0c6bb11c9a2358

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pbi_parsers-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 76.1 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 679e907291e4fd76dedc0bfed99009088b300d7d01c7b54ad6cf9716c3bdc9c1
MD5 d83a33aae6cd0c4f0521372345f604d8
BLAKE2b-256 79abfc9fa0b0d2258601a47f7b874062dedfdd87b7d3c36f867525ec2cf2f8c5

See more details on using hashes here.

Provenance

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