#+STARTUP:showall * Contributing ** Running tests There are a couple of dependencies in order to run tests. These dependencies will be picked up directly by the =vendor= make task. You can run it by performing: #+BEGIN_SRC bash $ make vendor #+END_SRC The =vendor= task is already called by other tasks such as =lint=. Thus, if you just want to run everything, just execute: #+BEGIN_SRC bash $ make #+END_SRC This will fetch the dependencies for you and run the style checkers and the tests, among other things. See the sections below to read more about them. *** Checking the style The [[https://github.com/gonewest818/elisp-lint][elisp-lint]] and [[https://github.com/purcell/package-lint][package-lint]] packages are being used for checking the style. You can run these checkers by performing: #+BEGIN_SRC bash $ make lint #+END_SRC *** Git validation In order to ensure that the git log is as maintainable as possible, the [[https://github.com/vbatts/git-validation][git-validation]] tool is used. You can install this tool by running: #+BEGIN_SRC bash $ go get -u github.com/vbatts/git-validation #+END_SRC If you already have this tool installed, then simply perform: #+BEGIN_SRC bash $ make git-validation #+END_SRC Note that if you don't have this tool installed the task will do nothing (it will just print a help message). This is done so when running the default make task this doesn't interrupt it. *** Load test In order to test that this theme can be actually loaded, run: #+BEGIN_SRC bash $ make load-test #+END_SRC ** Issue reporting I'm using [[https://github.com/mssola/soria][Github]] in order to host the code. Thus, in order to report issues you can do it on its [[https://github.com/mssola/soria/issues][issue tracker]]. A couple of notes on reports: - Check that the issue has not already been reported or fixed in =master=. - Try to be concise and precise in your description of the problem. - Provide a step by step guide on how to reproduce this problem. - Provide the version you are using (the commit SHA, if possible), as well as the version of the GNU Emacs you are using and the operating system. ** Pull requests - Write a [[https://chris.beams.io/posts/git-commit/][good commit message]]. - Make sure that tests are passing on your local machine (it will also be checked by the CI system whenever you submit the pull request). - Update the [[./CHANGELOG.org][changelog]] (if relevant). - Open a pull request with *only* one subject and a clear title and description. Refrain from submitting pull requests with tons of different unrelated commits.