Skip to content

Commit

Permalink
Merge pull request #170 from P403n1x87/devel
Browse files Browse the repository at this point in the history
Release v3.5.0
  • Loading branch information
P403n1x87 authored Feb 21, 2023
2 parents 4139481 + 2c9ad18 commit b48d980
Show file tree
Hide file tree
Showing 77 changed files with 4,193 additions and 3,209 deletions.
53 changes: 53 additions & 0 deletions .github/workflows/benchmarks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Benchmarks

on:
push:
branches:
- master
- devel
pull_request:

jobs:
benchmarks:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2

- name: Install build dependencies
run: |
sudo apt-get -y install libunwind-dev binutils-dev libiberty-dev
- name: Install Python 3.10
uses: actions/setup-python@v4
with:
python-version: "3.10"

- name: Compile Austin
run: |
autoreconf --install
./configure --enable-debug-symbols true
make
- name: Install runtime dependencies
run: |
python3.10 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install -r scripts/requirements-bm.txt
deactivate
- name: Run benchmarks
run: |
ulimit -c unlimited
source .venv/bin/activate
python scripts/benchmark.py | tee benchmarks.txt
deactivate
# Make it a code comment
sed -e $'1i\\\n~~~' -e $'$a\\\n~~~' benchmarks.txt > comment.txt
- name: Post results on PR
uses: marocchino/sticky-pull-request-comment@v2
with:
path: comment.txt
26 changes: 3 additions & 23 deletions .github/workflows/build_arch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

jobs:
build-linux-archs:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
strategy:
matrix:
arch: ["armv7", "aarch64", "ppc64le"]
Expand All @@ -18,6 +18,7 @@ jobs:
steps:
- uses: actions/checkout@v2
name: Checkout sources

- uses: uraimo/[email protected]
name: Build on ${{ matrix.arch }}
id: build-on-arch
Expand All @@ -28,28 +29,7 @@ jobs:
dockerRunArgs: --volume "${GITHUB_WORKSPACE}/artifacts:/artifacts"
setup: |
mkdir -p ./artifacts
run: |
apt-get update
apt-get -y install autoconf build-essential libunwind-dev binutils-dev libiberty-dev musl-tools zlib1g-dev
# Build austin
autoreconf --install
./configure
make
export VERSION=$(cat src/austin.h | sed -r -n "s/^#define VERSION[ ]+\"(.+)\"/\1/p")
pushd src
tar -Jcf austin-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz austin
tar -Jcf austinp-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz austinp
musl-gcc -O3 -Os -s -Wall -pthread *.c -o austin -D__MUSL__
tar -Jcf austin-$VERSION-musl-linux-${{ matrix.arch }}.tar.xz austin
mv austin-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz /artifacts
mv austinp-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz /artifacts
mv austin-$VERSION-musl-linux-${{ matrix.arch }}.tar.xz /artifacts
popd
run: ARCH=${{ matrix.arch }} bash scripts/build_arch.sh

- name: Show artifacts
run: |
Expand Down
48 changes: 26 additions & 22 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@ on:

jobs:
check-manpage:
runs-on: ubuntu-latest
strategy:
fail-fast: false
runs-on: ubuntu-20.04
name: Check manpage
steps:
- uses: actions/checkout@v2
Expand All @@ -32,9 +30,7 @@ jobs:
run: git diff -I".* DO NOT MODIFY.*" -I"[.]TH AUSTIN.*" --exit-code src/austin.1

cppcheck:
runs-on: ubuntu-latest
strategy:
fail-fast: false
runs-on: ubuntu-20.04
name: Static code analysis
steps:
- uses: actions/checkout@v2
Expand All @@ -43,12 +39,10 @@ jobs:
run: sudo apt-get -y install cppcheck

- name: Check soure code
run: cppcheck -q -f --error-exitcode=1 src
run: cppcheck -q -f --error-exitcode=1 --inline-suppr src

codespell:
runs-on: ubuntu-latest
strategy:
fail-fast: false
runs-on: ubuntu-20.04
name: Codespell
steps:
- uses: actions/checkout@v2
Expand All @@ -64,9 +58,7 @@ jobs:
run: codespell -I .github/workflows/wordlist.txt -S "src/python/*" src

formatting-tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
runs-on: ubuntu-20.04
name: Formatting (tests)
steps:
- uses: actions/checkout@v2
Expand All @@ -78,13 +70,27 @@ jobs:
- name: Install black
run: pip install black

