lite-report 1.0.6 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b94708f3ef60f8780c0444e9ea75767073b8c6e93ca3ec2259d3d9fab20f4e3f
4
- data.tar.gz: c47f0fcc4a55fd85b52d479fab6b79f66c49ef7644fbd2eca93e1638142e2437
3
+ metadata.gz: 9036679cbf5e9c0087434882b116a86c3b15b7f227af5d1d797c4fcfed6ae5e4
4
+ data.tar.gz: 1e75ef8eb0a7ac4b288445ac4795cc28956da9ea723bf8d1aa1c7d428fc2402d
5
5
  SHA512:
6
- metadata.gz: ec0aaa4561df1d5ed44c48897aefc7580769936e6ece768679321c8208d43b1def9308982e9f3320b040bed9d2a98c5641ae8e381524c2b1a8d7c3e7a7b1eda4
7
- data.tar.gz: 278459ea22c634e0e38222af6b55031a4d02ed7831eb1f67ac625a136ee88e4e9543990c6b67266451e4f22928a29e76df81f4b4ca28c1a1f621ed9f1adbc9b7
6
+ metadata.gz: ed9d506a02de75f5edccd31e1f76890c4855a23863a737fadce59f4ea4a696e2da4c35bf3140096fdb1c0a405a0e8abd88fc4dc9d0fff9f7e36b02f440e8e90f
7
+ data.tar.gz: 1e38f4cf3c36b81eba6c603b47c2a8fffba07e3cc2c9a6558a9b99fb95266ae68da33cc10a219f02401f9a51542d2b4a609d51637d1b16cf86526216a0d6a3a9
data/.rubocop.yml CHANGED
@@ -1,8 +1,9 @@
1
1
  require:
2
2
  - rubocop-performance
3
+ - rubocop-rake
3
4
  - rubocop-rspec
4
5
  AllCops:
5
- TargetRubyVersion: 2.7
6
+ TargetRubyVersion: 3.0
6
7
  NewCops: enable
7
8
  DisplayCopNames: true
8
9
  DisplayStyleGuide: true
@@ -31,6 +32,8 @@ Metrics/BlockLength:
31
32
  - '*.gemspec'
32
33
  RSpec/ExampleLength:
33
34
  Enabled: false
35
+ Style/ArgumentsForwarding:
36
+ Enabled: false
34
37
  Style/ClassAndModuleChildren:
35
38
  Enabled: false
36
39
  Style/Documentation:
data/CHANGELOG.md CHANGED
@@ -6,6 +6,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [1.3.0] - 2021-07-19
10
+ ### Added
11
+ - Added Ruby 3.0 support
12
+
13
+ ## [1.2.0] - 2021-07-18
14
+ ### Removed
15
+ - Removed `activerecord-import` dependency
16
+ - Removed `deep_pluck` dependency
17
+
18
+ ## [1.1.1] - 2021-05-07
19
+ ### Changed
20
+ - Linter fixes
21
+
22
+ ## [1.1.0] - 2021-01-06
23
+ ### Added
24
+ - Added Exporter helper class
25
+ - Added rubocop-rake linter
26
+
9
27
  ## [1.0.6] - 2020-10-10
10
28
  ### Added
11
29
  - Added improved Ruby 2.7 support
data/Gemfile.lock CHANGED
@@ -1,75 +1,70 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lite-report (1.0.6)
4
+ lite-report (1.3.0)
5
5
  activerecord
6
- activerecord-import
7
- deep_pluck
8
6
 
9
7
  GEM
10
8
  remote: https://rubygems.org/
11
9
  specs:
12
- actionpack (6.0.3.4)
13
- actionview (= 6.0.3.4)
14
- activesupport (= 6.0.3.4)
15
- rack (~> 2.0, >= 2.0.8)
10
+ actionpack (6.1.4)
11
+ actionview (= 6.1.4)
12
+ activesupport (= 6.1.4)
13
+ rack (~> 2.0, >= 2.0.9)
16
14
  rack-test (>= 0.6.3)
17
15
  rails-dom-testing (~> 2.0)
18
16
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
19
- actionview (6.0.3.4)
20
- activesupport (= 6.0.3.4)
17
+ actionview (6.1.4)
18
+ activesupport (= 6.1.4)
21
19
  builder (~> 3.1)
