running_count 0.2.4 → 0.2.9

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,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a25557013c0e44affef46e2af562991970b1c5aff09a9240f09ad8a0c8498a1
4
- data.tar.gz: 3059b036f9a7cdad573a41fa1cab5af0868f1865fae8146982c660c4fb5f743f
3
+ metadata.gz: 145ddc284043b30d75e6aa9dad7804ec8941c334206f08553b27c616658fe35a
4
+ data.tar.gz: 2b45cb121fab92ed39ea3ddbc26bb881c9efb4fd8f4aad4cd4e7ef9b3fffa3db
5
5
  SHA512:
6
- metadata.gz: 80ab0b2c813f4471c2dc5a05282534133a06f8bcabe957eb52a3b4930ad3dede497a05331aa0a8b40c632d71e548b00a839b91448171b2e3ba04a6d586874210
7
- data.tar.gz: 8054ca18180af09106847c14e979d8e95d4f28086cbfd12a2a9ef747b26ff1ceed911ad27295ad085168fcdb25e2901f7fd13e4a8b6ad44e01c2d7b026454d97
6
+ metadata.gz: 52e916e41be73b6a57a0b7c64abb111a86537f93c6857a33ef1f2f99f2d2515315648da889f4de9227f0dc6dbb557c7c721cf002feb95a78708cc3bf20a1da1e
7
+ data.tar.gz: 51114565664c71f6d115d784414fe0628fd9cb4214849acfa4e770677c6303030d9dce8c4ae8315fa93f8b00dbb4560b3ac6e0eeea61f1b5580c344212e7169e
data/Gemfile CHANGED
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source "https://rubygems.org"
2
4
 
3
- git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
5
+ git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
4
6
 
5
7
  # Specify your gem's dependencies in running_count.gemspec
6
8
  gemspec
@@ -1,159 +1,164 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- running_count (0.2.4)
4
+ running_count (0.2.8)
5
5
  activesupport
6
- pg (= 0.20.0)
7
- redis-rails (>= 5.0)
6
+ pg (>= 0.20.0)
7
+ redis
8
8
 
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- actionmailer (4.2.11)
13
- actionpack (= 4.2.11)
14
- actionview (= 4.2.11)
15
- activejob (= 4.2.11)
12
+ actioncable (6.0.3.2)
13
+ actionpack (= 6.0.3.2)
14
+ nio4r (~> 2.0)
15
+ websocket-driver (>= 0.6.1)
16
+ actionmailbox (6.0.3.2)
17
+ actionpack (= 6.0.3.2)
18
+ activejob (= 6.0.3.2)
19
+ activerecord (= 6.0.3.2)
20
+ activestorage (= 6.0.3.2)
21
+ activesupport (= 6.0.3.2)
22
+ mail (>= 2.7.1)
23
+ actionmailer (6.0.3.2)
24
+ actionpack (= 6.0.3.2)
25
+ actionview (= 6.0.3.2)
26
+ activejob (= 6.0.3.2)
16
27
  mail (~> 2.5, >= 2.5.4)
17
- rails-dom-testing (~> 1.0, >= 1.0.5)
18
- actionpack (4.2.11)
19
- actionview (= 4.2.11)
20
- activesupport (= 4.2.11)
21
- rack (~> 1.6)
22
- rack-test (~> 0.6.2)
23
- rails-dom-testing (~> 1.0, >= 1.0.5)
24
- rails-html-sanitizer (~> 1.0, >= 1.0.2)
25
- actionview (4.2.11)
26
- activesupport (= 4.2.11)
28
+ rails-dom-testing (~> 2.0)
29
+ actionpack (6.0.3.2)
30
+ actionview (= 6.0.3.2)
31
+ activesupport (= 6.0.3.2)
32
+ rack (~> 2.0, >= 2.0.8)
33
+ rack-test (>= 0.6.3)
34
+ rails-dom-testing (~> 2.0)
35
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
36
+ actiontext (6.0.3.2)
37
+ actionpack (= 6.0.3.2)
38
+ activerecord (= 6.0.3.2)
39
+ activestorage (= 6.0.3.2)
40
+ activesupport (= 6.0.3.2)
41
+ nokogiri (>= 1.8.5)
42
+ actionview (6.0.3.2)
43
+ activesupport (= 6.0.3.2)
27
44
  builder (~> 3.1)