- name: Check source code spelling
run: black --check test/
- name: Check formatting
run: black --check --exclude=test/targets test/

linting-tests:
runs-on: ubuntu-20.04
name: Linting (tests)
steps:
- uses: actions/checkout@v2

- uses: "actions/setup-python@v2"
with:
python-version: "3.10"

- name: Install flake8
run: pip install flake8

- name: Lint code
run: flake8 --config test/.flake8 test/

coverage:
runs-on: ubuntu-latest
strategy:
fail-fast: false
runs-on: ubuntu-20.04
name: Code coverage
steps:
- uses: actions/checkout@v2
Expand All @@ -101,7 +107,7 @@ jobs:
valgrind \
python2.7 \
python3.{5..11} \
python3.10-full
python3.10-full python3.10-dev
- name: Compile Austin
run: |
Expand Down Expand Up @@ -131,9 +137,7 @@ jobs:
verbose: true

check-cog:
runs-on: ubuntu-latest
strategy:
fail-fast: false
runs-on: ubuntu-20.04
name: Check cog output
steps:
- uses: actions/checkout@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
jobs:
push_to_registry:
name: Push Docker image to Docker Hub
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
steps:
- name: Check out the repo
uses: actions/checkout@v2
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/pre_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
- 'v*-*'
jobs:
release-linux:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
strategy:
fail-fast: false
name: Release (Linux)
Expand Down Expand Up @@ -124,7 +124,7 @@ jobs:
sed -i "" "s/$PREV_VERSION/$VERSION/g" src/austin.h
echo "::set-output name=version::$VERSION"
gcc -Wall -O3 -Os -o src/austin src/*.c
gcc-11 -Wall -O3 -Os -o src/austin src/*.c
pushd src
zip -r austin-${VERSION}-mac64.zip austin
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pre_release_arch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
- 'v*-*'
jobs:
release-linux-archs:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
strategy:
matrix:
arch: ["armv7", "aarch64", "ppc64le"]
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
- 'v[0-9]+.[0-9]+.[0-9]+'
jobs:
release-linux:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
strategy:
fail-fast: false
name: Release (Linux)
Expand Down Expand Up @@ -123,7 +123,7 @@ jobs:
export VERSION=$(cat src/austin.h | sed -n -E "s/^#define VERSION[ ]+\"(.+)\"/\1/p")
echo "::set-output name=version::$VERSION"
gcc -Wall -O3 -Os -o src/austin src/*.c
gcc-11 -Wall -O3 -Os -o src/austin src/*.c
pushd src
zip -r austin-${VERSION}-mac64.zip austin
Expand Down
26 changes: 3 additions & 23 deletions .github/workflows/release_arch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
- 'v[0-9]+.[0-9]+.[0-9]+'
jobs:
release-linux-archs:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
strategy:
matrix:
arch: ["armv7", "aarch64", "ppc64le"]
Expand All @@ -14,6 +14,7 @@ jobs:
steps:
- uses: actions/checkout@v2
name: Checkout sources

- uses: uraimo/[email protected]
name: Run tests on ${{ matrix.arch }}
id: run-tests-on-arch
Expand All @@ -24,28 +25,7 @@ jobs:
dockerRunArgs: --volume "${GITHUB_WORKSPACE}/artifacts:/artifacts"
setup: |
mkdir -p ./artifacts
run: |
apt-get update
apt-get -y install autoconf build-essential libunwind-dev binutils-dev libiberty-dev musl-tools zlib1g-dev
# Build austin
autoreconf --install
./configure
make
export VERSION=$(cat src/austin.h | sed -r -n "s/^#define VERSION[ ]+\"(.+)\"/\1/p")
pushd src
tar -Jcf austin-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz austin
tar -Jcf austinp-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz austinp
musl-gcc -O3 -Os -s -Wall -pthread *.c -o austin -D__MUSL__
tar -Jcf austin-$VERSION-musl-linux-${{ matrix.arch }}.tar.xz austin
mv austin-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz /artifacts
mv austinp-$VERSION-gnu-linux-${{ matrix.arch }}.tar.xz /artifacts
mv austin-$VERSION-musl-linux-${{ matrix.arch }}.tar.xz /artifacts
popd
run: ARCH=${{ matrix.arch }} bash scripts/build_arch.sh

- name: Show artifacts
run: |
Expand Down
Loading

0 comments on commit b48d980

Please sign in to comment.