ridgepole 1.1.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +4 -1
- data/Appraisals +3 -12
- data/CHANGELOG.md +16 -1
- data/README.md +12 -10
- data/{docker-compose.yml → compose.yml} +2 -8
- data/gemfiles/activerecord_6.0.gemfile +1 -1
- data/gemfiles/activerecord_6.1.gemfile +1 -1
- data/gemfiles/activerecord_7.0.gemfile +1 -1
- data/lib/ridgepole/cli/config.rb +1 -1
- data/lib/ridgepole/delta.rb +42 -0
- data/lib/ridgepole/diff.rb +33 -0
- data/lib/ridgepole/dsl_parser/context.rb +15 -0
- data/lib/ridgepole/dsl_parser/table_definition.rb +41 -21
- data/lib/ridgepole/dsl_parser.rb +3 -3
- data/lib/ridgepole/version.rb +1 -1
- data/lib/ridgepole.rb +1 -1
- data/ridgepole.gemspec +2 -2
- metadata +6 -8
- data/gemfiles/activerecord_5.1.gemfile +0 -7
- data/gemfiles/activerecord_5.2.gemfile +0 -8
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f90fd48ae734b53cd516ac3006e2a3d0b2582c1ed3a2ed1eacccc8884a382bf0
|
|
4
|
+
data.tar.gz: 926c56a91a6e58a64fbbb46f44ca640983a9285e509ec5b3295aaa5b7d2317c3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d00a0d85d16b360912b06da4b26185cea444dc7de4f96cb388881f5859e8592852c3c2fba6797e68436aa4ee000bfd705e0edaea76fafb7333c1b9d81d38001b
|
|
7
|
+
data.tar.gz: b2a4beae21348b43a401af11448d922dbb1e40c8149ea0d7369d4bc4ff14fc10a6f468e1c2d660ad7fd31731d9661feca62c3a04165f8a9fd098c69b872a285d
|
data/.rubocop.yml
CHANGED
|
@@ -3,8 +3,9 @@ AllCops:
|
|
|
3
3
|
- "gemfiles/**/*"
|
|
4
4
|
- "omnibus-ridgepole/**/*"
|
|
5
5
|
- "vendor/bundle/**/*"
|
|
6
|
-
TargetRubyVersion: 2.
|
|
6
|
+
TargetRubyVersion: 2.7
|
|
7
7
|
NewCops: enable
|
|
8
|
+
SuggestExtensions: false
|
|
8
9
|
Bundler/OrderedGems:
|
|
9
10
|
Include:
|
|
10
11
|
- "Appraisals"
|
|
@@ -53,3 +54,5 @@ Lint/DuplicateBranch:
|
|
|
53
54
|
Enabled: false
|
|
54
55
|
Style/OptionalBooleanParameter:
|
|
55
56
|
Enabled: false
|
|
57
|
+
Gemspec/DevelopmentDependencies:
|
|
58
|
+
Enabled: false
|
data/Appraisals
CHANGED
|
@@ -1,22 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
appraise 'activerecord-5.1' do
|
|
4
|
-
gem 'activerecord', '~> 5.1.0'
|
|
5
|
-
end
|
|
6
|
-
|
|
7
|
-
appraise 'activerecord-5.2' do
|
|
8
|
-
gem 'activerecord', '~> 5.2.0'
|
|
9
|
-
gem 'mysql2', '~> 0.4.4'
|
|
10
|
-
end
|
|
11
|
-
|
|
12
3
|
appraise 'activerecord-6.0' do
|
|
13
|
-
gem 'activerecord', '~> 6.0.
|
|
4
|
+
gem 'activerecord', '~> 6.0.6'
|
|
14
5
|
end
|
|
15
6
|
|
|
16
7
|
appraise 'activerecord-6.1' do
|
|
17
|
-
gem 'activerecord', '~> 6.1.
|
|
8
|
+
gem 'activerecord', '~> 6.1.7'
|
|
18
9
|
end
|
|
19
10
|
|
|
20
11
|
appraise 'activerecord-7.0' do
|
|
21
|
-
gem 'activerecord', '~> 7.0.
|
|
12
|
+
gem 'activerecord', '~> 7.0.4'
|
|
22
13
|
end
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 1.
|
|
3
|
+
## 1.2
|
|
4
|
+
|
|
5
|
+
### 1.2.1 (2023/07/29)
|
|
6
|
+
|
|
7
|
+
* Support `create_enum` [pull#405](https://github.com/ridgepole/ridgepole/pull/405)
|
|
8
|
+
* Fix timestamps with index behavior [pull#428](https://github.com/ridgepole/ridgepole/pull/428)
|
|
9
|
+
* Fix broken `DEFAULT CURRENT_TIMESTAMP` spec [pull#420](https://github.com/ridgepole/ridgepole/pull/420)
|
|
10
|
+
* Add Ruby 3.2 to CI matrix [pull#419](https://github.com/ridgepole/ridgepole/pull/419)
|
|
11
|
+
|
|
12
|
+
### 1.2.0 (2022/09/24)
|
|
13
|
+
|
|
14
|
+
* Updated supported column types [pull#399](https://github.com/ridgepole/ridgepole/pull/399) [pull#400](https://github.com/ridgepole/ridgepole/pull/400)
|
|
15
|
+
* Support check constraint [pull#393](https://github.com/ridgepole/ridgepole/pull/393) [pull#397](https://github.com/ridgepole/ridgepole/pull/397)
|
|
16
|
+
* Drop suport Rails 5.x [pull#395](https://github.com/ridgepole/ridgepole/pull/395 )
|
|
17
|
+
|
|
18
|
+
## 1.1
|
|
4
19
|
|
|
5
20
|
### 1.1.0 (2022/06/18)
|
|
6
21
|
|
data/README.md
CHANGED
|
@@ -5,15 +5,17 @@ Ridgepole is a tool to manage DB schema.
|
|
|
5
5
|
It defines DB schema using [Rails DSL](http://guides.rubyonrails.org/migrations.html#types-of-schema-dumps), and updates DB schema according to DSL.
|
|
6
6
|
(like Chef/Puppet)
|
|
7
7
|
|
|
8
|
-
[](
|
|
9
|
-
[](https://badge.fury.io/rb/ridgepole)
|
|
9
|
+
[](https://github.com/ridgepole/ridgepole/actions)
|
|
10
|
+
[](https://coveralls.io/github/ridgepole/ridgepole?branch=1.2)
|
|
11
11
|
|
|
12
12
|
**Notice**
|
|
13
13
|
|
|
14
|
+
* Drop support ActiveRecord 5.x in ridgepole v1.2.0.
|
|
14
15
|
* Partitioning is no longer supported in ridgepole v1.1.0.
|
|
15
|
-
* ActiveRecord 7.x has some incompatible changes. If you get unintended differences in `datetime
|
|
16
|
-
* cf. https://github.com/ridgepole/ridgepole/issues/381
|
|
16
|
+
* ActiveRecord 7.x has some incompatible changes. If you get unintended differences in `datetime` columns consider changing `precision`:
|
|
17
|
+
* Add `precision: nil` for columns that previously had no `precision` specified (cf. https://github.com/ridgepole/ridgepole/issues/381)
|
|
18
|
+
* Remove `precision: 6` from columns that previously had `precision: 6` specified explicitly (cf. https://github.com/ridgepole/ridgepole/issues/406)
|
|
17
19
|
* For ActiveRecord 7.x series, please use AcriveRecord 7.0.2 or higher / Ridgepole 1.0.3 or higher.
|
|
18
20
|
* cf. https://github.com/ridgepole/ridgepole/pull/380
|
|
19
21
|
* ActiveRecord 6.1 is supported in ridgepole v0.9, but the ActiveRecord dump has been changed, so there is a difference between ActiveRecord 5.x/6.0 format.
|
|
@@ -323,12 +325,12 @@ Apply `Schemafile`
|
|
|
323
325
|
|
|
324
326
|
|
|
325
327
|
```sh
|
|
326
|
-
docker
|
|
328
|
+
docker compose up -d
|
|
327
329
|
bundle install
|
|
328
330
|
bundle exec appraisal install
|
|
329
331
|
bundle exec appraisal activerecord-7.0 rake
|
|
330
332
|
# POSTGRESQL=1 bundle exec appraisal activerecord-7.0 rake
|
|
331
|
-
#
|
|
333
|
+
# MYSQL80=1 bundle exec appraisal activerecord-7.0 rake
|
|
332
334
|
```
|
|
333
335
|
|
|
334
336
|
**Notice:** Ruby 2.6 or above/mysql-client/postgresql-client is required.
|
|
@@ -340,6 +342,6 @@ bundle exec appraisal activerecord-7.0 rake
|
|
|
340
342
|
|
|
341
343
|
## Example project
|
|
342
344
|
|
|
343
|
-
* https://github.com/
|
|
344
|
-
* https://github.com/
|
|
345
|
-
* https://github.com/
|
|
345
|
+
* https://github.com/winebarrel/ridgepole-example
|
|
346
|
+
* https://github.com/winebarrel/ridgepole-example/pull/1
|
|
347
|
+
* https://github.com/winebarrel/ridgepole-example/pull/2
|
|
@@ -1,15 +1,9 @@
|
|
|
1
|
-
version: "3.8"
|
|
2
1
|
services:
|
|
3
|
-
mysql:
|
|
4
|
-
image: "mysql:5.6"
|
|
5
|
-
ports:
|
|
6
|
-
- "13316:3306"
|
|
7
|
-
environment:
|
|
8
|
-
MYSQL_ROOT_PASSWORD: password
|
|
9
2
|
mysql57:
|
|
10
3
|
image: "mysql:5.7"
|
|
4
|
+
platform: linux/amd64
|
|
11
5
|
ports:
|
|
12
|
-
- "
|
|
6
|
+
- "13316:3306"
|
|
13
7
|
environment:
|
|
14
8
|
MYSQL_ROOT_PASSWORD: password
|
|
15
9
|
mysql80:
|
data/lib/ridgepole/cli/config.rb
CHANGED
data/lib/ridgepole/delta.rb
CHANGED
|
@@ -245,6 +245,12 @@ create_table(#{table_name.inspect}, #{inspect_options_include_default_proc(optio
|
|
|
245
245
|
end
|
|
246
246
|
end
|
|
247
247
|
|
|
248
|
+
unless (check_constraints = attrs[:check_constraints] || {}).empty?
|
|
249
|
+
check_constraints.each do |_, check_constraint_attrs|
|
|
250
|
+
append_add_check_constraint(table_name, check_constraint_attrs, buf, true)
|
|
251
|
+
end
|
|
252
|
+
end
|
|
253
|
+
|
|
248
254
|
buf.puts(<<-RUBY)
|
|
249
255
|
end
|
|
250
256
|
RUBY
|
|
@@ -315,6 +321,7 @@ execute "ALTER TABLE #{ActiveRecord::Base.connection.quote_table_name(table_name
|
|
|
315
321
|
primary_key_definition = attrs[:primary_key_definition] || {}
|
|
316
322
|
indices = attrs[:indices] || {}
|
|
317
323
|
foreign_keys = attrs[:foreign_keys] || {}
|
|
324
|
+
check_constraints = attrs[:check_constraints] || {}
|
|
318
325
|
table_options = attrs[:table_options]
|
|
319
326
|
table_charset = attrs[:table_charset]
|
|
320
327
|
table_collation = attrs[:table_collation]
|
|
@@ -330,6 +337,7 @@ execute "ALTER TABLE #{ActiveRecord::Base.connection.quote_table_name(table_name
|
|
|
330
337
|
end
|
|
331
338
|
|
|
332
339
|
append_change_foreign_keys(table_name, foreign_keys, pre_buf_for_fk, post_buf_for_fk, @options) unless foreign_keys.empty?
|
|
340
|
+
append_change_check_constraints(table_name, check_constraints, buf) unless check_constraints.empty?
|
|
333
341
|
|
|
334
342
|
if table_options || table_charset || table_collation
|
|
335
343
|
append_change_table_raw_options(table_name, table_options, table_charset, table_collation,
|
|
@@ -511,6 +519,40 @@ remove_foreign_key(#{table_name.inspect}, #{target})
|
|
|
511
519
|
RUBY
|
|
512
520
|
end
|
|
513
521
|
|
|
522
|
+
def append_change_check_constraints(table_name, delta, buf)
|
|
523
|
+
(delta[:delete] || {}).each do |_, attrs|
|
|
524
|
+
append_remove_check_constraint(table_name, attrs, buf)
|
|
525
|
+
end
|
|
526
|
+
|
|
527
|
+
(delta[:add] || {}).each do |_, attrs|
|
|
528
|
+
append_add_check_constraint(table_name, attrs, buf)
|
|
529
|
+
end
|
|
530
|
+
end
|
|
531
|
+
|
|
532
|
+
def append_add_check_constraint(table_name, attrs, buf, force_bulk_change = false)
|
|
533
|
+
expression = attrs.fetch(:expression)
|
|
534
|
+
attrs_options = attrs[:options] || {}
|
|
535
|
+
|
|
536
|
+
if force_bulk_change
|
|
537
|
+
buf.puts(<<-RUBY)
|
|
538
|
+
t.check_constraint(#{expression.inspect}, **#{attrs_options.inspect})
|
|
539
|
+
RUBY
|
|
540
|
+
else
|
|
541
|
+
buf.puts(<<-RUBY)
|
|
542
|
+
add_check_constraint(#{table_name.inspect}, #{expression.inspect}, **#{attrs_options.inspect})
|
|
543
|
+
RUBY
|
|
544
|
+
end
|
|
545
|
+
end
|
|
546
|
+
|
|
547
|
+
def append_remove_check_constraint(table_name, attrs, buf)
|
|
548
|
+
expression = attrs.fetch(:expression)
|
|
549
|
+
attrs_options = attrs[:options] || {}
|
|
550
|
+
|
|
551
|
+
buf.puts(<<-RUBY)
|
|
552
|
+
remove_check_constraint(#{table_name.inspect}, #{expression.inspect}, **#{attrs_options.inspect})
|
|
553
|
+
RUBY
|
|
554
|
+
end
|
|
555
|
+
|
|
514
556
|
def delta_execute
|
|
515
557
|
@delta[:execute] || []
|
|
516
558
|
end
|
data/lib/ridgepole/diff.rb
CHANGED
|
@@ -101,6 +101,7 @@ module Ridgepole
|
|
|
101
101
|
scan_definition_change(from[:definition], to[:definition], from[:indices], table_name, from[:options], table_delta)
|
|
102
102
|
scan_indices_change(from[:indices], to[:indices], to[:definition], table_delta, from[:options], to[:options])
|
|
103
103
|
scan_foreign_keys_change(from[:foreign_keys], to[:foreign_keys], table_delta, @options)
|
|
104
|
+
scan_check_constraints_change(from[:check_constraints], to[:check_constraints], table_delta)
|
|
104
105
|
|
|
105
106
|
unless table_delta.empty?
|
|
106
107
|
delta[:change] ||= {}
|
|
@@ -472,6 +473,38 @@ module Ridgepole
|
|
|
472
473
|
table_delta[:foreign_keys] = foreign_keys_delta unless foreign_keys_delta.empty?
|
|
473
474
|
end
|
|
474
475
|
|
|
476
|
+
def scan_check_constraints_change(from, to, table_delta)
|
|
477
|
+
from = (from || {}).dup
|
|
478
|
+
to = (to || {}).dup
|
|
479
|
+
check_constraints_delta = {}
|
|
480
|
+
|
|
481
|
+
to.each do |name, to_attrs|
|
|
482
|
+
from_attrs = from.delete(name)
|
|
483
|
+
|
|
484
|
+
if from_attrs
|
|
485
|
+
if from_attrs != to_attrs
|
|
486
|
+
check_constraints_delta[:add] ||= {}
|
|
487
|
+
check_constraints_delta[:add][name] = to_attrs
|
|
488
|
+
|
|
489
|
+
check_constraints_delta[:delete] ||= {}
|
|
490
|
+
check_constraints_delta[:delete][name] = from_attrs
|
|
491
|
+
end
|
|
492
|
+
else
|
|
493
|
+
check_constraints_delta[:add] ||= {}
|
|
494
|
+
check_constraints_delta[:add][name] = to_attrs
|
|
495
|
+
end
|
|
496
|
+
end
|
|
497
|
+
|
|
498
|
+
unless @options[:merge]
|
|
499
|
+
from.each do |name, from_attrs|
|
|
500
|
+
check_constraints_delta[:delete] ||= {}
|
|
501
|
+
check_constraints_delta[:delete][name] = from_attrs
|
|
502
|
+
end
|
|
503
|
+
end
|
|
504
|
+
|
|
505
|
+
table_delta[:check_constraints] = check_constraints_delta unless check_constraints_delta.empty?
|
|
506
|
+
end
|
|
507
|
+
|
|
475
508
|
# XXX: MySQL only?
|
|
476
509
|
# https://github.com/rails/rails/blob/v4.2.1/activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb#L760
|
|
477
510
|
# https://github.com/rails/rails/blob/v4.2.1/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb#L102
|
|
@@ -91,6 +91,21 @@ module Ridgepole
|
|
|
91
91
|
}
|
|
92
92
|
end
|
|
93
93
|
|
|
94
|
+
def add_check_constraint(table_name, expression, options = {})
|
|
95
|
+
table_name = table_name.to_s
|
|
96
|
+
expression = expression.to_s
|
|
97
|
+
options[:name] = options[:name].to_s if options[:name]
|
|
98
|
+
|
|
99
|
+
idx = options[:name] || expression
|
|
100
|
+
|
|
101
|
+
@__definition[table_name] ||= {}
|
|
102
|
+
@__definition[table_name][:check_constraints] ||= {}
|
|
103
|
+
@__definition[table_name][:check_constraints][idx] = {
|
|
104
|
+
expression: expression,
|
|
105
|
+
options: options,
|
|
106
|
+
}
|
|
107
|
+
end
|
|
108
|
+
|
|
94
109
|
def require(file)
|
|
95
110
|
schemafile = %r{\A/}.match?(file) ? file : File.join(@__working_dir, file)
|
|
96
111
|
|
|
@@ -26,32 +26,41 @@ module Ridgepole
|
|
|
26
26
|
DEFAULT_PRIMARY_KEY_TYPE = :bigint
|
|
27
27
|
|
|
28
28
|
TYPES = {
|
|
29
|
-
# https://github.com/rails/rails/blob/
|
|
30
|
-
string: {},
|
|
31
|
-
text: {},
|
|
32
|
-
integer: {},
|
|
29
|
+
# https://github.com/rails/rails/blob/main/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb#L300-L301
|
|
33
30
|
bigint: {},
|
|
34
|
-
float: {},
|
|
35
|
-
decimal: {},
|
|
36
|
-
datetime: {},
|
|
37
|
-
timestamp: {},
|
|
38
|
-
time: {},
|
|
39
|
-
date: {},
|
|
40
31
|
binary: {},
|
|
41
32
|
boolean: {},
|
|
33
|
+
date: {},
|
|
34
|
+
datetime: {},
|
|
35
|
+
decimal: {},
|
|
36
|
+
float: {},
|
|
37
|
+
integer: {},
|
|
38
|
+
json: {},
|
|
39
|
+
string: {},
|
|
40
|
+
text: {},
|
|
41
|
+
time: {},
|
|
42
|
+
timestamp: {},
|
|
43
|
+
virtual: {},
|
|
42
44
|
|
|
43
|
-
# https://github.com/rails/rails/blob/
|
|
45
|
+
# https://github.com/rails/rails/blob/v6.0.6/activerecord/lib/active_record/connection_adapters/postgresql_adapter.rb#L101
|
|
44
46
|
serial: { null: false },
|
|
45
47
|
bigserial: { null: false },
|
|
48
|
+
# string: {},
|
|
49
|
+
# text: {},
|
|
50
|
+
# integer: {},
|
|
51
|
+
# float: {},
|
|
52
|
+
# decimal: {},
|
|
53
|
+
# datetime: {},
|
|
54
|
+
# time: {},
|
|
55
|
+
# date: {},
|
|
46
56
|
daterange: {},
|
|
47
57
|
numrange: {},
|
|
48
58
|
tsrange: {},
|
|
49
59
|
tstzrange: {},
|
|
50
60
|
int4range: {},
|
|
51
61
|
int8range: {},
|
|
52
|
-
# binary: {},
|
|
53
|
-
# boolean: {},
|
|
54
|
-
# bigint: {}, # dup key
|
|
62
|
+
# binary: {},
|
|
63
|
+
# boolean: {},
|
|
55
64
|
xml: {},
|
|
56
65
|
tsvector: {},
|
|
57
66
|
hstore: {},
|
|
@@ -59,20 +68,27 @@ module Ridgepole
|
|
|
59
68
|
cidr: {},
|
|
60
69
|
macaddr: {},
|
|
61
70
|
uuid: {},
|
|
62
|
-
json: {},
|
|
71
|
+
# json: {},
|
|
63
72
|
jsonb: {},
|
|
64
73
|
ltree: {},
|
|
65
74
|
citext: {},
|
|
66
75
|
point: {},
|
|
76
|
+
line: {},
|
|
77
|
+
lseg: {},
|
|
78
|
+
box: {},
|
|
79
|
+
path: {},
|
|
80
|
+
polygon: {},
|
|
81
|
+
circle: {},
|
|
67
82
|
bit: {},
|
|
68
83
|
bit_varying: {},
|
|
69
84
|
money: {},
|
|
85
|
+
interval: {},
|
|
86
|
+
oid: {},
|
|
70
87
|
|
|
71
|
-
# https://github.com/
|
|
72
|
-
|
|
88
|
+
# https://github.com/ridgepole/ridgepole/issues/394
|
|
89
|
+
timestamptz: {},
|
|
73
90
|
|
|
74
|
-
|
|
75
|
-
# json: {}, # dup key
|
|
91
|
+
enum: {},
|
|
76
92
|
}.freeze
|
|
77
93
|
|
|
78
94
|
TYPES.each do |column_type, default_options|
|
|
@@ -129,8 +145,8 @@ module Ridgepole
|
|
|
129
145
|
|
|
130
146
|
def timestamps(*args)
|
|
131
147
|
options = { null: false }.merge(args.extract_options!)
|
|
132
|
-
column(:created_at, :datetime, options)
|
|
133
|
-
column(:updated_at, :datetime, options)
|
|
148
|
+
column(:created_at, :datetime, options.dup)
|
|
149
|
+
column(:updated_at, :datetime, options.dup)
|
|
134
150
|
end
|
|
135
151
|
|
|
136
152
|
def references(*args)
|
|
@@ -159,6 +175,10 @@ module Ridgepole
|
|
|
159
175
|
end
|
|
160
176
|
end
|
|
161
177
|
alias belongs_to references
|
|
178
|
+
|
|
179
|
+
def check_constraint(expression, options = {})
|
|
180
|
+
@base.add_check_constraint(@table_name, expression, options)
|
|
181
|
+
end
|
|
162
182
|
end
|
|
163
183
|
end
|
|
164
184
|
end
|
data/lib/ridgepole/dsl_parser.rb
CHANGED
|
@@ -40,9 +40,9 @@ module Ridgepole
|
|
|
40
40
|
# NOTE: For composite primary keys, the first column of the primary key is used as the foreign key index
|
|
41
41
|
next if Array(attrs[:options][:primary_key]).first == fk_index
|
|
42
42
|
|
|
43
|
-
raise("The column `#{fk_index}` of the table `#{table_name}` has a foreign key but no index." \
|
|
44
|
-
'
|
|
45
|
-
'
|
|
43
|
+
raise("The column `#{fk_index}` of the table `#{table_name}` has a foreign key but no index. " \
|
|
44
|
+
'Although InnoDB creates an index automatically, ' \
|
|
45
|
+
'please add one explicitly in order for ridgepole to manage it.')
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
48
|
end
|
data/lib/ridgepole/version.rb
CHANGED
data/lib/ridgepole.rb
CHANGED
data/ridgepole.gemspec
CHANGED
|
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
23
23
|
spec.require_paths = ['lib']
|
|
24
24
|
|
|
25
|
-
spec.required_ruby_version = Gem::Requirement.new('>= 2.
|
|
25
|
+
spec.required_ruby_version = Gem::Requirement.new('>= 2.7')
|
|
26
26
|
|
|
27
27
|
spec.add_dependency 'activerecord', '>= 5.1', '< 7.1'
|
|
28
28
|
spec.add_dependency 'diffy'
|
|
@@ -38,7 +38,7 @@ Gem::Specification.new do |spec|
|
|
|
38
38
|
spec.add_development_dependency 'rspec', '>= 3.0.0'
|
|
39
39
|
spec.add_development_dependency 'rspec-match_fuzzy', '>= 0.1.3'
|
|
40
40
|
spec.add_development_dependency 'rspec-match_ruby', '>= 0.1.3'
|
|
41
|
-
spec.add_development_dependency 'rubocop', '1.
|
|
41
|
+
spec.add_development_dependency 'rubocop', '1.54.2'
|
|
42
42
|
spec.add_development_dependency 'rubocop-rake', '>= 0.5.1'
|
|
43
43
|
spec.add_development_dependency 'rubocop-rspec', '>= 2.1.0'
|
|
44
44
|
spec.add_development_dependency 'simplecov'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: ridgepole
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.1
|
|
4
|
+
version: 1.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Genki Sugawara
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2023-07-29 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activerecord
|
|
@@ -204,14 +204,14 @@ dependencies:
|
|
|
204
204
|
requirements:
|
|
205
205
|
- - '='
|
|
206
206
|
- !ruby/object:Gem::Version
|
|
207
|
-
version: 1.
|
|
207
|
+
version: 1.54.2
|
|
208
208
|
type: :development
|
|
209
209
|
prerelease: false
|
|
210
210
|
version_requirements: !ruby/object:Gem::Requirement
|
|
211
211
|
requirements:
|
|
212
212
|
- - '='
|
|
213
213
|
- !ruby/object:Gem::Version
|
|
214
|
-
version: 1.
|
|
214
|
+
version: 1.54.2
|
|
215
215
|
- !ruby/object:Gem::Dependency
|
|
216
216
|
name: rubocop-rake
|
|
217
217
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -287,9 +287,7 @@ files:
|
|
|
287
287
|
- README.md
|
|
288
288
|
- Rakefile
|
|
289
289
|
- bin/ridgepole
|
|
290
|
-
-
|
|
291
|
-
- gemfiles/activerecord_5.1.gemfile
|
|
292
|
-
- gemfiles/activerecord_5.2.gemfile
|
|
290
|
+
- compose.yml
|
|
293
291
|
- gemfiles/activerecord_6.0.gemfile
|
|
294
292
|
- gemfiles/activerecord_6.1.gemfile
|
|
295
293
|
- gemfiles/activerecord_7.0.gemfile
|
|
@@ -329,7 +327,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
329
327
|
requirements:
|
|
330
328
|
- - ">="
|
|
331
329
|
- !ruby/object:Gem::Version
|
|
332
|
-
version: 2.
|
|
330
|
+
version: '2.7'
|
|
333
331
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
334
332
|
requirements:
|
|
335
333
|
- - ">="
|