Pull request

I just created a pull request for merging support for the SiFive HiFive1 board. I've never used the pull request mechanism before so hopefully nothing is too buggered. What need to be done for the CI integration? Those checks are failing.


Hi JP,

First of all, welcome to the RIOT community and thank you for your contribution!

There are two steps to our CI at the moment. The first one is Travis, which provides you with some preliminary static check regarding our coding conventions, documentation and also some static code analysis. When someone was able to review your PR they will task our build bot Murdock, the second step, to try to build your PR for most known build configurations.

For now, I suggest that you review the results of Travis to make sure the PR is ready for review. Here are the most important ones to fix right now (links are from the latest build of your PR as of writing this PR, you can view the most current version by clicking on “Details” next to the Travis build result at the bottom of the PR):

In general, have a look at our coding conventions [5]. Most of what I paraphrased here is described there in more detail.

Cheers, Martine

[1] https://gist.github.com/vecano/8494051#committing [2] https://github.com/RIOT-OS/RIOT/tree/master/dist/tools/licenses/patterns [3] https://github.com/RIOT-OS/RIOT/blob/master/boards/samr21-xpro/include/periph_conf.h#L30-L32 [4] https://github.com/RIOT-OS/RIOT/blob/master/boards/samr21-xpro/include/periph_conf.h#L281-L283 [5] https://github.com/RIOT-OS/RIOT/wiki/Coding-conventions

So I've asked some questions in the PR but receive few answers and it usually takes weeks for an answer. Should I be asking in the PR or here? In any case here's some questions.

For the SiFive license is there someone who could review it? I assuming there's some RIOT licensing guru who checks these things. Based on a quick search I read "If your software is a combined/derivate work with/of Apache-2 software, you cannot license that software under the GPL-2 and therefore cannot license it under the LGPL-2.1 either." ref: https://opensource.stackexchange.com/questions/5664/linking-from-lgpl-2-1-software-to-apache-2-0-library So maybe the SiFive code can not be used with RIOT.

I've never used a the PR system so this may be obvious to someone more experienced. Regarding the request to squash commits: Isn't that going to screw up anyone that's pulled that branch? Do I assume no one has pulled it or create a new PR? Also it looks like Travis tries to rebase the PR. There's also the issues that the format of the development commits are not in the RIOT format. It seems to me like doing a github's "Squash and merge" on when incorporating the PR solves these problems.

Regarding vendor supplied files: My assumption is those would be left as-is. Specifically no changes to formatting or header guards. Is that correct?

How are vendor supplied source (not header) files handled such that they are not subject to the strict format etc. tests. Is there an equivalent of the "vendor" directory for headers files but for source code?

thanks, JP

Hi JP,