solidstats 3.0.0.beta.1 ā 3.0.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 +4 -4
- data/README.md +33 -0
- data/app/assets/javascripts/solidstats/application.js +257 -0
- data/app/assets/javascripts/solidstats/dashboard.js +179 -0
- data/app/assets/stylesheets/solidstats/application.css +6 -1
- data/app/controllers/solidstats/dashboard_controller.rb +28 -35
- data/app/controllers/solidstats/gem_metadata_controller.rb +12 -0
- data/app/controllers/solidstats/logs_controller.rb +12 -12
- data/app/controllers/solidstats/performance_controller.rb +2 -2
- data/app/controllers/solidstats/productivity_controller.rb +10 -10
- data/app/controllers/solidstats/quality_controller.rb +32 -32
- data/app/controllers/solidstats/securities_controller.rb +7 -7
- data/app/helpers/solidstats/application_helper.rb +10 -10
- data/app/helpers/solidstats/performance_helper.rb +32 -32
- data/app/helpers/solidstats/productivity_helper.rb +20 -20
- data/app/services/solidstats/bundler_audit_service.rb +13 -13
- data/app/services/solidstats/coverage_compass_service.rb +59 -59
- data/app/services/solidstats/load_lens_service.rb +90 -70
- data/app/services/solidstats/log_size_monitor_service.rb +59 -59
- data/app/services/solidstats/my_todo_service.rb +68 -68
- data/app/services/solidstats/style_patrol_service.rb +44 -44
- data/app/views/layouts/solidstats/application.html.erb +1 -1
- data/app/views/solidstats/shared/_quick_actions.html.erb +1 -1
- data/config/routes.rb +4 -4
- data/lib/generators/solidstats/clean/clean_generator.rb +24 -0
- data/lib/generators/solidstats/clean/templates/README +8 -0
- data/lib/generators/solidstats/install/install_generator.rb +32 -17
- data/lib/generators/solidstats/templates/initializer.rb +112 -0
- data/lib/solidstats/asset_compatibility.rb +238 -0
- data/lib/solidstats/asset_manifest.rb +205 -0
- data/lib/solidstats/engine.rb +49 -9
- data/lib/solidstats/version.rb +1 -1
- data/lib/solidstats.rb +24 -11
- data/lib/tasks/solidstats.rake +67 -0
- data/lib/tasks/solidstats_performance.rake +6 -29
- data/lib/tasks/solidstats_tasks.rake +16 -0
- metadata +14 -5
- data/lib/tasks/solidstats_install.rake +0 -13
@@ -0,0 +1,67 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rails/generators"
|
4
|
+
|
5
|
+
namespace :solidstats do
|
6
|
+
desc "Install Solidstats in your Rails application"
|
7
|
+
task install: :environment do
|
8
|
+
puts "š Running Solidstats installer..."
|
9
|
+
Rails::Generators.invoke("solidstats:install")
|
10
|
+
end
|
11
|
+
|
12
|
+
namespace :prime do
|
13
|
+
desc "Prime data for all Solidstats services"
|
14
|
+
task all: [
|
15
|
+
:log_size,
|
16
|
+
:bundler_audit,
|
17
|
+
:todos,
|
18
|
+
:style_patrol,
|
19
|
+
:coverage,
|
20
|
+
:load_lens
|
21
|
+
] do
|
22
|
+
puts "ā
All Solidstats data has been primed."
|
23
|
+
end
|
24
|
+
|
25
|
+
desc "Prime data for LogSizeMonitorService"
|
26
|
+
task log_size: :environment do
|
27
|
+
puts "Priming data for Log Size Monitor..."
|
28
|
+
Solidstats::LogSizeMonitorService.scan_and_cache
|
29
|
+
puts "-> Log Size Monitor data primed."
|
30
|
+
end
|
31
|
+
|
32
|
+
desc "Prime data for BundlerAuditService"
|
33
|
+
task bundler_audit: :environment do
|
34
|
+
puts "Priming data for Bundler Audit..."
|
35
|
+
Solidstats::BundlerAuditService.scan_and_cache
|
36
|
+
puts "-> Bundler Audit data primed."
|
37
|
+
end
|
38
|
+
|
39
|
+
desc "Prime data for MyTodoService"
|
40
|
+
task todos: :environment do
|
41
|
+
puts "Priming data for My Todos..."
|
42
|
+
Solidstats::MyTodoService.collect_todos
|
43
|
+
puts "-> My Todos data primed."
|
44
|
+
end
|
45
|
+
|
46
|
+
desc "Prime data for StylePatrolService"
|
47
|
+
task style_patrol: :environment do
|
48
|
+
puts "Priming data for Style Patrol..."
|
49
|
+
Solidstats::StylePatrolService.refresh_cache
|
50
|
+
puts "-> Style Patrol data primed."
|
51
|
+
end
|
52
|
+
|
53
|
+
desc "Prime data for CoverageCompassService"
|
54
|
+
task coverage: :environment do
|
55
|
+
puts "Priming data for Coverage Compass..."
|
56
|
+
Solidstats::CoverageCompassService.refresh_cache
|
57
|
+
puts "-> Coverage Compass data primed."
|
58
|
+
end
|
59
|
+
|
60
|
+
desc "Prime data for LoadLensService"
|
61
|
+
task load_lens: :environment do
|
62
|
+
puts "Priming data for Load Lens..."
|
63
|
+
Solidstats::LoadLensService.scan_and_cache
|
64
|
+
puts "-> Load Lens data primed."
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -5,7 +5,7 @@ namespace :solidstats do
|
|
5
5
|
desc "Parse development log and extract LoadLens performance metrics"
|
6
6
|
task parse_logs: :environment do
|
7
7
|
result = Solidstats::LoadLensService.parse_log_and_save
|
8
|
-
|
8
|
+
|
9
9
|
if result[:success]
|
10
10
|
puts "Successfully parsed #{result[:processed]} requests for LoadLens"
|
11
11
|
else
|
@@ -25,7 +25,7 @@ namespace :solidstats do
|
|
25
25
|
task summary: :environment do
|
26
26
|
data = Solidstats::LoadLensService.get_performance_data
|
27
27
|
summary = data[:summary]
|
28
|
-
|
28
|
+
|
29
29
|
puts "\n=== LoadLens Performance Summary ==="
|
30
30
|
puts "Total Requests: #{summary[:total_requests]}"
|
31
31
|
puts "Average Response Time: #{summary[:avg_response_time]}ms"
|
@@ -40,11 +40,11 @@ namespace :solidstats do
|
|
40
40
|
|
41
41
|
desc "Clean old LoadLens performance data files"
|
42
42
|
task clean_old_data: :environment do
|
43
|
-
data_dir = Rails.root.join(
|
43
|
+
data_dir = Rails.root.join("tmp", "solidstats")
|
44
44
|
cutoff_date = 7.days.ago.to_date
|
45
45
|
deleted_count = 0
|
46
|
-
|
47
|
-
Dir.glob(data_dir.join(
|
46
|
+
|
47
|
+
Dir.glob(data_dir.join("perf_*.json")).each do |file|
|
48
48
|
if match = File.basename(file).match(/perf_(\d{4}-\d{2}-\d{2})\.json/)
|
49
49
|
file_date = Date.parse(match[1])
|
50
50
|
if file_date < cutoff_date
|
@@ -54,31 +54,8 @@ namespace :solidstats do
|
|
54
54
|
end
|
55
55
|
end
|
56
56
|
end
|
57
|
-
|
58
|
-
puts "Cleaned #{deleted_count} old LoadLens performance data files"
|
59
|
-
end
|
60
|
-
end
|
61
|
-
|
62
|
-
# Keep performance namespace for backward compatibility
|
63
|
-
namespace :performance do
|
64
|
-
desc "Parse development log and extract performance metrics (alias for load_lens:parse_logs)"
|
65
|
-
task parse_logs: :environment do
|
66
|
-
Rake::Task["solidstats:load_lens:parse_logs"].invoke
|
67
|
-
end
|
68
57
|
|
69
|
-
|
70
|
-
task refresh: :environment do
|
71
|
-
Rake::Task["solidstats:load_lens:refresh"].invoke
|
72
|
-
end
|
73
|
-
|
74
|
-
desc "Show performance data summary (alias for load_lens:summary)"
|
75
|
-
task summary: :environment do
|
76
|
-
Rake::Task["solidstats:load_lens:summary"].invoke
|
77
|
-
end
|
78
|
-
|
79
|
-
desc "Clean old performance data files (alias for load_lens:clean_old_data)"
|
80
|
-
task clean_old_data: :environment do
|
81
|
-
Rake::Task["solidstats:load_lens:clean_old_data"].invoke
|
58
|
+
puts "Cleaned #{deleted_count} old LoadLens performance data files"
|
82
59
|
end
|
83
60
|
end
|
84
61
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require "fileutils"
|
2
|
+
|
3
|
+
namespace :solidstats do
|
4
|
+
desc "Clean up all JSON files and caches generated by Solidstats"
|
5
|
+
task :clean do
|
6
|
+
solidstats_dir = Rails.root.join("solidstats")
|
7
|
+
|
8
|
+
if Dir.exist?(solidstats_dir)
|
9
|
+
puts "Removing Solidstats data directory: #{solidstats_dir}"
|
10
|
+
FileUtils.rm_rf(solidstats_dir)
|
11
|
+
puts "Solidstats data cleaned."
|
12
|
+
else
|
13
|
+
puts "Solidstats data directory not found, nothing to clean."
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: solidstats
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.0
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MezbahAlam
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-06-
|
11
|
+
date: 2025-06-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -64,10 +64,13 @@ files:
|
|
64
64
|
- MIT-LICENSE
|
65
65
|
- README.md
|
66
66
|
- Rakefile
|
67
|
+
- app/assets/javascripts/solidstats/application.js
|
68
|
+
- app/assets/javascripts/solidstats/dashboard.js
|
67
69
|
- app/assets/stylesheets/solidstats/application.css
|
68
70
|
- app/assets/stylesheets/solidstats/dashboard.css
|
69
71
|
- app/controllers/solidstats/application_controller.rb
|
70
72
|
- app/controllers/solidstats/dashboard_controller.rb
|
73
|
+
- app/controllers/solidstats/gem_metadata_controller.rb
|
71
74
|
- app/controllers/solidstats/logs_controller.rb
|
72
75
|
- app/controllers/solidstats/performance_controller.rb
|
73
76
|
- app/controllers/solidstats/productivity_controller.rb
|
@@ -98,14 +101,20 @@ files:
|
|
98
101
|
- app/views/solidstats/shared/_dashboard_card.html.erb
|
99
102
|
- app/views/solidstats/shared/_quick_actions.html.erb
|
100
103
|
- config/routes.rb
|
104
|
+
- lib/generators/solidstats/clean/clean_generator.rb
|
105
|
+
- lib/generators/solidstats/clean/templates/README
|
101
106
|
- lib/generators/solidstats/install/install_generator.rb
|
102
107
|
- lib/generators/solidstats/install/templates/README
|
108
|
+
- lib/generators/solidstats/templates/initializer.rb
|
103
109
|
- lib/solidstats.rb
|
110
|
+
- lib/solidstats/asset_compatibility.rb
|
111
|
+
- lib/solidstats/asset_manifest.rb
|
104
112
|
- lib/solidstats/engine.rb
|
105
113
|
- lib/solidstats/version.rb
|
106
|
-
- lib/tasks/
|
114
|
+
- lib/tasks/solidstats.rake
|
107
115
|
- lib/tasks/solidstats_performance.rake
|
108
116
|
- lib/tasks/solidstats_release.rake
|
117
|
+
- lib/tasks/solidstats_tasks.rake
|
109
118
|
homepage: https://solidstats.infolily.com
|
110
119
|
licenses:
|
111
120
|
- MIT
|
@@ -121,9 +130,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
121
130
|
version: 2.7.0
|
122
131
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
123
132
|
requirements:
|
124
|
-
- - "
|
133
|
+
- - ">="
|
125
134
|
- !ruby/object:Gem::Version
|
126
|
-
version:
|
135
|
+
version: '0'
|
127
136
|
requirements: []
|
128
137
|
rubygems_version: 3.4.19
|
129
138
|
signing_key:
|
@@ -1,13 +0,0 @@
|
|
1
|
-
|
2
|
-
namespace :solidstats do
|
3
|
-
desc "Install Solidstats into your Rails application"
|
4
|
-
task :install do
|
5
|
-
if system "rails g solidstats:install"
|
6
|
-
puts "\nā
Solidstats installation completed successfully!"
|
7
|
-
puts " Start your Rails server and visit http://localhost:3000/solidstats\n\n"
|
8
|
-
else
|
9
|
-
puts "\nā Solidstats installation failed. Please try running manually:"
|
10
|
-
puts " bundle exec rails generate solidstats:install\n\n"
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|