28
- erubis (~> 2.7.0)
29
- rails-dom-testing (~> 1.0, >= 1.0.5)
30
- rails-html-sanitizer (~> 1.0, >= 1.0.3)
31
- activejob (4.2.11)
32
- activesupport (= 4.2.11)
33
- globalid (>= 0.3.0)
34
- activemodel (4.2.11)
35
- activesupport (= 4.2.11)
36
- builder (~> 3.1)
37
- activerecord (4.2.11)
38
- activemodel (= 4.2.11)
39
- activesupport (= 4.2.11)
40
- arel (~> 6.0)
41
- activesupport (4.2.11)
42
- i18n (~> 0.7)
45
+ erubi (~> 1.4)
46
+ rails-dom-testing (~> 2.0)
47
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
48
+ activejob (6.0.3.2)
49
+ activesupport (= 6.0.3.2)
50
+ globalid (>= 0.3.6)
51
+ activemodel (6.0.3.2)
52
+ activesupport (= 6.0.3.2)
53
+ activerecord (6.0.3.2)
54
+ activemodel (= 6.0.3.2)
55
+ activesupport (= 6.0.3.2)
56
+ activestorage (6.0.3.2)
57
+ actionpack (= 6.0.3.2)
58
+ activejob (= 6.0.3.2)
59
+ activerecord (= 6.0.3.2)
60
+ marcel (~> 0.3.1)
61
+ activesupport (6.0.3.2)
62
+ concurrent-ruby (~> 1.0, >= 1.0.2)
63
+ i18n (>= 0.7, < 2)
43
64
  minitest (~> 5.1)
44
- thread_safe (~> 0.3, >= 0.3.4)
45
65
  tzinfo (~> 1.1)
46
- arel (6.0.4)
47
- builder (3.2.3)
48
- byebug (10.0.2)
49
- coderay (1.1.2)
50
- concurrent-ruby (1.1.4)
51
- crass (1.0.4)
52
- database_cleaner (1.7.0)
53
- diff-lcs (1.3)
54
- erubis (2.7.0)
66
+ zeitwerk (~> 2.2, >= 2.2.2)
67
+ builder (3.2.4)
68
+ concurrent-ruby (1.1.7)
69
+ crass (1.0.6)
70
+ database_cleaner (1.8.5)
71
+ diff-lcs (1.4.4)
72
+ erubi (1.9.0)
55
73
  globalid (0.4.2)
56
74
  activesupport (>= 4.2.0)
57
- i18n (0.9.5)
75
+ i18n (1.8.5)
58
76
  concurrent-ruby (~> 1.0)
59
- loofah (2.2.3)
77
+ loofah (2.6.0)
60
78
  crass (~> 1.0.2)
61
79
  nokogiri (>= 1.5.9)
62
80
  mail (2.7.1)
63
81
  mini_mime (>= 0.1.1)
64
- method_source (0.9.2)
65
- mini_mime (1.0.1)
82
+ marcel (0.3.3)
83
+ mimemagic (~> 0.3.2)
84
+ method_source (1.0.0)
85
+ mimemagic (0.3.5)
86
+ mini_mime (1.0.2)
66
87
  mini_portile2 (2.4.0)
67
- minitest (5.11.3)
68
- nokogiri (1.10.1)
88
+ minitest (5.14.1)
89
+ nio4r (2.5.2)
90
+ nokogiri (1.10.10)
69
91
  mini_portile2 (~> 2.4.0)
