Skip to content
jsakkine edited this page Dec 16, 2013 · 14 revisions

Welcome to the SMACK user space wiki! This page lists some contribution conventions for this project.

How to scope your contributions?

There's an art of making commits that are just in the right scope. One great way to get it right is to think about commit message. When you can describe a purpose and rationale for a commit in a few sentences you usually have the right scope.

Backwards compatibility for SMACK

We provide backwards compatibility in a sense that we support older kernels but functions will stop processing data if available support does not scale to the given input. That's the tradeoff between supporting newer features and providing backwards compatibility.

Missing backwards compatibility within these boundaries can be considered as a bug.

Bug fixes

Prefer to point the bug fix into a release branch such as 1.0.x. From a maintenance branch to the main development branch we can then merge bug fixes. This has its benefits because it will keep commit IDs intact.

In the more rare case when there's a commit that is first committed to the development branch and we come into conclusion that it is needed for the maintenance branch, we must cherry pick the corresponding commit or a set of commits. This should be a less common case.

v1.0.x development

For now we are taking new features first into v1.0.x branch as long as they do add anything to API. At some point we will probably move focus more to v1.1.x development, which now at the master branch. Of course improvements are merged there constantly.

Signed-off-by process

Here's a good brief explanation of the process: https://01.org/community/signed-process

We've seen that this important because sometimes there are multiple persons collaborating on a patch. This process ensures that everyone gets their credit for the contribution and we also know who to blame if the patch causes regressions.

Linking pull requests and commits

For each feature to be merged, create a remote branch with the format issue:<number> where number is the number of the issue.

Tool for attaching a pull request to an issue is available at https://github.com/github/hub.

Example of the usage:

hub pull-request -i 18 -b smack-team:master -h jarkkos:issue<number>