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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pbi_parsers-0.8.0.tar.gz
  • Upload date:
  • Size: 34.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.8.0.tar.gz
Algorithm Hash digest
SHA256 80ab84f1a624a967cc5be1b99edad30e28479e0d8e7321c7c6ed4b62a8affd0a
MD5 d37fe0f994820bc6a5c7973417299eb4
BLAKE2b-256 41d75d19ae53dfaf88b689122d904c3c43fb92bb3774fe52b726336dc4427a48

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: pbi_parsers-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 67.0 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 638e196fa700af1ac4e24a39f5be2efd5c56ee54d19e293b3b5128c041d37b4e
MD5 aba6c1bbf8716e61cfade3d62cc0c1bf
BLAKE2b-256 8c22a0149a2e0840d8127cec94515f44989d098a07c3d45acb607d4d683019df

See more details on using hashes here.

Provenance

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