diff --git a/.travis.yml b/.travis.yml index b187287524..a756091afb 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,7 +29,7 @@ language: ruby rvm: - - 2.5.1 + - 2.6.1 sudo: required dist: trusty diff --git a/Dockerfile b/Dockerfile index 7647a3228a..f8a98bdf0e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:2.5-stretch +FROM ruby:2.6-stretch ENV NODE_VERSION="10.15.0" ENV BUNDLER_VERSION="2.0.1" diff --git a/Gemfile b/Gemfile index 35880f3691..7dffdec299 100644 --- a/Gemfile +++ b/Gemfile @@ -28,7 +28,7 @@ source 'https://rubygems.org' -ruby '~> 2.5.1' +ruby '~> 2.6.1' gem 'actionpack-xml_parser', '~> 2.0.0' gem 'activemodel-serializers-xml', '~> 1.0.1' @@ -229,7 +229,7 @@ group :test do gem 'fuubar', '~> 2.3.2' gem 'timecop', '~> 0.9.0' - gem 'webmock', '~> 3.1.0', require: false + gem 'webmock', '~> 3.5.0', require: false gem 'equivalent-xml', '~> 0.6' gem 'json_spec', '~> 1.1.4' diff --git a/Gemfile.lock b/Gemfile.lock index 266e4ad2f3..7844aeb18d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -464,7 +464,7 @@ GEM rack-accept virtus (>= 1.0.0) gravatar_image_tag (1.2.0) - hashdiff (0.3.7) + hashdiff (0.3.8) hashery (2.1.2) hashie (3.6.0) health_check (3.0.0) @@ -862,7 +862,7 @@ GEM webfinger (1.1.0) activesupport httpclient (>= 2.4) - webmock (3.1.0) + webmock (3.5.1) addressable (>= 2.3.6) crack (>= 0.3.2) hashdiff @@ -1028,11 +1028,11 @@ DEPENDENCIES unicorn-worker-killer warden (~> 1.2) warden-basic_auth (~> 0.2.1) - webmock (~> 3.1.0) + webmock (~> 3.5.0) will_paginate (~> 3.1.0) RUBY VERSION - ruby 2.5.1p57 + ruby 2.6.1p33 BUNDLED WITH 2.0.1 diff --git a/docs/development/development-environment-osx.md b/docs/development/development-environment-osx.md index 7845b6a7b7..b304907bab 100644 --- a/docs/development/development-environment-osx.md +++ b/docs/development/development-environment-osx.md @@ -13,9 +13,9 @@ If you find any bugs or you have any recommendations for improving this tutorial We'll use [homebrew](https://brew.sh/) to install most of our requirements. Please install that first using the guide on their homepage. -## Install Ruby 2.5. +## Install Ruby 2.6. -Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install Ruby 2.5.0. +Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install Ruby 2.6.1. **Install rbenv and ruby-build** rbenv is a ruby version manager that lets you quickly switch between ruby versions. @@ -28,23 +28,23 @@ $ brew install rbenv ruby-build $ rbenv init ``` -**Installing ruby-2.5** +**Installing ruby-2.6** -With both installed, we can now install the actual ruby version 2.5. You can check available ruby versions with `rbenv install --list`. -At the time of this writing, the latest stable version is `2.5.0`, which we also require. +With both installed, we can now install the actual ruby version 2.6. You can check available ruby versions with `rbenv install --list`. +At the time of this writing, the latest stable version is `2.6.1`, which we also require. We suggest you install the version we require in the [Gemfile](https://github.com/opf/openproject/blob/dev/Gemfile). Search for the `ruby '~> X.Y.Z'` line and install that version. ```bash # Install the required version as read from the Gemfile -[dev@ubuntu]# rbenv install 2.5.0 +[dev@ubuntu]# rbenv install 2.6.1 ``` This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to globally activate this version ```bash -[dev@ubuntu]# rbenv global 2.5.0 +[dev@ubuntu]# rbenv global 2.6.1 ``` You also need to install [bundler](https://github.com/bundler/bundler/), the ruby gem bundler. @@ -108,13 +108,13 @@ You should now have an active ruby and node installation. Verify that it works w ```bash $ ruby --version -ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin16] +ruby 2.6.1p33 (2019-01-30 revision 66950) [x86_64-darwin16] $ bundler --version -Bundler version 1.16.1 +Bundler version 2.0.1 $ npm --version -3.10.10 +6.7.0 ``` # Install OpenProject diff --git a/docs/development/development-environment-ubuntu.md b/docs/development/development-environment-ubuntu.md index 4a542f00a3..108c82ac21 100644 --- a/docs/development/development-environment-ubuntu.md +++ b/docs/development/development-environment-ubuntu.md @@ -20,9 +20,9 @@ We need an active Ruby and Node JS environment to run OpenProject. To this end, [dev@ubuntu]# sudo apt-get install git curl build-essential zlib1g-dev libyaml-dev libssl-dev libmysqlclient-dev libpq-dev libsqlite3-dev libreadline-dev libffi6 ``` -## Install Ruby 2.5. +## Install Ruby 2.6. -Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install Ruby 2.5. +Use [rbenv](https://github.com/rbenv/rbenv) and [ruby-build](https://github.com/rbenv/ruby-build#readme) to install Ruby 2.6. **Install rbenv** @@ -51,23 +51,23 @@ ruby-build is an addon to rbenv that installs ruby versions [dev@ubuntu]# git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build ``` -**Installing ruby-2.5** +**Installing ruby-2.6** -With both installed, we can now install the actual ruby version 2.5. You can check available ruby versions with `rbenv install --list`. -At the time of this writing, the latest stable version is `2.5.0`, which we also require. +With both installed, we can now install the actual ruby version 2.6. You can check available ruby versions with `rbenv install --list`. +At the time of this writing, the latest stable version is `2.6.1`, which we also require. We suggest you install the version we require in the [Gemfile](https://github.com/opf/openproject/blob/dev/Gemfile). Search for the `ruby '~> X.Y.Z'` line and install that version. ```bash # Install the required version as read from the Gemfile -[dev@ubuntu]# rbenv install 2.5.1 +[dev@ubuntu]# rbenv install 2.6.1 ``` This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to globally activate this version ```bash -[dev@ubuntu]# rbenv global 2.5.1 +[dev@ubuntu]# rbenv global 2.6.1 ``` You also need to install [bundler](https://github.com/bundler/bundler/), the ruby gem bundler. @@ -144,13 +144,13 @@ You should now have an active ruby and node installation. Verify that it works w ```bash [dev@ubuntu]# ruby --version -ruby 2.5.1p57 (2017-12-25 revision 61468) [x86_64-darwin16] +ruby 2.6.1p33 (2019-01-30 revision 66950) [x86_64-darwin16] [dev@ubuntu]# bundler --version -Bundler version 1.16.1 +Bundler version 2.0.1 [dev@ubuntu]# npm --version -6.4.1 +6.7.0 ``` # Install OpenProject diff --git a/docs/installation/manual/README.md b/docs/installation/manual/README.md index 2cbbe2dcee..8e2b01bb38 100644 --- a/docs/installation/manual/README.md +++ b/docs/installation/manual/README.md @@ -156,16 +156,16 @@ time to finish. [openproject@host] source ~/.profile [openproject@host] git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build -[openproject@host] rbenv install 2.5.3 +[openproject@host] rbenv install 2.6.1 [openproject@host] rbenv rehash -[openproject@host] rbenv global 2.5.3 +[openproject@host] rbenv global 2.6.1 ``` To check our Ruby installation we run `ruby --version`. It should output something very similar to: ``` -ruby 2.5.3pXYZ (....) [x86_64-linux] +ruby 2.6.1pXYZ (....) [x86_64-linux] ``` ## Installation of Node diff --git a/docs/installation/system-requirements.md b/docs/installation/system-requirements.md index 829af457a4..34ba08be8f 100644 --- a/docs/installation/system-requirements.md +++ b/docs/installation/system-requirements.md @@ -25,7 +25,7 @@ provide any official support for them. ### Dependencies -* __Runtime:__ [Ruby](https://www.ruby-lang.org/en/) Version = 2.5.x +* __Runtime:__ [Ruby](https://www.ruby-lang.org/en/) Version = 2.6.x * __Webserver:__ [Apache](http://httpd.apache.org/) or [nginx](http://nginx.org/en/docs/) * __Application server:__ [Phusion Passenger](https://www.phusionpassenger.com/) diff --git a/modules/costs/spec/features/work_package_filter_spec.rb b/modules/costs/spec/features/work_package_filter_spec.rb index ec2a7f3280..dfa4f77c2a 100644 --- a/modules/costs/spec/features/work_package_filter_spec.rb +++ b/modules/costs/spec/features/work_package_filter_spec.rb @@ -73,6 +73,8 @@ describe 'Filter by budget', js: true do wp_table.save_as('Some query name') + wp_table.expect_and_dismiss_notification message: 'Successful creation.' + filters.remove_filter 'costObject' wp_table.expect_work_package_listed work_package_with_budget, work_package_without_budget diff --git a/spec/support/webmock.rb b/spec/support/webmock.rb index 95428bf05c..02543c93a8 100644 --- a/spec/support/webmock.rb +++ b/spec/support/webmock.rb @@ -29,10 +29,12 @@ require 'webmock/rspec' RSpec.configure do |config| - # As we're using WebMock to mock and test remote HTTP requests, - # we require specs to selectively enable mocking of Net::HTTP et al. when the example desires. - # Otherwise, all requests are being mocked by default. - WebMock.disable! + config.before(:suite) do + # As we're using WebMock to mock and test remote HTTP requests, + # we require specs to selectively enable mocking of Net::HTTP et al. when the example desires. + # Otherwise, all requests are being mocked by default. + WebMock.disable! + end # When we enable webmock, no connections other than stubbed ones are allowed. # We will exempt local connections from this block, since selenium etc.