chore(release): bump version to 2.5.0 #134
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: Full Cross-Platform Matrix | |
| on: | |
| push: | |
| branches: [main] | |
| schedule: | |
| - cron: '0 0 * * *' # Nightly | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| build-matrix: | |
| timeout-minutes: 30 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - os: ubuntu-latest | |
| target: --linux | |
| extra-deps: sudo apt-get update -qq && sudo apt-get install -y fakeroot dpkg | |
| # better-sqlite3 >= v13 ships prebuilt binaries for all platforms, | |
| # so no native cross-compilation is needed. Both builds run on the | |
| # same ARM64 runner; electron-builder packages the correct prebuild | |
| # and afterPack.js validates the architecture. | |
| - os: macos-latest | |
| target: --mac --x64 | |
| extra-deps: echo "No extra deps needed" | |
| - os: macos-latest | |
| target: --mac --arm64 | |
| extra-deps: echo "No extra deps needed" | |
| - os: windows-latest | |
| target: --win | |
| extra-deps: echo "No extra deps needed" | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
| - name: Set up Node.js 22 | |
| uses: actions/setup-node@39370e3970a6d050c480ffad4ff0ed4d3fdee5af # v4.1.0 | |
| with: | |
| node-version: '22' | |
| cache: 'npm' | |
| cache-dependency-path: | | |
| package-lock.json | |
| frontend/package-lock.json | |
| - name: Install platform dependencies | |
| run: ${{ matrix.extra-deps }} | |
| - name: Install npm dependencies | |
| run: npm ci | |
| env: | |
| CSC_IDENTITY_AUTO_DISCOVERY: false | |
| - name: Build frontend | |
| run: npm run build:frontend | |
| env: | |
| NEXT_TELEMETRY_DISABLED: 1 | |
| - name: Compile main process | |
| run: npm run build | |
| - name: Run full platform test suite | |
| run: npm test | |
| - name: Package (unpacked directory, no installer) | |
| run: npx electron-builder ${{ matrix.target }} --dir --publish never | |
| env: | |
| CSC_IDENTITY_AUTO_DISCOVERY: false | |
| - name: Upload build artifacts | |
| uses: actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0 | |
| with: | |
| name: flo-${{ matrix.os }}-${{ strategy.job-index }}-${{ github.run_number }} | |
| path: release/ | |
| retention-days: 7 |