Browse Source

Add dev practices doc to explain current state of linting

Gabriel Horner 3 năm trước cách đây
mục cha
commit
38d9cb7fbd
2 tập tin đã thay đổi với 13 bổ sung1 xóa
  1. 1 1
      README.md
  2. 12 0
      docs/dev-practices.md

+ 1 - 1
README.md

@@ -76,7 +76,7 @@ Logseq is also made possible by the following projects:
 
 The following is for developers and designers who want to build and run Logseq locally and contribute to this project.
 
-We also have [a dedicated page](https://github.com/logseq/logseq/blob/master/CODEBASE_OVERVIEW.md) for LogSeq's codebase overview.
+We have [a dedicated overview page](https://github.com/logseq/logseq/blob/master/CODEBASE_OVERVIEW.md) for LogSeq's codebase overview and [a development practices page](docs/dev-practices.md).
 
 ## Set up development environment
 

+ 12 - 0
docs/dev-practices.md

@@ -0,0 +1,12 @@
+## Description
+
+This page describes development practices for this codebase.
+
+## Linting
+
+We lint our Clojure(Script) code with https://github.com/clj-kondo/clj-kondo/. If you need to configure specific linters, see [this documentation](https://github.com/clj-kondo/clj-kondo/blob/master/doc/linters.md). Where possible, a global linting configuration is used and namespace specific configuration is avoided.
+
+Linting is a work in progress as this is a large Clojure codebase with some areas to refactor. There are outstanding linting items that are currently ignored in order to allow full linting of the codebase to run in CI. These outstanding linting items should be addressed at some point:
+
+* Comments starting with `TODO:lint`
+* Code marked with `#_:clj-kondo/ignore` require a good understanding of the context to address as they usually involve something with a side effect or require changing multiple fns up the call stack.