|
1 | 1 | # frozen_string_literal: true
|
2 | 2 |
|
3 |
| -require 'openssl' |
4 |
| -source 'https://rubygems.org' |
| 3 | +source "https://rubygems.org" |
5 | 4 |
|
6 | 5 | git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
7 | 6 |
|
8 | 7 | gemspec
|
9 | 8 |
|
| 9 | +gem "bcrypt" |
| 10 | +gem "pg", ">= 0.18.0" |
10 | 11 | gem "sqlite3", "~> 1.4"
|
11 |
| -gem "pg", ">= 0.18.0" |
| 12 | +gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby] |
12 | 13 |
|
13 |
| -gem 'bcrypt' |
14 |
| -gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] |
15 |
| - |
16 |
| -if RbConfig::CONFIG["host_os"] =~ /darwin/ |
17 |
| - gem 'terminal-notifier-guard' |
18 |
| -end |
19 |
| - |
20 |
| -if ENV['RAILS_SOURCE'] |
21 |
| - gemspec path: ENV['RAILS_SOURCE'] |
| 14 | +if ENV["RAILS_SOURCE"] |
| 15 | + gemspec path: ENV["RAILS_SOURCE"] |
22 | 16 | else
|
23 | 17 | # Need to get rails source because the gem doesn't include tests
|
24 |
| - version = ENV['RAILS_VERSION'] || begin |
25 |
| - require 'net/http' |
26 |
| - require 'yaml' |
27 |
| - spec = eval(File.read('activerecord-sqlserver-adapter.gemspec')) |
28 |
| - ver = spec.dependencies.detect{ |d|d.name == 'activerecord' }.requirement.requirements.first.last.version |
29 |
| - major, minor, tiny, pre = ver.split('.') |
30 |
| - if !pre |
31 |
| - uri = URI.parse "https://rubygems.org/api/v1/versions/activerecord.yaml" |
| 18 | + version = ENV["RAILS_VERSION"] || begin |
| 19 | + require "openssl" |
| 20 | + require "net/http" |
| 21 | + require "yaml" |
| 22 | + |
| 23 | + spec = eval(File.read("activerecord-sqlserver-adapter.gemspec")) |
| 24 | + ver = spec.dependencies.detect{ |d|d.name == "activerecord" }.requirement.requirements.first.last.version |
| 25 | + major, minor, tiny, pre = ver.split(".") |
| 26 | + |
| 27 | + if pre |
| 28 | + ver |
| 29 | + else |
| 30 | + uri = URI.parse("https://rubygems.org/api/v1/versions/activerecord.yaml") |
32 | 31 | http = Net::HTTP.new(uri.host, uri.port)
|
33 | 32 | http.use_ssl = true
|
34 | 33 | http.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
35 |
| - YAML.load(http.request(Net::HTTP::Get.new(uri.request_uri)).body).select do |data| |
36 |
| - a, b, c = data['number'].split('.') |
37 |
| - !data['prerelease'] && major == a && (minor.nil? || minor == b) |
38 |
| - end.first['number'] |
39 |
| - else |
40 |
| - ver |
| 34 | + YAML.load(http.request(Net::HTTP::Get.new(uri.request_uri)).body).find do |data| |
| 35 | + a, b, c = data["number"].split(".") |
| 36 | + !data["prerelease"] && major == a && (minor.nil? || minor == b) |
| 37 | + end["number"] |
41 | 38 | end
|
42 | 39 | end
|
43 |
| - gem 'rails', github: "rails/rails", tag: "v#{version}" |
44 |
| -end |
45 |
| - |
46 |
| -if ENV['AREL'] |
47 |
| - gem 'arel', path: ENV['AREL'] |
| 40 | + gem "rails", github: "rails/rails", tag: "v#{version}" |
48 | 41 | end
|
49 | 42 |
|
50 | 43 | group :tinytds do
|
51 |
| - if ENV['TINYTDS_SOURCE'] |
52 |
| - gem 'tiny_tds', path: ENV['TINYTDS_SOURCE'] |
53 |
| - elsif ENV['TINYTDS_VERSION'] |
54 |
| - gem 'tiny_tds', ENV['TINYTDS_VERSION'] |
| 44 | + if ENV["TINYTDS_SOURCE"] |
| 45 | + gem "tiny_tds", path: ENV["TINYTDS_SOURCE"] |
| 46 | + elsif ENV["TINYTDS_VERSION"] |
| 47 | + gem "tiny_tds", ENV["TINYTDS_VERSION"] |
55 | 48 | else
|
56 |
| - gem 'tiny_tds' |
| 49 | + gem "tiny_tds" |
57 | 50 | end
|
58 | 51 | end
|
59 | 52 |
|
60 | 53 | group :development do
|
61 |
| - gem 'byebug', platform: [:mri, :mingw, :x64_mingw] |
62 |
| - gem 'mocha' |
63 |
| - gem 'minitest-spec-rails' |
| 54 | + gem "pry-byebug", platform: [:mri, :mingw, :x64_mingw] |
| 55 | + gem "mocha" |
| 56 | + gem "minitest-spec-rails" |
64 | 57 | end
|
65 | 58 |
|
66 | 59 | group :guard do
|
67 |
| - gem 'guard' |
68 |
| - gem 'guard-minitest' |
| 60 | + gem "guard" |
| 61 | + gem "guard-minitest" |
| 62 | + gem "terminal-notifier-guard" if RbConfig::CONFIG["host_os"] =~ /darwin/ |
69 | 63 | end
|
0 commit comments