-
Notifications
You must be signed in to change notification settings - Fork 4
78 lines (77 loc) · 3.2 KB
/
lint.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
name: 'Lint and compile'
on: { push: { paths: [ '**.el' ] } }
jobs:
lint:
runs-on: ubuntu-latest
strategy:
matrix:
emacs_version: ["snapshot"]
steps:
- uses: purcell/setup-emacs@master
with:
version: ${{ matrix.emacs_version }}
- uses: actions/checkout@v2
- name: Install dependencies
run: |
cat <(jq -r '.nodes.root.inputs | map(.) | .[]' .nomake/flake.lock) \
<(jq -r 'keys | .[]' .nomake/archive.lock) \
<(echo 'package-lint') \
| xargs emacs -batch -l package --eval \
"(progn
(push '(\"melpa\" . \"https://melpa.org/packages/\")
package-archives)
(package-initialize)
(when command-line-args-left
(package-refresh-contents))
(dolist (package-name command-line-args-left)
(let ((package (intern package-name)))
(when (and package
(not (memq package
'(org-starter org-starter-swiper))))
(package-install (cadr (assq package
package-archive-contents)))))))"
- name: Run package-lint
run: |
for file in org-starter.el org-starter-swiper.el
do
emacs -l package --eval "(push '(\"melpa\" . \"https://melpa.org/packages/\") package-archives)" --eval "(package-initialize)" -L . -batch -l package-lint \
-f package-lint-batch-and-exit $file
done
byte-compile:
runs-on: ubuntu-latest
strategy:
matrix:
emacs_version: ["25.1","25.2","25.3","26.1","26.2","26.3","27.1","27.2","snapshot"]
steps:
- uses: purcell/setup-emacs@master
with:
version: ${{ matrix.emacs_version }}
- uses: actions/checkout@v2
- name: Install dependencies
run: |
cat <(jq -r '.nodes.root.inputs | map(.) | .[]' .nomake/flake.lock) \
<(jq -r 'keys | .[]' .nomake/archive.lock) \
<(echo 'package-lint') \
| xargs emacs -batch -l package --eval \
"(progn
(push '(\"melpa\" . \"https://melpa.org/packages/\")
package-archives)
(package-initialize)
(when command-line-args-left
(package-refresh-contents))
(dolist (package-name command-line-args-left)
(let ((package (intern package-name)))
(when (and package
(not (memq package
'(org-starter org-starter-swiper))))
(package-install (cadr (assq package
package-archive-contents)))))))"
- name: Byte-compile
if: ${{ true }}
run: |
for file in org-starter.el org-starter-swiper.el
do
emacs -batch -l bytecomp -l package --eval "(push '(\"melpa\" . \"https://melpa.org/packages/\") package-archives)" --eval "(package-initialize)" -L . \
--eval "(setq byte-compile-error-on-warn t)" \
-f batch-byte-compile $file
done