Skip to content

Commit

Permalink
Add AR 6.0 support, drop AR < 5.2 and Ruby < 2.5
Browse files Browse the repository at this point in the history
  • Loading branch information
urkle committed May 13, 2022
1 parent 79e789b commit 6288325
Show file tree
Hide file tree
Showing 25 changed files with 199 additions and 118 deletions.
119 changes: 119 additions & 0 deletions .github/workflows/prs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
# This file was auto-generated by the schema_dev tool, based on the data in
# ./schema_dev.yml
# Please do not edit this file; any changes will be overwritten next time
# schema_dev gets run.
---
name: CI PR Builds
'on':
push:
branches:
- master
pull_request:
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ruby:
- '2.5'
- '2.7'
- '3.0'
activerecord:
- '5.2'
- '6.0'
db:
- sqlite3
- skip
dbversion:
- skip
exclude:
- ruby: '3.0'
activerecord: '5.2'
- db: skip
dbversion: skip
include:
- ruby: '2.5'
activerecord: '5.2'
db: postgresql
dbversion: '9.6'
- ruby: '2.5'
activerecord: '6.0'
db: postgresql
dbversion: '9.6'
- ruby: '2.7'
activerecord: '5.2'
db: postgresql
dbversion: '9.6'
- ruby: '2.7'
activerecord: '6.0'
db: postgresql
dbversion: '9.6'
- ruby: '3.0'
activerecord: '6.0'
db: postgresql
dbversion: '9.6'
env:
BUNDLE_GEMFILE: "${{ github.workspace }}/gemfiles/activerecord-${{ matrix.activerecord }}/Gemfile.${{ matrix.db }}"
POSTGRESQL_DB_HOST: 127.0.0.1
POSTGRESQL_DB_USER: schema_plus_test
POSTGRESQL_DB_PASS: database
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: "${{ matrix.ruby }}"
bundler-cache: true
- name: Run bundle update
run: bundle update
- name: Start Postgresql
if: matrix.db == 'postgresql'
run: |
docker run --rm --detach \
-e POSTGRES_USER=$POSTGRESQL_DB_USER \
-e POSTGRES_PASSWORD=$POSTGRESQL_DB_PASS \
-p 5432:5432 \
--health-cmd "pg_isready -q" \
--health-interval 5s \
--health-timeout 5s \
--health-retries 5 \
--name database postgres:${{ matrix.dbversion }}
- name: Wait for database to start
if: "(matrix.db == 'postgresql' || matrix.db == 'mysql2')"
run: |
COUNT=0
ATTEMPTS=20
until [[ $COUNT -eq $ATTEMPTS ]]; do
[ "$(docker inspect -f {{.State.Health.Status}} database)" == "healthy" ] && break
echo $(( COUNT++ )) > /dev/null
sleep 2
done
- name: Create testing database
if: "(matrix.db == 'postgresql' || matrix.db == 'mysql2')"
run: bundle exec rake create_ci_database
- name: Run tests
run: bundle exec rake spec
- name: Shutdown database
if: always() && (matrix.db == 'postgresql' || matrix.db == 'mysql2')
run: docker stop database
- name: Coveralls Parallel
if: "${{ !env.ACT }}"
uses: coverallsapp/github-action@master
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
flag-name: run-${{ matrix.ruby }}-${{ matrix.activerecord }}-${{ matrix.db }}-${{ matrix.dbversion }}
parallel: true
finish:
needs: test
runs-on: ubuntu-latest
steps:
- name: Coveralls Finished
if: "${{ !env.ACT }}"
uses: coverallsapp/github-action@master
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
parallel-finished: true
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
/tmp
/pkg
/Gemfile.local
/.idea

.byebug_history
*.lock
Expand Down
20 changes: 20 additions & 0 deletions .simplecov
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# frozen_string_literal: true

SimpleCov.configure do
enable_coverage :branch
add_filter '/spec/'

add_group 'Binaries', '/bin/'
add_group 'Libraries', '/lib/'

if ENV['CI']
require 'simplecov-lcov'

SimpleCov::Formatter::LcovFormatter.config do |c|
c.report_with_single_file = true
c.single_report_path = 'coverage/lcov.info'
end

