summaryrefslogtreecommitdiffstats
path: root/.github/workflows/README.md
blob: eddfd3fb7fe3453f9ba87df95e551c802790a750 (plain)
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
This directory contains [GitHub Actions](https://github.com/features/actions) workflow files.

# Maintenance Schedule

[`ubuntu-16.04` environment will be removed at September, 2021.]((https://github.blog/changelog/2021-04-29-github-actions-ubuntu-16-04-lts-virtual-environment-will-be-removed-on-september-20-2021/).
----------------------------------------------------------------

We also will remove test for the following compilers.

- gcc: 4.4, 4.6, 4.7
- clang: 3.5, 3.6, 3.7, 3.8



# Known issues

## USAN, ASAN (`lz4-ubsan-x64`, `lz4-ubsan-x86`, `lz4-asan-x64`)

For now, `lz4-ubsan-*` ignores the exit code of `make usan` and `make usan32`.
Because there're several issues which may take relatively long time to resolve.

We'll fully enable it when we ensure `make usan` is ready for all commits and PRs.

See [#983](https://github.com/lz4/lz4/pull/983) for details.


## C Compilers (`lz4-c-compilers`)

- Our test doesn't use `gcc-4.5` due to installation issue of its package.  (`apt-get install gcc-4.5` fails on GH-Actions VM)

- Currently, the following 32bit executable tests fail with all versions of `clang`.
  - `CC=clang-X CFLAGS='-O3' make V=1 -C tests clean test-lz4c32`
  - `CC=clang-X CFLAGS='-O3 -mx32' make V=1 -C tests clean test-lz4c32`
  - See [#991](https://github.com/lz4/lz4/issues/991) for details.

- Currently, the following 32bit executable tests fail with `gcc-11`
  - `CC=gcc-11 CFLAGS='-O3' make V=1 -C tests clean test-lz4c32`
  - `CC=gcc-11 CFLAGS='-O3 -mx32' make V=1 -C tests clean test-lz4c32`
  - See [#991](https://github.com/lz4/lz4/issues/991) for details.


## cppcheck (`lz4-cppcheck`)

This test script ignores the exit code of `make cppcheck`.
Because this project doesn't 100% follow their recommendation.
Also sometimes it reports false positives.



# Notes

- You can investigate various information at the right pane of GitHub
  Actions report page.

| Item                      | Section in the right pane             |
| ------------------------- | ------------------------------------- |
| OS, VM                    | Set up job                            |
| git repo, commit hash     | Run actions/checkout@v2               |
| Version of tools          | Environment info                      |



# Difference with `.travis.yml`

The following tests are not included yet.

- name: Compile OSS-Fuzz targets

The following tests will not be included due to limitation of GH-Actions.

- name: aarch64 real-hw tests
- name: PPC64LE real-hw tests
- name: IBM s390x real-hw tests