railroady 1.1.2 → 1.6.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.
metadata CHANGED
@@ -1,20 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: railroady
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Preston Lee
8
8
  - Tobias Crawley
9
9
  - Peter Hoeg
10
10
  - Javier Smaldone
11
- autorequire:
11
+ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2014-08-08 00:00:00.000000000 Z
14
+ date: 2021-07-30 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
- name: bundler
17
+ name: activesupport
18
18
  requirement: !ruby/object:Gem::Requirement
19
19
  requirements:
20
20
  - - ">="
@@ -28,7 +28,7 @@ dependencies:
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
30
  - !ruby/object:Gem::Dependency
31
- name: rake
31
+ name: bundler
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
34
  - - ">="
@@ -56,21 +56,7 @@ dependencies:
56
56
  - !ruby/object:Gem::Version
57
57
  version: '0'
58
58
  - !ruby/object:Gem::Dependency
59
- name: minitest-spec-context
60
- requirement: !ruby/object:Gem::Requirement
61
- requirements:
62
- - - ">="
63
- - !ruby/object:Gem::Version
64
- version: '0'
65
- type: :development
66
- prerelease: false
67
- version_requirements: !ruby/object:Gem::Requirement
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- version: '0'
72
- - !ruby/object:Gem::Dependency
73
- name: activesupport
59
+ name: rake
74
60
  requirement: !ruby/object:Gem::Requirement
75
61
  requirements:
76
62
  - - ">="
@@ -83,8 +69,8 @@ dependencies:
83
69
  - - ">="
84
70
  - !ruby/object:Gem::Version
85
71
  version: '0'
