2021-06-15 16:30:11 +00:00
#+title : Contributing
#+author : Lucien Cartier-Tilet
#+email : lucien@phundrak.com
First of all, thank you for being interested in contributing! You rock!
In this document, you will find some guidelines for contributing to
~org-unique-id~ . These are more guidelines than rules, so don’ t try too
hard to follow them.
* Table of Contents :TOC_5_gh:
- [[#how-can-i-contribute ][How Can I Contribute? ]]
- [[#submitting-bugs-and-errors ][Submitting Bugs and Errors ]]
- [[#submitting-new-code ][Submitting New Code ]]
2022-09-07 08:18:37 +00:00
- [[#ensuring-the-quality-of-your-code ][Ensuring the quality of your code ]]
2021-06-15 16:30:11 +00:00
- [[#git-commit-messages ][Git Commit Messages ]]
- [[#describing-the-pull-request ][Describing the Pull Request ]]
- [[#finding-something-to-do ][Finding Something To Do ]]
- [[#issue-labels ][Issue Labels ]]
* How Can I Contribute?
** Submitting Bugs and Errors
The easiest way to contribute is to the project is if you encounter a
bug or an error. If you encounter one, check whether there is an issue
already opened. If not, you can open one! Try to provide as much
information as possible:
- Are you running the latest version of the package?
- Which version of Emacs are you running? On what system?
- What is your configuration for this package?
- What is the error message? Do you have a debug trace for the error?
- Can you reproduce it consistently? If so, how?
- What would the expected behavior be?
As you are collecting these pieces of information, try to come up with
a short and clear issue title – it should describe quickly your issue
without being too vague (e.g. avoid stuff like “error when opening
2022-09-07 08:26:02 +00:00
org-mode” or “doesn’ t work”).
2021-06-15 16:30:11 +00:00
** Submitting New Code
If you are submitting new code through a pull request, make sure of
the following:
- Your code doesn’ t do something already implemented in the package
- Your code follows the Emacs Lisp style guide presented [[https://github.com/bbatsov/emacs-lisp-style-guide ][here ]] as best
as you can
- All new functions and variables declared through ~defvar~ , ~defcustom~ ,
and ~defconst~ have docstrings
- If you introduced new dependencies in your code, you also added them
to the list of dependencies in the file’ s headers
- And obviously, your code works (I include that because I myself
sometimes push commits that don’ t work)
2022-09-07 08:18:37 +00:00
*** Ensuring the quality of your code
Although a CI is already in place on the Github repository, you are
encouraged to make sure yourself everything runs correctly.
This package uses [[https://github.com/emacs-eask/eask ][Eask ]] to run its linters. Once it is installed, you
can go to your preferred terminal and run ~make ci~ . If everything goes
well, you’ re ready to submit your code to the repository. If not,
please fix whatever Eask complains about first.
2021-06-15 16:30:11 +00:00
*** Git Commit Messages
Your commits should also follow [[https://github.com/syl20bnr/spacemacs/blob/develop/CONTRIBUTING.org#commit-messages ][Spacemacs’ guidelines ]] on this matter,
especially:
- Lines no longer than 72 characters
- Explain what you did
- Use the imperative in your summary
- Use present tense and imperative for what your commit changes
*** Describing the Pull Request
When opening a new pull request, check that its title is short and
clear as to what it is meant to do. Its description should:
- Provide the current behavior of the package, and how it will modify it
- If it is linked to an open issue, mention it
- If you are submitting an enhancement pull request, describe why this
code suggestion would be useful
** Finding Something To Do
Not sure where to begin? Take a look at the list of open issues,
especially the ones with one of the following labels:
2022-09-07 08:26:02 +00:00
- [[https://github.com/Phundrak/org-unique-id/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22 ][/good first issue/ ]] :: These issues indicate easy to fix issues and
2021-06-15 16:30:11 +00:00
easy to implement enhancements. If you are a beginner or if you want
to familiarize yourself with the package, look for these issues.
2022-09-07 08:26:02 +00:00
- [[https://github.com/Phundrak/org-unique-id/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22+sort%3Aupdated-desc ][/help wanted/ ]] :: These issues might require some more work than /good
2021-06-15 16:30:11 +00:00
first issue/ issues and might be a bit more interesting.
If you want to work on an open issue, leave a comment saying
so. However, you can directly submit a pull request if you are simply
adding support for a non-standard Linux distribution.
* Issue Labels
| Label | Description |
|------------------+---------------------------------------------------------------------|
| enhancement | Feature request |
| good first issue | easy to fix issue |
| bug | Confirmed bug or something very likely to be a bug |
| help wanted | This bug might not be my priority, so feel to give it a try! |
| documentation | There is something wrong with the documentation |
| duplicate | The issue has already been reported |
| invalid | Issue isn’ t valid (not the package’ s fault) |
| wontfix | It’ s either working as intended, or I decided not to fix it for now |