localtower 0.4.2 → 1.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 +37 -46
- data/app/controllers/localtower/pages_controller.rb +28 -42
- data/app/helpers/localtower/application_helper.rb +0 -18
- data/app/views/layouts/localtower/application.html.erb +20 -79
- data/app/views/localtower/pages/_alert_no_models.html.erb +3 -0
- data/app/views/localtower/pages/migrations.html.erb +50 -120
- data/app/views/localtower/pages/models.html.erb +53 -68
- data/app/views/localtower/pages/new_migration.html.erb +103 -0
- data/app/views/localtower/pages/new_model.html.erb +87 -0
- data/config/routes.rb +8 -17
- data/lib/localtower/generators/migration.rb +53 -181
- data/lib/localtower/generators/model.rb +53 -32
- data/lib/localtower/generators/service_objects/insert_array.rb +23 -0
- data/lib/localtower/generators/service_objects/insert_defaults.rb +15 -43
- data/lib/localtower/generators/service_objects/insert_indexes.rb +80 -0
- data/lib/localtower/generators/service_objects/insert_nullable.rb +23 -0
- data/lib/localtower/status.rb +12 -7
- data/lib/localtower/tools.rb +29 -24
- data/lib/localtower/version.rb +1 -1
- data/lib/localtower.rb +0 -1
- data/public/css/app.css +0 -49
- data/public/js/app.js +216 -86
- data/public/light-bootstrap-dashboard-master/assets/css/light-bootstrap-dashboard.css +9 -35
- data/public/screenshots/v1.0.0/migrations.png +0 -0
- data/public/screenshots/v1.0.0/models.png +0 -0
- data/public/screenshots/v1.0.0/new_migration.png +0 -0
- data/public/screenshots/v1.0.0/new_model.png +0 -0
- data/public/vendor/font-awesome.min.css +4 -0
- data/public/vendor/highlight-js-default.min.css +9 -0
- data/public/vendor/highlight.min.js +1198 -0
- data/public/{js → vendor}/masonry.pkgd.min.js +0 -0
- data/spec/dummy/Gemfile +0 -3
- data/spec/dummy/Gemfile.lock +78 -95
- data/spec/dummy/app/controllers/pages_controller.rb +0 -2
- data/spec/dummy/app/models/post.rb +3 -0
- data/spec/dummy/app/models/user.rb +3 -0
- data/spec/dummy/app/views/pages/home.html.erb +0 -1
- data/spec/dummy/config/database.yml +1 -1
- data/spec/dummy/config/environments/development.rb +3 -1
- data/spec/dummy/config/puma.rb +1 -1
- data/spec/dummy/db/migrate/20230119221452_create_users.rb +14 -0
- data/spec/dummy/db/migrate/20230119221751_change_users_at1674166670.rb +7 -0
- data/spec/dummy/db/migrate/20230119222054_create_posts.rb +11 -0
- data/spec/dummy/db/migrate/20230119222106_change_posts_at1674166865.rb +5 -0
- data/spec/dummy/db/schema.rb +41 -0
- data/spec/dummy/log/development.log +16030 -10038
- data/spec/dummy/log/localtower.log +1878 -439
- data/spec/dummy/log/test.log +0 -281
- data/spec/dummy/test/index.html +38 -0
- data/spec/dummy/tmp/pids/server.pid +1 -1
- data/spec/factories/migration.rb +25 -41
- data/spec/factories/model.rb +39 -25
- data/spec/lib/localtower/generators/migration_spec.rb +36 -63
- data/spec/lib/localtower/generators/model_spec.rb +43 -34
- data/spec/lib/localtower/generators/service_objects/insert_array_spec.rb +47 -0
- data/spec/lib/localtower/generators/service_objects/insert_defaults_spec.rb +30 -35
- data/spec/lib/localtower/generators/service_objects/insert_indexes_spec.rb +90 -0
- data/spec/lib/localtower/generators/service_objects/insert_nullable_spec.rb +61 -0
- data/spec/lib/localtower/tools_spec.rb +1 -11
- data/spec/spec_helper.rb +25 -5
- metadata +38 -30
- data/app/views/localtower/pages/dashboard.html.erb +0 -67
- data/app/views/localtower/pages/logs.html.erb +0 -84
- data/app/views/localtower/pages/relations.html.erb +0 -66
- data/app/views/localtower/pages/tasks.html.erb +0 -48
- data/lib/localtower/generators/relation.rb +0 -59
- data/lib/localtower/plugins/capture.rb +0 -197
- data/lib/tasks/localtower_tasks.rake +0 -4
- data/spec/dummy/lib/playground.rb +0 -0
- data/spec/dummy/log/localtower_capture_d8979d360722798f7b6eb1a2694a3791.json +0 -1
- data/spec/lib/localtower/generators/relation_spec.rb +0 -65
File without changes
|
data/spec/dummy/Gemfile
CHANGED
@@ -1,11 +1,8 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
# gem 'rails', '5.2.0'
|
4
3
|
gem "rails", "~> 7.0.1"
|
5
4
|
gem 'pg'
|
6
5
|
gem 'puma'
|
7
|
-
gem 'jquery-rails'
|
8
|
-
gem 'turbolinks', '~> 5'
|
9
6
|
|
10
7
|
group :development, :test do
|
11
8
|
localtower_path = File.expand_path(File.join(File.dirname(__FILE__), '..', '..'))
|
data/spec/dummy/Gemfile.lock
CHANGED
@@ -1,56 +1,55 @@
|
|
1
1
|
PATH
|
2
2
|
remote: /Users/damln/Work/localtower
|
3
3
|
specs:
|
4
|
-
localtower (0.
|
4
|
+
localtower (0.5.0)
|
5
5
|
active_link_to (>= 1.0.4)
|
6
6
|
rails (>= 5.2.0)
|
7
|
-
rubyzip (>= 1.2.1)
|
8
7
|
thor (>= 0.18.1)
|
9
8
|
|
10
9
|
GEM
|
11
10
|
remote: https://rubygems.org/
|
12
11
|
specs:
|
13
|
-
actioncable (7.0.
|
14
|
-
actionpack (= 7.0.
|
15
|
-
activesupport (= 7.0.
|
12
|
+
actioncable (7.0.4)
|
13
|
+
actionpack (= 7.0.4)
|
14
|
+
activesupport (= 7.0.4)
|
16
15
|
nio4r (~> 2.0)
|
17
16
|
websocket-driver (>= 0.6.1)
|
18
|
-
actionmailbox (7.0.
|
19
|
-
actionpack (= 7.0.
|
20
|
-
activejob (= 7.0.
|
21
|
-
activerecord (= 7.0.
|
22
|
-
activestorage (= 7.0.
|
23
|
-
activesupport (= 7.0.
|
17
|
+
actionmailbox (7.0.4)
|
18
|
+
actionpack (= 7.0.4)
|
19
|
+
activejob (= 7.0.4)
|
20
|
+
activerecord (= 7.0.4)
|
21
|
+
activestorage (= 7.0.4)
|
22
|
+
activesupport (= 7.0.4)
|
24
23
|
mail (>= 2.7.1)
|
25
24
|
net-imap
|
26
25
|
net-pop
|
27
26
|
net-smtp
|
28
|
-
actionmailer (7.0.
|
29
|
-
actionpack (= 7.0.
|
30
|
-
actionview (= 7.0.
|
31
|
-
activejob (= 7.0.
|
32
|
-
activesupport (= 7.0.
|
27
|
+
actionmailer (7.0.4)
|
28
|
+
actionpack (= 7.0.4)
|
29
|
+
actionview (= 7.0.4)
|
30
|
+
activejob (= 7.0.4)
|
31
|
+
activesupport (= 7.0.4)
|
33
32
|
mail (~> 2.5, >= 2.5.4)
|
34
33
|
net-imap
|
35
34
|
net-pop
|
36
35
|
net-smtp
|
37
36
|
rails-dom-testing (~> 2.0)
|
38
|
-
actionpack (7.0.
|
39
|
-
actionview (= 7.0.
|
40
|
-
activesupport (= 7.0.
|
37
|
+
actionpack (7.0.4)
|
38
|
+
actionview (= 7.0.4)
|
39
|
+
activesupport (= 7.0.4)
|
41
40
|
rack (~> 2.0, >= 2.2.0)
|
42
41
|
rack-test (>= 0.6.3)
|
43
42
|
rails-dom-testing (~> 2.0)
|
44
43
|
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
45
|
-
actiontext (7.0.
|
46
|
-
actionpack (= 7.0.
|
47
|
-
activerecord (= 7.0.
|
48
|
-
activestorage (= 7.0.
|
49
|
-
activesupport (= 7.0.
|
44
|
+
actiontext (7.0.4)
|
45
|
+
actionpack (= 7.0.4)
|
46
|
+
activerecord (= 7.0.4)
|
47
|
+
activestorage (= 7.0.4)
|
48
|
+
activesupport (= 7.0.4)
|
50
49
|
globalid (>= 0.6.0)
|
51
50
|
nokogiri (>= 1.8.5)
|
52
|
-
actionview (7.0.
|
53
|
-
activesupport (= 7.0.
|
51
|
+
actionview (7.0.4)
|
52
|
+
activesupport (= 7.0.4)
|
54
53
|
builder (~> 3.1)
|
55
54
|
erubi (~> 1.4)
|
56
55
|
rails-dom-testing (~> 2.0)
|
@@ -58,42 +57,37 @@ GEM
|
|
58
57
|
active_link_to (1.0.5)
|
59
58
|
actionpack
|
60
59
|
addressable
|
61
|
-
activejob (7.0.
|
62
|
-
activesupport (= 7.0.
|
60
|
+
activejob (7.0.4)
|
61
|
+
activesupport (= 7.0.4)
|
63
62
|
globalid (>= 0.3.6)
|
64
|
-
activemodel (7.0.
|
65
|
-
activesupport (= 7.0.
|
66
|
-
activerecord (7.0.
|
67
|
-
activemodel (= 7.0.
|
68
|
-
activesupport (= 7.0.
|
69
|
-
activestorage (7.0.
|
70
|
-
actionpack (= 7.0.
|
71
|
-
activejob (= 7.0.
|
72
|
-
activerecord (= 7.0.
|
73
|
-
activesupport (= 7.0.
|
63
|
+
activemodel (7.0.4)
|
64
|
+
activesupport (= 7.0.4)
|
65
|
+
activerecord (7.0.4)
|
66
|
+
activemodel (= 7.0.4)
|
67
|
+
activesupport (= 7.0.4)
|
68
|
+
activestorage (7.0.4)
|
69
|
+
actionpack (= 7.0.4)
|
70
|
+
activejob (= 7.0.4)
|
71
|
+
activerecord (= 7.0.4)
|
72
|
+
activesupport (= 7.0.4)
|
74
73
|
marcel (~> 1.0)
|
75
74
|
mini_mime (>= 1.1.0)
|
76
|
-
activesupport (7.0.
|
75
|
+
activesupport (7.0.4)
|
77
76
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
78
77
|
i18n (>= 1.6, < 2)
|
79
78
|
minitest (>= 5.1)
|
80
79
|
tzinfo (~> 2.0)
|
81
|
-
addressable (2.8.
|
82
|
-
public_suffix (>= 2.0.2, <
|
80
|
+
addressable (2.8.1)
|
81
|
+
public_suffix (>= 2.0.2, < 6.0)
|
83
82
|
builder (3.2.4)
|
84
83
|
concurrent-ruby (1.1.10)
|
85
84
|
crass (1.0.6)
|
86
|
-
|
87
|
-
erubi (1.10.0)
|
85
|
+
erubi (1.11.0)
|
88
86
|
globalid (1.0.0)
|
89
87
|
activesupport (>= 5.0)
|
90
|
-
i18n (1.
|
88
|
+
i18n (1.12.0)
|
91
89
|
concurrent-ruby (~> 1.0)
|
92
|
-
|
93
|
-
rails-dom-testing (>= 1, < 3)
|
94
|
-
railties (>= 4.2.0)
|
95
|
-
thor (>= 0.14, < 2.0)
|
96
|
-
loofah (2.16.0)
|
90
|
+
loofah (2.19.0)
|
97
91
|
crass (~> 1.0.2)
|
98
92
|
nokogiri (>= 1.5.9)
|
99
93
|
mail (2.7.1)
|
@@ -101,84 +95,73 @@ GEM
|
|
101
95
|
marcel (1.0.2)
|
102
96
|
method_source (1.0.0)
|
103
97
|
mini_mime (1.1.2)
|
104
|
-
|
105
|
-
|
106
|
-
|
98
|
+
mini_portile2 (2.8.0)
|
99
|
+
minitest (5.16.3)
|
100
|
+
net-imap (0.3.1)
|
107
101
|
net-protocol
|
108
|
-
|
109
|
-
net-pop (0.1.1)
|
110
|
-
digest
|
102
|
+
net-pop (0.1.2)
|
111
103
|
net-protocol
|
112
|
-
timeout
|
113
104
|
net-protocol (0.1.3)
|
114
105
|
timeout
|
115
|
-
net-smtp (0.3.
|
116
|
-
digest
|
106
|
+
net-smtp (0.3.3)
|
117
107
|
net-protocol
|
118
|
-
timeout
|
119
108
|
nio4r (2.5.8)
|
120
|
-
nokogiri (1.13.
|
109
|
+
nokogiri (1.13.9)
|
110
|
+
mini_portile2 (~> 2.8.0)
|
121
111
|
racc (~> 1.4)
|
122
|
-
pg (1.
|
123
|
-
public_suffix (
|
124
|
-
puma (
|
112
|
+
pg (1.4.4)
|
113
|
+
public_suffix (5.0.0)
|
114
|
+
puma (6.0.0)
|
125
115
|
nio4r (~> 2.0)
|
126
116
|
racc (1.6.0)
|
127
|
-
rack (2.2.
|
128
|
-
rack-test (
|
129
|
-
rack (>= 1.
|
130
|
-
rails (7.0.
|
131
|
-
actioncable (= 7.0.
|
132
|
-
actionmailbox (= 7.0.
|
133
|
-
actionmailer (= 7.0.
|
134
|
-
actionpack (= 7.0.
|
135
|
-
actiontext (= 7.0.
|
136
|
-
actionview (= 7.0.
|
137
|
-
activejob (= 7.0.
|
138
|
-
activemodel (= 7.0.
|
139
|
-
activerecord (= 7.0.
|
140
|
-
activestorage (= 7.0.
|
141
|
-
activesupport (= 7.0.
|
117
|
+
rack (2.2.4)
|
118
|
+
rack-test (2.0.2)
|
119
|
+
rack (>= 1.3)
|
120
|
+
rails (7.0.4)
|
121
|
+
actioncable (= 7.0.4)
|
122
|
+
actionmailbox (= 7.0.4)
|
123
|
+
actionmailer (= 7.0.4)
|
124
|
+
actionpack (= 7.0.4)
|
125
|
+
actiontext (= 7.0.4)
|
126
|
+
actionview (= 7.0.4)
|
127
|
+
activejob (= 7.0.4)
|
128
|
+
activemodel (= 7.0.4)
|
129
|
+
activerecord (= 7.0.4)
|
130
|
+
activestorage (= 7.0.4)
|
131
|
+
activesupport (= 7.0.4)
|
142
132
|
bundler (>= 1.15.0)
|
143
|
-
railties (= 7.0.
|
133
|
+
railties (= 7.0.4)
|
144
134
|
rails-dom-testing (2.0.3)
|
145
135
|
activesupport (>= 4.2.0)
|
146
136
|
nokogiri (>= 1.6)
|
147
|
-
rails-html-sanitizer (1.4.
|
137
|
+
rails-html-sanitizer (1.4.3)
|
148
138
|
loofah (~> 2.3)
|
149
|
-
railties (7.0.
|
150
|
-
actionpack (= 7.0.
|
151
|
-
activesupport (= 7.0.
|
139
|
+
railties (7.0.4)
|
140
|
+
actionpack (= 7.0.4)
|
141
|
+
activesupport (= 7.0.4)
|
152
142
|
method_source
|
153
143
|
rake (>= 12.2)
|
154
144
|
thor (~> 1.0)
|
155
145
|
zeitwerk (~> 2.5)
|
156
146
|
rake (13.0.6)
|
157
|
-
rubyzip (2.3.2)
|
158
|
-
strscan (3.0.1)
|
159
147
|
thor (1.2.1)
|
160
|
-
timeout (0.
|
161
|
-
|
162
|
-
turbolinks-source (~> 5.2)
|
163
|
-
turbolinks-source (5.2.0)
|
164
|
-
tzinfo (2.0.4)
|
148
|
+
timeout (0.3.0)
|
149
|
+
tzinfo (2.0.5)
|
165
150
|
concurrent-ruby (~> 1.0)
|
166
151
|
websocket-driver (0.7.5)
|
167
152
|
websocket-extensions (>= 0.1.0)
|
168
153
|
websocket-extensions (0.1.5)
|
169
|
-
zeitwerk (2.
|
154
|
+
zeitwerk (2.6.1)
|
170
155
|
|
171
156
|
PLATFORMS
|
172
|
-
|
157
|
+
ruby
|
173
158
|
|
174
159
|
DEPENDENCIES
|
175
|
-
jquery-rails
|
176
160
|
localtower!
|
177
161
|
pg
|
178
162
|
puma
|
179
163
|
rails (~> 7.0.1)
|
180
|
-
turbolinks (~> 5)
|
181
164
|
tzinfo-data
|
182
165
|
|
183
166
|
BUNDLED WITH
|
184
|
-
2.
|
167
|
+
2.2.24
|
@@ -1 +0,0 @@
|
|
1
|
-
<h1>HELLO</h1>
|
@@ -35,7 +35,9 @@ Rails.application.configure do
|
|
35
35
|
config.active_support.deprecation = :log
|
36
36
|
|
37
37
|
# Raise an error on page load if there are pending migrations.
|
38
|
-
config.active_record.migration_error = :page_load
|
38
|
+
# config.active_record.migration_error = :page_load
|
39
|
+
config.active_record.migration_error = false if defined?(Localtower)
|
40
|
+
config.reload_classes_only_on_change = false
|
39
41
|
|
40
42
|
# Debug mode disables concatenation and preprocessing of assets.
|
41
43
|
# This option may cause significant delays in view rendering with a large
|
data/spec/dummy/config/puma.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
# the maximum value specified for Puma. Default is set to 5 threads for minimum
|
5
5
|
# and maximum, this matches the default thread size of Active Record.
|
6
6
|
#
|
7
|
-
threads_count = ENV.fetch("RAILS_MAX_THREADS") {
|
7
|
+
threads_count = ENV.fetch("RAILS_MAX_THREADS") { 1 }.to_i
|
8
8
|
threads threads_count, threads_count
|
9
9
|
|
10
10
|
# Specifies the `port` that Puma will listen on to receive requests, default is 3000.
|
@@ -0,0 +1,14 @@
|
|
1
|
+
class CreateUsers < ActiveRecord::Migration[7.0]
|
2
|
+
def change
|
3
|
+
create_table :users do |t|
|
4
|
+
t.string :email, null: false
|
5
|
+
t.integer :login_count, default: 0, null: false
|
6
|
+
t.jsonb :metadata, default: {}, null: false
|
7
|
+
t.string :name
|
8
|
+
|
9
|
+
t.timestamps
|
10
|
+
end
|
11
|
+
add_index :users, :email, unique: true
|
12
|
+
add_index :users, :name
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# This file is auto-generated from the current state of the database. Instead
|
2
|
+
# of editing this file, please use the migrations feature of Active Record to
|
3
|
+
# incrementally modify your database, and then regenerate this schema definition.
|
4
|
+
#
|
5
|
+
# This file is the source Rails uses to define your schema when running `bin/rails
|
6
|
+
# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to
|
7
|
+
# be faster and is potentially less error prone than running all of your
|
8
|
+
# migrations from scratch. Old migrations may fail to apply correctly if those
|
9
|
+
# migrations use external dependencies or application code.
|
10
|
+
#
|
11
|
+
# It's strongly recommended that you check this file into your version control system.
|
12
|
+
|
13
|
+
ActiveRecord::Schema[7.0].define(version: 2023_01_19_222106) do
|
14
|
+
# These are extensions that must be enabled in order to support this database
|
15
|
+
enable_extension "plpgsql"
|
16
|
+
|
17
|
+
create_table "posts", force: :cascade do |t|
|
18
|
+
t.string "title", null: false
|
19
|
+
t.string "content", null: false
|
20
|
+
t.datetime "created_at", null: false
|
21
|
+
t.datetime "updated_at", null: false
|
22
|
+
t.bigint "user_id"
|
23
|
+
t.index ["title"], name: "index_posts_on_title"
|
24
|
+
t.index ["user_id"], name: "index_posts_on_user_id"
|
25
|
+
end
|
26
|
+
|
27
|
+
create_table "users", force: :cascade do |t|
|
28
|
+
t.string "email", null: false
|
29
|
+
t.integer "signin_count", default: 0, null: false
|
30
|
+
t.jsonb "metadata", default: {}, null: false
|
31
|
+
t.string "name"
|
32
|
+
t.datetime "created_at", null: false
|
33
|
+
t.datetime "updated_at", null: false
|
34
|
+
t.string "city"
|
35
|
+
t.index ["city"], name: "index_users_on_city"
|
36
|
+
t.index ["email"], name: "index_users_on_email", unique: true
|
37
|
+
t.index ["name"], name: "index_users_on_name"
|
38
|
+
end
|
39
|
+
|
40
|
+
add_foreign_key "posts", "users"
|
41
|
+
end
|