70
- pg (0.20.0)
71
- pry (0.12.2)
72
- coderay (~> 1.1.0)
73
- method_source (~> 0.9.0)
74
- pry-byebug (3.6.0)
75
- byebug (~> 10.0)
76
- pry (~> 0.10)
77
- rack (1.6.11)
78
- rack-test (0.6.3)
79
- rack (>= 1.0)
80
- rails (4.2.11)
81
- actionmailer (= 4.2.11)
82
- actionpack (= 4.2.11)
83
- actionview (= 4.2.11)
84
- activejob (= 4.2.11)
85
- activemodel (= 4.2.11)
86
- activerecord (= 4.2.11)
87
- activesupport (= 4.2.11)
88
- bundler (>= 1.3.0, < 2.0)
89
- railties (= 4.2.11)
90
- sprockets-rails
91
- rails-deprecated_sanitizer (1.0.3)
92
- activesupport (>= 4.2.0.alpha)
93
- rails-dom-testing (1.0.9)
94
- activesupport (>= 4.2.0, < 5.0)
95
- nokogiri (~> 1.6)
96
- rails-deprecated_sanitizer (>= 1.0.1)
97
- rails-html-sanitizer (1.0.4)
98
- loofah (~> 2.2, >= 2.2.2)
99
- railties (4.2.11)
100
- actionpack (= 4.2.11)
101
- activesupport (= 4.2.11)
92
+ pg (1.2.3)
93
+ rack (2.2.3)
94
+ rack-test (1.1.0)
95
+ rack (>= 1.0, < 3)
96
+ rails (6.0.3.2)
97
+ actioncable (= 6.0.3.2)
98
+ actionmailbox (= 6.0.3.2)
99
+ actionmailer (= 6.0.3.2)
100
+ actionpack (= 6.0.3.2)
101
+ actiontext (= 6.0.3.2)
102
+ actionview (= 6.0.3.2)
103
+ activejob (= 6.0.3.2)
104
+ activemodel (= 6.0.3.2)
105
+ activerecord (= 6.0.3.2)
106
+ activestorage (= 6.0.3.2)
107
+ activesupport (= 6.0.3.2)
108
+ bundler (>= 1.3.0)
109
+ railties (= 6.0.3.2)
110
+ sprockets-rails (>= 2.0.0)
111
+ rails-dom-testing (2.0.3)
112
+ activesupport (>= 4.2.0)
113
+ nokogiri (>= 1.6)
114
+ rails-html-sanitizer (1.3.0)
115
+ loofah (~> 2.3)
116
+ railties (6.0.3.2)
117
+ actionpack (= 6.0.3.2)
118
+ activesupport (= 6.0.3.2)
119
+ method_source
102
120
  rake (>= 0.8.7)
103
- thor (>= 0.18.1, < 2.0)
104
- rake (10.5.0)
105
- redis (4.1.0)
106
- redis-actionpack (5.0.2)
107
- actionpack (>= 4.0, < 6)
108
- redis-rack (>= 1, < 3)
109
- redis-store (>= 1.1.0, < 2)
110
- redis-activesupport (5.0.7)
111
- activesupport (>= 3, < 6)
112
- redis-store (>= 1.3, < 2)
113
- redis-rack (2.0.5)
114
- rack (>= 1.5, < 3)
115
- redis-store (>= 1.2, < 2)
116
- redis-rails (5.0.2)
117
- redis-actionpack (>= 5.0, < 6)
118
- redis-activesupport (>= 5.0, < 6)
119
- redis-store (>= 1.2, < 2)
120
- redis-store (1.6.0)
121
- redis (>= 2.2, < 5)
122
- rspec (3.8.0)
123
- rspec-core (~> 3.8.0)
124
- rspec-expectations (~> 3.8.0)
125
- rspec-mocks (~> 3.8.0)
126
- rspec-core (3.8.0)
127
- rspec-support (~> 3.8.0)
128
- rspec-expectations (3.8.2)
121
+ thor (>= 0.20.3, < 2.0)
122
+ rake (13.0.1)
123
+ redis (4.2.1)
124
+ rspec (3.9.0)
125
+ rspec-core (~> 3.9.0)
126
+ rspec-expectations (~> 3.9.0)
127
+ rspec-mocks (~> 3.9.0)
128
+ rspec-core (3.9.2)
129
+ rspec-support (~> 3.9.3)
130
+ rspec-expectations (3.9.2)
129
131
  diff-lcs (>= 1.2.0, < 2.0)
130
- rspec-support (~> 3.8.0)
131
- rspec-mocks (3.8.0)
132
+ rspec-support (~> 3.9.0)
133
+ rspec-mocks (3.9.1)
132
134
  diff-lcs (>= 1.2.0, < 2.0)
133
- rspec-support (~> 3.8.0)
134
- rspec-support (3.8.0)
135
- sprockets (3.7.2)
135
+ rspec-support (~> 3.9.0)
136
+ rspec-support (3.9.3)
137
+ sprockets (4.0.2)
136
138
  concurrent-ruby (~> 1.0)
137
139
  rack (> 1, < 3)
138
140
  sprockets-rails (3.2.1)
139
141
  actionpack (>= 4.0)
140
142
  activesupport (>= 4.0)
141
143
  sprockets (>= 3.0.0)
142
- thor (0.20.3)
144
+ thor (1.0.1)
143
145
  thread_safe (0.3.6)
