Anti-pattern remediation: safety, threading, WebSocket architecture, and test coverage #248
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: build | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install APT packages | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y \ | |
| libao-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev \ | |
| libcurl4-gnutls-dev libgcrypt20-dev libjson-c-dev libpth-dev libasound2-dev \ | |
| libwebsockets-dev pkg-config build-essential | |
| - name: Install BLAS/LAPACK (not cached due to symlink issues) | |
| run: sudo apt-get install -y libblas-dev liblapack-dev | |
| # Default CFLAGS (-O2 -DNDEBUG) disables HAVE_DEBUGLOG in src/config.h, so PIANOBAR_DEBUG | |
| # has no effect. PR builds omit NDEBUG so debug logging is compiled in; use e.g. | |
| # PIANOBAR_DEBUG=6 ./pianobar at runtime. | |
| - name: Build pianobar (debug logging for PRs) | |
| if: github.event_name == 'pull_request' | |
| run: make CFLAGS="-g -O0" | |
| - name: Build pianobar (release on main) | |
| if: github.event_name != 'pull_request' | |
| run: make |