-
Notifications
You must be signed in to change notification settings - Fork 5
125 lines (110 loc) · 4.35 KB
/
static_analysis.yaml
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#Run a static analysis
name: Static Analysis
on:
pull_request: {}
push:
branches: [develop, master]
repository_dispatch:
types: [element-web-notify]
env:
# These must be set for fetchdep.sh to get the right branch
REPOSITORY: ${{ github.repository }}
PR_NUMBER: ${{ github.event.pull_request.number }}
jobs:
# Removing until we fix the crash :
# Error: matrix-react-sdk/src/autocomplete/CommandProvider.tsx(38,24): error TS2589:
# Type instantiation is excessively deep and possibly infinite.
# ts_lint:
# name: "Typescript Syntax Check"
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v2
#
# - uses: actions/setup-node@v3
# with:
# cache: 'yarn'
# node-version: 18
#
# - name: Install Dependencies
# run: "./scripts/tchap/install-yarn-linked-repositories.sh"
#
# - name: Typecheck
# run: "yarn run lint:types"
# - uses: actions/setup-node@v3
# with:
# cache: "yarn"
# - name: Install Dependencies
# run: "./scripts/layered.sh"
# - name: Typecheck
# run: "yarn run lint:types"
# tsc-strict:
# name: Typescript Strict Error Checker
# if: github.event_name == 'pull_request'
# runs-on: ubuntu-latest
# permissions:
# pull-requests: read
# checks: write
# steps:
# - uses: actions/checkout@v3
# - name: Install Deps
# run: "scripts/layered.sh"
# - name: Get diff lines
# id: diff
# uses: Equip-Collaboration/diff-line-numbers@df70b4b83e05105c15f20dc6cc61f1463411b2a6 # v1.0.0
# with:
# include: '["\\.tsx?$"]'
# - name: Detecting files changed
# id: files
# uses: futuratrepadeira/changed-files@96d5fd702a6479d573287ef07381ad59acc390ed # v4.0.0
# with:
# repo-token: ${{ secrets.GITHUB_TOKEN }}
# pattern: '^.*\.tsx?$'
# - uses: t3chguy/typescript-check-action@main
# with:
# repo-token: ${{ secrets.GITHUB_TOKEN }}
# use-check: false
# check-fail-mode: added
# output-behaviour: annotate
# ts-extra-args: "--strict --noImplicitAny"
# files-changed: ${{ steps.files.outputs.files_updated }}
# files-added: ${{ steps.files.outputs.files_created }}
# files-deleted: ${{ steps.files.outputs.files_deleted }}
# line-numbers: ${{ steps.diff.outputs.lineNumbers }}
# tchap : tchap does not use extensively i18n
# i18n_lint:
# name: "i18n Check"
# uses: matrix-org/matrix-react-sdk/.github/workflows/i18n_check.yml@develop
js_lint:
name: "ESLint"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Get Node Version
id: node_version
run: echo ::set-output name=node_version::$(node -e 'console.log(require("./package.json").engines.node)')
- uses: actions/setup-node@v3
with:
cache: "yarn"
node-version: ${{ steps.node_version.outputs.node_version }}
# Does not need branch matching as only analyses this layer
- name: Install Deps
run: "yarn install --frozen-lockfile"
- name: Run Linter
run: "yarn run lint:js"
style_lint:
name: "Style Lint"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Get Node Version
id: node_version
run: echo ::set-output name=node_version::$(node -e 'console.log(require("./package.json").engines.node)')
- uses: actions/setup-node@v3
with:
cache: "yarn"
node-version: ${{ steps.node_version.outputs.node_version }}
# Needs branch matching as it inherits .stylelintrc.js from matrix-react-sdk
- name: Install Dependencies
run: "yarn install --pure-lockfile"
- name: Run Linter
run: "yarn run lint:style"