-
Notifications
You must be signed in to change notification settings - Fork 24
Contributing Guide
You will need the following tools and packages:
- NodeJs : 14.19.0
- Npm : 8.5.0
- python 3.7 : This is needed for bundled libs
-
Create virtual environment, activate it, and install packages:
python -m pip install nox flake8 blackpython -m pip install -r src/test/python_tests/requirements.txtnox --session install_bundled_libs
-
Install npm packages by running
npm install ci
Your project should now be ready to run and debug.
Most of the linting code is in bundled/formatter/format_server.py, look in that file for examples on how to work with Language Server Protocol. This file is launched by VS Code, this launch configuration is in src/common/formatLS.ts. These two files are the main files needed for this project to work.
Settings needed for this project are defined in package.json. These settings are generically read and passed to format_server.py via language server protocol. This is done in src/extension.ts
To test the format server, we have a custom LSP client. See src/test/python_tests/test_sort.py for examples on how to write tests for this project.