aboutsummaryrefslogtreecommitdiff
path: root/docs/contributing-to-spark.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/contributing-to-spark.md')
-rw-r--r--docs/contributing-to-spark.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/docs/contributing-to-spark.md b/docs/contributing-to-spark.md
new file mode 100644
index 0000000000..c6e01c62d8
--- /dev/null
+++ b/docs/contributing-to-spark.md
@@ -0,0 +1,26 @@
+---
+layout: global
+title: Contributing to Spark
+---
+
+The Spark team welcomes contributions in the form of GitHub pull requests. Here are a few tips to get your contribution in:
+
+- Break your work into small, single-purpose patches if possible. It's much harder to merge in a large change with a lot of disjoint features.
+- Submit the patch as a GitHub pull request. For a tutorial, see the GitHub guides on [forking a repo](https://help.github.com/articles/fork-a-repo) and [sending a pull request](https://help.github.com/articles/using-pull-requests).
+- Follow the style of the existing codebase. Specifically, we use [standard Scala style guide](http://docs.scala-lang.org/style/), but with the following changes:
+ * Maximum line length of 100 characters.
+ * Always import packages using absolute paths (e.g. `scala.collection.Map` instead of `collection.Map`).
+ * No "infix" syntax for methods other than operators. For example, don't write `table containsKey myKey`; replace it with `table.containsKey(myKey)`.
+- Make sure that your code passes the unit tests. You can run the tests with `sbt/sbt test` in the root directory of Spark.
+ But first, make sure that you have [configured a spark-env.sh](configuration.html) with at least
+ `SCALA_HOME`, as some of the tests try to spawn subprocesses using this.
+- Add new unit tests for your code. We use [ScalaTest](http://www.scalatest.org/) for testing. Just add a new Suite in `core/src/test`, or methods to an existing Suite.
+- If you'd like to report a bug but don't have time to fix it, you can still post it to our [issues page](https://github.com/mesos/spark/issues), or email the [mailing list](http://www.spark-project.org/mailing-lists.html).
+
+# Licensing of Contributions
+
+Contributions via GitHub pull requests are gladly accepted from their original author. Along with any pull requests, please
+state that the contribution is your original work and that you license the work to the project under the project's open source
+license. *Whether or not you state this explicitly, by submitting any copyrighted material via pull request, email, or other
+means you agree to license the material under the project's open source license and warrant that you have the legal authority
+to do so.*