22
20
  erubi (~> 1.4)
23
21
  rails-dom-testing (~> 2.0)
24
22
  rails-html-sanitizer (~> 1.1, >= 1.2.0)
25
- activemodel (6.0.3.4)
26
- activesupport (= 6.0.3.4)
27
- activerecord (6.0.3.4)
28
- activemodel (= 6.0.3.4)
29
- activesupport (= 6.0.3.4)
30
- activerecord-import (1.0.6)
31
- activerecord (>= 3.2)
32
- activesupport (6.0.3.4)
23
+ activemodel (6.1.4)
24
+ activesupport (= 6.1.4)
25
+ activerecord (6.1.4)
26
+ activemodel (= 6.1.4)
27
+ activesupport (= 6.1.4)
28
+ activesupport (6.1.4)
33
29
  concurrent-ruby (~> 1.0, >= 1.0.2)
34
- i18n (>= 0.7, < 2)
35
- minitest (~> 5.1)
36
- tzinfo (~> 1.1)
37
- zeitwerk (~> 2.2, >= 2.2.2)
38
- ast (2.4.1)
30
+ i18n (>= 1.6, < 2)
31
+ minitest (>= 5.1)
32
+ tzinfo (~> 2.0)
33
+ zeitwerk (~> 2.3)
34
+ ast (2.4.2)
39
35
  builder (3.2.4)
40
36
  colorize (0.8.1)
41
- concurrent-ruby (1.1.7)
37
+ concurrent-ruby (1.1.9)
42
38
  crass (1.0.6)
43
- database_cleaner (1.8.5)
44
- deep_pluck (1.1.4)
45
- activerecord (>= 3)
46
- pluck_all (>= 1.2.3)
47
- rails_compatibility (>= 0.0.1)
39
+ database_cleaner (2.0.1)
40
+ database_cleaner-active_record (~> 2.0.0)
41
+ database_cleaner-active_record (2.0.1)
42
+ activerecord (>= 5.a)
43
+ database_cleaner-core (~> 2.0.0)
44
+ database_cleaner-core (2.0.1)
48
45
  diff-lcs (1.4.4)
49
- erubi (1.9.0)
50
- fasterer (0.8.3)
46
+ erubi (1.10.0)
47
+ fasterer (0.9.0)
51
48
  colorize (~> 0.7)
52
49
  ruby_parser (>= 3.14.1)
53
50
  generator_spec (0.9.4)
54
51
  activesupport (>= 3.0.0)
55
52
  railties (>= 3.0.0)
56
- i18n (1.8.5)
53
+ i18n (1.8.10)
57
54
  concurrent-ruby (~> 1.0)
58
- loofah (2.7.0)
55
+ loofah (2.10.0)
59
56
  crass (~> 1.0.2)
60
57
  nokogiri (>= 1.5.9)
61
58
  method_source (1.0.0)
62
- mini_portile2 (2.4.0)
63
- minitest (5.14.2)
64
- nokogiri (1.10.10)
65
- mini_portile2 (~> 2.4.0)
66
- parallel (1.19.2)
67
- parser (2.7.2.0)
59
+ mini_portile2 (2.5.3)
60
+ minitest (5.14.4)
61
+ nokogiri (1.11.7)
62
+ mini_portile2 (~> 2.5.0)
63
+ racc (~> 1.4)
64
+ parallel (1.20.1)
65
+ parser (3.0.2.0)
68
66
  ast (~> 2.4.1)
69
- pluck_all (2.0.4)
70
- activesupport (>= 3.0.0)
71
- polyamorous (2.3.2)
72
- activerecord (>= 5.2.1)
67
+ racc (1.5.2)
73
68
  rack (2.2.3)
74
69
  rack-test (1.1.0)
75
70
  rack (>= 1.0, < 3)
@@ -78,71 +73,70 @@ GEM
78
73
  nokogiri (>= 1.6)
79
74
  rails-html-sanitizer (1.3.0)
80
75
  loofah (~> 2.3)
81
- rails_compatibility (0.0.2)
82
- activerecord (>= 3)
83
- railties (6.0.3.4)
84
- actionpack (= 6.0.3.4)
85
- activesupport (= 6.0.3.4)
76
+ railties (6.1.4)
77
+ actionpack (= 6.1.4)
78
+ activesupport (= 6.1.4)
86
79
  method_source