86
- description: Ruby on Rails 3/4 model and controller UML class diagram generator. Originally
87
- based on the 'railroad' plugin and contributions of many others. (`sudo port install
72
+ description: Ruby on Rails model and controller UML class diagram generator. Originally
73
+ based on the 'railroad' plugin and contributions of many others. (`brew install
88
74
  graphviz` before use!)
89
75
  email:
90
76
  - preston.lee@prestonlee.com
@@ -98,12 +84,13 @@ extensions: []
98
84
  extra_rdoc_files: []
99
85
  files:
100
86
  - ".gitignore"
87
+ - ".travis.yml"
101
88
  - AUTHORS.rdoc
102
- - CHANGELOG.rdoc
103
89
  - Gemfile
104
90
  - Gemfile.lock
91
+ - Guardfile
105
92
  - LICENSE.rdoc
106
- - README.rdoc
93
+ - README.md
107
94
  - Rakefile
108
95
  - bin/railroady
109
96
  - lib/railroady.rb
@@ -121,9 +108,13 @@ files:
121
108
  - test/file_fixture/app/controllers/dummy1_controller.rb
122
109
  - test/file_fixture/app/controllers/dummy2_controller.rb
123
110
  - test/file_fixture/app/controllers/sub-dir/sub_dummy_controller.rb
111
+ - test/file_fixture/app/models/concerns/author_settings.rb
112
+ - test/file_fixture/app/models/concerns/taggable.rb
124
113
  - test/file_fixture/app/models/dummy1.rb
125
114
  - test/file_fixture/app/models/dummy2.rb
126
115
  - test/file_fixture/app/models/sub-dir/sub_dummy.rb
116
+ - test/file_fixture/lib/app/controllers/dummy/dummy_controller.rb
117
+ - test/file_fixture/lib/app/models/dummy1.rb
127
118
  - test/lib/railroady/aasm_diagram_spec.rb
128
119
  - test/lib/railroady/app_diagram_spec.rb
129
120
  - test/lib/railroady/controllers_diagram_spec.rb
@@ -135,7 +126,7 @@ homepage: http://github.com/preston/railroady
135
126
  licenses:
136
127
  - GPLv2
137
128
  metadata: {}
138
- post_install_message:
129
+ post_install_message:
139
130
  rdoc_options: []
140
131
  require_paths:
141
132
  - lib
@@ -150,19 +141,22 @@ required_rubygems_version: !ruby/object:Gem::Requirement
150
141
  - !ruby/object:Gem::Version
151
142
  version: '0'
152
143
  requirements: []
153
- rubyforge_project:
154
- rubygems_version: 2.2.2
155
- signing_key:
144
+ rubygems_version: 3.2.25
145
+ signing_key:
156
146
  specification_version: 4
157
- summary: Ruby on Rails 3/4 model and controller UML class diagram generator.
147
+ summary: Ruby on Rails model and controller UML class diagram generator.
158
148
  test_files:
159
149
  - test/file_fixture/app/controllers/application_controller.rb
160
150
  - test/file_fixture/app/controllers/dummy1_controller.rb
161
151
  - test/file_fixture/app/controllers/dummy2_controller.rb
162
152
  - test/file_fixture/app/controllers/sub-dir/sub_dummy_controller.rb
153
+ - test/file_fixture/app/models/concerns/author_settings.rb
154
+ - test/file_fixture/app/models/concerns/taggable.rb
163
155
  - test/file_fixture/app/models/dummy1.rb
164
156
  - test/file_fixture/app/models/dummy2.rb
165
157
  - test/file_fixture/app/models/sub-dir/sub_dummy.rb
158
+ - test/file_fixture/lib/app/controllers/dummy/dummy_controller.rb
159
+ - test/file_fixture/lib/app/models/dummy1.rb
166
160
  - test/lib/railroady/aasm_diagram_spec.rb
167
161
  - test/lib/railroady/app_diagram_spec.rb
168
162
  - test/lib/railroady/controllers_diagram_spec.rb
data/CHANGELOG.rdoc DELETED
@@ -1,144 +0,0 @@
1
- = Changes
2
-
3
- == Version 1.1.1
4
-
5
- - Merge in a Sinatra support.
6
- - Merge in other pull requests.
7
- - Switched from rspec to minitest specs.
8
- - Removed jeweler dependency and updated to more recent bundler + gemspec format.
9
-
10
- == Version 1.0.2
11
-
12
- - Merged in John Bintz's patch to properly strip leading "::" prefixes from class names.
13
-
14
- == Version 1.0.1
15
- - Patch to fix bug for projects with spaces in the path. (Thanks, Tim Harvey!)
16
-
17
- == Version 1.0.0
18
- - After months of community testing, we're finally at 1.0.0. Woohoo! This release is 100% compatible with the last pre-1.0.0 release.
19
- - Patch for model classes not in the root module namespace.
20
- - Documentation updates.
21
-
22
- == Version 0.11.3
23
- - Merge in bug fix and test cases from Tim Harvey. (Thanks!)
24
- - Documentation updates.
25
-
26
- == Version 0.11.2
27
- - Bugfix for including gem version number in generated documents.
28
- - Gem meta-data fixes.
29
-
30
- == Version 0.11.1
31
- - Minor bug fixes.
32
-
33
- == Version 0.9.1
34
- - Removal of deprecated API call.
35
- - Documentation updates.
36
-
37
- == Version 0.9.0
38
- - Forked from tobias-railroad on GitHub.
39
- - Project rebranding to reflect Rails v3 support.
40
- - Adding railtie support for Rails 3 plugins.
41
- - Adding rake tasks that are automatically included by Rails 3 applications.
42
-
43
- == Version 0.8.0 (22 June 2010)
44
- - add --specify to specify only a few model/controller files as the opposite of --exclude
45
- - improve test coverage
46
-
47
- == Version 0.7.0
48
- - get tests passing, make things generally more testable, start improving coverage
49
- - add support for ignoring a glob pattern and multiple files, simplify options
50
-
51
- == Version 0.5.8 (May 16 2009)
52
- - Fixed an embarassing showstopper bug introduced in 0.5.6 where no
53
- relationships would show
54
-
55
- == Version 0.5.7 (May 16 2009)
56
- - Load the version automatically from VERSION.yml
57
-
58
- == Version 0.5.1 to 0.5.6 (May 15 2009)
59
- - Make sure the proper version tag is set everywhere
60
- - Support showing belongs_to relationships when generating models
61
- - Transitioned to using Jeweler for gem management
62
- - Shuffled some file locations around
63
- - NOTE: there are NO tests passing yet, but this gem was developed without 'em
64
- - Fixed broken gemspec
65
- - Added ChangeLog entries
66
- - Added AUTHORS entry
67
- - Updated railroad version entry
68
- - Support rails v2.3
69
- - Support namespaced models/controllers
70
-
71
- == Version 0.5.0 (may 10 2008)
72
- - Changed model relationships representation (feature request #10898)
73
- - Added support for plugins models (-p) (feature request #12742 by
74
- Chris Richards). Thanks to Elliot Smith.
75
- - Added support for irregular inflexions (from patch #12384). Thanks
76
- to Juan Ignacio Pumarino.
77
- - Added hidding of magic fields (--hide-magic) (from patch #13351)
78
- Thanks to Hajime Baba.
79
- - Added -r option to set the application root path (request #12801).
80
- - The -e flag now requires full path to excluded files.
81
- - Added support for state machine diagram ("acts as state machine" plugin).
82
- Thanks to Ana Nelson (she did all the work!).
83
-
84
- == Version 0.4.1 (may 9 2008)
85
- - Fix bug #17852 (class name treated as String).
86
-
87
- == Version 0.4.0 (apr 25 2007)
88
- - Draw inheritance edges in reverse way
89
- (from superclass to subclass, with an arrow in the tail)
90
- This improves how 'dot' renders the graph
91
- - By default, don't draw transitive inherited associations
92
- - Added --transitive flag to draw transitive inherited associations
93
- - Added --exclude flag for ommiting classes (this may help to produce
94
- diagrams for applications with broken classes)
95
-
96
- == Version 0.3.4 (apr 12 2007)
97
- - Add support for model abstract classes.
98
- (don't try to get content columns, bug #10033)
99
- - Add verbose mode
100
- - More code cleanup.
101
- - Using an internal representation and then
102
- generating the DOT output. This will allow to
103
- add more output formats in the future.
104
-
105
- == Version 0.3.3 (apr 10 2007)
106
- - Code cleanup
107
-
108
- == Version 0.3.2 (apr 9 2007)
109
- - Disable STDOUT when loading applications classes, avoiding
110
- messing up the DOT output.
111
- (Thanks to Sebastien Auvray, http://tnlessone.wordpress.com/)
112
-
113
- == Version 0.3.1 (apr 9 2007)
114
- - Release again for fix an error in .gem file
115
-
116
- == Version 0.3.0 (apr 9 2007)
117
- - Major code rewrite
118
- (More OO style)
119
- - Using Ruby's optparse to parse commandline options
120
- - Added flags for including (excluding) controllers methods
121
- based on visibility
122
- - Added -o flag for file output.
123
- - Minor cosmetic changes.
124
-
125
- == Version 0.2.0 (apr 8 2007)
126
- - Differentiate classes from modules
127
- - Added "-m" flag for considering modules
128
- - Draw double-headed arrows for habtm and has_many, :through associations
129
- - Fix inheritance support for non ActiveRecord::Base classes on model
130
- diagrams
131
-
132
- == Version 0.1.2 (apr 7 2007)
133
- - Documentation moved from script header to README
134
-
135
- == Version 0.1.1 (apr 5 2007)
136
- - Changed default graph label fontsize to 14.
137
- - Better error handling.
138
- - Minor cosmetic changes.
139
- - New way to load classes, supporting subdirectories traversal.
140
- (Inspired in RAV, http://rav.rubyforge.org/)
141
- - RailRoady version included in diagrams' label.
142
-
143
- == Version 0.1.0 (apr 2 2007)
144
- - Initial release.
data/README.rdoc DELETED
@@ -1,187 +0,0 @@
1
- = RailRoady
2
-
3
- RailRoady generates Rails 3/4 model (ActiveRecord, Mongoid, Datamapper) and controller UML diagrams as cross-platform .svg files, as well as in the DOT language.
4
-
5
- Code is based on the original "railroad" gem, patched and maintained over the years. Lineage can be traced via GitHub.
6
-
7
- I (Preston Lee) am not trying to hijack Peter Hoeg or Javier's project, but rather create a dedicated, lean gem that can be used without major issue on Rails v3 and v4 projects. Rails v2 is not supported.
8
-
9
- = System Requirements
10
-
11
- You MUST have the the following utilities available at the command line.
12
- * `dot` and `neato`.
13
-
14
- * `sed`, which should already be available on all sane UNIX systems.
15
-
16
- = Mac users
17
-
18
- MacPorts users can install in via
19
-
20
- sudo port install graphviz
21
-
22
- Brew user can install via
23
-
24
- brew install graphviz
25
-
26
- = Ubuntu users
27
-
28
- Ubuntu users can install in via
29
-
30
- sudo apt-get install graphviz
31
- = Usage
32
-
33
- The easiest (and recommend) usage is to include railroady as a development dependency with your Rails 3 Gemfile, like so...
34
-
35
- group :development, :test do
36
- gem 'railroady'
37
- end
38
-
39
- ...and then run the master rake task...
40
-
41
- rake diagram:all
42
-
43
- This should generate four doc/*.svg files that can be opened in (most) web browsers as well as dedicated document viewers supporting the Scalable Vector Graphics format.
44
-
45
- = Alternate Usage
46
-
47
- Alternatively, you may run the 'railroady' command-line program at the Rails application's root directory. You can redirect its output to a .dot file or pipe it to the dot or neato utilities to produce a graphic. Model diagrams are intended to be processed using dot and controller diagrams are best processed using neato.
48
-
49
- railroady [options] command
50
-
51
- == Options
52
-
53
- Common options:
54
- -b, --brief Generate compact diagram
55
- (no attributes nor methods)
56
- -s, --specify file1[,fileN] Specify given files only for the diagram
57
- (can take a glob pattern)
58
- -e, --exclude file1[,fileN] Exclude given files
59
- (can take a glob pattern)
60
- -i, --inheritance Include inheritance relations
61
- -l, --label Add a label with diagram information
62
- (type, date, migration, version)
63
- -o, --output FILE Write diagram to file FILE
64
- -v, --verbose Enable verbose output
65
- (produce messages to STDOUT)
66
- --alphabetize Sort methods alphabetically
67
-
68
- Models diagram options:
69
- -a, --all Include all models
70
- (not only ActiveRecord::Base derived)
71
- --all-columns Show all columns
72
- (not just content columns)
73
- --hide-magic Hide magic field names
74
- --hide-types Hide attributes type
75
- --hide-through Hide through associations
76
- -j, --join Concentrate edges
77
- -m, --modules Include modules
78
- -p, --plugins-models Include plugins models
79
- -t, --transitive Include transitive associations
80
- (through inheritance)
81
-
82
- Controllers diagram options:
83
- --hide-public Hide public methods
84
- --hide-protected Hide protected methods
85
- --hide-private Hide private methods
86
-
87
- Other options:
88
- -h, --help Show this message
89
- --version Show version and copyright
90
-
91
- == Commands
92
-
93
- -M, --models Generate models diagram
94
- -C, --controllers Generate controllers diagram
95
- -A, --aasm Generate "acts as state machine" diagram
96
-
97
-
98
- == Examples
99
-
100
- railroady -o models.dot -M
101
- Produces a models diagram to the file 'models.dot'
102
- railroady -a -i -o full_models.dot -M
103
- Models diagram with all classes showing inheritance relations
104
- railroady -M | dot -Tsvg > models.svg
105
- Model diagram in SVG format
106
- railroady -C | neato -Tpng > controllers.png
107
- Controller diagram in PNG format
108
- railroady -h
109
- Shows usage help
110
-
111
-
112
- = Processing DOT files
113
-
114
- To produce a PNG image from model diagram generated by RailRoady you can
115
- issue the following command:
116
-
117
- dot -Tpng models.dot > models.png
118
-
119
- If you want to do the same with a controller diagram, use neato instead of
120
- dot:
121
-
122
- neato -Tpng controllers.dot > controllers.png
123
-
124
- If you want to produce SVG (vectorial, scalable, editable) files, you can do
125
- the following:
126
-
127
- dot -Tsvg models.dot > models.svg
128
- neato -Tsvg controllers.dot > controllers.svg
129
-
130
- Important: There is a bug in Graphviz tools when generating SVG files that
131
- cause a text overflow. You can solve this problem editing (with a text
132
- editor, not a graphical SVG editor) the file and replacing around line 12
133
- "font-size:14.00;" by "font-size:11.00;", or by issuing the following command
134
- (see "man sed"):
135
-
136
- sed -i 's/font-size:14.00/font-size:11.00/g' file.svg
137
-
138
- Note: For viewing and editing SVG there is an excellent opensource tool
139
- called Inkscape (similar to Adobe Illustrator. For DOT processing you can
140
- also use Omnigraffle (on Mac OS X).
141
-
142
- = Rake Tasks
143
-
144
- As of Preston Lee's Rails 3/4 modifications, including RailRoady as a project development dependency will automatically add a set of rake tasks to your project. Sweet! (Run `rake -T` to check them out.)
145
-
146
-
147
- = Requirements
148
-
149
- RailRoady has been tested with the following Ruby and Rails versions
150
-
151
- == Ruby
152
- * 1.9.2+
153
- * 2.0.0+
154
-
155
- == Rails
156
- * 3.0.3+
157
- * 4.0.0+
158
-
159
- There are no additional requirements (nevertheless, all your Rails application
160
- requirements must be installed).
161
-
162
- In order to view/export the DOT diagrams, you'll need the processing tools
163
- from Graphviz.
164
-
165
- = Website and Project Home
166
-
167
- http://railroady.prestonlee.com
168
-
169
- = License
170
-
171
- RailRoady is distributed under the terms of the GNU General Public License
172
- as published by the Free Software Foundation; either version 2 of the
173
- License, or (at your option) any later version.
174
-
175
- See LICENSE for details.
176
-
177
- == Copyright
178
-
179
- Copyright (c) 2007-2008 Javier Smaldone
180
- Copyright (c) 2009 Peter Hoeg
181
- Copyright (c) 2010 Preston Lee
182
-
183
- See LICENSE for details.
184
-
185
- == Authors
186
-
187
- See AUTHORS for details.