Contributing to PDL
You can report issues or open a pull request (PR) to suggest changes.
Reporting an issue
To report an issue, or to suggest an idea for a change that you haven't had time to write-up yet:
-
Review existing issues to see if a similar issue has been opened or discussed.
-
Open an issue. Be sure to include any helpful information, such as version used, error messages, or logs that you might have.
To report vulnerabilities privately, you can contact the authors by email (see pyproject.toml).
Suggesting a change
To suggest a change to this repository, submit a pull request with the complete set of changes that you want to suggest. Before creating a PR, make sure that your changes pass all of the tests and add tests for new features.
The test suite can be executed with the following command in the top-level folder:
pytest tests
Also, please make sure that your changes pass static checks such as code styles by executing the following command:
pre-commit run --all-files
Development environment
PDL development
Follow the following instructions to set up a dev environment to get started with contributing to PDL.
- Create a fork of https://github.com/IBM/prompt-declaration-language
- Clone your fork
-
Set up a Python virtual environment and install dependencies
cd prompt-declaration-language python -m venv .venv source .venv/bin/activate pip install -e .
-
Test that you can run an editable version of PDL
pdl examples/hello/hello.pdl Hello Hello! How can I help you today?
Documentation updates
When you make changes to PDL, ensure to document any new features in the docs section. You can serve the docs locally to preview changes.
Install the required dependencies for documentation.
pip install mkdocs-get-deps
pip install $(mkdocs-get-deps)
Then serve the docs to load a preview.
mkdocs serve
You are all set!