sudo: required

language: ruby

services:
  - docker

before_install:
  - docker images
  - rake ci:docker:before_install

install: 
  - rake ci:docker:install
  - docker images

after_install:
  - rake ci:docker:install
  - docker images

script: rake ci:docker:script

matrix:
  include:
    - name: "Ruby trunk-nightly"
      env:
        - ruby_version=trunk-nightly
    - name: "Ruby 2.6"
      env:
        - ruby_version=2.6.1
    - name: "Ruby 2.5"
      env:
        - ruby_version=2.5.3
    - name: "Ruby 2.4"
      env:
        - ruby_version=2.4.5
    - name: "Ruby 2.3"
      env:
        - ruby_version=2.3.8

sudo: required

language: ruby

services:
  - docker

before_install:
  - docker images
  - rake ci:docker:before_install

install: 
  - rake ci:docker:install
  - docker images

after_install:
  - rake ci:docker:install
  - docker images

script: rake ci:docker:script

matrix:
  include:
    - name: "Ruby trunk-nightly"
      env:
        - ruby_version=trunk-nightly
    - name: "Ruby 2.6"
      env:
        - ruby_version=2.6.1
    - name: "Ruby 2.5"
      env:
        - ruby_version=2.5.3
    - name: "Ruby 2.4"
      env:
        - ruby_version=2.4.5
    - name: "Ruby 2.3"
      env:
        - ruby_version=2.3.8

  allow_failures:
    - name: "Ruby trunk-nightly"

Put ruby-trunk in allow_failures, tentatively
Put ruby-trunk in allow_failures, tentatively

IRuby kernel occurrs infinite recursion by the following way:

- IRuby::Kernel#run
- IRuby::Kernel#send_status
- IRuby::Session#send
- IRuby::SessionSerialize#serialize
- MultiJson.dump
- MultiJson::Adapter#dump
- MultiJson::Adapter#cached_dump_options
- MultiJson::OptionsCache.fetch
- warning by `&Proc.new` in MultiJson::OptionsCache.fetch
- IRuby::OStream#write called by the previous warning
- IRuby::Session#send