87
- rake (>= 0.8.7)
88
- thor (>= 0.20.3, < 2.0)
80
+ rake (>= 0.13)
81
+ thor (~> 1.0)
89
82
  rainbow (3.0.0)
90
- rake (13.0.1)
91
- ransack (2.3.2)
92
- activerecord (>= 5.2.1)
93
- activesupport (>= 5.2.1)
83
+ rake (13.0.6)
84
+ ransack (2.4.2)
85
+ activerecord (>= 5.2.4)
86
+ activesupport (>= 5.2.4)
94
87
  i18n
95
- polyamorous (= 2.3.2)
96
- regexp_parser (1.8.1)
97
- rexml (3.2.4)
98
- rspec (3.9.0)
99
- rspec-core (~> 3.9.0)
100
- rspec-expectations (~> 3.9.0)
101
- rspec-mocks (~> 3.9.0)
102
- rspec-core (3.9.3)
103
- rspec-support (~> 3.9.3)
104
- rspec-expectations (3.9.2)
88
+ regexp_parser (2.1.1)
89
+ rexml (3.2.5)
90
+ rspec (3.10.0)
91
+ rspec-core (~> 3.10.0)
92
+ rspec-expectations (~> 3.10.0)
93
+ rspec-mocks (~> 3.10.0)
94
+ rspec-core (3.10.1)
95
+ rspec-support (~> 3.10.0)
96
+ rspec-expectations (3.10.1)
105
97
  diff-lcs (>= 1.2.0, < 2.0)
106
- rspec-support (~> 3.9.0)
107
- rspec-mocks (3.9.1)
98
+ rspec-support (~> 3.10.0)
99
+ rspec-mocks (3.10.2)
108
100
  diff-lcs (>= 1.2.0, < 2.0)
109
- rspec-support (~> 3.9.0)
110
- rspec-rails (4.0.1)
111
- actionpack (>= 4.2)
112
- activesupport (>= 4.2)
113
- railties (>= 4.2)
114
- rspec-core (~> 3.9)
115
- rspec-expectations (~> 3.9)
116
- rspec-mocks (~> 3.9)
117
- rspec-support (~> 3.9)
118
- rspec-support (3.9.3)
119
- rubocop (0.93.0)
101
+ rspec-support (~> 3.10.0)
102
+ rspec-rails (5.0.1)
103
+ actionpack (>= 5.2)
104
+ activesupport (>= 5.2)
105
+ railties (>= 5.2)
106
+ rspec-core (~> 3.10)
107
+ rspec-expectations (~> 3.10)
108
+ rspec-mocks (~> 3.10)
109
+ rspec-support (~> 3.10)
110
+ rspec-support (3.10.2)
111
+ rubocop (1.18.3)
120
112
  parallel (~> 1.10)
121
- parser (>= 2.7.1.5)
113
+ parser (>= 3.0.0.0)
122
114
  rainbow (>= 2.2.2, < 4.0)
123
- regexp_parser (>= 1.8)
115
+ regexp_parser (>= 1.8, < 3.0)
124
116
  rexml
125
- rubocop-ast (>= 0.6.0)
117
+ rubocop-ast (>= 1.7.0, < 2.0)
126
118
  ruby-progressbar (~> 1.7)
127
- unicode-display_width (>= 1.4.0, < 2.0)
128
- rubocop-ast (0.7.1)
129
- parser (>= 2.7.1.5)
130
- rubocop-performance (1.8.1)
131
- rubocop (>= 0.87.0)
119
+ unicode-display_width (>= 1.4.0, < 3.0)
120
+ rubocop-ast (1.8.0)
121
+ parser (>= 3.0.1.1)
122
+ rubocop-performance (1.11.4)
123
+ rubocop (>= 1.7.0, < 2.0)
132
124
  rubocop-ast (>= 0.4.0)
133
- rubocop-rspec (1.43.2)
134
- rubocop (~> 0.87)
135
- ruby-progressbar (1.10.1)
136
- ruby_parser (3.15.0)
137
- sexp_processor (~> 4.9)
138
- sexp_processor (4.15.1)
125
+ rubocop-rake (0.6.0)
126
+ rubocop (~> 1.0)
127
+ rubocop-rspec (2.4.0)
128
+ rubocop (~> 1.0)
129
+ rubocop-ast (>= 1.1.0)
130
+ ruby-progressbar (1.11.0)
131
+ ruby_parser (3.16.0)
132
+ sexp_processor (~> 4.15, >= 4.15.1)
133
+ sexp_processor (4.15.3)
139
134
  sqlite3 (1.4.2)
