By submitting a pull request, you represent that you have the right to license
your contribution to Apple and the community, and agree by submitting the patch
that your contributions are licensed under the Apache 2.0 license (see
LICENSE.txt
).
Please ensure to specify the following:
- Commit hash or a tagged version with which the bug is reproducible
- Contextual information (e.g. what you were trying to achieve with the project)
- Simplest possible steps to reproduce
- More complex the steps are, lower the priority will be.
- A pull request with failing test case is preferred, but it's just fine to paste the test case into the issue description.
- Anything that might be relevant in your opinion, such as:
- Swift version or the output of
swift --version
- OS version and the output of
uname -a
- Network configuration
- Swift version or the output of
Commit hash: b17a8a9f0f814c01a56977680cb68d8a779c951f
Context:
While running the generator, I noticed that ...
Steps to reproduce:
1. ...
2. ...
3. ...
4. ...
$ swift --version
Swift version 4.0.2 (swift-4.0.2-RELEASE)
Target: x86_64-unknown-linux-gnu
Operating system: Ubuntu Linux 16.04 64-bit
$ uname -a
Linux beefy.machine 4.4.0-101-generic #124-Ubuntu SMP Fri Nov 10 18:29:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
A good patch is:
- Concise, and contains as few changes as needed to achieve the end result.
- Tested, ensuring that any tests provided failed before the patch and pass after it.
- Documented, adding API documentation as needed to cover new functions and properties.
- Accompanied by a great commit message, using our commit message template.
We require that your commit messages match our template. The easiest way to do that is to get git to help you by explicitly using the template. To do that, cd
to the root of our repository and run:
git config commit.template Utilities/git.commit.template
The scripts directory contains a soundness.sh
script
that enforces additional checks, like license headers and formatting style.
Please make sure to run ./Utilities/soundness.sh
before pushing a change upstream, otherwise it is likely the PR validation will fail
on minor changes such as formatting issues.
For frequent contributors, we recommend adding the script as a git pre-push hook, which you can do via executing the following command in the project root directory:
cat << EOF > .git/hooks/pre-push
if [[ -f "Utilities/soundness.sh" ]]; then
Utilities/soundness.sh
fi
EOF
Which makes the script execute, and only allow the git push
to complete if the check has passed.
In the case of formatting issues, you can then git add
the formatting changes, and attempt the push again.
Please open a pull request at https://github.com/apple/swift-sdk-generator. Make sure the CI passes, and then wait for code review.