@hivehub/rulebook 5.4.0 → 5.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +191 -191
- package/README.md +1 -0
- package/dist/core/generator.d.ts +1 -1
- package/dist/core/generator.d.ts.map +1 -1
- package/dist/core/generator.js +1 -0
- package/dist/core/generator.js.map +1 -1
- package/package.json +1 -1
- package/templates/cli/gemini-extension.json +77 -77
- package/templates/core/AGENTS_LEAN.md +9 -0
- package/templates/core/CLAUDE_MD_v2.md +9 -0
- package/templates/core/WORKSPACE.md +69 -69
- package/templates/skills/core/karpathy-guidelines/SKILL.md +93 -0
- package/templates/workflows/codespell.yml +31 -31
- package/templates/workflows/cpp-lint.yml +47 -47
- package/templates/workflows/cpp-publish.yml +119 -119
- package/templates/workflows/cpp-test.yml +77 -77
- package/templates/workflows/dotnet-lint.yml +29 -29
- package/templates/workflows/dotnet-publish.yml +40 -40
- package/templates/workflows/dotnet-test.yml +41 -41
- package/templates/workflows/elixir-lint.yml +45 -45
- package/templates/workflows/elixir-publish.yml +49 -49
- package/templates/workflows/elixir-test.yml +54 -54
- package/templates/workflows/erlang-lint.yml +47 -47
- package/templates/workflows/erlang-test.yml +62 -62
- package/templates/workflows/go-lint.yml +39 -39
- package/templates/workflows/go-publish.yml +95 -95
- package/templates/workflows/go-test.yml +59 -59
- package/templates/workflows/java-lint.yml +60 -60
- package/templates/workflows/java-publish.yml +120 -120
- package/templates/workflows/java-test.yml +85 -85
- package/templates/workflows/kotlin-lint.yml +34 -34
- package/templates/workflows/kotlin-publish.yml +56 -56
- package/templates/workflows/kotlin-test.yml +48 -48
- package/templates/workflows/php-lint.yml +39 -39
- package/templates/workflows/php-publish.yml +50 -50
- package/templates/workflows/php-test.yml +54 -54
- package/templates/workflows/python-lint.yml +47 -47
- package/templates/workflows/python-publish.yml +91 -91
- package/templates/workflows/python-test.yml +59 -59
- package/templates/workflows/rust-lint.yml +54 -54
- package/templates/workflows/rust-publish.yml +66 -66
- package/templates/workflows/rust-test.yml +75 -75
- package/templates/workflows/solidity-lint.yml +41 -41
- package/templates/workflows/solidity-test.yml +47 -47
- package/templates/workflows/swift-lint.yml +32 -32
- package/templates/workflows/swift-publish.yml +58 -58
- package/templates/workflows/swift-test.yml +44 -44
- package/templates/workflows/typescript-publish.yml +60 -60
- package/templates/workflows/typescript-test.yml +73 -73
- package/templates/workflows/zig-lint.yml +27 -27
- package/templates/workflows/zig-test.yml +40 -40
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
name: Elixir Lint
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master, main, develop ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ '**' ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
lint:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
|
|
13
|
-
steps:
|
|
14
|
-
- uses: actions/checkout@v5
|
|
15
|
-
|
|
16
|
-
- name: Set up Elixir
|
|
17
|
-
uses: erlef/setup-beam@v1
|
|
18
|
-
with:
|
|
19
|
-
elixir-version: '1.17'
|
|
20
|
-
otp-version: '27'
|
|
21
|
-
|
|
22
|
-
- name: Restore dependencies cache
|
|
23
|
-
uses: actions/cache@v4
|
|
24
|
-
with:
|
|
25
|
-
path: deps
|
|
26
|
-
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
|
|
27
|
-
|
|
28
|
-
- name: Restore PLT cache
|
|
29
|
-
uses: actions/cache@v4
|
|
30
|
-
with:
|
|
31
|
-
path: priv/plts
|
|
32
|
-
key: ${{ runner.os }}-plt-${{ hashFiles('**/mix.lock') }}
|
|
33
|
-
|
|
34
|
-
- name: Install dependencies
|
|
35
|
-
run: mix deps.get
|
|
36
|
-
|
|
37
|
-
- name: Check formatting
|
|
38
|
-
run: mix format --check-formatted
|
|
39
|
-
|
|
40
|
-
- name: Run Credo
|
|
41
|
-
run: mix credo --strict
|
|
42
|
-
|
|
43
|
-
- name: Run Dialyzer
|
|
44
|
-
run: mix dialyzer --format github
|
|
45
|
-
|
|
1
|
+
name: Elixir Lint
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, main, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ '**' ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
lint:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v5
|
|
15
|
+
|
|
16
|
+
- name: Set up Elixir
|
|
17
|
+
uses: erlef/setup-beam@v1
|
|
18
|
+
with:
|
|
19
|
+
elixir-version: '1.17'
|
|
20
|
+
otp-version: '27'
|
|
21
|
+
|
|
22
|
+
- name: Restore dependencies cache
|
|
23
|
+
uses: actions/cache@v4
|
|
24
|
+
with:
|
|
25
|
+
path: deps
|
|
26
|
+
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
|
|
27
|
+
|
|
28
|
+
- name: Restore PLT cache
|
|
29
|
+
uses: actions/cache@v4
|
|
30
|
+
with:
|
|
31
|
+
path: priv/plts
|
|
32
|
+
key: ${{ runner.os }}-plt-${{ hashFiles('**/mix.lock') }}
|
|
33
|
+
|
|
34
|
+
- name: Install dependencies
|
|
35
|
+
run: mix deps.get
|
|
36
|
+
|
|
37
|
+
- name: Check formatting
|
|
38
|
+
run: mix format --check-formatted
|
|
39
|
+
|
|
40
|
+
- name: Run Credo
|
|
41
|
+
run: mix credo --strict
|
|
42
|
+
|
|
43
|
+
- name: Run Dialyzer
|
|
44
|
+
run: mix dialyzer --format github
|
|
45
|
+
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
name: Publish to Hex.pm
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
release:
|
|
5
|
-
types: [published]
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
inputs:
|
|
8
|
-
tag:
|
|
9
|
-
description: 'Tag to publish (e.g., v1.0.0)'
|
|
10
|
-
required: true
|
|
11
|
-
|
|
12
|
-
jobs:
|
|
13
|
-
publish:
|
|
14
|
-
runs-on: ubuntu-latest
|
|
15
|
-
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v5
|
|
18
|
-
with:
|
|
19
|
-
ref: ${{ github.event.inputs.tag || github.ref }}
|
|
20
|
-
|
|
21
|
-
- name: Set up Elixir
|
|
22
|
-
uses: erlef/setup-beam@v1
|
|
23
|
-
with:
|
|
24
|
-
elixir-version: '1.17'
|
|
25
|
-
otp-version: '27'
|
|
26
|
-
|
|
27
|
-
- name: Install dependencies
|
|
28
|
-
run: mix deps.get
|
|
29
|
-
|
|
30
|
-
- name: Run tests
|
|
31
|
-
run: mix test
|
|
32
|
-
|
|
33
|
-
- name: Run Credo
|
|
34
|
-
run: mix credo --strict
|
|
35
|
-
|
|
36
|
-
- name: Run Dialyzer
|
|
37
|
-
run: mix dialyzer
|
|
38
|
-
|
|
39
|
-
- name: Build docs
|
|
40
|
-
run: mix docs
|
|
41
|
-
|
|
42
|
-
- name: Build package
|
|
43
|
-
run: mix hex.build
|
|
44
|
-
|
|
45
|
-
- name: Publish to Hex
|
|
46
|
-
run: mix hex.publish --yes
|
|
47
|
-
env:
|
|
48
|
-
HEX_API_KEY: ${{ secrets.HEX_API_KEY }}
|
|
49
|
-
|
|
1
|
+
name: Publish to Hex.pm
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
release:
|
|
5
|
+
types: [published]
|
|
6
|
+
workflow_dispatch:
|
|
7
|
+
inputs:
|
|
8
|
+
tag:
|
|
9
|
+
description: 'Tag to publish (e.g., v1.0.0)'
|
|
10
|
+
required: true
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
publish:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
|
|
16
|
+
steps:
|
|
17
|
+
- uses: actions/checkout@v5
|
|
18
|
+
with:
|
|
19
|
+
ref: ${{ github.event.inputs.tag || github.ref }}
|
|
20
|
+
|
|
21
|
+
- name: Set up Elixir
|
|
22
|
+
uses: erlef/setup-beam@v1
|
|
23
|
+
with:
|
|
24
|
+
elixir-version: '1.17'
|
|
25
|
+
otp-version: '27'
|
|
26
|
+
|
|
27
|
+
- name: Install dependencies
|
|
28
|
+
run: mix deps.get
|
|
29
|
+
|
|
30
|
+
- name: Run tests
|
|
31
|
+
run: mix test
|
|
32
|
+
|
|
33
|
+
- name: Run Credo
|
|
34
|
+
run: mix credo --strict
|
|
35
|
+
|
|
36
|
+
- name: Run Dialyzer
|
|
37
|
+
run: mix dialyzer
|
|
38
|
+
|
|
39
|
+
- name: Build docs
|
|
40
|
+
run: mix docs
|
|
41
|
+
|
|
42
|
+
- name: Build package
|
|
43
|
+
run: mix hex.build
|
|
44
|
+
|
|
45
|
+
- name: Publish to Hex
|
|
46
|
+
run: mix hex.publish --yes
|
|
47
|
+
env:
|
|
48
|
+
HEX_API_KEY: ${{ secrets.HEX_API_KEY }}
|
|
49
|
+
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
name: Elixir Tests
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master, main, develop ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ '**' ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
test:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
|
|
13
|
-
strategy:
|
|
14
|
-
matrix:
|
|
15
|
-
elixir: ['1.16', '1.17']
|
|
16
|
-
otp: ['26', '27']
|
|
17
|
-
|
|
18
|
-
steps:
|
|
19
|
-
- uses: actions/checkout@v5
|
|
20
|
-
|
|
21
|
-
- name: Set up Elixir
|
|
22
|
-
uses: erlef/setup-beam@v1
|
|
23
|
-
with:
|
|
24
|
-
elixir-version: ${{ matrix.elixir }}
|
|
25
|
-
otp-version: ${{ matrix.otp }}
|
|
26
|
-
|
|
27
|
-
- name: Restore dependencies cache
|
|
28
|
-
uses: actions/cache@v4
|
|
29
|
-
with:
|
|
30
|
-
path: deps
|
|
31
|
-
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
|
|
32
|
-
restore-keys: ${{ runner.os }}-mix-
|
|
33
|
-
|
|
34
|
-
- name: Install dependencies
|
|
35
|
-
run: mix deps.get
|
|
36
|
-
|
|
37
|
-
- name: Compile
|
|
38
|
-
run: mix compile --warnings-as-errors
|
|
39
|
-
|
|
40
|
-
- name: Run tests
|
|
41
|
-
run: mix test
|
|
42
|
-
|
|
43
|
-
- name: Generate coverage report
|
|
44
|
-
run: mix coveralls.json
|
|
45
|
-
if: matrix.elixir == '1.17' && matrix.otp == '27'
|
|
46
|
-
|
|
47
|
-
- name: Upload coverage to Codecov
|
|
48
|
-
uses: codecov/codecov-action@v4
|
|
49
|
-
if: matrix.elixir == '1.17' && matrix.otp == '27'
|
|
50
|
-
with:
|
|
51
|
-
files: ./cover/excoveralls.json
|
|
52
|
-
flags: unittests
|
|
53
|
-
fail_ci_if_error: false
|
|
54
|
-
|
|
1
|
+
name: Elixir Tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, main, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ '**' ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
strategy:
|
|
14
|
+
matrix:
|
|
15
|
+
elixir: ['1.16', '1.17']
|
|
16
|
+
otp: ['26', '27']
|
|
17
|
+
|
|
18
|
+
steps:
|
|
19
|
+
- uses: actions/checkout@v5
|
|
20
|
+
|
|
21
|
+
- name: Set up Elixir
|
|
22
|
+
uses: erlef/setup-beam@v1
|
|
23
|
+
with:
|
|
24
|
+
elixir-version: ${{ matrix.elixir }}
|
|
25
|
+
otp-version: ${{ matrix.otp }}
|
|
26
|
+
|
|
27
|
+
- name: Restore dependencies cache
|
|
28
|
+
uses: actions/cache@v4
|
|
29
|
+
with:
|
|
30
|
+
path: deps
|
|
31
|
+
key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }}
|
|
32
|
+
restore-keys: ${{ runner.os }}-mix-
|
|
33
|
+
|
|
34
|
+
- name: Install dependencies
|
|
35
|
+
run: mix deps.get
|
|
36
|
+
|
|
37
|
+
- name: Compile
|
|
38
|
+
run: mix compile --warnings-as-errors
|
|
39
|
+
|
|
40
|
+
- name: Run tests
|
|
41
|
+
run: mix test
|
|
42
|
+
|
|
43
|
+
- name: Generate coverage report
|
|
44
|
+
run: mix coveralls.json
|
|
45
|
+
if: matrix.elixir == '1.17' && matrix.otp == '27'
|
|
46
|
+
|
|
47
|
+
- name: Upload coverage to Codecov
|
|
48
|
+
uses: codecov/codecov-action@v4
|
|
49
|
+
if: matrix.elixir == '1.17' && matrix.otp == '27'
|
|
50
|
+
with:
|
|
51
|
+
files: ./cover/excoveralls.json
|
|
52
|
+
flags: unittests
|
|
53
|
+
fail_ci_if_error: false
|
|
54
|
+
|
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
name: Erlang Lint
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master, main, develop ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ '**' ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
lint:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
|
|
13
|
-
steps:
|
|
14
|
-
- uses: actions/checkout@v5
|
|
15
|
-
|
|
16
|
-
- name: Setup Erlang/OTP
|
|
17
|
-
uses: erlef/setup-beam@v1
|
|
18
|
-
with:
|
|
19
|
-
otp-version: '27'
|
|
20
|
-
rebar3-version: '3.23'
|
|
21
|
-
|
|
22
|
-
- name: Restore dependencies cache
|
|
23
|
-
uses: actions/cache@v4
|
|
24
|
-
with:
|
|
25
|
-
path: |
|
|
26
|
-
_build
|
|
27
|
-
~/.cache/rebar3
|
|
28
|
-
key: ${{ runner.os }}-otp-27-${{ hashFiles('rebar.lock') }}
|
|
29
|
-
restore-keys: |
|
|
30
|
-
${{ runner.os }}-otp-27-
|
|
31
|
-
|
|
32
|
-
- name: Compile
|
|
33
|
-
run: rebar3 compile
|
|
34
|
-
|
|
35
|
-
- name: Check formatting
|
|
36
|
-
run: rebar3 as test fmt --check
|
|
37
|
-
|
|
38
|
-
- name: Run Elvis linter
|
|
39
|
-
run: rebar3 as test lint
|
|
40
|
-
|
|
41
|
-
- name: Run Dialyzer
|
|
42
|
-
run: rebar3 dialyzer
|
|
43
|
-
|
|
44
|
-
- name: Cross-reference check
|
|
45
|
-
run: rebar3 xref
|
|
46
|
-
|
|
47
|
-
|
|
1
|
+
name: Erlang Lint
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, main, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ '**' ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
lint:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v5
|
|
15
|
+
|
|
16
|
+
- name: Setup Erlang/OTP
|
|
17
|
+
uses: erlef/setup-beam@v1
|
|
18
|
+
with:
|
|
19
|
+
otp-version: '27'
|
|
20
|
+
rebar3-version: '3.23'
|
|
21
|
+
|
|
22
|
+
- name: Restore dependencies cache
|
|
23
|
+
uses: actions/cache@v4
|
|
24
|
+
with:
|
|
25
|
+
path: |
|
|
26
|
+
_build
|
|
27
|
+
~/.cache/rebar3
|
|
28
|
+
key: ${{ runner.os }}-otp-27-${{ hashFiles('rebar.lock') }}
|
|
29
|
+
restore-keys: |
|
|
30
|
+
${{ runner.os }}-otp-27-
|
|
31
|
+
|
|
32
|
+
- name: Compile
|
|
33
|
+
run: rebar3 compile
|
|
34
|
+
|
|
35
|
+
- name: Check formatting
|
|
36
|
+
run: rebar3 as test fmt --check
|
|
37
|
+
|
|
38
|
+
- name: Run Elvis linter
|
|
39
|
+
run: rebar3 as test lint
|
|
40
|
+
|
|
41
|
+
- name: Run Dialyzer
|
|
42
|
+
run: rebar3 dialyzer
|
|
43
|
+
|
|
44
|
+
- name: Cross-reference check
|
|
45
|
+
run: rebar3 xref
|
|
46
|
+
|
|
47
|
+
|
|
@@ -1,62 +1,62 @@
|
|
|
1
|
-
name: Erlang Tests
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master, main, develop ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ '**' ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
test:
|
|
11
|
-
runs-on: ${{ matrix.os }}
|
|
12
|
-
strategy:
|
|
13
|
-
matrix:
|
|
14
|
-
os: [ ubuntu-latest ]
|
|
15
|
-
otp-version: [ '26', '27' ]
|
|
16
|
-
|
|
17
|
-
steps:
|
|
18
|
-
- uses: actions/checkout@v5
|
|
19
|
-
|
|
20
|
-
- name: Setup Erlang/OTP
|
|
21
|
-
uses: erlef/setup-beam@v1
|
|
22
|
-
with:
|
|
23
|
-
otp-version: ${{ matrix.otp-version }}
|
|
24
|
-
rebar3-version: '3.23'
|
|
25
|
-
|
|
26
|
-
- name: Restore dependencies cache
|
|
27
|
-
uses: actions/cache@v4
|
|
28
|
-
with:
|
|
29
|
-
path: |
|
|
30
|
-
_build
|
|
31
|
-
~/.cache/rebar3
|
|
32
|
-
key: ${{ runner.os }}-otp-${{ matrix.otp-version }}-${{ hashFiles('rebar.lock') }}
|
|
33
|
-
restore-keys: |
|
|
34
|
-
${{ runner.os }}-otp-${{ matrix.otp-version }}-
|
|
35
|
-
|
|
36
|
-
- name: Compile
|
|
37
|
-
run: rebar3 compile
|
|
38
|
-
|
|
39
|
-
- name: Run Dialyzer
|
|
40
|
-
run: rebar3 dialyzer
|
|
41
|
-
|
|
42
|
-
- name: Run EUnit tests
|
|
43
|
-
run: rebar3 eunit
|
|
44
|
-
|
|
45
|
-
- name: Run Common Test
|
|
46
|
-
run: rebar3 ct
|
|
47
|
-
|
|
48
|
-
- name: Run PropEr properties
|
|
49
|
-
run: rebar3 proper
|
|
50
|
-
|
|
51
|
-
- name: Generate coverage report
|
|
52
|
-
run: rebar3 cover
|
|
53
|
-
|
|
54
|
-
- name: Upload coverage to Codecov
|
|
55
|
-
uses: codecov/codecov-action@v4
|
|
56
|
-
if: matrix.otp-version == '27'
|
|
57
|
-
with:
|
|
58
|
-
files: ./_build/test/cover/eunit.coverdata
|
|
59
|
-
flags: unittests
|
|
60
|
-
fail_ci_if_error: false
|
|
61
|
-
|
|
62
|
-
|
|
1
|
+
name: Erlang Tests
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, main, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ '**' ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
test:
|
|
11
|
+
runs-on: ${{ matrix.os }}
|
|
12
|
+
strategy:
|
|
13
|
+
matrix:
|
|
14
|
+
os: [ ubuntu-latest ]
|
|
15
|
+
otp-version: [ '26', '27' ]
|
|
16
|
+
|
|
17
|
+
steps:
|
|
18
|
+
- uses: actions/checkout@v5
|
|
19
|
+
|
|
20
|
+
- name: Setup Erlang/OTP
|
|
21
|
+
uses: erlef/setup-beam@v1
|
|
22
|
+
with:
|
|
23
|
+
otp-version: ${{ matrix.otp-version }}
|
|
24
|
+
rebar3-version: '3.23'
|
|
25
|
+
|
|
26
|
+
- name: Restore dependencies cache
|
|
27
|
+
uses: actions/cache@v4
|
|
28
|
+
with:
|
|
29
|
+
path: |
|
|
30
|
+
_build
|
|
31
|
+
~/.cache/rebar3
|
|
32
|
+
key: ${{ runner.os }}-otp-${{ matrix.otp-version }}-${{ hashFiles('rebar.lock') }}
|
|
33
|
+
restore-keys: |
|
|
34
|
+
${{ runner.os }}-otp-${{ matrix.otp-version }}-
|
|
35
|
+
|
|
36
|
+
- name: Compile
|
|
37
|
+
run: rebar3 compile
|
|
38
|
+
|
|
39
|
+
- name: Run Dialyzer
|
|
40
|
+
run: rebar3 dialyzer
|
|
41
|
+
|
|
42
|
+
- name: Run EUnit tests
|
|
43
|
+
run: rebar3 eunit
|
|
44
|
+
|
|
45
|
+
- name: Run Common Test
|
|
46
|
+
run: rebar3 ct
|
|
47
|
+
|
|
48
|
+
- name: Run PropEr properties
|
|
49
|
+
run: rebar3 proper
|
|
50
|
+
|
|
51
|
+
- name: Generate coverage report
|
|
52
|
+
run: rebar3 cover
|
|
53
|
+
|
|
54
|
+
- name: Upload coverage to Codecov
|
|
55
|
+
uses: codecov/codecov-action@v4
|
|
56
|
+
if: matrix.otp-version == '27'
|
|
57
|
+
with:
|
|
58
|
+
files: ./_build/test/cover/eunit.coverdata
|
|
59
|
+
flags: unittests
|
|
60
|
+
fail_ci_if_error: false
|
|
61
|
+
|
|
62
|
+
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
name: Go Lint
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
push:
|
|
5
|
-
branches: [ master, main, develop ]
|
|
6
|
-
pull_request:
|
|
7
|
-
branches: [ '**' ]
|
|
8
|
-
|
|
9
|
-
jobs:
|
|
10
|
-
lint:
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
|
|
13
|
-
steps:
|
|
14
|
-
- uses: actions/checkout@v4
|
|
15
|
-
|
|
16
|
-
- name: Set up Go
|
|
17
|
-
uses: actions/setup-go@v5
|
|
18
|
-
with:
|
|
19
|
-
go-version: '1.22'
|
|
20
|
-
cache: true
|
|
21
|
-
|
|
22
|
-
- name: Check formatting
|
|
23
|
-
run: |
|
|
24
|
-
if [ "$(gofmt -l . | wc -l)" -gt 0 ]; then
|
|
25
|
-
echo "Code is not formatted. Run: gofmt -w ."
|
|
26
|
-
gofmt -l .
|
|
27
|
-
exit 1
|
|
28
|
-
fi
|
|
29
|
-
|
|
30
|
-
- name: Run go vet
|
|
31
|
-
run: go vet ./...
|
|
32
|
-
|
|
33
|
-
- name: Install golangci-lint
|
|
34
|
-
run: |
|
|
35
|
-
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin
|
|
36
|
-
|
|
37
|
-
- name: Run golangci-lint
|
|
38
|
-
run: $(go env GOPATH)/bin/golangci-lint run --timeout=5m
|
|
39
|
-
|
|
1
|
+
name: Go Lint
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ master, main, develop ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ '**' ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
lint:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
steps:
|
|
14
|
+
- uses: actions/checkout@v4
|
|
15
|
+
|
|
16
|
+
- name: Set up Go
|
|
17
|
+
uses: actions/setup-go@v5
|
|
18
|
+
with:
|
|
19
|
+
go-version: '1.22'
|
|
20
|
+
cache: true
|
|
21
|
+
|
|
22
|
+
- name: Check formatting
|
|
23
|
+
run: |
|
|
24
|
+
if [ "$(gofmt -l . | wc -l)" -gt 0 ]; then
|
|
25
|
+
echo "Code is not formatted. Run: gofmt -w ."
|
|
26
|
+
gofmt -l .
|
|
27
|
+
exit 1
|
|
28
|
+
fi
|
|
29
|
+
|
|
30
|
+
- name: Run go vet
|
|
31
|
+
run: go vet ./...
|
|
32
|
+
|
|
33
|
+
- name: Install golangci-lint
|
|
34
|
+
run: |
|
|
35
|
+
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin
|
|
36
|
+
|
|
37
|
+
- name: Run golangci-lint
|
|
38
|
+
run: $(go env GOPATH)/bin/golangci-lint run --timeout=5m
|
|
39
|
+
|