formatter SimpleCov::Formatter::LcovFormatter
end
end
23 changes: 0 additions & 23 deletions .travis.yml

This file was deleted.

17 changes: 8 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
[![Gem Version](https://badge.fury.io/rb/schema_plus_default_expr.svg)](http://badge.fury.io/rb/schema_plus_default_expr)
[![Build Status](https://secure.travis-ci.org/SchemaPlus/schema_plus_default_expr.svg)](http://travis-ci.org/SchemaPlus/schema_plus_default_expr)
[![Coverage Status](https://img.shields.io/coveralls/SchemaPlus/schema_plus_default_expr.svg)](https://coveralls.io/r/SchemaPlus/schema_plus_default_expr)
[![Dependency Status](https://gemnasium.com/lomba/schema_plus_default_expr.svg)](https://gemnasium.com/SchemaPlus/schema_plus_default_expr)
[![Build Status](https://github.com/SchemaPlus/schema_plus_default_expr/actions/workflows/prs.yml/badge.svg)](https://github.com/SchemaPlus/schema_plus_default_expr/actions)
[![Coverage Status](https://coveralls.io/repos/github/SchemaPlus/schema_plus_default_expr/badge.svg?branch=master)](https://coveralls.io/github/SchemaPlus/schema_plus_default_expr?branch=master)

# SchemaPlus::DefaultExpr

Expand Down Expand Up @@ -30,10 +29,11 @@ SchemaPlus::DefaultExpr is tested on:

<!-- SCHEMA_DEV: MATRIX - begin -->
<!-- These lines are auto-generated by schema_dev based on schema_dev.yml -->
* ruby **2.3.1** with activerecord **4.2**, using **sqlite3** and **postgresql**
* ruby **2.3.1** with activerecord **5.0**, using **sqlite3** and **postgresql**
* ruby **2.3.1** with activerecord **5.1**, using **sqlite3** and **postgresql**
* ruby **2.3.1** with activerecord **5.2**, using **sqlite3** and **postgresql**
* ruby **2.5** with activerecord **5.2**, using **sqlite3** and **postgresql:9.6**
* ruby **2.5** with activerecord **6.0**, using **sqlite3** and **postgresql:9.6**
* ruby **2.7** with activerecord **5.2**, using **sqlite3** and **postgresql:9.6**
* ruby **2.7** with activerecord **6.0**, using **sqlite3** and **postgresql:9.6**
* ruby **3.0** with activerecord **6.0**, using **sqlite3** and **postgresql:9.6**

<!-- SCHEMA_DEV: MATRIX - end -->

Expand Down Expand Up @@ -97,7 +97,7 @@ Some things to know about to help you develop and test:
* **schema_dev**: SchemaPlus::DefaultExpr uses [schema_dev](https://github.com/SchemaPlus/schema_dev) to
facilitate running rspec tests on the matrix of ruby, activerecord, and database
versions that the gem supports, both locally and on
[travis-ci](http://travis-ci.org/SchemaPlus/schema_plus_default_expr)
[github actions](https://github.com/SchemaPlus/schema_plus_default_expr/actions)

To to run rspec locally on the full matrix, do:

Expand All @@ -109,7 +109,6 @@ Some things to know about to help you develop and test:
The matrix of configurations is specified in `schema_dev.yml` in
the project root.


<!-- SCHEMA_DEV: TEMPLATE USES SCHEMA_DEV - end -->

<!-- SCHEMA_DEV: TEMPLATE USES SCHEMA_PLUS_CORE - begin -->
Expand Down
2 changes: 1 addition & 1 deletion gemfiles/Gemfile.base
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
source 'https://rubygems.org'
gemspec :path => File.expand_path('..', __FILE__)
gemspec path: File.expand_path('..', __FILE__)

File.exist?(gemfile_local = File.expand_path('../Gemfile.local', __FILE__)) and eval File.read(gemfile_local), binding, gemfile_local
3 changes: 0 additions & 3 deletions gemfiles/activerecord-4.2/Gemfile.base

This file was deleted.

10 changes: 0 additions & 10 deletions gemfiles/activerecord-4.2/Gemfile.postgresql

This file was deleted.

10 changes: 0 additions & 10 deletions gemfiles/activerecord-4.2/Gemfile.sqlite3

This file was deleted.

3 changes: 0 additions & 3 deletions gemfiles/activerecord-5.0/Gemfile.base

This file was deleted.

10 changes: 0 additions & 10 deletions gemfiles/activerecord-5.0/Gemfile.postgresql

This file was deleted.

10 changes: 0 additions & 10 deletions gemfiles/activerecord-5.0/Gemfile.sqlite3

This file was deleted.

3 changes: 0 additions & 3 deletions gemfiles/activerecord-5.1/Gemfile.base

This file was deleted.

10 changes: 0 additions & 10 deletions gemfiles/activerecord-5.1/Gemfile.postgresql

This file was deleted.

3 changes: 2 additions & 1 deletion gemfiles/activerecord-5.2/Gemfile.base
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
eval File.read File.expand_path('../../Gemfile.base', __FILE__)
base_gemfile = File.expand_path('../../Gemfile.base', __FILE__)
eval File.read(base_gemfile)

gem "activerecord", ">= 5.2.0.beta0", "< 5.3"
4 changes: 2 additions & 2 deletions gemfiles/activerecord-5.2/Gemfile.postgresql
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
require "pathname"
eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
base_gemfile = File.expand_path('../Gemfile.base', __FILE__)
eval File.read(base_gemfile), binding, base_gemfile

platform :ruby do
gem "pg"
Expand Down
6 changes: 3 additions & 3 deletions gemfiles/activerecord-5.2/Gemfile.sqlite3
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
require "pathname"
eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
base_gemfile = File.expand_path('../Gemfile.base', __FILE__)
eval File.read(base_gemfile), binding, base_gemfile

platform :ruby do
gem "sqlite3"
end

platform :jruby do
gem 'activerecord-jdbcsqlite3-adapter', '>=1.3.0.beta2'
end
end
4 changes: 4 additions & 0 deletions gemfiles/activerecord-6.0/Gemfile.base
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
base_gemfile = File.expand_path('../../Gemfile.base', __FILE__)
eval File.read(base_gemfile)

gem "activerecord", ">= 6.0", "< 6.1"
10 changes: 10 additions & 0 deletions gemfiles/activerecord-6.0/Gemfile.postgresql
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
base_gemfile = File.expand_path('../Gemfile.base', __FILE__)
eval File.read(base_gemfile), binding, base_gemfile

platform :ruby do
gem "pg"
end

platform :jruby do
gem 'activerecord-jdbcpostgresql-adapter'
end
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
require "pathname"
eval(Pathname.new(__FILE__).dirname.join("Gemfile.base").read, binding)
base_gemfile = File.expand_path('../Gemfile.base', __FILE__)
eval File.read(base_gemfile), binding, base_gemfile

platform :ruby do
gem "sqlite3"
end

platform :jruby do
gem 'activerecord-jdbcsqlite3-adapter', '>=1.3.0.beta2'
end
end
8 changes: 4 additions & 4 deletions schema_dev.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
ruby:
- 2.3.1
- 2.5
- 2.7
- 3.0
activerecord:
- 4.2
- 5.0
- 5.1
- 5.2
- 6.0
db:
- sqlite3
- postgresql
14 changes: 7 additions & 7 deletions schema_plus_default_expr.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,14 @@ Gem::Specification.new do |gem|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
gem.require_paths = ["lib"]

gem.add_dependency "activerecord", ">= 4.2", "< 6.0"
gem.add_dependency "schema_plus_core"
gem.required_ruby_version = ">= 2.5.0"

gem.add_dependency "activerecord", ">= 5.2", "< 6.1"
gem.add_dependency "schema_plus_core", '~> 3.0.0'
gem.add_dependency "its-it", "~> 1.2"

gem.add_development_dependency "bundler", "~> 1.7"
gem.add_development_dependency "rake", "~> 10.0"
gem.add_development_dependency "bundler"
gem.add_development_dependency "rake", "~> 13.0"
gem.add_development_dependency "rspec", "~> 3.0"
gem.add_development_dependency "schema_dev", "~> 3.6"
gem.add_development_dependency "simplecov"
gem.add_development_dependency "simplecov-gem-profile"
gem.add_development_dependency "schema_dev", "~> 4.1"
end
Loading

0 comments on commit 6288325

Please sign in to comment.