Skip to content

dep: update vendored sqlite to 3.45.0 (1-7-stable) #548

dep: update vendored sqlite to 3.45.0 (1-7-stable)

dep: update vendored sqlite to 3.45.0 (1-7-stable) #548

Workflow file for this run

# for Actions OS info, see https://github.com/actions/runner-images#available-images
name: test suite
concurrency:
group: "${{github.workflow}}-${{github.ref}}"
cancel-in-progress: true
on:
workflow_dispatch:
schedule:
- cron: "0 8 * * 3" # At 08:00 on Wednesday # https://crontab.guru/#0_8_*_*_3
push:
branches:
- master
- v*.*.x
tags:
- v*.*.*
pull_request:
types: [opened, synchronize]
branches:
- '*'
jobs:
sqlite3:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
ruby: ["3.3", "3.2", "3.1", "3.0", "2.7"]
lib: [system, packaged]
include:
- { os: ubuntu-latest, ruby: truffleruby, lib: packaged }
- { os: windows-latest, ruby: ucrt, lib: system }
- { os: windows-latest, ruby: mswin, lib: system }
runs-on: ${{matrix.os}}
steps:
- if: matrix.os == 'windows-latest'
name: configure git crlf
run: |
git config --system core.autocrlf false
git config --system core.eol lf
- uses: actions/checkout@v4
- uses: ruby/setup-ruby-pkgs@v1
with:
ruby-version: ${{matrix.ruby}}
bundler-cache: true
apt-get: libsqlite3-dev
brew: sqlite3 pkg-config
mingw: sqlite3
vcpkg: sqlite3
- if: matrix.lib == 'packaged'
uses: actions/cache@v3
with:
path: ports
key: ports-${{matrix.os}}-${{hashFiles('ext/sqlite3/extconf.rb','dependencies.yml')}}
- run: bundle exec rake compile -- --disable-system-libraries
if: matrix.lib == 'packaged'
- run: bundle exec rake compile -- --enable-system-libraries
if: matrix.lib == 'system' && !startsWith(matrix.os, 'macos')
- run: bundle exec rake compile -- --enable-system-libraries --with-opt-dir=$(brew --prefix sqlite3)
if: matrix.lib == 'system' && startsWith(matrix.os, 'macos')
- run: bundle exec rake test
old_sqlite3:
runs-on: ubuntu-latest
container:
image: ruby:2.7.5-buster # old enough to not support SQLITE_DBCONFIG_DQS_DDL
steps:
- uses: actions/checkout@v4
- run: bundle install
- run: bundle exec rake compile -- --enable-system-libraries
- run: bundle exec rake test
# reported at https://github.com/sparklemotion/sqlite3-ruby/issues/354
# TODO remove once https://github.com/flavorjones/mini_portile/issues/118 is fixed
fedora:
runs-on: ubuntu-latest
container:
image: fedora:35
steps:
- run: |
dnf group install -y "C Development Tools and Libraries"
dnf install -y ruby ruby-devel libyaml-devel
- uses: actions/checkout@v4
- run: bundle install
- run: bundle exec rake compile -- --disable-system-libraries
- run: bundle exec rake test
sqlcipher:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
ruby: ["3.3", "2.7"] # oldest and newest
include:
- { os: windows-latest, ruby: mingw }
- { os: windows-latest, ruby: mswin }
runs-on: ${{matrix.os}}
steps:
- if: matrix.os == 'windows-latest'
name: configure git crlf
run: |
git config --system core.autocrlf false
git config --system core.eol lf
- uses: actions/checkout@v4
- uses: ruby/setup-ruby-pkgs@v1
with:
ruby-version: ${{matrix.ruby}}
bundler-cache: true
apt-get: libsqlcipher-dev
brew: sqlcipher pkg-config
mingw: sqlcipher
vcpkg: sqlcipher
- run: bundle exec rake compile -- --with-sqlcipher
- run: bundle exec rake test
valgrind:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby-pkgs@v1
with:
ruby-version: "3.3"
bundler-cache: true
apt-get: libsqlite3-dev valgrind
- run: bundle install
- run: bundle exec rake compile
- run: bundle exec rake test:valgrind