summaryrefslogtreecommitdiff
path: root/README-DEV.rst
diff options
context:
space:
mode:
authorNick Vatamaniuc <vatamane@gmail.com>2021-11-17 15:35:56 -0500
committerNick Vatamaniuc <nickva@users.noreply.github.com>2021-11-22 17:31:31 -0500
commit6e87e43fae23647b281ede250ad9f1a68a8f1cde (patch)
tree792d1b70d97591812b26a0cf9a6d1586cd0e0d27 /README-DEV.rst
parent1a411abe0b12bb81ed2560bee5d94b21069472c0 (diff)
downloadcouchdb-6e87e43fae23647b281ede250ad9f1a68a8f1cde.tar.gz
Port erlfmt formatting to 3.x
From PR: #3568 A few changes to the formatting logic compared to `main`: * rebar3 and `erlfmt` don't work with Erlang 20, so added an OTP version check to skip formatting for Erlang 20 * `make erlfmt-*` commands are faster. Instead of spawning an `erlfmt` process per-file, spawn one per `directory/*.erl` pattern. * Remove the non-0 return code work-around. `erlfmt` was returning an error on `main` because the line width option used for formatting was different than the one used during format checking. Making both the default removed all the spurious non-0 exits with the current version of `erlfmt`. Thanks to Adam Kocoloski for pointing out the issue.
Diffstat (limited to 'README-DEV.rst')
-rw-r--r--README-DEV.rst14
1 files changed, 14 insertions, 0 deletions
diff --git a/README-DEV.rst b/README-DEV.rst
index c8a52ffd4..863218de9 100644
--- a/README-DEV.rst
+++ b/README-DEV.rst
@@ -140,6 +140,20 @@ ignore their build and avoid any issues with their dependencies.
See ``./configure --help`` for more information.
+Developing
+----------
+
+Formatting
+~~~~~~~~~~
+
+The ``erl`` files in ``src`` are formatted using erlfmt_. The checks are run
+for every PR in the CI. To run the checks locally, run ``make erlfmt-check``.
+To format the ``erl`` files in ``src``, run ``make erlfmt-format``.
+To use ``erlfmt`` for specific files only, use the executable ``bin/erlfmt``
+that is installed by ``configure``.
+
+.. _erlfmt: https://github.com/WhatsApp/erlfmt
+
Testing
-------