active_explorer 0.0.7 → 0.0.8

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
  SHA1:
3
- metadata.gz: 06742c7c307e540ef325ad2ac528671d59d9a297
4
- data.tar.gz: db6d67d3a4820510613db45a503474583e1edfa2
3
+ metadata.gz: 350cfdb7eafac2d2671f1d1c61183734237befd0
4
+ data.tar.gz: b7ab716a5f2423778ff9181cacba93678d90efd8
5
5
  SHA512:
6
- metadata.gz: 5e57990c0112436d90669f9800e0c81ad2ef155503856d01413c1683b1264db99a975e744a9d57b61d21dae9f1aa0ef2bb29cd0369ec1a5a6991e4c783e73e2f
7
- data.tar.gz: aebfa88db865056d5cb26cf1a44dee67924dea329d6f2457f8e909af7afe23e661801eefc4d1906d678e34bfbadb481afd115c9aa741d493a703e88b78589069
6
+ metadata.gz: 65f14a606e3e393a2dbc862fa0a40f87543edef4f241b0a26e5650a1d4b7b49cd5396d8c896f0ffd86d39ca23879f14d18e1693dec5d492b39f36526e2820110
7
+ data.tar.gz: 128b93d226a28d24113ed9cb1b5d8cd10e897dafd5896ffaf6229131f5242b8fd2837d348e57e28935090af14b72f4aca68ec86c1c9d7b400e754784fe7b57c1
data/README.md CHANGED
@@ -8,11 +8,24 @@ Active Explorer is a Ruby gem for visualization of run-time data and association
8
8
 
9
9
  How the gem works? It simply looks for `has_many`, `has_one` and `belongs_to` associations
10
10
  and traverse through them to associated objects. Then it does the same with them until it explores all the surroundings.
11
- It then prints nice graph represantation to image file (or simple output to console).
11
+
12
+ It then prints nice graph represantation:
13
+
14
+ - to image file or
15
+ - to console
12
16
 
13
17
  One picture is worth a thousand words:
14
18
 
15
- TODO: Add that picture ;)
19
+ ![Display hierarchy for Author object.](docs/images/author_books_reviews.png)
20
+
21
+ And the same objects in console output:
22
+
23
+ ```ruby
24
+ Author(1592) {:first_name=>"Perer", :last_name=>"Brett"}
25
+ -> has Book(1642) {:author_id=>1592, :title=>"The Warded Man", :year=>2008}
26
+ -> has Review(796) {:stars=>5, :text=>"Very nice book. Life changing experience.", :book_id=>1642}
27
+ -> has Book(1643) {:author_id=>1592, :title=>"The Desert Spear", :year=>2010}
28
+ ```
16
29
 
17
30
  ## Installation
18
31
 
@@ -51,7 +64,7 @@ exf my_object # Prints output as a graph to image file
51
64
 
52
65
  Note: `ex` is abbreviation for `explore` and `exf` for `explore_to_file` methods.
53
66
 