144
- tzinfo (1.2.5)
146
+ tzinfo (1.2.7)
145
147
  thread_safe (~> 0.1)
148
+ websocket-driver (0.7.3)
149
+ websocket-extensions (>= 0.1.0)
150
+ websocket-extensions (0.1.5)
151
+ zeitwerk (2.4.0)
146
152
 
147
153
  PLATFORMS
148
154
  ruby
149
155
 
150
156
  DEPENDENCIES
151
- database_cleaner (>= 1.7.0)
152
- pry-byebug (>= 3.6.0)
157
+ database_cleaner
153
158
  rails
154
- rake (>= 10.0)
155
- rspec (>= 3.0)
159
+ rake
160
+ rspec
156
161
  running_count!
157
162
 
158
163
  BUNDLED WITH
159
- 1.17.3
164
+ 2.1.4
data/Rakefile CHANGED
@@ -1,6 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require "bundler/gem_tasks"
2
4
  require "rspec/core/rake_task"
3
5
 
4
6
  RSpec::Core::RakeTask.new(:spec)
5
7
 
6
- task :default => :spec
8
+ task default: :spec
@@ -1,8 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'active_support/concern'
4
- require 'active_support/lazy_load_hooks'
5
- require 'redis'
3
+ require "active_support/concern"
4
+ require "active_support/lazy_load_hooks"
5
+ require "redis"
6
6
 
7
7
  require "running_count/callbacks"
8
8
  require "running_count/counter"
@@ -11,10 +11,20 @@ require "running_count/format"
11
11
  require "running_count/storage"
12
12
 
13
13
  module RunningCount
14
+
14
15
  class Error < StandardError; end
16
+
17
+ class << self
18
+
19
+ attr_accessor :redis
20
+
21
+ end
22
+
15
23
  end
16
24
 
17
25
  # extend ActiveRecord with our own code here
18
26
  ActiveSupport.on_load(:active_record) do
19
27
  include RunningCount::Callbacks
28
+ RunningCount.redis ||= $redis # rubocop:disable Style/GlobalVars
29
+ RunningCount.redis ||= REDIS if defined?(REDIS)
20
30
  end
@@ -25,7 +25,7 @@ module RunningCount
25
25
  end
26
26
 
27
27
  def reconcile_changes
28
- self._counter_data.values.each do |data|
28
+ self._counter_data.each_value do |data|
29
29
  Counter.reconcile_changes(data)
30
30
  end
31
31
  end
@@ -12,7 +12,7 @@ module RunningCount
12
12
  .tap do |sums, counts|
13
13
  sums.each { |data| Counter.enqueue_sum(record, data) }
14
14
  counts.each { |data| Counter.enqueue_count(record, data) }
15
- end
15
+ end
16
16
  end
17
17
 
18
18
  def enqueue_sum(record, counter_data)
@@ -28,7 +28,7 @@ module RunningCount
28
28
  end
29
29
 
30
30
  def enqueue_count(record, counter_data)
31
- if changed_field = counter_data[:changed_field]
31
+ if (changed_field = counter_data[:changed_field])
32
32
  return true unless record.previous_changes.has_key?(changed_field) && counter_data[:if].call(record)
33
33
  end
34
34
 
@@ -39,11 +39,9 @@ module RunningCount
39
39
  end
40
40
 
41
41
  def enqueue_deletion(record, counter_data)
42
- counter_data
43
- .values
44
- .each do |data|
45
- Counter.enqueue_single_delete(record, data)
46
- end
42
+ counter_data.each_value do |data|
43
+ Counter.enqueue_single_delete(record, data)
44
+ end
47
45
  end
48
46
 
49
47
  def enqueue_single_delete(record, data)
@@ -52,6 +50,7 @@ module RunningCount
52
50
  amount = amount_from_deleted_record(record, data)
53
51
 
54
52
  Storage.add_item(item, data[:running_set_name], 0 - amount)
53
+ rescue StandardError => exception
55
54
  end
56
55
 
57
56
  def reconcile_changes(counter_data)
@@ -60,8 +59,6 @@ module RunningCount
60
59
  Storage
61
60
  .scores(counter_data[:running_set_name])
62
61
  .each { |item, _score| Statement.reconcile_item(item, counter_data) }
63
-
64
- Statement.release_statement(counter_data)
65
62
  end
66
63
 
