pg_comment 0.2.1 → 0.3.0

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 CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NGMxNWZlYjYzM2FhOTkyYjQyYmVjMjk4NDM3NTQyY2EyMWJmODFmZg==
5
- data.tar.gz: !binary |-
6
- NzY1MDg5OGMxOTVhOTBkMDk4MzZkZmVjNjlkYTk5ZDQ4NzdiNmI3ZA==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- YmEyYWMwZWViNmI5ZTYxYzk1MDY2ZTRmMzFlYzk4YmY0ZDM1ODNkMjljMjg0
10
- ZjNjZjdiZTcxMmQ3NjU0MWFiOWQ0YzM4MWU3YjljMjEzMTRmYjYyYWU3YWVj
11
- ZmFjY2FlNjAzYzFhZDY1MmRjZGM0NmZiMTQ3ZTBmOTZhNjc1MTQ=
12
- data.tar.gz: !binary |-
13
- NDkwYzc3NGU1YzEwNTNhNDA4NDZhYjRkZjY0ZmRjNTY3MGViYjNjNjE1MTAw
14
- MTVkYzI0YWExYjJjNjE4Mjc2NzJhYjAxZmM3NTY1N2FkNGVkYzI0N2Q3ODk3
15
- Yzc3Y2ZlMTdmMTc5MjViZTBlMzM2ZmJiNDJkZTYwYzNhYjA3Zjk=
2
+ SHA1:
3
+ metadata.gz: 2cd7ec32d81c13b03d5ca3a04aa42bbe7b2f3990
4
+ data.tar.gz: 365f10c5ed8754eaf6c5f2ac660fb3c0a246ae75
5
+ SHA512:
6
+ metadata.gz: d5982039c216c0035c73c8f23247c305a7085d5acc0055500b15148d7a1707f8e847fa9c3b6c873a03c9f422f1edb523daf185e11b0b67f352f83268aedefc00
7
+ data.tar.gz: 9ad813903ea33a6aedfd39d7065e3ec6f8c8b5f20275b5fa7156e4ab537269d5d29d102c8e627431ca378398489ee4af45d923d0a5bfc6aa248d0ed61adac75f
data/.gitignore CHANGED
@@ -5,7 +5,8 @@ pkg/*
5
5
  .idea
6
6
  .rvmrc
7
7
  coverage/*
8
+ .yardoc
8
9
 
9
10
  spec/dummy/db/*.sqlite3
10
11
  spec/dummy/log/*.log
11
- spec/dummy/tmp/
12
+ spec/dummy/tmp/
data/.rspec CHANGED
@@ -1,2 +1,4 @@
1
- --colour
2
- --format nested
1
+ --color
2
+ --profile
3
+ --backtrace
4
+ --format documentation
data/Gemfile CHANGED
@@ -3,8 +3,13 @@ source "http://rubygems.org"
3
3
  # Specify your gem's dependencies in pg_comment.gemspec
4
4
  gemspec
5
5
 
6
+ # Necessary, otherwise Travis:CI gets confused.
6
7
  gem 'rspec-rails'
7
8
 
9
+ group :development do
10
+ gem 'yard'
11
+ end
12
+
8
13
  group :test do
9
14
  gem 'simplecov', :require => false
10
15
  end
@@ -99,6 +99,28 @@ change_table :phone_numbers do |t|
99
99
  end
100
100
  ```
101
101
 
102
+ ## Testing
103
+
104
+ Install the development dependencies (you will need to compile the native dependencies
105
+ for Postgres, so make sure your development environment is set up)
106
+
107
+ bundle install
108
+
109
+ Modify the credentials in `spec/dummy/config/database.yml` as needed, then run specs.
110
+
111
+ bundle exec rake spec
112
+
113
+ Test coverage (as measured by SimpleCov) should be 100%
114
+
115
+ ## Contributions
116
+
117
+ Contributions are welcome and appreciated. However, before you submit your pull request, please be sure to do the
118
+ following:
119
+
120
+ * Make sure all specs pass.
121
+ * Make sure you have test coverage for any new features; run `bundle exec rake spec`
122
+ * Make sure any new code has RDoc comments; run `bundle exec yard stats --list-undoc`
123
+
102
124
  ## License
103
125
 
104
126
  Copyright (c) 2011-2013 Arthur Shagall, Mindflight, Inc.
data/Rakefile CHANGED
@@ -1,11 +1,10 @@
1
- require "bundler/gem_tasks"
1
+ require 'bundler/gem_tasks'
2
2
 
3
- APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
4
- puts "Loading app rakefile at #{APP_RAKEFILE}"
3
+ APP_RAKEFILE = File.expand_path('../spec/dummy/Rakefile', __FILE__)
5
4
  load 'rails/tasks/engine.rake'
6
5
 
7
6
  desc 'Run specs'
8
- task 'spec' => ['db:drop', 'db:create', 'db:migrate', 'app:spec']
7
+ task 'spec' => ['db:drop', 'db:create', 'db:migrate', 'app:db:test:load', 'app:spec']
9
8
  task :default => :spec
10
9
 
11
10
  def gemspec
@@ -34,7 +33,7 @@ namespace :git do
34
33
  sh "git tag -a #{gem_version_tag} -m \"Version #{gem_version}\""
35
34
  end
36
35
 
37
- desc "Push git tag to GitHub"
36
+ desc 'Push git tag to GitHub'
38
37
  task :push_tags do
39
38
  sh 'git push --tags'
40
39
  end
@@ -1,23 +1,27 @@
1
- require "pg_comment/version"
1
+ require 'rails'
2
+ require 'pg_comment/version'
2
3
  require 'active_support/all'
3
4
 
5
+ # In any PostgreSQL database where the Rails app is not the only consumer, it
6
+ # is very helpful to have comments on the various elements of the schema.
7
+ # PgComment extends the migrations DSL with methods to set and remove comments
8
+ # on columns, tables and indexes. It also dumps those comments into your
9
+ # schema.rb.
4
10
  module PgComment
5
- extend ActiveSupport::Autoload
6
- autoload :Adapter
7
- autoload :SchemaDumper
8
11
 
9
- module ConnectionAdapters
10
- extend ActiveSupport::Autoload
11
-
12
- autoload_under 'abstract' do
13
- autoload :SchemaDefinitions
14
- autoload :SchemaStatements
15
- end
12
+ module ConnectionAdapters # :nodoc:
16
13
  end
17
14
 
18
- module Migration
19
- autoload :CommandRecorder, 'pg_comment/migration/command_recorder'
15
+ module Migration # :nodoc:
20
16
  end
21
17
  end
22
18
 
23
- require 'pg_comment/engine' if defined?(Rails)
19
+ if defined?(Rails)
20
+ require 'pg_comment/schema_dumper'
21
+ require 'pg_comment/migration/command_recorder'
22
+ require 'pg_comment/connection_adapters/abstract/schema_definitions'
23
+ require 'pg_comment/connection_adapters/abstract/schema_statements'
24
+ require 'pg_comment/connection_adapters/postgresql_adapter'
25
+
26
+ require 'pg_comment/engine'
27
+ end
@@ -1,13 +1,14 @@
1
1
  module PgComment
2
2
  module ConnectionAdapters
3
- module SchemaDefinitions
4
- def self.included(base)
3
+ module SchemaDefinitions # :nodoc:
4
+ def self.included(base) # :nodoc:
5
5
  base::Table.class_eval do
6
6
  include PgComment::ConnectionAdapters::Table
7
7
  end
8
8
  end
9
9
  end
10
10
 
11
+ # Extensions to ActiveRecord::ConnectionAdapters::Table
11
12
  module Table
12
13
  extend ActiveSupport::Concern
13
14
 
@@ -1,15 +1,17 @@
1
1
  module PgComment
2
2
  module ConnectionAdapters
3
- module SchemaStatements
4
- def self.included(base)
3
+ module SchemaStatements # :nodoc:
4
+ def self.included(base) # :nodoc:
5
5
  base::AbstractAdapter.class_eval do
6
6
  include PgComment::ConnectionAdapters::AbstractAdapter
7
7
  end
8
8
  end
9
9
  end
10
10
 
11
+ # PgComment method stubs for the abstract connection adapter
11
12
  module AbstractAdapter
12
13
 
14
+ # Returns false (default use case)
13
15
  def supports_comments?
14
16
  false
15
17
  end
@@ -1,47 +1,107 @@
1
1
  module PgComment
2
2
  module ConnectionAdapters
3
+
4
+ # Implementation of the comment methods
3
5
  module PostgreSQLAdapter
6
+
7
+ # Returns +true+, Postgres supports comments
4
8
  def supports_comments?
5
9
  true
6
10
  end
7
11
 
12
+ # Sets a comment on the given table.
13
+ #
14
+ # ===== Example
15
+ # ====== Creating a comment on phone_numbers table
16
+ # set_table_comment :phone_numbers, 'This table stores phone numbers that conform to the North American Numbering Plan.'
17
+ #
18
+ # @param [String, Symbol] table_name
19
+ # @param [String, Symbol] comment
8
20
  def set_table_comment(table_name, comment)
9
21
  sql = "COMMENT ON TABLE #{quote_table_name(table_name)} IS $$#{comment}$$;"
10
22
  execute sql
11
23
  end
12
24
 
25
+ # Sets a comment on a given column of a given table.
26
+ #
27
+ # ===== Example
28
+ # ====== Creating a comment on npa column of table phone_numbers
29
+ # set_column_comment :phone_numbers, :npa, 'Numbering Plan Area Code - Allowed ranges: [2-9] for first digit, [0-9] for second and third digit.'
30
+ #
31
+ # @param [String, Symbol] table_name
32
+ # @param [String, Symbol] column_name
33
+ # @param [String, Symbol] comment
13
34
  def set_column_comment(table_name, column_name, comment)
14
35
  sql = "COMMENT ON COLUMN #{quote_table_name(table_name)}.#{quote_column_name(column_name)} IS $$#{comment}$$;"
15
36
  execute sql
16
37
  end
17
38
 
39
+ # Sets comments on multiple columns. 'comments' is a hash of column_name => comment pairs.
40
+ #
41
+ # ===== Example
42
+ # ====== Setting comments on the columns of the phone_numbers table
43
+ # set_column_comments :phone_numbers, :npa => 'Numbering Plan Area Code - Allowed ranges: [2-9] for first digit, [0-9] for second and third digit.',
44
+ # :nxx => 'Central Office Number'
45
+ #
46
+ # @param [String, Symbol] table_name
47
+ # @param [Hash<Symbol, String>] comments
18
48
  def set_column_comments(table_name, comments)
19
49
  comments.each_pair do |column_name, comment|
20
50
  set_column_comment table_name, column_name, comment
21
51
  end
22
52
  end
23
53
 
54
+ # Removes any comment from the given table.
55
+ #
56
+ # ===== Example
57
+ # ====== Removing comment from phone numbers table
58
+ # remove_table_comment :phone_numbers
59
+ #
60
+ # @param [String, Symbol] table_name
24
61
  def remove_table_comment(table_name)
25
62
  sql = "COMMENT ON TABLE #{quote_table_name(table_name)} IS NULL;"
26
63
  execute sql
27
64
  end
28
65
 
66
+ # Removes any comment from the given column of a given table.
67
+ #
68
+ # ===== Example
69
+ # ====== Removing comment from the npa column of table phone_numbers
70
+ # remove_column_comment :phone_numbers, :npa
71
+ #
72
+ # @param [String, Symbol] table_name
73
+ # @param [String, Symbol] column_name
29
74
  def remove_column_comment(table_name, column_name)
30
75
  sql = "COMMENT ON COLUMN #{quote_table_name(table_name)}.#{quote_column_name(column_name)} IS NULL;"
31
76
  execute sql
32
77
  end
33
78
 
79
+ # Removes any comment from the given columns of a given table.
80
+ #
81
+ # ===== Example
82
+ # ====== Removing comment from the npa and nxx columns of table phone_numbers
83
+ # remove_column_comments :phone_numbers, :npa, :nxx
84
+ #
85
+ # @param [String, Symbol] table_name
86
+ # @param [*String] column_names
34
87
  def remove_column_comments(table_name, *column_names)
35
88
  column_names.each do |column_name|
36
89
  remove_column_comment table_name, column_name
37
90
  end
38
91
  end
39
92
 
93
+ # Sets the comment on the given index
94
+ #
95
+ # @param [String, Symbol] index_name
96
+ # @param [String, Symbol] comment
40
97
  def set_index_comment(index_name, comment)
41
98
  sql = "COMMENT ON INDEX #{quote_string(index_name)} IS $$#{comment}$$;"
42
99
  execute sql
43
100
  end
44
101
 
102
+ # Removes the comment from the given index
103
+ #
104
+ # @param [String, Symbol] index_name
45
105
  def remove_index_comment(index_name)
46
106
  sql = "COMMENT ON INDEX #{quote_string(index_name)} IS NULL;"
47
107
  execute sql
@@ -56,6 +116,9 @@ LEFT OUTER JOIN pg_attribute a ON c.oid = a.attrelid AND a.attnum = d.objsubid
56
116
  WHERE c.relkind = 'r'
57
117
  ORDER BY c.relname
58
118
  =end
119
+
120
+ # Loads the comments for the given table from the database
121
+ # @param [String, Symbol] table_name
59
122
  def comments(table_name)
60
123
  com = select_all %{
61
124
  SELECT a.attname AS column_name, d.description AS comment
@@ -69,6 +132,7 @@ WHERE c.relkind = 'r' AND c.relname = '#{table_name}'
69
132
  end
70
133
  end
71
134
 
135
+ # Loads index comments from the database
72
136
  def index_comments
73
137
  com = select_all %{
74
138
  SELECT c.relname AS index_name, d.description AS comment
@@ -85,12 +149,3 @@ ORDER BY index_name
85
149
  end
86
150
  end
87
151
  end
88
-
89
- [:PostgreSQLAdapter, :JdbcAdapter].each do |adapter|
90
- begin
91
- ActiveRecord::ConnectionAdapters.const_get(adapter).class_eval do
92
- include PgComment::ConnectionAdapters::PostgreSQLAdapter
93
- end
94
- rescue
95
- end
96
- end
@@ -1,4 +1,6 @@
1
1
  module PgComment
2
+
3
+ # PgComment engine. See docs on Rails engines.
2
4
  class Engine < Rails::Engine
3
5
  initializer 'pg_comment.load_adapter' do
4
6
  ActiveSupport.on_load :active_record do
@@ -18,10 +20,17 @@ module PgComment
18
20
  end
19
21
 
20
22
  conf_name = ActiveRecord::Base.connection_pool.spec.config[:adapter]
21
- if conf_name == 'postgresql' then
22
- require 'pg_comment/connection_adapters/postgresql_adapter'
23
+ if conf_name == 'postgresql' || conf_name == "postgis"
24
+ ["PostGISAdapter::MainAdapter", "PostgreSQLAdapter", "JdbcAdapter"].each do |adapter|
25
+ begin
26
+ ::ActiveRecord::ConnectionAdapters.const_get(adapter).class_eval do
27
+ include ::PgComment::ConnectionAdapters::PostgreSQLAdapter
28
+ end
29
+ rescue
30
+ end
31
+ end
23
32
  end
24
33
  end
25
34
  end
26
35
  end
27
- end
36
+ end
@@ -1,54 +1,62 @@
1
1
  module PgComment
2
2
  module Migration
3
+
4
+ # PgComment methods for the migration command recorder. This allows
5
+ # comment methods to be used in "change" type migrations.
3
6
  module CommandRecorder
4
- def set_table_comment(*args)
7
+
8
+ def set_table_comment(*args) # :nodoc:
5
9
  record(:set_table_comment, args)
6
10
  end
7
11
 
8
- def remove_table_comment(*args)
12
+ def remove_table_comment(*args) # :nodoc:
9
13
  record(:remove_table_comment, args)
10
14
  end
11
15
 
12
- def set_column_comment(*args)
16
+ def set_column_comment(*args) # :nodoc:
13
17
  record(:set_column_comment, args)
14
18
  end
15
19
 
16
- def set_column_comments(*args)
20
+ def set_column_comments(*args) # :nodoc:
17
21
  record(:set_column_comments, args)
18
22
  end
19
23
 
20
- def remove_column_comment(*args)
24
+ def remove_column_comment(*args) # :nodoc:
21
25
  record(:remove_column_comment, args)
22
26
  end
23
27
 
24
- def remove_column_comments(*args)
28
+ def remove_column_comments(*args) # :nodoc:
25
29
  record(:remove_column_comments, args)
26
30
  end
27
31
 
28
- def set_index_comment(*args)
32
+ def set_index_comment(*args) # :nodoc:
29
33
  record(:set_index_comment, args)
30
34
  end
31
35
 
32
- def remove_index_comment(*args)
36
+ def remove_index_comment(*args) # :nodoc:
33
37
  record(:remove_index_comment, args)
34
38
  end
35
39
 
40
+ # remove_table_comment
36
41
  def invert_set_table_comment(args)
37
42
  table_name = args.first
38
43
  [:remove_table_comment, [table_name]]
39
44
  end
40
45
 
46
+ # remove_column_comment
41
47
  def invert_set_column_comment(args)
42
48
  table_name = args[0]
43
49
  column_name = args[1]
44
50
  [:remove_column_comment, [table_name, column_name]]
45
51
  end
46
52
 
53
+ # remove_column_comments
47
54
  def invert_set_column_comments(args)
48
55
  i_args = [args[0]] + args[1].collect{|name, _| name }
49
56
  [:remove_column_comments, i_args]
50
57
  end
51
58
 
59
+ # remove_index_comment
52
60
  def invert_set_index_comment(args)
53
61
  index_name = args.first
54
62
  [:remove_index_comment, [index_name]]
@@ -1,4 +1,5 @@
1
1
  module PgComment
2
+ # Extensions to the Rails schema dumper
2
3
  module SchemaDumper
3
4
  extend ActiveSupport::Concern
4
5
 
@@ -6,6 +7,7 @@ module PgComment
6
7
  alias_method_chain :tables, :comments
7
8
  end
8
9
 
10
+ # Support for dumping comments
9
11
  def tables_with_comments(stream)
10
12
  tables_without_comments(stream)
11
13
  @connection.tables.sort.each do |table_name|
@@ -14,16 +16,17 @@ module PgComment
14
16
 
15
17
  unless (index_comments = @connection.index_comments).empty?
16
18
  index_comments.each_pair do |index_name, comment|
17
- stream.puts " set_index_comment '#{index_name}', '#{comment.gsub(/'/, "\\\\'")}'"
19
+ stream.puts " set_index_comment '#{index_name}', '#{format_comment(comment)}'"
18
20
  end
19
21
  end
20
22
  end
21
23
 
24
+ # Dumps the comments on a particular table to the stream.
22
25
  def dump_comments(table_name, stream)
23
26
  unless (comments = @connection.comments(table_name)).empty?
24
27
  comment_statements = comments.map do |row|
25
28
  column_name = row[0]
26
- comment = row[1].gsub(/'/, "\\\\'")
29
+ comment = format_comment(row[1])
27
30
  if column_name
28
31
  " set_column_comment '#{table_name}', '#{column_name}', '#{comment}'"
29
32
  else
@@ -37,5 +40,11 @@ module PgComment
37
40
  end
38
41
  end
39
42
  private :dump_comments
43
+
44
+ # Escape out single quotes from comments
45
+ def format_comment(comment)
46
+ comment.gsub(/'/, "\\\\'")
47
+ end
48
+ private :format_comment
40
49
  end
41
50
  end
@@ -1,3 +1,4 @@
1
1
  module PgComment
2
- VERSION = '0.2.1'
2
+ # PgComment version
3
+ VERSION = '0.3.0'
3
4
  end
@@ -9,7 +9,7 @@ Gem::Specification.new do |s|
9
9
  s.email = ["arthur.shagall@gmail.com"]
10
10
  s.homepage = "https://github.com/albertosaurus/pg_comment"
11
11
  s.summary = 'Postgres Comments for Rails'
12
- s.description = 'Extends Rails migrations to support setting column and table comments. Pulls out comments into schema.rb'
12
+ s.description = 'Extends Rails migrations to support setting column and table comments. Pulls out comments into schema.rb'
13
13
 
14
14
  s.rubyforge_project = "pg_comment"
15
15
 
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
19
19
  s.require_paths = ["lib"]
20
20
 
21
21
  s.add_dependency('activerecord', '~> 3.0')
22
- s.add_development_dependency('rails', '~> 3.2')
22
+ s.add_dependency('rails', '~> 3.2')
23
23
  s.add_development_dependency('pg')
24
- s.add_development_dependency('rspec-rails')
24
+ s.add_development_dependency('rspec-rails', '~> 3.4')
25
25
  end
@@ -9,7 +9,7 @@ describe PgComment::ConnectionAdapters::AbstractAdapter do
9
9
  let(:adapter_stub){ AbstractAdapterStub.new }
10
10
 
11
11
  it 'should not support comments by default' do
12
- adapter_stub.supports_comments?.should be_false
12
+ expect(adapter_stub.supports_comments?).to eq(false)
13
13
  end
14
14
 
15
15
  it 'should define method stubs for comment methods' do
@@ -20,6 +20,6 @@ describe PgComment::ConnectionAdapters::AbstractAdapter do
20
20
  :remove_column_comment,
21
21
  :remove_column_comments,
22
22
  :set_index_comment,
23
- :remove_index_comment ].each { |method_name| adapter_stub.respond_to?(method_name).should be_true }
23
+ :remove_index_comment ].each { |method_name| expect(adapter_stub.respond_to?(method_name)).to eq(true) }
24
24
  end
25
- end
25
+ end
@@ -16,7 +16,7 @@ describe PgComment::ConnectionAdapters::PostgreSQLAdapter do
16
16
  let(:connection){ ConnectionStub.new }
17
17
 
18
18
  it 'should support comments' do
19
- connection.supports_comments?.should be_true
19
+ expect(connection.supports_comments?).to eq(true)
20
20
  end
21
21
 
22
22
  context 'comment methods' do
@@ -60,4 +60,4 @@ describe PgComment::ConnectionAdapters::PostgreSQLAdapter do
60
60
  connection.remove_index_comment :foo
61
61
  end
62
62
  end
63
- end
63
+ end
@@ -7,8 +7,9 @@ unless ENV['TRAVIS']
7
7
  end
8
8
  end
9
9
 
10
- require File.expand_path("../dummy/config/environment.rb", __FILE__)
10
+ require File.expand_path("../dummy/config/environment", __FILE__)
11
11
  require 'rspec/rails'
12
+ require 'pg_comment'
12
13
 
13
14
  RSpec.configure do |config|
14
15
  config.mock_with :rspec
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pg_comment
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arthur Shagall
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-05-05 00:00:00.000000000 Z
11
+ date: 2015-11-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -31,7 +31,7 @@ dependencies:
31
31
  - - ~>
32
32
  - !ruby/object:Gem::Version
33
33
  version: '3.2'
34
- type: :development
34
+ type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
@@ -42,32 +42,32 @@ dependencies:
42
42
  name: pg
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ! '>='
45
+ - - '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ! '>='
52
+ - - '>='
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec-rails
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ! '>='
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: '3.4'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ! '>='
66
+ - - ~>
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
69
- description: Extends Rails migrations to support setting column and table comments. Pulls
70
- out comments into schema.rb
68
+ version: '3.4'
69
+ description: Extends Rails migrations to support setting column and table comments.
70
+ Pulls out comments into schema.rb
71
71
  email:
72
72
  - arthur.shagall@gmail.com
73
73
  executables: []
@@ -139,18 +139,19 @@ require_paths:
139
139
  - lib
140
140
  required_ruby_version: !ruby/object:Gem::Requirement
141
141
  requirements:
142
- - - ! '>='
142
+ - - '>='
143
143
  - !ruby/object:Gem::Version
144
144
  version: '0'
145
145
  required_rubygems_version: !ruby/object:Gem::Requirement
146
146
  requirements:
147
- - - ! '>='
147
+ - - '>='
148
148
  - !ruby/object:Gem::Version
149
149
  version: '0'
150
150
  requirements: []
151
151
  rubyforge_project: pg_comment
152
- rubygems_version: 2.0.3
152
+ rubygems_version: 2.2.2
153
153
  signing_key:
154
154
  specification_version: 4
155
155
  summary: Postgres Comments for Rails
156
156
  test_files: []
157
+ has_rdoc: