public_activity 2.0.2 → 3.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aa4a946e3b5ec45ad643a08338a4b150ddb912fa0489e053dc9d310727cc9367
4
- data.tar.gz: ba63edb8f4731b604cee4043fd31bf76abdcf45ca9eab971502ec7caa1b31939
3
+ metadata.gz: 37a2aa6ff87085d7785379491f35a7ff8a72b7683817ba06606f5c96e641985d
4
+ data.tar.gz: 628131cc96ae6dc8c871e8ef0a480331f635fddafcd4f162e18dedf9aa89d25d
5
5
  SHA512:
6
- metadata.gz: 04f48aec79e23c926de4ebe00219c611d5483e1eb9029cd400b501625eb1ca5d4be4b8071f6ae4552888175f2bfa4b7003b4fac9d610b4a649a8a5925d7d9676
7
- data.tar.gz: cb0abcede1c4c52de2ce8f572b25818f98803413e95959fed94382e3f65b843ae1caab9db10ca76dbfba1b50174e90935d424f58231014803ba017f90ee90416
6
+ metadata.gz: 14419c7a77acd1d7332a1ccde54aa6a563b22b2898e1d8e62c6d569240ed7b3b09adfb36388e35115987f872cb17ad9c78c5723a2f77307527e670c0beea05bd
7
+ data.tar.gz: 6b020d2ad93e424b727c10565b6b38c0d1073f4e5c79bd8c1162827c11a23b1424160b6de728af27dc03ca2e42186385bf5df5b6fcf802c581567f42d4f2aecf
data/README.md CHANGED
@@ -1,16 +1,12 @@
1
- # PublicActivity [![Build Status](https://secure.travis-ci.org/chaps-io/public_activity.svg)](http://travis-ci.org/chaps-io/public_activity) [![Code Climate](https://codeclimate.com/github/chaps-io/public_activity.svg)](https://codeclimate.com/github/chaps-io/public_activity) [![Gem Version](https://badge.fury.io/rb/public_activity.svg)](http://badge.fury.io/rb/public_activity)
1
+ # PublicActivity [![Code Climate](https://codeclimate.com/github/chaps-io/public_activity.svg)](https://codeclimate.com/github/chaps-io/public_activity) [![Gem Version](https://badge.fury.io/rb/public_activity.svg)](http://badge.fury.io/rb/public_activity)
2
2
 
3
3
  `public_activity` provides easy activity tracking for your **ActiveRecord**, **Mongoid 3** and **MongoMapper** models
4
- in Rails 5.0+. Simply put: it records what has been changed or created and gives you the ability to present those
4
+ in Rails 6.1+. Simply put: it records what has been changed or created and gives you the ability to present those
5
5
  recorded activities to users - similarly to how GitHub does it.
6
6
 
7
- ## Rails 7
8
-
9
- **As of version 2.0.0, public_activity also supports Rails up to 7.0.**
10
-
11
7
  ## Table of contents
12
8
 
