🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Sign inDemoInstall
Socket

@microsoft/powerquery-parser

Package Overview
Dependencies
Maintainers
3
Versions
134
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@microsoft/powerquery-parser

A parser for the Power Query/M formula language.

0.14.0
Source
npm
Version published
Weekly downloads
308
-18.3%
Maintainers
3
Weekly downloads
 
Created
Source

powerquery-parser

Build Status

A parser for the Power Query/M language, written in TypeScript. Designed to be consumed by other projects.

How to use

The most common way to consume the project is to interact with the helper functions found in taskUtils.ts. There are all-in-one functions, such as tryLexParse, which does a full pass on a given document. There are also incremental functions, such as tryLex and tryParse, which perform one step at a time. Minimal code samples can be found in example.ts.

  • powerquery-formatter: A code formatter for Power Query which is bundled in the VSCode extension.
  • powerquery-language-services: A high level library that wraps the parser for external projects, such as the VSCode extension. Includes features such as Intellisense.
  • vscode-powerquery: The VSCode extension for Power Query language support.
  • vscode-powerquery-sdk: The VSCode extension for Power Query connector SDK.

Things to note

Parser

The parser started off as a naive recursive descent parser with limited backtracking. It mostly followed the official specification released in October 2016. Deviations from the specification should be marked down in specification.md. A combinatorial parser has since been added which uses the naive parser as its base.

Style

This project uses prettier as the primary source of style enforcement. Additional style requirements are located in style.md.

How to build

  • Install NodeJS
  • npm install
  • npm run-script build

How to run tests

  • Install NodeJS
  • npm install
  • npm test

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Keywords

power query

FAQs

Package last updated on 14 Jun 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts