:uri-github-discussion: https://github.com/apple/pkl/discussions :uri-github-issue-pkl: https://github.com/apple/pkl/issues/new :uri-seven-rules: https://cbea.ms/git-commit/#seven-rules = Pkl Contributor's Guide Welcome to the Pkl community, and thank you for contributing! This guide explains how to get involved. * <> * <> * <> == Licensing Pkl is released under the Apache 2.0 license. This is why we require that, by submitting a pull request, you acknowledge that you have the right to license your contribution to Apple and the community, and agree that your contribution is licensed under the Apache 2.0 license. == Issue Tracking To file a bug or feature request, use {uri-github-issue-pkl}[GitHub]. Be sure to include the following information: * Context ** What are/were you trying to achieve? ** What's the impact of this bug/feature? For bug reports, additionally include the following information: * The output of `pkl --version`. * The complete error message. * The simplest possible steps to reproduce. == Pull Requests When preparing a pull request, follow this checklist: * Imitate the conventions of surrounding code. * Format code with `./gradlew spotlessApply` (otherwise the build will fail). * Verify that both the JVM build (`./gradlew build`) and native build (`./gradlew buildNative`) succeed. * Follow the {uri-seven-rules}[seven rules] of great Git commit messages: ** Separate subject from body with a blank line. ** Limit the subject line to 50 characters.footnote:not-enforced[This rule is not enforced in the Pkl project.] ** Capitalize the subject line. ** Do not end the subject line with a period. ** Use the imperative mood in the subject line. ** Wrap the body at 72 characters.footnote:not-enforced[] ** Use the body to explain what and why vs. how. IMPORTANT: If you plan to make substantial changes or add new features, we encourage you to first discuss them with the wider Pkl developer community. You can do this by filing a {uri-github-issue-pkl}[GitHub Issue] or by starting {uri-github-discussion}[GitHub Discussion]. This will save time and increases the chance of your pull request being accepted. == Maintainers The project’s maintainers (those with write access to the upstream repository) are listed in link:MAINTAINERS.adoc[].