67
64
  def running_count(destination, running_set_name)
@@ -97,7 +94,6 @@ module RunningCount
97
94
  destination: table_name,
98
95
  running_set_name: running_set_name,
99
96
  statement: statement,
100
- release_sql: Statement.release_sql(statement),
101
97
  aggregated_field: opts[:aggregated_field],
102
98
  changed_field: opts[:changed_field],
103
99
  statement_sql: sql,
@@ -14,11 +14,9 @@ module RunningCount
14
14
  )
15
15
  end
16
16
 
17
- def release_sql(name)
18
- %( DEALLOCATE #{name} )
19
- end
20
-
21
17
  def prepare_statement(counter_data)
18
+ return if ActiveRecord::Base.connection.exec_query("select name from pg_prepared_statements where name = '#{counter_data[:statement]}'").present?
19
+
22
20
  ActiveRecord::Base.connection.exec_query(counter_data[:statement_sql])
23
21
  rescue ActiveRecord::StatementInvalid
24
22
  Rails.logger.warn "Statement already exists: #{counter_data[:statement]}"
@@ -89,9 +87,12 @@ module RunningCount
89
87
  #
90
88
  %(
91
89
  PREPARE #{statement} (int) AS
92
- UPDATE "#{destination_table_name}" SET "#{set_name}" = (
90
+ UPDATE "#{destination_table_name}"
91
+ SET "#{set_name}" = (
93
92
  #{inner_sql}
94
- ) WHERE "#{destination_table_name}"."id" = $1
93
+ ),
94
+ "updated_at" = now()
95
+ WHERE "#{destination_table_name}"."id" = $1
95
96
  )
96
97
  end
97
98
 
@@ -7,18 +7,18 @@ module RunningCount
7
7
 
8
8
  def scores(running_set_name, item = nil)
9
9
  if item
10
- $redis.zscore(running_set_name, item)
10
+ RunningCount.redis.zscore(running_set_name, item)
11
11
  else
12
- $redis.zrange(running_set_name, 0, -1, with_scores: true)
12
+ RunningCount.redis.zrange(running_set_name, 0, -1, with_scores: true)
13
13
  end
14
14
  end
15
15
 
16
16
  def add_item(item, running_set_name, amount)
17
- $redis.zincrby(running_set_name, amount || 1, item)
17
+ RunningCount.redis.zincrby(running_set_name, amount || 1, item)
18
18
  end
19
19
 
20
20
  def clear_item(item, running_set_name)
21
- $redis.zrem(running_set_name, item)
21
+ RunningCount.redis.zrem(running_set_name, item)
22
22
  end
23
23
 
24
24
  end
@@ -1,3 +1,7 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module RunningCount
2
- VERSION = "0.2.4"
4
+
5
+ VERSION = "0.2.9"
6
+
3
7
  end
@@ -1,7 +1,6 @@
1
+ # frozen_string_literal: true
1
2
 
2
- lib = File.expand_path("../lib", __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require "running_count/version"
3
+ require_relative "lib/running_count/version"
5
4
 
6
5
  Gem::Specification.new do |spec|
7
6
  spec.name = "running_count"
@@ -9,27 +8,20 @@ Gem::Specification.new do |spec|
9
8
  spec.authors = ["Isaac Priestley"]
10
9
  spec.email = ["isaac@teachable.com"]
11
10
 
12
- spec.summary = %q{Write a short summary, because RubyGems requires one.}
13
- spec.description = %q{Write a longer description or delete this line.}
14
- spec.homepage = "http://www.teachable.com"
11
+ spec.summary = "Counter caches for Rails applications, including cached running counts."
12
+ spec.description = "Counter caches for Rails applications, including cached running counts. Using redis and native PostgreSQL features for performance gains"
13
+ spec.homepage = "https://github.com/UseFedora/running_count"
15
14
  spec.license = "MIT"
15
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
16
16
 
17
- # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
18
- # to allow pushing to a single host or delete this section to allow pushing to any host.
19
- if spec.respond_to?(:metadata)
20
- spec.metadata["allowed_push_host"] = "https://rubygems.org"
21
-
22
- spec.metadata["homepage_uri"] = spec.homepage
23
- spec.metadata["source_code_uri"] = "http://github.com/usefedora/running_count"
24
- spec.metadata["changelog_uri"] = "http://github.com/usefedora/running_count"
25
- else
26
- raise "RubyGems 2.0 or newer is required to protect against " \
27
- "public gem pushes."
28
- end
17
+ spec.metadata["allowed_push_host"] = "https://rubygems.org"
18
+ spec.metadata["homepage_uri"] = spec.homepage
19
+ spec.metadata["source_code_uri"] = "https://github.com/UseFedora/running_count"
20
+ spec.metadata["changelog_uri"] = "https://github.com/UseFedora/running_count"
29
21
 
30
22
  # Specify which files should be added to the gem when it is released.
31
23
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
32
- spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
24
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
33
25
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
34
26
  end
35
27
  spec.bindir = "exe"
@@ -37,12 +29,11 @@ Gem::Specification.new do |spec|
37
29
  spec.require_paths = ["lib"]
38
30
 
39
31
  spec.add_dependency "activesupport"
40
- spec.add_dependency "redis-rails", ">= 5.0"
41
- spec.add_dependency "pg", "0.20.0"
32
+ spec.add_dependency "redis"
33
+ spec.add_dependency "pg", ">= 0.20.0"
42
34
 
43
- spec.add_development_dependency "rake", ">= 10.0"
44
- spec.add_development_dependency "rspec", ">= 3.0"
35
+ spec.add_development_dependency "rake"
36
+ spec.add_development_dependency "rspec"
45
37
  spec.add_development_dependency "rails"
46
- spec.add_development_dependency "database_cleaner", ">= 1.7.0"
47
- spec.add_development_dependency "pry-byebug", ">= 3.6.0"
38
+ spec.add_development_dependency "database_cleaner"
48
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: running_count
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Isaac Priestley
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-29 00:00:00.000000000 Z
11
+ date: 2020-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -25,31 +25,31 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: redis-rails
28
+ name: redis
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '5.0'
33
+ version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '5.0'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
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.20.0
48
48
  type: :runtime
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.20.0
55
55
  - !ruby/object:Gem::Dependency
@@ -58,28 +58,28 @@ dependencies:
58
58
  requirements:
59
59
  - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: '10.0'
61
+ version: '0'
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: '10.0'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rspec
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '3.0'
75
+ version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '3.0'
82
+ version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rails
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -100,29 +100,16 @@ dependencies:
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: 1.7.0
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: 1.7.0
111
- - !ruby/object:Gem::Dependency
112
- name: pry-byebug
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: 3.6.0
103
+ version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
108
  - - ">="
123
109
  - !ruby/object:Gem::Version
124
- version: 3.6.0
125
- description: Write a longer description or delete this line.
110
+ version: '0'
111
+ description: Counter caches for Rails applications, including cached running counts.
112
+ Using redis and native PostgreSQL features for performance gains
126
113
  email:
127
114
  - isaac@teachable.com
128
115
  executables: []
@@ -148,14 +135,14 @@ files:
148
135
  - lib/running_count/storage.rb
149
136
  - lib/running_count/version.rb
150
137
  - running_count.gemspec
151
- homepage: http://www.teachable.com
138
+ homepage: https://github.com/UseFedora/running_count
152
139
  licenses:
153
140
  - MIT
154
141
  metadata:
155
142
  allowed_push_host: https://rubygems.org
156
- homepage_uri: http://www.teachable.com
157
- source_code_uri: http://github.com/usefedora/running_count
158
- changelog_uri: http://github.com/usefedora/running_count
143
+ homepage_uri: https://github.com/UseFedora/running_count
144
+ source_code_uri: https://github.com/UseFedora/running_count
145
+ changelog_uri: https://github.com/UseFedora/running_count
159
146
  post_install_message:
160
147
  rdoc_options: []
161
148
  require_paths:
@@ -164,16 +151,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
164
151
  requirements:
165
152
  - - ">="
166
153
  - !ruby/object:Gem::Version
167
- version: '0'
154
+ version: 2.3.0
168
155
  required_rubygems_version: !ruby/object:Gem::Requirement
169
156
  requirements:
170
157
  - - ">="
171
158
  - !ruby/object:Gem::Version
172
159
  version: '0'
173
160
  requirements: []
174
- rubyforge_project:
175
- rubygems_version: 2.7.4
161
+ rubygems_version: 3.0.8
176
162
  signing_key:
177
163
  specification_version: 4
178
- summary: Write a short summary, because RubyGems requires one.
164
+ summary: Counter caches for Rails applications, including cached running counts.
179
165
  test_files: []