13
- - [Rails 7](#rails-7)
9
+ - [Ruby/Rails version support](#ruby-rails-version-support)
14
10
  - [Table of contents](#table-of-contents)
15
11
  - [Example](#example)
16
12
  - [Online demo](#online-demo)
@@ -31,15 +27,22 @@ recorded activities to users - similarly to how GitHub does it.
31
27
  - [Help](#help)
32
28
  - [License](#license)
33
29
 
30
+ ## Ruby/Rails version support
31
+
32
+ Version `~> 3.0`` supports Ruby 3.0+ and Rails 6.1+. For older Ruby versions
33
+ (≤2.7) and Rails 5.0+ you can use version `~> 2.0` until you can upgrade to
34
+ newer versions of Ruby + Rails.
35
+
36
+ Issues related to those unsupported versions of Ruby/Rails will be closed
37
+ without resolution and PRs will not be accepted.
38
+
34
39
  ## Example
35
40
 
36
41
  Here is a simple example showing what this gem is about:
37
42
 
38
43
  ![Example usage](http://i.imgur.com/q0TVx.png)
39
44
 
40
- ### Online demo
41
-
42
- You can see an actual application using this gem here: http://public-activity-example.herokuapp.com/feed
45
+ ### Demo app
43
46
 
44
47
  The source code of the demo is hosted here: https://github.com/pokonski/activity_blog
45
48
 
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Migration responsible for creating a table with activities
4
- class CreateActivities < ActiveRecord::Migration[5.0]
4
+ class CreateActivities < ActiveRecord::Migration[6.1]
5
5
  def self.up
6
6
  create_table :activities do |t|
7
7
  t.belongs_to :trackable, polymorphic: true
@@ -123,7 +123,7 @@ module PublicActivity
123
123
  # @!endgroup
124
124
 
125
125
  # Provides some global methods for every model class.
126
- module ClassMethods
126
+ class_methods do
127
127
  #
128
128
  # @since 1.0.0
129
129
  # @api private
@@ -147,10 +147,8 @@ module PublicActivity
147
147
  # @api private
148
148
  def get_hook(key)
149
149
  key = key.to_sym
150
- if self.activity_hooks.has_key?(key) and self.activity_hooks[key].is_a? Proc
151
- self.activity_hooks[key]
152
- else
153
- nil
150
+ if activity_hooks.key?(key) && activity_hooks[key].is_a?(Proc)
151
+ activity_hooks[key]
154
152
  end
155
153
  end
156
154
  end
@@ -181,7 +179,7 @@ module PublicActivity
181
179
  # @since 0.4.0
182
180
  # @api private
183
181
  def call_hook_safe(key)
184
- hook = self.get_hook(key)
182
+ hook = get_hook(key)
185
183
  if hook
186
184
  # provides hook with model and controller
187
185
  hook.call(self, PublicActivity.get_controller)
@@ -248,7 +246,8 @@ module PublicActivity
248
246
  # @option options [Hash] :params Parameters, see
249
247
  # {PublicActivity.resolve_value}
250
248
  def create_activity(*args)
251
- return unless self.public_activity_enabled?
249
+ return unless public_activity_enabled?
250
+
252
251
  options = prepare_settings(*args)
253
252
 
254
253
  if call_hook_safe(options[:key].split('.').last)
@@ -264,12 +263,13 @@ module PublicActivity
264
263
  #
265
264
  # @see #create_activity
266
265
  def create_activity!(*args)
267
- return unless self.public_activity_enabled?
266
+ return unless public_activity_enabled?
267
+
268
268
  options = prepare_settings(*args)
269
269
 
270
270
  if call_hook_safe(options[:key].split('.').last)
271
271
  reset_activity_instance_options
272
- return PublicActivity::Adapter.create_activity!(self, options)
272
+ PublicActivity::Adapter.create_activity!(self, options)
273
273
  end
274
274
  end
275
275
 
@@ -306,7 +306,7 @@ module PublicActivity
306
306
  # @private
307
307
  def prepare_custom_fields(options)
308
308
  customs = self.class.activity_custom_fields_global.clone
309
- customs.merge!(self.activity_custom_fields) if self.activity_custom_fields
309
+ customs.merge!(activity_custom_fields) if activity_custom_fields
310
310
  customs.merge!(options)
311
311
  customs.each do |k, v|
312
312
  customs[k] = PublicActivity.resolve_value(self, v)
@@ -319,7 +319,7 @@ module PublicActivity
319
319
  def prepare_parameters(options)
320
320
  params = {}
321
321
  params.merge!(self.class.activity_params_global)
322
- params.merge!(self.activity_params) if self.activity_params
322
+ params.merge!(activity_params) if activity_params
323
323
  params.merge!([options.delete(:parameters), options.delete(:params), {}].compact.first)
324
324
  params.each { |k, v| params[k] = PublicActivity.resolve_value(self, v) }
325
325
  end
@@ -329,7 +329,7 @@ module PublicActivity
329
329
  # @private
330
330
  def prepare_relation(name, options)
331
331
  PublicActivity.resolve_value(self,
332
- (options.has_key?(name) ? options[name] : (
332
+ (options.key?(name) ? options[name] : (
333
333
  self.send("activity_#{name}") || self.class.send("activity_#{name}_global")
334
334
  )
335
335
  )
@@ -343,7 +343,7 @@ module PublicActivity
343
343
  def prepare_key(action, options = {})
344
344
  (
345
345
  options[:key] ||
346
- self.activity_key ||
346
+ activity_key ||
347
347
  ((self.class.name.underscore.gsub('/', '_') + "." + action.to_s) if action)
348
348
  ).try(:to_s)
349
349
  end
@@ -14,7 +14,7 @@ module PublicActivity
14
14
  # enabled false
15
15
  # table_name "activities"
16
16
  # end
17
- def self.set &block
17
+ def self.set(&block)
18
18
  b = Block.new
19
19
  b.instance_eval(&block)
20
20
  instance
@@ -31,13 +31,13 @@ module PublicActivity
31
31
 
32
32
  # alias for {#enabled}
33
33
  # @see #enabled
34
- def self.enabled=(en = nil)
35
- enabled(en)
34
+ def self.enabled=(value = nil)
35
+ enabled(value)
36
36
  end
37
37
 
38
38
  # instance version of {Config#orm}
39
39
  # @see Config#orm
40
- def orm(orm=nil)
40
+ def orm(orm = nil)
41
41
  self.class.orm(orm)
42
42
  end
43
43
 
@@ -49,8 +49,8 @@ module PublicActivity
49
49
 
50
50
  # instance version of {Config#enabled}
51
51
  # @see Config#orm
52
- def enabled(en = nil)
53
- self.class.enabled(en)
52
+ def enabled(value = nil)
53
+ self.class.enabled(value)
54
54
  end
55
55
 
56
56
  # Set the ORM for use by PublicActivity.
@@ -70,12 +70,12 @@ module PublicActivity
70
70
  end
71
71
  end
72
72
 
73
- def self.enabled(en = nil)
74
- if en.nil?
75
- value = Thread.current[:public_activity_enabled]
76
- value.nil? ? true : value
73
+ def self.enabled(value = nil)
74
+ if value.nil?
75
+ val = Thread.current[:public_activity_enabled]
76
+ val.nil? ? true : val
77
77
  else
78
- Thread.current[:public_activity_enabled] = en
78
+ Thread.current[:public_activity_enabled] = value
79
79
  end
80
80
  end
81
81
 
@@ -88,12 +88,11 @@ module PublicActivity
88
88
 
89
89
  # Decides whether to enable PublicActivity.
90
90
  # @param en [Boolean] Enabled?
91
- def enabled(en = nil)
92
- @enabled = (en.nil? ? @enabled : en)
91
+ def enabled(value = nil)
92
+ @enabled = (value.nil? ? @enabled : value)
93
93
  end
94
94
 
95
- # Sets the table_name
96
- # for the model
95
+ # Sets the table_name for the model
97
96
  def table_name(name = nil)
98
97
  @table_name = (name.nil? ? @table_name : name)
99
98
  end
@@ -5,7 +5,7 @@ module PublicActivity
5
5
  module Activist
6
6
  # Delegates to configured ORM.
7
7
  def self.included(base)
8
- base.extend PublicActivity::inherit_orm("Activist")
8
+ base.extend PublicActivity.inherit_orm('Activist')
9
9
  end
10
10
  end
11
11
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PublicActivity
4
- class Activity < inherit_orm("Activity")
4
+ class Activity < inherit_orm
5
5
  end
6
6
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module PublicActivity
4
4
  # Loads database-specific routines for use by PublicActivity.
5
- class Adapter < inherit_orm("Adapter")
5
+ class Adapter < inherit_orm('Adapter')
6
6
  end
7
7
  end
@@ -5,7 +5,7 @@ module PublicActivity
5
5
  module Trackable
6
6
  # Delegates to ORM.
7
7
  def self.included(base)
8
- base.extend PublicActivity::inherit_orm("Trackable")
8
+ base.extend PublicActivity.inherit_orm('Trackable')
9
9
  end
10
10
  end
11
11
  end
@@ -19,15 +19,16 @@ module PublicActivity
19
19
  # end
20
20
  #
21
21
  # In controller:
22
- # User.first.activities
22
+ # User.first.activities_as_owner
23
+ # User.first.activities_as_recipient
23
24
  #
24
25
  def activist
25
26
  has_many :activities_as_owner,
26
- :class_name => "::PublicActivity::Activity",
27
- :as => :owner
27
+ class_name: '::PublicActivity::Activity',
28
+ as: :owner
28
29
  has_many :activities_as_recipient,
29
- :class_name => "::PublicActivity::Activity",
30
- :as => :recipient
30
+ class_name: '::PublicActivity::Activity',
31
+ as: :recipient
31
32
  end
32
33
  end
33
34
  end
@@ -1,13 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PublicActivity
4
-
5
- if not defined? ::PG::ConnectionBad
4
+ unless defined? ::PG::ConnectionBad
6
5
  module ::PG
7
6
  class ConnectionBad < Exception; end
8
7
  end
9
8
  end
10
- if not defined? Mysql2::Error::ConnectionError
9
+ unless defined? Mysql2::Error::ConnectionError
11
10
  module Mysql2
12
11
  module Error
13
12
  class ConnectionError < Exception; end
@@ -27,42 +26,30 @@ module PublicActivity
27
26
  # Define polymorphic association to the parent
28
27
  belongs_to :trackable, polymorphic: true
29
28
 
30
- case ::ActiveRecord::VERSION::MAJOR
31
- when 5
32
- with_options(required: false) do
33
- # Define ownership to a resource responsible for this activity
34
- belongs_to :owner, polymorphic: true
35
- # Define ownership to a resource targeted by this activity
36
- belongs_to :recipient, polymorphic: true
37
- end
38
- when 6..7
39
- with_options(optional: true) do
40
- # Define ownership to a resource responsible for this activity
41
- belongs_to :owner, polymorphic: true
42
- # Define ownership to a resource targeted by this activity
43
- belongs_to :recipient, polymorphic: true
44
- end
29
+ with_options(optional: true) do
30
+ # Define ownership to a resource responsible for this activity
31
+ belongs_to :owner, polymorphic: true
32
+ # Define ownership to a resource targeted by this activity
33
+ belongs_to :recipient, polymorphic: true
45
34
  end
46
35
 
47
36
  # Serialize parameters Hash
48
37
  begin
49
38
  if table_exists?
50
- serialize :parameters, Hash unless [:json, :jsonb, :hstore].include?(columns_hash['parameters'].type)
39
+ unless %i[json jsonb hstore].include?(columns_hash['parameters'].type)
40
+ if ::ActiveRecord.version.release < Gem::Version.new('7.1')
41
+ serialize :parameters, Hash
42
+ else
43
+ serialize :parameters, coder: YAML, type: Hash
44
+ end
45
+ end
51
46
  else
52
47
  warn("[WARN] table #{name} doesn't exist. Skipping PublicActivity::Activity#parameters's serialization")
53
48
  end
54
49
  rescue ::ActiveRecord::NoDatabaseError
55
50
  warn("[WARN] database doesn't exist. Skipping PublicActivity::Activity#parameters's serialization")
56
- rescue ::ActiveRecord::ConnectionNotEstablished
57
- warn("[WARN] couldn't connect to database. Skipping PublicActivity::Activity#parameters's serialization")
58
- rescue ::PG::ConnectionBad
51
+ rescue ::ActiveRecord::ConnectionNotEstablished, ::PG::ConnectionBad, Mysql2::Error::ConnectionError
59
52
  warn("[WARN] couldn't connect to database. Skipping PublicActivity::Activity#parameters's serialization")
60
- rescue Mysql2::Error::ConnectionError
61
- warn("[WARN] couldn't connect to database. Skipping PublicActivity::Activity#parameters's serialization")
62
- end
63
-
64
- if ::ActiveRecord::VERSION::MAJOR < 4 || defined?(ProtectedAttributes)
65
- attr_accessible :key, :owner, :parameters, :recipient, :trackable
66
53
  end
67
54
  end
68
55
  end
@@ -9,7 +9,9 @@ module PublicActivity
9
9
  # Creates an association for activities where self is the *trackable*
10
10
  # object.
11
11
  def self.extended(base)
12
- base.has_many :activities, :class_name => "::PublicActivity::Activity", :as => :trackable
12
+ base.has_many :activities,
13
+ class_name: '::PublicActivity::Activity',
14
+ as: :trackable
13
15
  end
14
16
  end
15
17
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'active_record'
4
- require_relative 'active_record/activity.rb'
5
- require_relative 'active_record/adapter.rb'
6
- require_relative 'active_record/activist.rb'
7
- require_relative 'active_record/trackable.rb'
4
+ require_relative 'active_record/activity'
5
+ require_relative 'active_record/adapter'
6
+ require_relative 'active_record/activist'
7
+ require_relative 'active_record/trackable'
@@ -40,7 +40,7 @@ module PublicActivity
40
40
  end
41
41
 
42
42
  # Module with basic +tracked+ method that enables tracking models.
43
- module ClassMethods
43
+ class_methods do
44
44
  # Adds required callbacks for creating and updating
45
45
  # tracked models and adds +activities+ relation for listing
46
46
  # associated activities.
@@ -151,9 +151,7 @@ module PublicActivity
151
151
  update: Update
152
152
  }
153
153
 
154
- if options[:skip_defaults] == true
155
- return
156
- end
154
+ return if options[:skip_defaults] == true
157
155
 
158
156
  modules = if options[:except]
159
157
  defaults.except(*options[:except])
@@ -163,32 +161,30 @@ module PublicActivity
163
161
  defaults
164
162
  end
165
163
 
166
- modules.each do |key, value|
167
- include value
168
- end
164
+ modules.each_value { |mod| include mod }
169
165
  end
170
166
 
171
167
  def available_options
172
- [:skip_defaults, :only, :except, :on, :owner, :recipient, :params].freeze
168
+ %i[skip_defaults only except on owner recipient params].freeze
173
169
  end
174
170
 
175
171
  def assign_globals(options)
176
- [:owner, :recipient, :params].each do |key|
177
- if options[key]
178
- self.send("activity_#{key}_global=".to_sym, options.delete(key))
179
- end
172
+ %i[owner recipient params].each do |key|
173
+ next unless options[key]
174
+
175
+ send("activity_#{key}_global=".to_sym, options.delete(key))
180
176
  end
181
177
  end
182
178
 
183
179
  def assign_hooks(options)
184
- if options[:on].is_a?(Hash)
185
- self.activity_hooks = options[:on].select {|_, v| v.is_a? Proc}.symbolize_keys
186
- end
180
+ return unless options[:on].is_a?(Hash)
181
+
182
+ self.activity_hooks = options[:on].select { |_, v| v.is_a? Proc }.symbolize_keys
187
183
  end
188
184
 
189
185
  def assign_custom_fields(options)
190
186
  options.except(*available_options).each do |k, v|
191
- self.activity_custom_fields_global[k] = v
187
+ activity_custom_fields_global[k] = v
192
188
  end
193
189
  end
194
190
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module PublicActivity
4
4
  # A constant with gem's version
5
- VERSION = '2.0.2'
5
+ VERSION = '3.0.1'
6
6
  end
@@ -48,20 +48,21 @@ module PublicActivity
48
48
 
49
49
  # Method used to choose which ORM to load
50
50
  # when PublicActivity::Activity class is being autoloaded
51
- def self.inherit_orm(model="Activity")
51
+ def self.inherit_orm(model = 'Activity')
52
52
  orm = PublicActivity.config.orm
53
- require "public_activity/orm/#{orm.to_s}"
53
+ require "public_activity/orm/#{orm}"
54
54
  "PublicActivity::ORM::#{orm.to_s.classify}::#{model}".constantize
55
55
  end
56
56
 
57
57
  # Module to be included in ActiveRecord models. Adds required functionality.
58
58
  module Model
59
59
  extend ActiveSupport::Concern
60
+
60
61
  included do
61
62
  include Common
62
63
  include Deactivatable
63
64
  include Tracked
64
- include Activist # optional associations by recipient|owner
65
+ include Activist # optional associations by recipient|owner
65
66
  end
66
67
  end
67
68
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- class CreateArticles < ActiveRecord::Migration[5.0]
3
+ class CreateArticles < ActiveRecord::Migration[6.1]
4
4
  def self.up
5
5
  create_table :articles do |t|
6
6
  t.string :name
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- class CreateUsers < ActiveRecord::Migration[5.0]
3
+ class CreateUsers < ActiveRecord::Migration[6.1]
4
4
  def self.up
5
5
  create_table :users do |t|
6
6
  t.string :name
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- class AddNonstandardToActivities < ActiveRecord::Migration[5.0]
3
+ class AddNonstandardToActivities < ActiveRecord::Migration[6.1]
4
4
  def change
5
5
  change_table :activities do |t|
6
6
  t.string :nonstandard
@@ -16,12 +16,11 @@ describe 'PublicActivity::Activity Rendering' do
16
16
 
17
17
  describe '#render' do
18
18
  subject do
19
- s = PublicActivity::Activity.new(key: 'activity.test', parameters: { one: 1 })
20
- s.save && s
19
+ PublicActivity::Activity.new(key: 'activity.test', parameters: { one: 1 }).tap(&:save)
21
20
  end
22
21
 
23
22
  let(:template_output) { "<strong>1, 2</strong>\n<em>activity.test, #{subject.id}</em>\n" }
24
- before { @controller.view_paths << File.expand_path('views', __dir__) }
23
+ before { @controller.class.prepend_view_path File.expand_path('views', __dir__) }
25
24
 
26
25
  it 'uses view partials when available' do
27
26
  PublicActivity.set_controller(Struct.new(:current_user).new('fake'))
@@ -45,7 +44,6 @@ describe 'PublicActivity::Activity Rendering' do
45
44
 
46
45
  it 'uses translations only when requested' do
47
46
  I18n.config.backend.store_translations(:en, activity: { test: '%{one} %{two}' })
48
- @controller.view_paths.paths.clear
49
47
  subject.render(self, two: 2, display: :i18n)
50
48
  assert_equal rendered, '1 2'
51
49
  end
data/test/test_helper.rb CHANGED
@@ -32,7 +32,6 @@ when :active_record
32
32
  active_record_version = ActiveRecord.version.release
33
33
 
34
34
  if active_record_version >= Gem::Version.new('6.0.0')
35
- schema_path = File.expand_path('../tmp/schema.rb', File.dirname(__FILE__))
36
35
  ActiveRecord::MigrationContext.new(migrations_path, ActiveRecord::SchemaMigration).migrate
37
36
  elsif active_record_version >= Gem::Version.new('5.2.0')
38
37
  ActiveRecord::MigrationContext.new(migrations_path).migrate
@@ -96,7 +95,13 @@ when :mongoid
96
95
  when :mongo_mapper
97
96
  require 'mongo_mapper'
98
97
 
99
- config = YAML.load(File.read('test/mongo_mapper.yml'))
98
+ # TODO: remove when no longer support 2.5.8
99
+ config =
100
+ if RUBY_VERSION >= '2.6.0'
101
+ YAML.safe_load(File.read('test/mongo_mapper.yml'), aliases: true)
102
+ else
103
+ YAML.safe_load(File.read('test/mongo_mapper.yml'), [], [], true)
104
+ end
100
105
  MongoMapper.setup(config, :test)
101
106
 
102
107
  class User
@@ -127,12 +132,8 @@ when :mongo_mapper
127
132
  end
128
133
  end
129
134
 
130
- class ViewSpec < MiniTest::Spec
131
- if ActiveSupport.version >= Gem::Version.new('5.2.0')
132
- prepend ActiveSupport::Testing::SetupAndTeardown
133
- else
134
- include ActiveSupport::Testing::SetupAndTeardown
135
- end
135
+ class ViewSpec < Minitest::Spec
136
+ prepend ActiveSupport::Testing::SetupAndTeardown
136
137
  include ActionView::TestCase::Behavior
137
138
  end
138
- MiniTest::Spec.register_spec_type(/Rendering$/, ViewSpec)
139
+ Minitest::Spec.register_spec_type(/Rendering$/, ViewSpec)
metadata CHANGED
@@ -1,15 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: public_activity
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.2
4
+ version: 3.0.1
5
5
  platform: ruby
6
6
  authors:
7
+ - Juri Hahn
7
8
  - Piotrek Okoński
8
9
  - Kuba Okoński
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2022-07-17 00:00:00.000000000 Z
13
+ date: 2024-02-14 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: actionpack
@@ -17,56 +18,56 @@ dependencies:
17
18
  requirements:
18
19
  - - ">="
19
20
  - !ruby/object:Gem::Version
20
- version: 5.0.0
21
+ version: 6.1.0
21
22
  type: :runtime
22
23
  prerelease: false
23
24
  version_requirements: !ruby/object:Gem::Requirement
24
25
  requirements:
25
26
  - - ">="
26
27
  - !ruby/object:Gem::Version
27
- version: 5.0.0
28
+ version: 6.1.0
28
29
  - !ruby/object:Gem::Dependency
29
- name: railties
30
+ name: i18n
30
31
  requirement: !ruby/object:Gem::Requirement
31
32
  requirements:
32
33
  - - ">="
33
34
  - !ruby/object:Gem::Version
34
- version: 5.0.0
35
+ version: 0.5.0
35
36
  type: :runtime
36
37
  prerelease: false
37
38
  version_requirements: !ruby/object:Gem::Requirement
38
39
  requirements:
39
40
  - - ">="
40
41
  - !ruby/object:Gem::Version
41
- version: 5.0.0
42
+ version: 0.5.0
42
43
  - !ruby/object:Gem::Dependency
43
- name: i18n
44
+ name: railties
44
45
  requirement: !ruby/object:Gem::Requirement
45
46
  requirements:
46
47
  - - ">="
47
48
  - !ruby/object:Gem::Version
48
- version: 0.5.0
49
+ version: 6.1.0
49
50
  type: :runtime
50
51
  prerelease: false
51
52
  version_requirements: !ruby/object:Gem::Requirement
52
53
  requirements:
53
54
  - - ">="
54
55
  - !ruby/object:Gem::Version
55
- version: 0.5.0
56
+ version: 6.1.0
56
57
  - !ruby/object:Gem::Dependency
57
58
  name: activerecord
58
59
  requirement: !ruby/object:Gem::Requirement
59
60
  requirements:
60
61
  - - ">="
61
62
  - !ruby/object:Gem::Version
62
- version: '5.0'
63
+ version: '6.1'
63
64
  type: :runtime
64
65
  prerelease: false
65
66
  version_requirements: !ruby/object:Gem::Requirement
66
67
  requirements:
67
68
  - - ">="
68
69
  - !ruby/object:Gem::Version
69
- version: '5.0'
70
+ version: '6.1'
70
71
  - !ruby/object:Gem::Dependency
71
72
  name: appraisal
72
73
  requirement: !ruby/object:Gem::Requirement
@@ -82,19 +83,19 @@ dependencies:
82
83
  - !ruby/object:Gem::Version
83
84
  version: '0'
84
85
  - !ruby/object:Gem::Dependency
85
- name: sqlite3
86
+ name: minitest
86
87
  requirement: !ruby/object:Gem::Requirement
87
88
  requirements:
88
- - - "~>"
89
+ - - ">="
89
90
  - !ruby/object:Gem::Version
90
- version: 1.4.1
91
+ version: '0'
91
92
  type: :development
92
93
  prerelease: false
93
94
  version_requirements: !ruby/object:Gem::Requirement
94
95
  requirements:
95
- - - "~>"
96
+ - - ">="
96
97
  - !ruby/object:Gem::Version
97
- version: 1.4.1
98
+ version: '0'
98
99
  - !ruby/object:Gem::Dependency
99
100
  name: mocha
100
101
  requirement: !ruby/object:Gem::Requirement
@@ -110,7 +111,7 @@ dependencies:
110
111
  - !ruby/object:Gem::Version
111
112
  version: '0'
112
113
  - !ruby/object:Gem::Dependency
113
- name: simplecov
114
+ name: pry
114
115
  requirement: !ruby/object:Gem::Requirement
115
116
  requirements:
116
117
  - - ">="
@@ -124,7 +125,7 @@ dependencies:
124
125
  - !ruby/object:Gem::Version
125
126
  version: '0'
126
127
  - !ruby/object:Gem::Dependency
127
- name: test-unit
128
+ name: redcarpet
128
129
  requirement: !ruby/object:Gem::Requirement
129
130
  requirements:
130
131
  - - ">="
@@ -138,7 +139,7 @@ dependencies:
138
139
  - !ruby/object:Gem::Version
139
140
  version: '0'
140
141
  - !ruby/object:Gem::Dependency
141
- name: minitest
142
+ name: simplecov
142
143
  requirement: !ruby/object:Gem::Requirement
143
144
  requirements:
144
145
  - - ">="
@@ -152,21 +153,21 @@ dependencies:
152
153
  - !ruby/object:Gem::Version
153
154
  version: '0'
154
155
  - !ruby/object:Gem::Dependency
155
- name: redcarpet
156
+ name: sqlite3
156
157
  requirement: !ruby/object:Gem::Requirement
157
158
  requirements:
158
159
  - - ">="
159
160
  - !ruby/object:Gem::Version
160
- version: '0'
161
+ version: 1.4.1
161
162
  type: :development
162
163
  prerelease: false
163
164
  version_requirements: !ruby/object:Gem::Requirement
164
165
  requirements:
165
166
  - - ">="
166
167
  - !ruby/object:Gem::Version
167
- version: '0'
168
+ version: 1.4.1
168
169
  - !ruby/object:Gem::Dependency
169
- name: yard
170
+ name: test-unit
170
171
  requirement: !ruby/object:Gem::Requirement
171
172
  requirements:
172
173
  - - ">="
@@ -180,7 +181,7 @@ dependencies:
180
181
  - !ruby/object:Gem::Version
181
182
  version: '0'
182
183
  - !ruby/object:Gem::Dependency
183
- name: pry
184
+ name: yard
184
185
  requirement: !ruby/object:Gem::Requirement
185
186
  requirements:
186
187
  - - ">="
@@ -196,7 +197,7 @@ dependencies:
196
197
  description: Easy activity tracking for your ActiveRecord models. Provides Activity
197
198
  model with details about actions performed by your users, like adding comments,
198
199
  responding etc.
199
- email: piotrek@okonski.org
200
+ email: juri.hahn+public-activity@gmail.com
200
201
  executables: []
201
202
  extensions: []
202
203
  extra_rdoc_files: []
@@ -262,10 +263,16 @@ files:
262
263
  - test/views/custom/_test.erb
263
264
  - test/views/layouts/_activity.erb
264
265
  - test/views/public_activity/_test.erb
265
- homepage: https://github.com/pokonski/public_activity
266
+ homepage: https://github.com/public-activity/public_activity
266
267
  licenses:
267
268
  - MIT
268
- metadata: {}
269
+ metadata:
270
+ bug_tracker_uri: https://github.com/public-activity/public_activity/issues
271
+ changelog_uri: https://github.com/public-activity/public_activity/blob/main/CHANGELOG.md
272
+ documentation_uri: https://rubydoc.info/gems/public_activity
273
+ homepage_uri: https://github.com/public-activity/public_activity
274
+ source_code_uri: https://github.com/public-activity/public_activity
275
+ rubygems_mfa_required: 'true'
269
276
  post_install_message:
270
277
  rdoc_options: []
271
278
  require_paths:
@@ -274,14 +281,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
274
281
  requirements:
275
282
  - - ">="
276
283
  - !ruby/object:Gem::Version
277
- version: 2.5.0
284
+ version: 3.0.0
278
285
  required_rubygems_version: !ruby/object:Gem::Requirement
279
286
  requirements:
280
287
  - - ">="
281
288
  - !ruby/object:Gem::Version
282
289
  version: '0'
283
290
  requirements: []
284
- rubygems_version: 3.3.17
291
+ rubygems_version: 3.5.6
285
292
  signing_key:
286
293
  specification_version: 4
287
294
  summary: Easy activity tracking for ActiveRecord models