active_explorer 0.0.7 → 0.0.8

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
  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