Skip to content

Commit 6db5fcc

Browse files
ci: update to standard Practicalli workflow and configuration
1 parent a6e2257 commit 6db5fcc

16 files changed

+654
-142
lines changed

.github/CODEOWNERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# Codeowners
2+
3+
# Default owner accounts for the current repository
4+
# Automatically added as a reviewr to all pull requests (not including drafts)
5+
6+
* @practicalli-john

.github/FUNDING.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
# GitHub Supported funding model platforms
3+
4+
github: [practicalli-john]
5+
# patreon: # Replace with a single Patreon username
6+
# open_collective: # Replace with a single Open Collective username
7+
# ko_fi: # Replace with a single Ko-fi username
8+
# tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
9+
# community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
10+
# liberapay: # Replace with a single Liberapay username
11+
# issuehunt: # Replace with a single IssueHunt username
12+
# otechie: # Replace with a single Otechie username
13+
# custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']

.github/FUNDING.yml

Lines changed: 0 additions & 12 deletions
This file was deleted.
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
;; ---------------------------------------------------------
2+
;; Clojure Linter - clj-kondo configuration for Continuous Integration
3+
;;
4+
;; Essential linter checks during CI workflows
5+
;; disabling non-essential checks to optimise workflow feedback
6+
;; ---------------------------------------------------------
7+
8+
9+
{;; Ignore code in comment blocks
10+
:skip-comments true
11+
12+
:linters {:invalid-arity {:level :error
13+
:skip-args [#_riemann.test/test-stream]}
14+
:not-a-function {:level :error
15+
:skip-args [#_user/foo]}
16+
:private-call {:level :error}
17+
:inline-def {:level :error}
18+
:redundant-do {:level :off}
19+
:redundant-let {:level :warning}
20+
:cond-else {:level :off}
21+
:syntax {:level :warning}
22+
:file {:level :error}
23+
:missing-test-assertion {:level :warning}
24+
:conflicting-alias {:level :error}
25+
:duplicate-map-key {:level :error}
26+
:duplicate-set-key {:level :error}
27+
:missing-map-value {:level :error}
28+
:redefined-var {:level :off}
29+
:unreachable-code {:level :warning}
30+
:datalog-syntax {:level :off}
31+
:unbound-destructuring-default {:level :warning}
32+
:unused-binding {:level :off
33+
;; :exclude-destructured-keys-in-fn-args false
34+
;; :exclude-destructured-as false
35+
;; :exclude-unused-as true
36+
}
37+
38+
:unsorted-required-namespaces {:level :off}
39+
:unused-namespace {:level :off
40+
;; don't warn about these namespaces:
41+
:exclude [#_clj-kondo.impl.var-info-gen]}
42+
;; :simple-libspec true
43+
44+
:unresolved-symbol {:level :error
45+
:exclude [;; ignore globally:
46+
#_js*
47+
;; ignore occurrences of service and event in call to riemann.streams/where:
48+
#_(riemann.streams/where [service event])
49+
;; ignore all unresolved symbols in one-of:
50+
#_(clj-kondo.impl.utils/one-of)
51+
#_(user/defproject) ; ignore project.clj's defproject
52+
#_(clojure.test/are [thrown? thrown-with-msg?])
53+
#_(cljs.test/are [thrown? thrown-with-msg?])
54+
#_(clojure.test/is [thrown? thrown-with-msg?])
55+
#_(cljs.test/is [thrown? thrown-with-msg?])]}
56+
:unresolved-var {:level :warning}
57+
:unresolved-namespace {:level :warning
58+
:exclude [#_foo.bar]}
59+
;; for example: foo.bar is always loaded in a user profile
60+
61+
:misplaced-docstring {:level :warning}
62+
:not-empty? {:level :off}
63+
:deprecated-var {:level :off
64+
#_:exclude
65+
#_{foo.foo/deprecated-fn
66+
;; suppress warnings in the following namespaces
67+
{:namespaces [foo.bar "bar\\.*"]
68+
;; or in these definitions:
69+
:defs [foo.baz/allowed "foo.baz/ign\\.*"]}}}
70+
:unused-referred-var {:level :off
71+
:exclude {#_#_taoensso.timbre [debug]}}
72+
:unused-private-var {:level :off}
73+
:duplicate-require {:level :warning}
74+
:refer {:level :off}
75+
:refer-all {:level :warning
76+
:exclude #{}}
77+
:use {:level :error}
78+
:missing-else-branch {:level :warning}
79+
:type-mismatch {:level :error}
80+
:missing-docstring {:level :warning}
81+
:consistent-alias {:level :off
82+
;; warn when alias for clojure.string is
83+
;; different from str
84+
:aliases {#_clojure.string #_str}}
85+
:unused-import {:level :off}
86+
:single-operand-comparison {:level :off}
87+
:single-logical-operand {:level :off}
88+
:single-key-in {:level :off}
89+
:missing-clause-in-try {:level :off}
90+
:missing-body-in-when {:level :off}
91+
:hook {:level :error}
92+
:format {:level :error}
93+
:shadowed-var {:level :off
94+
#_#_:suggestions {clojure.core/type tajpu
95+
clojure.core/name nomspaco}
96+
#_#_:exclude [frequencies]
97+
#_#_:include [name]}
98+
:deps.edn {:level :warning}}
99+
100+
;; Format the output of clj-kondo for GitHub actions
101+
:output {:pattern "::{{level}} file={{filename}},line={{row}},col={{col}}::{{message}}"}}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"ignorePatterns": [
3+
{
4+
"pattern": "^http://localhost"
5+
},
6+
{
7+
"pattern": "^mailto:*"
8+
},
9+
{
10+
"pattern": "^#*"
11+
},
12+
{
13+
"pattern": "^https://127.0.0.0/"
14+
}
15+
],
16+
"timeout": "20s",
17+
"retryOn429": true,
18+
"retryCount": 5,
19+
"fallbackRetryDelay": "30s",
20+
"aliveStatusCodes": [
21+
200,
22+
206
23+
]
24+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"projectBaseUrl": "https://practical.li/clojure-web-services",
3+
"replacementPatterns": [
4+
{
5+
"pattern": "^/",
6+
"replacement": "/github/workspace/"
7+
}
8+
]
9+
}

0 commit comments

Comments
 (0)