140
- thor (1.0.1)
141
- thread_safe (0.3.6)
142
- tzinfo (1.2.7)
143
- thread_safe (~> 0.1)
144
- unicode-display_width (1.7.0)
145
- zeitwerk (2.4.0)
135
+ thor (1.1.0)
136
+ tzinfo (2.0.4)
137
+ concurrent-ruby (~> 1.0)
138
+ unicode-display_width (2.0.0)
139
+ zeitwerk (2.4.2)
146
140
 
147
141
  PLATFORMS
148
142
  ruby
@@ -159,8 +153,9 @@ DEPENDENCIES
159
153
  rspec-rails
160
154
  rubocop
161
155
  rubocop-performance
156
+ rubocop-rake
162
157
  rubocop-rspec
163
158
  sqlite3
164
159
 
165
160
  BUNDLED WITH
166
- 2.1.4
161
+ 2.2.24
data/README.md CHANGED
@@ -31,6 +31,7 @@ Or install it yourself as:
31
31
  * [Array](#array)
32
32
  * [Hash](#hash)
33
33
  * [Record](#record)
34
+ * [Exporter](#exporter)
34
35
  * [Stream](#stream)
35
36
  * [Port](#port)
36
37
 
@@ -134,16 +135,50 @@ Lite::Report::Record.export(
134
135
  }
135
136
  )
136
137
 
137
- # Convert CSV file to an array of records
138
+ # Convert CSV file to an array of records (import options are from Rails `insert_all`)
138
139
  Lite::Report::Record.import(
139
140
  'path/to/file.csv',
140
141
  data_options: {
141
142
  klass: User,
142
143
  except: [:age, :sex]
144
+ },
145
+ import_options: {
146
+ unique_by: %w[Name Age]
143
147
  }
144
148
  )
145
149
  ```
146
150
 
151
+ ## Exporter
152
+
153
+ Use exporters to filter, manipulate, and prepare data before final exportation.
154
+ These are very helpful when working with complex datasets.
155
+
156
+ ```ruby
157
+ class LimitedExporter < Lite::Report::Exporter
158
+
159
+ private
160
+
161
+ def serialize(record)
162
+ {
163
+ 'Id' => record.id,
164
+ 'Name' => "#{record.first_name} #{record.last_name}",
165
+ 'Speed' => record.speed.ceil,
166
+ 'Date' => record.to_s(:short)
167
+ }
168
+
169
+ # - or -
170
+
171
+ serializer = RecordSerializer.new(record)
172
+ serializer.serializable_hash
173
+ end
174
+
175
+ end
176
+
177
+ raw_data = User.where(age: 20..29)
178
+ limited_data = LimitedExporter.call(raw_data)
179
+ Lite::Report::Hash.export(limited_data)
180
+ ```
181
+
147
182
  ## Stream
148
183
 
149
184
  Stream is great option for preventing browser timeouts of downloading large CSV files by chunking
data/lib/lite/report.rb CHANGED
@@ -7,7 +7,7 @@ require 'lite/report/version'
7
7
  require "lite/report/helpers/#{file_name}"
8
8
  end
9
9
 
10
- %w[configuration base array hash record].each do |file_name|
10
+ %w[configuration base array hash record exporter].each do |file_name|
11
11
  require "lite/report/#{file_name}"
12
12
  end
13
13
 
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ class Lite::Report::Exporter
4
+
5
+ class NotImplementedError < StandardError; end
6
+
7
+ attr_reader :records
8
+
9
+ def initialize(records)
10
+ @records = records
11
+ end
12
+
13
+ class << self
14
+
15
+ def call(records)
16
+ instance = new(records)
17
+ instance.call
18
+ end
19
+
20
+ end
21
+
22
+ def call
23
+ results = []
24
+
25
+ if records.respond_to?(:find_each)
26
+ records.find_each { |record| results << serialize(record) }
27
+ elsif records.respond_to?(:each)
28
+ records.each { |record| results << serialize(record) }
29
+ else
30
+ results << serialize(records)
31
+ end
32
+
33
+ results
34
+ end
35
+
36
+ private
37
+
38
+ def serialize(record)
39
+ raise NotImplementedError
40
+ end
41
+
42
+ end
@@ -16,7 +16,7 @@ module Lite
16
16
 
17
17
  def convert_to_hash!(row)
18
18
  case row.class.name
19
- when 'Array' then ::Hash[(0..(row.size - 1)).zip(row)]
19
+ when 'Array' then (0..(row.size - 1)).zip(row).to_h
20
20
  when 'CSV::Row' then row.to_hash
21
21
  else row
22
22
  end
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'active_record'
4
- require 'activerecord-import'
5
- require 'deep_pluck'
6
4
 
7
5
  class Lite::Report::Record < Lite::Report::Base
8
6
 
@@ -16,9 +14,13 @@ class Lite::Report::Record < Lite::Report::Base
16
14
  assign_import_csv_options!
17
15
 
18
16
  @data = Lite::Report::Hash.import(@data, csv_options: @csv_options, data_options: @data_options)
19
- .each { |row| row.delete(:id) || row.delete('id') }
17
+ .each do |row|
18
+ row.delete(:id) || row.delete('id')
19
+ (row['created_at'] ||= timestamp) if created_at_timestamp?
20
+ (row['updated_at'] ||= timestamp) if updated_at_timestamp?
21
+ end
20
22
 
21
- klass.import(@data, **@import_options)
23
+ klass.insert_all(@data, **@import_options)
22
24
  end
23
25
 
24
26
  private
@@ -41,9 +43,15 @@ class Lite::Report::Record < Lite::Report::Base
41
43
 
42
44
  def assign_export_data!
43
45
  columns = class_columns(@data)
44
- @data = @data.result if ransack_class?(@data)
45
- @data = @data.deep_pluck(*columns)
46
- @data = [@data] unless @data.is_a?(Array)
46
+ @data = if ransack_class?(@data)
47
+ @data.result
48
+ elsif @data.try(:persisted?)
49
+ Array(@data)
50
+ else
51
+ @data
52
+ end
53
+
54
+ @data = @data.pluck(*columns).map { |values| columns.zip(values).to_h }
47
55
  end
48
56
 
49
57
  def generate_export!
@@ -56,4 +64,20 @@ class Lite::Report::Record < Lite::Report::Base
56
64
  super
57
65
  end
58
66
 
67
+ def timestamp
68
+ @timestamp ||= Time.try(:current) || Time.now
69
+ end
70
+
71
+ def created_at_timestamp?
72
+ return @created_at_timestamp if defined?(@created_at_timestamp)
73
+
74
+ @created_at_timestamp = klass.new.respond_to?(:created_at)
75
+ end
76
+
77
+ def updated_at_timestamp?
78
+ return @updated_at_timestamp if defined?(@updated_at_timestamp)
79
+
80
+ @updated_at_timestamp = klass.new.respond_to?(:updated_at)
81
+ end
82
+
59
83
  end
@@ -3,7 +3,7 @@
3
3
  module Lite
4
4
  module Report
5
5
 
6
- VERSION ||= '1.0.6'
6
+ VERSION = '1.3.0'
7
7
 
8
8
  end
9
9
  end
data/lite-report.gemspec CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  )
26
26
  else
27
27
  raise 'RubyGems 2.0 or newer is required to protect against ' \
28
- 'public gem pushes.'
28
+ 'public gem pushes.'
29
29
  end
30
30
 
31
31
  # Specify which files should be added to the gem when it is released.
@@ -38,8 +38,6 @@ Gem::Specification.new do |spec|
38
38
  spec.require_paths = %w[lib]
39
39
 
40
40
  spec.add_runtime_dependency 'activerecord'
41
- spec.add_runtime_dependency 'activerecord-import'
42
- spec.add_runtime_dependency 'deep_pluck'
43
41
 
44
42
  spec.add_development_dependency 'bundler'
45
43
  spec.add_development_dependency 'database_cleaner'
@@ -51,6 +49,7 @@ Gem::Specification.new do |spec|
51
49
  spec.add_development_dependency 'rspec-rails'
52
50
  spec.add_development_dependency 'rubocop'
53
51
  spec.add_development_dependency 'rubocop-performance'
52
+ spec.add_development_dependency 'rubocop-rake'
54
53
  spec.add_development_dependency 'rubocop-rspec'
55
54
  spec.add_development_dependency 'sqlite3'
56
55
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lite-report
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Gomez
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-10-11 00:00:00.000000000 Z
11
+ date: 2021-07-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -25,27 +25,13 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: activerecord-import
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: deep_pluck
28
+ name: bundler
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - ">="
46
32
  - !ruby/object:Gem::Version
47
33
  version: '0'
48
- type: :runtime
34
+ type: :development
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
@@ -53,7 +39,7 @@ dependencies:
53
39
  - !ruby/object:Gem::Version
54
40
  version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
- name: bundler
42
+ name: database_cleaner
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
45
  - - ">="
@@ -67,7 +53,7 @@ dependencies:
67
53
  - !ruby/object:Gem::Version
68
54
  version: '0'
69
55
  - !ruby/object:Gem::Dependency
70
- name: database_cleaner
56
+ name: fasterer
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
59
  - - ">="
@@ -81,7 +67,7 @@ dependencies:
81
67
  - !ruby/object:Gem::Version
82
68
  version: '0'
83
69
  - !ruby/object:Gem::Dependency
84
- name: fasterer
70
+ name: generator_spec
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
73
  - - ">="
@@ -95,7 +81,7 @@ dependencies:
95
81
  - !ruby/object:Gem::Version
96
82
  version: '0'
97
83
  - !ruby/object:Gem::Dependency
98
- name: generator_spec
84
+ name: rake
99
85
  requirement: !ruby/object:Gem::Requirement
100
86
  requirements:
101
87
  - - ">="
@@ -109,7 +95,7 @@ dependencies:
109
95
  - !ruby/object:Gem::Version
110
96
  version: '0'
111
97
  - !ruby/object:Gem::Dependency
112
- name: rake
98
+ name: ransack
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
101
  - - ">="
@@ -123,7 +109,7 @@ dependencies:
123
109
  - !ruby/object:Gem::Version
124
110
  version: '0'
125
111
  - !ruby/object:Gem::Dependency
126
- name: ransack
112
+ name: rspec
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
115
  - - ">="
@@ -137,7 +123,7 @@ dependencies:
137
123
  - !ruby/object:Gem::Version
138
124
  version: '0'
139
125
  - !ruby/object:Gem::Dependency
140
- name: rspec
126
+ name: rspec-rails
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
129
  - - ">="
@@ -151,7 +137,7 @@ dependencies:
151
137
  - !ruby/object:Gem::Version
152
138
  version: '0'
153
139
  - !ruby/object:Gem::Dependency
154
- name: rspec-rails
140
+ name: rubocop
155
141
  requirement: !ruby/object:Gem::Requirement
156
142
  requirements:
157
143
  - - ">="
@@ -165,7 +151,7 @@ dependencies:
165
151
  - !ruby/object:Gem::Version
166
152
  version: '0'
167
153
  - !ruby/object:Gem::Dependency
168
- name: rubocop
154
+ name: rubocop-performance
169
155
  requirement: !ruby/object:Gem::Requirement
170
156
  requirements:
171
157
  - - ">="
@@ -179,7 +165,7 @@ dependencies:
179
165
  - !ruby/object:Gem::Version
180
166
  version: '0'
181
167
  - !ruby/object:Gem::Dependency
182
- name: rubocop-performance
168
+ name: rubocop-rake
183
169
  requirement: !ruby/object:Gem::Requirement
184
170
  requirements:
185
171
  - - ">="
@@ -249,6 +235,7 @@ files:
249
235
  - lib/lite/report/array.rb
250
236
  - lib/lite/report/base.rb
251
237
  - lib/lite/report/configuration.rb
238
+ - lib/lite/report/exporter.rb
252
239
  - lib/lite/report/hash.rb
253
240
  - lib/lite/report/helpers/converters.rb
254
241
  - lib/lite/report/helpers/encoders.rb
@@ -279,7 +266,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
279
266
  - !ruby/object:Gem::Version
280
267
  version: '0'
281
268
  requirements: []
282
- rubygems_version: 3.1.4
269
+ rubygems_version: 3.2.24
283
270
  signing_key:
284
271
  specification_version: 4
285
272
  summary: Import and export Ruby and Rails objects to flat files and vice versa