Thank you for taking the time to contribute! We appreciate all commits and improvements, feel free to join Knot.x community and contribute.
Please refer to README.md file in this repository.
Project License: Apache License Version 2.0
- You will only Submit Contributions where You have authored 100% of the content.
- You will only Submit Contributions to which You have the necessary rights. This means that if You are employed You have received the necessary permissions from Your employer to make the Contributions.
- Whatever content You Contribute will be provided under the Project License(s).
When writing a commit message, please follow the guidelines in How to Write a Git Commit Message.
Please add the following lines to your pull request description:
---
I hereby agree to the terms of the Knot.x Contributor License Agreement.
All documentation for this repository will be kept in the README.md
file. If you would like to create a tutorial descibing how to use this module you are most welcome to contribute a Knot.x tutorial to knotx.io.
When changing or fixing some important part of Knot.x, please remember to update Changelog.
Your entry should be enlisted in Unreleased
section. It will be moved to appropriate release notes when released.
Please use convention - [PR-ABC](https://github.com/Knotx/${knotx-repository}/pull/ABC) - short description of the PR.
.
When changing or fixing anything related with changes in Knot.x configuration (e.g. its structure, new property etc.) or
snippet structure (e.g. change convention of naming services) remember to include detailed description of changes that needs to be done in order to upgrade from the latest version o Knot.x in the Upgrade notes
section of the issue.
This information will be later included in the Release Notes blog post.
Tests written in Knot.x should be named with methodName_whenStateUnderTest_expectBehavior
convention proposed as the first example in 7 Popular Unit Test Naming Conventions.
Unit tests
canServeRequest_whenNoFormIdAndPostAttribute_expectRequestNotServed
Integration tests
In integration tests method name is omitted, and test class name should suggest what part of system we test:
whenRepositoryDidNotReturnTemplateBody_expectNoSnippetsProcessing
Below is short list of things that will help us keep Knot.x quality and accept pull requests:
- Follow Google Style Guide code formatting from Knot.x Github, particularly set your IDE
tab size
/ident
to 2 spaces andcontinuation ident
to 4 spaces. - write tests (integration and Unit Tests) following defined convention,
- write javadoc, especially for interfaces and abstract methods,
- update
README.md
for any documentation updates, - when logging use proper levels:
INFO
andWARNING
should log only very important messages.