inversion 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
data.tar.gz.sig CHANGED
@@ -1 +1 @@
1
- Xv?�Ђf�ڛ����\.K<1����ž>-��!�����C�q�*7��+f��#���܀�sw���҂�Q
1
+ tllK��+�ՠ3���$��T+��Qŝ���Q��jӑ /�z���h�q���aMU E������ kA/�����a�cdPz���?<�WY��������,���$��7':E�4r/+g`��'j���qZ�|Lt5��C曀K��P/}� �6o(�L�=�$�G����3��a�HRU��0���j#�����~g���#����ԛ4p��*1�l!�%�!��OV��:gd�v�Ms��l r�
data/ChangeLog CHANGED
@@ -1,12 +1,110 @@
1
+ 2012-01-05 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * .hgtags:
4
+ Added tag v0.5.0 for changeset 0f4e4aa78d9c
5
+ [cc3f12489745] [tip]
6
+
7
+ * .hgsigs:
8
+ Added signature for changeset 11fb6ed08994
9
+ [0f4e4aa78d9c] [v0.5.0]
10
+
11
+ * History.rdoc, lib/inversion.rb:
12
+ Bump the minor version, update history.
13
+ [11fb6ed08994]
14
+
15
+ * lib/inversion/template.rb, spec/inversion/template_spec.rb:
16
+ Add an option to Inversion::Template.load for setting the encoding
17
+ of the template source.
18
+ [f5a4907d65db]
19
+
20
+ * .rvm.gems, .rvmrc, .tm_properties, Rakefile:
21
+ Use RVM to manage development environment
22
+ [87bccbf27c84]
23
+
24
+ 2011-10-05 Michael Granger <ged@FaerieMUD.org>
25
+
26
+ * README.rdoc:
27
+ Rewrapped README to 80 columns
28
+ [dd170965e7d2]
29
+
30
+ * .hgtags:
31
+ Added tag v0.4.0 for changeset 2aa4351a4080
32
+ [4f33cfcc83e3]
33
+
34
+ * .hgsigs:
35
+ Added signature for changeset 5b1e645db600
36
+ [2aa4351a4080] [v0.4.0]
37
+
38
+ * History.rdoc, Rakefile, lib/inversion.rb:
39
+ Bumped the minor version, updated the History file.
40
+ [5b1e645db600]
41
+
42
+ * lib/inversion/renderstate.rb, lib/inversion/template.rb,
43
+ lib/inversion/template/elsetag.rb,
44
+ lib/inversion/template/elsiftag.rb, lib/inversion/template/iftag.rb:
45
+ Reworked render toggling so the before/after rendering hooks are
46
+ called immediately before and after the node *would* have been
47
+ rendered. This further cleans up the conditional logic, and causes
48
+ the if/elsif/else tags to behave like you'd expect: the nodes they
49
+ demark aren't even touched if rendering is disabled.
50
+
51
+ Adjusted the other tags to account for the change.
52
+ [f9fcf011955e]
53
+
54
+ * .hgtags:
55
+ Added tag v0.3.0 for changeset 656f0e2bceea
56
+ [b1a9d8ac9401]
57
+
58
+ * .hgsigs:
59
+ Added signature for changeset cde501e6764c
60
+ [656f0e2bceea] [v0.3.0]
61
+
62
+ * History.rdoc, lib/inversion.rb:
63
+ Bump minor version and update History
64
+ [cde501e6764c]
65
+
66
+ * lib/inversion/template/elsiftag.rb, lib/inversion/template/iftag.rb:
67
+ Fix require loop in if/elsif tags
68
+ [707d9dc985c9]
69
+
70
+ * lib/inversion/mixins.rb:
71
+ Fixing a problem with HTML escaping of objects other than Strings
72
+ [434fba9c2f16]
73
+
74
+ * lib/inversion/renderstate.rb, lib/inversion/template.rb,
75
+ spec/inversion/renderstate_spec.rb:
76
+ Added render timing (Inversion::RenderState#time_elapsed)
77
+ [ed0bc421632e]
78
+
1
79
  2011-09-27 Michael Granger <ged@FaerieMUD.org>
2
80
 
81
+ * .hgtags:
82
+ Added tag v0.2.0 for changeset f570e1eff279
83
+ [d51e6c51ad60]
84
+
85
+ * .hgsigs:
86
+ Added signature for changeset 9a7cec92550e
87
+ [f570e1eff279] [v0.2.0]
88
+
89
+ * Rakefile:
90
+ Check history before releases.
91
+ [9a7cec92550e]
92
+
93
+ * Manifest.txt, Rakefile:
94
+ Fix the Manifest.
95
+ [ace3bdf0dcd9]
96
+
97
+ * .hgtags:
98
+ Removed tag v0.2.0
99
+ [fe100c0ff417]
100
+
3
101
  * .hgtags:
4
102
  Added tag v0.2.0 for changeset 9b57bc8611b2
5
- [8f0b8b864b1a] [tip]
103
+ [8f0b8b864b1a]
6
104
 
7
105
  * .hgsigs:
8
106
  Added signature for changeset 896d23953a0a
9
- [9b57bc8611b2] [v0.2.0]
107
+ [9b57bc8611b2]
10
108
 
11
109
  * History.rdoc, lib/inversion.rb:
12
110
  Bumped minor version, updated History for release.
@@ -149,7 +247,7 @@
149
247
 
150
248
  * manual/resources/css/manual.css, manual/resources/css/reset.css:
151
249
  Fixing CSS font-face declarations; adding missing reset.css
152
- [45f04400b244] [github/master]
250
+ [45f04400b244]
153
251
 
154
252
  * .hgtags:
155
253
  Added tag v0.0.4 for changeset 7a412b7ed72b
@@ -191,6 +289,10 @@
191
289
  Avoid Pathname#expand_path in Inversion::Template.load [profiled]
192
290
  [91cbb0c90b85]
193
291
 
292
+ * Rakefile:
293
+ Disable the .gemtest task that hoe defines without asking
294
+ [cf76def7d9cf]
295
+
194
296
  2011-09-16 Michael Granger <ged@FaerieMUD.org>
195
297
 
196
298
  * lib/inversion/template/elsiftag.rb:
@@ -201,12 +303,6 @@
201
303
  Fix shadowed variable in BeginTag#handle_exception.
202
304
  [8424ac44da4a]
203
305
 
204
- 2011-09-21 Michael Granger <ged@FaerieMUD.org>
205
-
206
- * Rakefile:
207
- Disable the .gemtest task that hoe defines without asking
208
- [cf76def7d9cf]
209
-
210
306
  2011-08-17 Michael Granger <ged@FaerieMUD.org>
211
307
 
212
308
  * manual/resources/css/manual.css:
@@ -1054,6 +1150,14 @@
1054
1150
  Merged with dc16cc877dfc, updated README
1055
1151
  [0fdf3122bf7c]
1056
1152
 
1153
+ * README.md, experiments/erb_scope_bleed.rb:
1154
+ Fleshing out the README, adding scope-bleedover example
1155
+ [f44b597af8bd]
1156
+
1157
+ * lib/inversion.rb:
1158
+ Removing checked-in revision value
1159
+ [773feca505b8]
1160
+
1057
1161
  2011-04-06 Michael Granger <ged@FaerieMUD.org>
1058
1162
 
1059
1163
  * .irbrc, Rakefile, experiments/ripper_spike.rb, lib/inversion.rb,
@@ -1096,18 +1200,6 @@
1096
1200
  Checkpoint, fleshing out Tags.
1097
1201
  [4a4fc3f1dc14]
1098
1202
 
1099
- 2011-04-12 Michael Granger <ged@FaerieMUD.org>
1100
-
1101
- * README.md, experiments/erb_scope_bleed.rb:
1102
- Fleshing out the README, adding scope-bleedover example
1103
- [f44b597af8bd]
1104
-
1105
- * lib/inversion.rb:
1106
- Removing checked-in revision value
1107
- [773feca505b8]
1108
-
1109
- 2011-02-07 Mahlon E. Smith <mahlon@martini.nu>
1110
-
1111
1203
  * lib/inversion.rb, lib/inversion/template.rb,
1112
1204
  spec/inversion/template_spec.rb, spec/inversion_spec.rb:
1113
1205
  Totally awesome templating system DONE. Now: profit!
data/History.rdoc CHANGED
@@ -1,3 +1,9 @@
1
+ == v0.5.0 [2012-01-05] Michael Granger <ged@FaerieMUD.org>
2
+
3
+ Added an encoding option to Inversion::Template.load for
4
+ specifying the encoding of the template source.
5
+
6
+
1
7
  == v0.4.0 [2011-10-05] Michael Granger <ged@FaerieMUD.org>
2
8
 
3
9
  Reworked render toggling so the before/after rendering hooks are
data/README.rdoc CHANGED
@@ -5,15 +5,17 @@
5
5
 
6
6
  == Description
7
7
 
8
- Inversion is a templating system for Ruby. It uses the "Inversion of Control" principle to decouple
9
- the contents and structure of the template from the code that uses it, making it easier to use,
10
- test-friendly, and clean.
8
+ Inversion is a templating system for Ruby. It uses the "Inversion of Control"
9
+ principle to decouple the contents and structure of templates from the code
10
+ that uses them, making it easier to separate concerns, keep your tests simple,
11
+ and avoid polluting scopes with ephemeral data.
11
12
 
12
13
 
13
14
  === Details
14
15
 
15
- Inversion, like most other templating systems, works by giving you a way of defining the static
16
- parts of your output, and then letting you combine that at a later point with the dynamic parts:
16
+ Inversion, like most other templating systems, works by giving you a way of
17
+ defining the static parts of your output, and then letting you combine that at
18
+ a later point with the dynamic parts:
17
19
 
18
20
  Create the template and use it to render an exciting message:
19
21
 
@@ -21,31 +23,35 @@ Create the template and use it to render an exciting message:
21
23
  tmpl.name = "World"
22
24
  puts tmpl.render
23
25
 
24
- The <tt><?attr name ?></tt> tag defines the _name_ accessor on the template object, the value of
25
- which is substituted for any occurrences of +name+ in the template:
26
+ The <tt><?attr name ?></tt> tag defines the _name_ accessor on the template
27
+ object, the value of which is substituted for any occurrences of +name+ in the
28
+ template:
26
29
 
27
30
  Hello, World!
28
31
 
29
- This by itself isn't fantastically useful, but it does illustrate one of the ways in which Inversion
30
- is different: the program and the template share data through an API, instead of through a complex
31
- data structure, which establishes a clear delineation between what responsibility is the program's
32
- and which is the template's. The program doesn't have to know how the view uses the data it's given,
33
- and tests of the controller can substitute a Mock Object for the template to test the interaction
34
- between the two instead of having to match patterns in the eventual output like an integration test.
32
+ This by itself isn't fantastically useful, but it does illustrate one of the
33
+ ways in which Inversion is different: the program and the template share data
34
+ through an API, instead of through a complex data structure, which establishes
35
+ a clear delineation between what responsibility is the program's and which is
36
+ the template's. The program doesn't have to know how the view uses the data
37
+ it's given, and tests of the controller can substitute a Mock Object for the
38
+ template to test the interaction between the two instead of having to match
39
+ patterns in the eventual output like an integration test.
35
40
 
36
41
  You can also interact with the values set in the template:
37
42
 
38
43
  Name: <?attr employee.full_name ?>
39
44
 
40
- This will call the +#full_name+ method on whatever is set as the +employee+ attribute when
41
- rendered, and the result will take the place of the tag.
45
+ This will call the +#full_name+ method on whatever is set as the +employee+
46
+ attribute when rendered, and the result will take the place of the tag.
42
47
 
43
- Inversion also comes with a collection of other tags that provide flow control, exception-handling,
44
- etc.
48
+ Inversion also comes with a collection of other tags that provide flow
49
+ control, exception-handling, etc.
45
50
 
46
- Here's a slightly more complex example: Say we have a layout template that contains all the
47
- boilerplate, navigation, etc. for the site, and then an `<?attr body ?>` somewhere in the content
48
- area for the content specific to each view:
51
+ Here's a slightly more complex example: Say we have a layout template that
52
+ contains all the boilerplate, navigation, etc. for the site, and then an
53
+ `<?attr body ?>` somewhere in the content area for the content specific to
54
+ each view:
49
55
 
50
56
  layout = Inversion::Template.load( 'templates/layout.tmpl' )
51
57
 
@@ -60,9 +66,10 @@ Then there's a view template that displays a bulleted list of article titles:
60
66
  </ul>
61
67
  </section>
62
68
 
63
- Loading this template results in a Ruby object whose API contains one method: `#articles`. To render
64
- the view, we just call that accessor with instances of an `Article` domain class we defined
65
- elsewhere, and then drop the 'alist' template into the layout and render them:
69
+ Loading this template results in a Ruby object whose API contains one method:
70
+ `#articles`. To render the view, we just call that accessor with instances of
71
+ an `Article` domain class we defined elsewhere, and then drop the 'alist'
72
+ template into the layout and render them:
66
73
 
67
74
  alist = Inversion::Template.load( 'templates/alist.tmpl' )
68
75
  alist.articles = Articles.latest( 10 )
@@ -70,16 +77,21 @@ elsewhere, and then drop the 'alist' template into the layout and render them:
70
77
  layout.body = alist
71
78
  puts layout.render
72
79
 
73
- The `for` tag in the alist will iterate over the enumerable Articles and generate an `<li>` for each
74
- one. The resulting template object will be set as the body of the layout template, and stringified
75
- when the enclosing template is rendered. Templates can be nested this way as deeply as you like.
80
+ The `for` tag in the alist will iterate over the enumerable Articles and
81
+ generate an `<li>` for each one. The resulting template object will be set as
82
+ the body of the layout template, and stringified when the enclosing template
83
+ is rendered. Templates can be nested this way as deeply as you like.
84
+
85
+ For detailed tag documentation and examples, see the {online
86
+ manual}[http://deveiate.org/code/Inversion-manual/] or browse {the API
87
+ docs}[http://deveiate.org/code/inversion].
76
88
 
77
89
 
78
90
  == References
79
91
 
80
- * Inversion of Control: http://en.wikipedia.org/wiki/Inversion_of_control
81
- * Passive View: http://martinfowler.com/eaaDev/PassiveScreen.html
82
- * Supervising Controller: http://martinfowler.com/eaaDev/SupervisingPresenter.html
92
+ * {Inversion of Control}[http://en.wikipedia.org/wiki/Inversion_of_control]
93
+ * {Passive View}[http://martinfowler.com/eaaDev/PassiveScreen.html]
94
+ * {Supervising Controller}[http://martinfowler.com/eaaDev/SupervisingPresenter.html]
83
95
 
84
96
 
85
97
  == Installation
data/Rakefile CHANGED
@@ -21,17 +21,17 @@ hoespec = Hoe.spec 'inversion' do
21
21
  self.developer 'Mahlon E. Smith', 'mahlon@martini.nu'
22
22
 
23
23
  self.dependency 'ripper', '~> 1.0', :development unless defined?( Encoding )
24
- self.dependency 'rspec', '~> 2.6.0', :development
25
- self.dependency 'tilt', '~> 1.3.2', :development
26
- self.dependency 'sinatra', '~> 1.2.6', :development
27
- self.dependency 'rack-test', '~> 0.6.0', :development
28
- self.dependency 'simplecov', '~> 0.4.2', :development
29
- self.dependency 'hoe-manualgen', '~> 0.2.0', :development
24
+ self.dependency 'rspec', '~> 2.6', :development
25
+ self.dependency 'tilt', '~> 1.3', :development
26
+ self.dependency 'sinatra', '~> 1.2', :development
27
+ self.dependency 'rack-test', '~> 0.6', :development
28
+ self.dependency 'simplecov', '~> 0.4', :development
29
+ self.dependency 'hoe-manualgen', '~> 0.2', :development
30
30
 
31
31
  # bin/inversion deps
32
- self.dependency 'trollop', '~> 1.16.2', :development
33
- self.dependency 'highline', '~> 1.6.2', :development
34
- self.dependency 'sysexits', '~> 1.0.2', :development
32
+ self.dependency 'trollop', '~> 1.16', :development
33
+ self.dependency 'highline', '~> 1.6', :development
34
+ self.dependency 'sysexits', '~> 1.0', :development
35
35
 
36
36
  self.spec_extras[:licenses] = ["BSD"]
37
37
  self.require_ruby_version( '>=1.9.2' )
data/lib/inversion.rb CHANGED
@@ -26,10 +26,10 @@ module Inversion
26
26
  require 'inversion/monkeypatches'
27
27
 
28
28
  # Library version constant
29
- VERSION = '0.4.0'
29
+ VERSION = '0.5.0'
30
30
 
31
31
  # Version-control revision constant
32
- REVISION = %q$Revision: 5b1e645db600 $
32
+ REVISION = %q$Revision: 11fb6ed08994 $
33
33
 
34
34
  #
35
35
  # Logging
@@ -96,7 +96,12 @@ class Inversion::Template
96
96
  end
97
97
 
98
98
  # We trust files read from disk
99
- source = tmpl.read
99
+ encoding = opts.delete( :encoding )
100
+ source = if encoding
101
+ tmpl.read( encoding: encoding )
102
+ else
103
+ tmpl.read
104
+ end
100
105
  source.untaint
101
106
 
102
107
  # Load the instance and set the path to the source
@@ -76,13 +76,21 @@ describe Inversion::Template do
76
76
  tmpl.foo.should == :bar
77
77
  end
78
78
 
79
+ it "can pass an encoding option to IO.open through the template constructor" do
80
+ content = 'some stuff'.encode( 'utf-8' )
81
+ IO.should_receive( :read ).with( '/a/utf8/template.tmpl', encoding: 'utf-8' ).and_return( content )
82
+ template = Inversion::Template.load( '/a/utf8/template.tmpl', encoding: 'utf-8' )
83
+
84
+ template.render.encoding.should == Encoding::UTF_8
85
+ end
86
+
79
87
 
80
88
  context "loaded from a file" do
81
89
 
82
90
  before( :each ) do
83
91
  @timestamp = Time.now
84
92
  content = 'file contents'.taint
85
- IO.should_receive( :read ).with( '/tmp/hooowat' ).and_return( content )
93
+ IO.stub( :read ).with( '/tmp/hooowat' ).and_return( content )
86
94
  @template = Inversion::Template.load( '/tmp/hooowat' )
87
95
  end
88
96
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inversion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -49,11 +49,11 @@ cert_chain:
49
49
  -----END CERTIFICATE-----
50
50
 
51
51
  '
52
- date: 2011-10-06 00:00:00.000000000Z
52
+ date: 2012-01-05 00:00:00.000000000 Z
53
53
  dependencies:
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: hoe-mercurial
56
- requirement: &70307924560640 !ruby/object:Gem::Requirement
56
+ requirement: &70112213964960 !ruby/object:Gem::Requirement
57
57
  none: false
58
58
  requirements:
59
59
  - - ~>
@@ -61,10 +61,10 @@ dependencies:
61
61
  version: 1.3.1
62
62
  type: :development
63
63
  prerelease: false
64
- version_requirements: *70307924560640
64
+ version_requirements: *70112213964960
65
65
  - !ruby/object:Gem::Dependency
66
66
  name: hoe-manualgen
67
- requirement: &70307924560080 !ruby/object:Gem::Requirement
67
+ requirement: &70112213964400 !ruby/object:Gem::Requirement
68
68
  none: false
69
69
  requirements:
70
70
  - - ~>
@@ -72,10 +72,10 @@ dependencies:
72
72
  version: 0.2.0
73
73
  type: :development
74
74
  prerelease: false
75
- version_requirements: *70307924560080
75
+ version_requirements: *70112213964400
76
76
  - !ruby/object:Gem::Dependency
77
77
  name: hoe-highline
78
- requirement: &70307924559340 !ruby/object:Gem::Requirement
78
+ requirement: &70112213963860 !ruby/object:Gem::Requirement
79
79
  none: false
80
80
  requirements:
81
81
  - - ~>
@@ -83,109 +83,120 @@ dependencies:
83
83
  version: 0.0.1
84
84
  type: :development
85
85
  prerelease: false
86
- version_requirements: *70307924559340
86
+ version_requirements: *70112213963860
87
87
  - !ruby/object:Gem::Dependency
88
88
  name: rspec
89
- requirement: &70307924558580 !ruby/object:Gem::Requirement
89
+ requirement: &70112213961800 !ruby/object:Gem::Requirement
90
90
  none: false
91
91
  requirements:
92
92
  - - ~>
93
93
  - !ruby/object:Gem::Version
94
- version: 2.6.0
94
+ version: '2.6'
95
95
  type: :development
96
96
  prerelease: false
97
- version_requirements: *70307924558580
97
+ version_requirements: *70112213961800
98
98
  - !ruby/object:Gem::Dependency
99
99
  name: tilt
100
- requirement: &70307924557980 !ruby/object:Gem::Requirement
100
+ requirement: &70112213960480 !ruby/object:Gem::Requirement
101
101
  none: false
102
102
  requirements:
103
103
  - - ~>
104
104
  - !ruby/object:Gem::Version
105
- version: 1.3.2
105
+ version: '1.3'
106
106
  type: :development
107
107
  prerelease: false
108
- version_requirements: *70307924557980
108
+ version_requirements: *70112213960480
109
109
  - !ruby/object:Gem::Dependency
110
110
  name: sinatra
111
- requirement: &70307924557420 !ruby/object:Gem::Requirement
111
+ requirement: &70112213959200 !ruby/object:Gem::Requirement
112
112
  none: false
113
113
  requirements:
114
114
  - - ~>
115
115
  - !ruby/object:Gem::Version
116
- version: 1.2.6
116
+ version: '1.2'
117
117
  type: :development
118
118
  prerelease: false
119
- version_requirements: *70307924557420
119
+ version_requirements: *70112213959200
120
120
  - !ruby/object:Gem::Dependency
121
121
  name: rack-test
122
- requirement: &70307924556780 !ruby/object:Gem::Requirement
122
+ requirement: &70112213974620 !ruby/object:Gem::Requirement
123
123
  none: false
124
124
  requirements:
125
125
  - - ~>
126
126
  - !ruby/object:Gem::Version
127
- version: 0.6.0
127
+ version: '0.6'
128
128
  type: :development
129
129
  prerelease: false
130
- version_requirements: *70307924556780
130
+ version_requirements: *70112213974620
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: simplecov
133
- requirement: &70307924556160 !ruby/object:Gem::Requirement
133
+ requirement: &70112213973840 !ruby/object:Gem::Requirement
134
134
  none: false
135
135
  requirements:
136
136
  - - ~>
137
137
  - !ruby/object:Gem::Version
138
- version: 0.4.2
138
+ version: '0.4'
139
139
  type: :development
140
140
  prerelease: false
141
- version_requirements: *70307924556160
141
+ version_requirements: *70112213973840
142
142
  - !ruby/object:Gem::Dependency
143
143
  name: hoe-manualgen
144
- requirement: &70307924555720 !ruby/object:Gem::Requirement
144
+ requirement: &70112213973160 !ruby/object:Gem::Requirement
145
145
  none: false
146
146
  requirements:
147
147
  - - ~>
148
148
  - !ruby/object:Gem::Version
149
- version: 0.2.0
149
+ version: '0.2'
150
150
  type: :development
151
151
  prerelease: false
152
- version_requirements: *70307924555720
152
+ version_requirements: *70112213973160
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: trollop
155
- requirement: &70307924555160 !ruby/object:Gem::Requirement
155
+ requirement: &70112213972500 !ruby/object:Gem::Requirement
156
156
  none: false
157
157
  requirements:
158
158
  - - ~>
159
159
  - !ruby/object:Gem::Version
160
- version: 1.16.2
160
+ version: '1.16'
161
161
  type: :development
162
162
  prerelease: false
163
- version_requirements: *70307924555160
163
+ version_requirements: *70112213972500
164
164
  - !ruby/object:Gem::Dependency
165
165
  name: highline
166
- requirement: &70307924554240 !ruby/object:Gem::Requirement
166
+ requirement: &70112213971560 !ruby/object:Gem::Requirement
167
167
  none: false
168
168
  requirements:
169
169
  - - ~>
170
170
  - !ruby/object:Gem::Version
171
- version: 1.6.2
171
+ version: '1.6'
172
172
  type: :development
173
173
  prerelease: false
174
- version_requirements: *70307924554240
174
+ version_requirements: *70112213971560
175
175
  - !ruby/object:Gem::Dependency
176
176
  name: sysexits
177
- requirement: &70307924553020 !ruby/object:Gem::Requirement
177
+ requirement: &70112213970920 !ruby/object:Gem::Requirement
178
178
  none: false
179
179
  requirements:
180
180
  - - ~>
181
181
  - !ruby/object:Gem::Version
182
- version: 1.0.2
182
+ version: '1.0'
183
183
  type: :development
184
184
  prerelease: false
185
- version_requirements: *70307924553020
185
+ version_requirements: *70112213970920
186
+ - !ruby/object:Gem::Dependency
187
+ name: rdoc
188
+ requirement: &70112213970460 !ruby/object:Gem::Requirement
189
+ none: false
190
+ requirements:
191
+ - - ~>
192
+ - !ruby/object:Gem::Version
193
+ version: '3.10'
194
+ type: :development
195
+ prerelease: false
196
+ version_requirements: *70112213970460
186
197
  - !ruby/object:Gem::Dependency
187
198
  name: hoe
188
- requirement: &70307924552300 !ruby/object:Gem::Requirement
199
+ requirement: &70112213970040 !ruby/object:Gem::Requirement
189
200
  none: false
190
201
  requirements:
191
202
  - - ~>
@@ -193,14 +204,15 @@ dependencies:
193
204
  version: '2.12'
194
205
  type: :development
195
206
  prerelease: false
196
- version_requirements: *70307924552300
207
+ version_requirements: *70112213970040
197
208
  description: ! 'Inversion is a templating system for Ruby. It uses the "Inversion
198
- of Control" principle to decouple
209
+ of Control"
210
+
211
+ principle to decouple the contents and structure of templates from the code
199
212
 
200
- the contents and structure of the template from the code that uses it, making it
201
- easier to use,
213
+ that uses them, making it easier to separate concerns, keep your tests simple,
202
214
 
203
- test-friendly, and clean.'
215
+ and avoid polluting scopes with ephemeral data.'
204
216
  email:
205
217
  - ged@FaerieMUD.org
206
218
  - mahlon@martini.nu
metadata.gz.sig CHANGED
Binary file