54
- See [Examples](#Examples) (or test cases) for more examples.
67
+ See [Examples](#examples) (or test cases) for more examples.
55
68
 
56
69
  ## Configuration
57
70
 
@@ -85,9 +98,9 @@ ex Author.first, class_filter: [:books, :reviews],
85
98
 
86
99
  Important: Use **plural form** of your classes.
87
100
 
88
- See [Examples](#Examples) (or test cases) see exact usage.
101
+ See [Examples](#examples) (or test cases) see exact usage.
89
102
 
90
- Check [Global Configuration](#Global) to easily set this filter once for all future calls.
103
+ Check [Global Configuration](#global-configuration) to easily set this filter once for all future calls.
91
104
 
92
105
  ### Global Configuration
93
106
 
@@ -195,22 +208,6 @@ After checking out the repo, run `bin/setup` to install dependencies. Then, run
195
208
 
196
209
  To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
197
210
 
198
- ### Migrations
199
-
200
- For testing purposes I use [Standalone Migrations](https://github.com/thuss/standalone-migrations)
201
-
202
- Generate new migration:
203
-
204
- ```
205
- $ rake db:new_migration name=foo_bar_migration
206
- ```
207
-
208
- Create database as usually:
209
-
210
- ```
211
- $ rake db:create db:migrate RAILS_ENV=test
212
- ```
213
-
214
211
  ## TODO
215
212
 
216
213
  - Bug hunt.
@@ -219,9 +216,19 @@ $ rake db:create db:migrate RAILS_ENV=test
219
216
  - Interactive graph.
220
217
  - Rubymine plugin ;)
221
218
 
219
+ ## Known Issues
220
+
221
+ ### Timeout in Debugger
222
+
223
+ When calling `exf` during debugging session in Rubymine, gem returns timeout error. Apart from this message everything works. The image gets saved and it is saved far before the timeout appears.
224
+
225
+ It seems that it has something to do with Ruby GraphViz gem.
226
+
227
+ If you have any hint on this please contact me.
228
+
222
229
  ## Contributing
223
230
 
224
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/active-explorer. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
231
+ Bug reports and pull requests are welcome on GitHub at https://github.com/rascasone/active_explorer. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
225
232
 
226
233
 
227
234
  ## License
data/Rakefile CHANGED
@@ -2,6 +2,3 @@ require "bundler/gem_tasks"
2
2
  require 'rspec/core/rake_task'
3
3
 
4
4
  # RSpec::Core::RakeTask.new(:spec)
5
-
6
- require 'standalone_migrations'
7
- StandaloneMigrations::Tasks.load_tasks
@@ -29,10 +29,10 @@ Gem::Specification.new do |spec|
29
29
  spec.add_development_dependency "rspec-nc"
30
30
  spec.add_development_dependency "guard"
31
31
  spec.add_development_dependency "guard-rspec"
32
+ spec.add_development_dependency "sqlite3"
32
33
  spec.add_development_dependency 'ruby-graphviz', '~> 1.2', '>= 1.2.2'
33
- spec.add_development_dependency 'mysql'
34
- spec.add_development_dependency 'standalone_migrations'
35
34
  spec.add_development_dependency 'awesome_print'
36
35
  spec.add_development_dependency 'factory_girl'
37
36
  spec.add_development_dependency 'appraisal'
37
+ spec.add_development_dependency 'pry'
38
38
  end
@@ -1,3 +1,3 @@
1
1
  module ActiveExplorer
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
data/lib/exploration.rb CHANGED
@@ -43,8 +43,10 @@ module ActiveExplorer
43
43
  @class_filter = class_filter || ActiveExplorer::Config.class_filter
44
44
  @class_filter = { show: @class_filter } if @class_filter.is_a?(Array)
45
45
 
46
- [:show, :ignore].each do |group|
47
- @class_filter[group] = @class_filter[group].present? ? each_val_to_s(@class_filter[group]) : []
46
+ if @class_filter
47
+ [:show, :ignore].each do |group|
48
+ @class_filter[group] = @class_filter[group].present? ? each_val_to_s(@class_filter[group]) : []
49
+ end
48
50
  end
49
51
 
50
52
  @association_filter = association_filter || ActiveExplorer::Config.association_filter
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_explorer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marek Ulicny
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-08 00:00:00.000000000 Z
11
+ date: 2016-06-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby-graphviz
@@ -123,41 +123,41 @@ dependencies:
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
- name: ruby-graphviz
126
+ name: sqlite3
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: '1.2'
132
129
  - - ">="
133
130
  - !ruby/object:Gem::Version
134
- version: 1.2.2
131
+ version: '0'
135
132
  type: :development
136
133
  prerelease: false
137
134
  version_requirements: !ruby/object:Gem::Requirement
138
135
  requirements:
139
- - - "~>"
140
- - !ruby/object:Gem::Version
141
- version: '1.2'
142
136
  - - ">="
143
137
  - !ruby/object:Gem::Version
144
- version: 1.2.2
138
+ version: '0'
145
139
  - !ruby/object:Gem::Dependency
146
- name: mysql
140
+ name: ruby-graphviz
147
141
  requirement: !ruby/object:Gem::Requirement
148
142
  requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '1.2'
149
146
  - - ">="
150
147
  - !ruby/object:Gem::Version
151
- version: '0'
148
+ version: 1.2.2
152
149
  type: :development
153
150
  prerelease: false
154
151
  version_requirements: !ruby/object:Gem::Requirement
155
152
  requirements:
153
+ - - "~>"
154
+ - !ruby/object:Gem::Version
155
+ version: '1.2'
156
156
  - - ">="
157
157
  - !ruby/object:Gem::Version
158
- version: '0'
158
+ version: 1.2.2
159
159
  - !ruby/object:Gem::Dependency
160
- name: standalone_migrations
160
+ name: awesome_print
161
161
  requirement: !ruby/object:Gem::Requirement
162
162
  requirements:
163
163
  - - ">="
@@ -171,7 +171,7 @@ dependencies:
171
171
  - !ruby/object:Gem::Version
172
172
  version: '0'
173
173
  - !ruby/object:Gem::Dependency
174
- name: awesome_print
174
+ name: factory_girl
175
175
  requirement: !ruby/object:Gem::Requirement
176
176
  requirements:
177
177
  - - ">="
@@ -185,7 +185,7 @@ dependencies:
185
185
  - !ruby/object:Gem::Version
186
186
  version: '0'
187
187
  - !ruby/object:Gem::Dependency
188
- name: factory_girl
188
+ name: appraisal
189
189
  requirement: !ruby/object:Gem::Requirement
190
190
  requirements:
191
191
  - - ">="
@@ -199,7 +199,7 @@ dependencies:
199
199
  - !ruby/object:Gem::Version
200
200
  version: '0'
201
201
  - !ruby/object:Gem::Dependency
202
- name: appraisal
202
+ name: pry
203
203
  requirement: !ruby/object:Gem::Requirement
204
204
  requirements:
205
205
  - - ">="
@@ -237,6 +237,7 @@ files:
237
237
  - active_explorer.gemspec
238
238
  - bin/console
239
239
  - bin/setup
240
+ - docs/images/author_books_reviews.png
240
241
  - gemfiles/activerecord_3_0.gemfile
241
242
  - gemfiles/activerecord_3_0.gemfile.lock
242
243
  - gemfiles/activerecord_3_1.gemfile