inversion 0.17.2 → 0.17.3

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: 6745a33cc02610b46025e012922f4e510eb14825
4
- data.tar.gz: 1fe0babb88461e808d34f82391aaf38b23328061
3
+ metadata.gz: ce3df399edaec700d90c634d354a1f452df4fbbd
4
+ data.tar.gz: 3df0b15958d115c2a4013ccfa6fbc1bf39b5a7bf
5
5
  SHA512:
6
- metadata.gz: 9412182ee80045940434ab81977cd1d879e42bd7d7e8c884e73aa0af154c67dcf384dca970dd91e8f492fc98be0b1f6d2153dc4ccd0afa20a7bb5f223e630e92
7
- data.tar.gz: 3b3eeabfbe0a1a6eed93d13fe9db06af2c60d7a99bb55e216cbb6a039aca72579a86bce059d5746c583bcddbf821c51087553b5d7a6c5bd7813c2bc98a814c44
6
+ metadata.gz: fc101d2dddd1c7e70fdf8ad014edaa81db0ea79661f0475636a9906b566066225044d974febc034ef12a6fa0a78510d0c71e5013fb89ee4613230d49a6345ede
7
+ data.tar.gz: 4be23c2a5f052059043748da5837ed6936c18b4b3fcde7533cac74994208d72cfc509edcf532ee8d5f37f6a4ed1f7fe8bfab5a3f720940c7733eafddca1e073f
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
data/History.rdoc CHANGED
@@ -1,3 +1,10 @@
1
+ == v0.17.3 [2015-02-16] Michael Granger <ged@FaerieMUD.org>
2
+
3
+ - Performance fix: Re-comment the #inspect logging message
4
+ in the RenderState
5
+ - Updated tag docs
6
+
7
+
1
8
  == v0.17.2 [2015-01-22] Michael Granger <ged@FaerieMUD.org>
2
9
 
3
10
  - Fix a bug with the fragment tag.
data/Tags.rdoc CHANGED
@@ -18,139 +18,6 @@ The second form is especially useful if you're generating HTML and want to put a
18
18
  You can mix tag forms in a single document.
19
19
 
20
20
 
21
- == Tags
22
-
23
- === begin/rescue
24
-
25
- These tags work as you'd expect from their ruby counterparts.
26
-
27
- The +begin+ section of the template to be rendered only if no exceptions are raised while it's
28
- being rendered. If an exception is raised, it is checked against any +rescue+ sections, and the
29
- first with a matching exception is rendered instead. If no +rescue+ block is found, the exception
30
- is handled by the configured exception behavior for the template (see Inversion::Template@Template+Options).
31
-
32
- <?begin ?><?call employees.length ?><?end?>
33
-
34
- <?begin ?>
35
- <?for employee in employees.all ?>
36
- <?attr employee.name ?> --> <?attr employee.title ?>
37
- <?end for?>
38
- <?rescue DatabaseError => err ?>
39
- Oh no!! I can't talk to the database for some reason. The
40
- error was as follows:
41
- <pre>
42
- <?attr err.message ?>
43
- </pre>
44
- <?end?>
45
-
46
- === comment
47
-
48
- The +comment+ tag can be used to temporarily stop a section of a document from being rendered:
49
-
50
- <?comment?>
51
- This stuff won't be rendered.
52
- <?end comment ?>
53
- But this stuff will.
54
-
55
- Note that the tags inside the comment will still be parsed, so the template's interface won't be affected by the comment:
56
-
57
- <?comment?>
58
- <?attr content ?>
59
- <?end comment ?>
60
-
61
- If you have +debugging_comments+ enabled in the template options[rdoc-ref:Templates@Template+Options], sections which are commented out will be rendered as a comment describing what was omitted, surrounded by the comment characters set in +comment_start+ and +comment_end+ options, respectively.
62
-
63
- <!-- Commented out 1 nodes on line 1 -->
64
-
65
- You can also embed a description of why the section is commented in the tag body, which will be used as a label when rendering the comment. For example:
66
-
67
- <?comment Disabled until there's content ?>
68
- <?attr content ?>
69
- <?end comment ?>
70
-
71
- will be rendered as:
72
-
73
- <!-- Commented out 1 nodes on line 1: Disabled until there's content -->
74
-
75
-
76
- === config
77
-
78
- The +config+ tag can be used to override template options[Templates@Template+Options]
79
- on a per-template basis. It allows for convenient, inline settings from
80
- within a template rather than from the code in which the template is
81
- loaded.
82
-
83
- For example, if you want to enable debugging comments on a single template:
84
-
85
- <?config debugging_comments: true ?>
86
-
87
- Multiple template options can be set simultaneously by using a YAML hash:
88
-
89
- <?config
90
- on_render_error: propagate
91
- debugging_comments: true
92
- comment_start: /*
93
- comment_end: */
94
- ?>
95
-
96
- Note that this also allows you to set multiple options on a single line, if you wrap them in braces:
97
-
98
- <?config { comment_start: "/*", comment_end: "*/" } ?>
99
-
100
-
101
- === default
102
-
103
- The +default+ tag sets an attribute from within the template, and this value is used if the attribute is otherwise unset.
104
-
105
- template = Inversion::Template.new <<-TMPL
106
- <?default adjective to "cruel" ?>
107
- <?default noun to "world" ?>
108
- Goodbye, <?attr adjective ?> <?attr noun ?>!
109
- TMPL
110
-
111
- template.render
112
-
113
- template.adjective = "delicious"
114
- template.render
115
-
116
- template.adjective = nil
117
- template.noun = "banana"
118
- template.render
119
-
120
- Would produce the output:
121
-
122
- Goodbye, cruel world!
123
- Goodbye, delicious world!
124
- Goodbye, cruel banana!
125
-
126
-
127
- === fragment
128
-
129
- A +fragment+ tag also sets an attribute from within the template, but under the scope of the global
130
- template itself. A fragment can use other Inversion tags, and the attribute is both usable
131
- elsewhere in the template, and accessible from calling code after rendering.
132
-
133
- template = Inversion::Template.new <<-TMPL
134
- <?fragment subject ?>Your order status (Order #<?call order.number ?>)<?end ?>
135
-
136
- Dear <?call order.customer.name ?>,
137
-
138
- Your recent order was modified by our Order Fulfillment Team.
139
-
140
- After careful deliberation, it was decided that no one should have need for that many hot dogs
141
- with overnight shipping. Frankly, we're more than a little concerned for your health.
142
-
143
- Sincerely,
144
- Rowe's Meat Emporium
145
- (Buy! Sell! Consignment!)
146
- TMPL
147
-
148
- template.order = order
149
- template.render
150
-
151
- template.fragments[ :subject ] #=> "Your order status (Order #3492)"
152
-
153
-
154
21
  == Placeholder Tags
155
22
 
156
23
  Placeholder tags represent the main functionality of Inversion; they create a placeholder in the output text which can be filled in via a method on the template object with the same name.
@@ -231,9 +98,9 @@ Dates are compared against the current time, and render to approximate descripti
231
98
  * less than a minute from now
232
99
 
233
100
 
234
- == Import and Publish/Subscribe
101
+ == Inter-template Tags
235
102
 
236
- Both of these tags operate on nested templates: one copies objects from an outer template into an inner one (+import+), and the other publishes sections of content from one template to any other subscribed template.
103
+ These tags operate on nested templates, allowing you to selectively use or send attributes or content from other templates.
237
104
 
238
105
 
239
106
  === import
@@ -401,6 +268,34 @@ The +include+ tag allows inclusion of other template files from within a templat
401
268
  Your Friends at Spime Thorpe!
402
269
 
403
270
 
271
+ === fragment
272
+
273
+ A +fragment+ tag also sets an attribute from within the template, but under the
274
+ scope of the global template itself. A fragment can use other Inversion tags,
275
+ and the attribute is both usable elsewhere in the template, and accessible from
276
+ calling code after rendering.
277
+
278
+ template = Inversion::Template.new <<-TMPL
279
+ <?fragment subject ?>Your order status (Order #<?call order.number ?>)<?end ?>
280
+
281
+ Dear <?call order.customer.name ?>,
282
+
283
+ Your recent order was modified by our Order Fulfillment Team.
284
+
285
+ After careful deliberation, it was decided that no one should have need for that many hot dogs
286
+ with overnight shipping. Frankly, we're more than a little concerned for your health.
287
+
288
+ Sincerely,
289
+ Rowe's Meat Emporium
290
+ (Buy! Sell! Consignment!)
291
+ TMPL
292
+
293
+ template.order = order
294
+ template.render
295
+
296
+ template.fragments[ :subject ] #=> "Your order status (Order #3492)"
297
+
298
+
404
299
  == Flow Control
405
300
 
406
301
  The following tags are used to alter the flow of rendering from within templates.
@@ -517,6 +412,86 @@ The +yield+ tag is used to defer rendering of some part of the template to the c
517
412
  This will insert the +report_table+ template in place of the yield, but only if $DEBUG is true.
518
413
 
519
414
 
415
+ === begin/rescue
416
+
417
+ These tags work as you'd expect from their ruby counterparts.
418
+
419
+ The +begin+ section of the template to be rendered only if no exceptions are raised while it's
420
+ being rendered. If an exception is raised, it is checked against any +rescue+ sections, and the
421
+ first with a matching exception is rendered instead. If no +rescue+ block is found, the exception
422
+ is handled by the configured exception behavior for the template (see Inversion::Template@Template+Options).
423
+
424
+ <?begin ?><?call employees.length ?><?end?>
425
+
426
+ <?begin ?>
427
+ <?for employee in employees.all ?>
428
+ <?attr employee.name ?> --> <?attr employee.title ?>
429
+ <?end for?>
430
+ <?rescue DatabaseError => err ?>
431
+ Oh no!! I can't talk to the database for some reason. The
432
+ error was as follows:
433
+ <pre>
434
+ <?attr err.message ?>
435
+ </pre>
436
+ <?end?>
437
+
438
+
439
+ == Control Tags
440
+
441
+ There are a few tags that can be used to set values in the templating system itself.
442
+
443
+ === config
444
+
445
+ The +config+ tag can be used to override template options[Templates@Template+Options]
446
+ on a per-template basis. It allows for convenient, inline settings from
447
+ within a template rather than from the code in which the template is
448
+ loaded.
449
+
450
+ For example, if you want to enable debugging comments on a single template:
451
+
452
+ <?config debugging_comments: true ?>
453
+
454
+ Multiple template options can be set simultaneously by using a YAML hash:
455
+
456
+ <?config
457
+ on_render_error: propagate
458
+ debugging_comments: true
459
+ comment_start: /*
460
+ comment_end: */
461
+ ?>
462
+
463
+ Note that this also allows you to set multiple options on a single line, if you wrap them in braces:
464
+
465
+ <?config { comment_start: "/*", comment_end: "*/" } ?>
466
+
467
+
468
+ === default
469
+
470
+ The +default+ tag sets an attribute from within the template, and this value is used if the attribute is otherwise unset.
471
+
472
+ template = Inversion::Template.new <<-TMPL
473
+ <?default adjective to "cruel" ?>
474
+ <?default noun to "world" ?>
475
+ Goodbye, <?attr adjective ?> <?attr noun ?>!
476
+ TMPL
477
+
478
+ template.render
479
+
480
+ template.adjective = "delicious"
481
+ template.render
482
+
483
+ template.adjective = nil
484
+ template.noun = "banana"
485
+ template.render
486
+
487
+ Would produce the output:
488
+
489
+ Goodbye, cruel world!
490
+ Goodbye, delicious world!
491
+ Goodbye, cruel banana!
492
+
493
+
494
+
520
495
  == Troubleshooting/Introspection
521
496
 
522
497
  === pp
data/lib/inversion.rb CHANGED
@@ -26,10 +26,10 @@ module Inversion
26
26
  warn ">>> Inversion requires Ruby 2.0.0 or later. <<<" if RUBY_VERSION < '2.0.0'
27
27
 
28
28
  # Library version constant
29
- VERSION = '0.17.2'
29
+ VERSION = '0.17.3'
30
30
 
31
31
  # Version-control revision constant
32
- REVISION = %q$Revision: 25c7ea1fcb58 $
32
+ REVISION = %q$Revision: ad70311aa386 $
33
33
 
34
34
 
35
35
  ### Get the Inversion version.
@@ -479,7 +479,7 @@ class Inversion::RenderState
479
479
 
480
480
  ### Return the given +nodes+ as a String in the configured encoding.
481
481
  def stringify_nodes( nodes )
482
- self.log.debug "Rendering nodes: %p" % [ nodes ]
482
+ # self.log.debug "Rendering nodes: %p" % [ nodes ]
483
483
  strings = nodes.flatten.map( &:to_s )
484
484
 
485
485
  if enc = self.options[ :encoding ]
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.17.2
4
+ version: 0.17.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Granger
@@ -31,7 +31,7 @@ cert_chain:
31
31
  c7ZKPJcWBv0sm81+FCZXNACn2f9jfF8OQinxVs0O052KbGuEQaaiGIYeuuwQE2q6
32
32
  ggcrPfcYeTwWlfZPu2LrBg==
33
33
  -----END CERTIFICATE-----
34
- date: 2015-01-23 00:00:00.000000000 Z
34
+ date: 2015-02-17 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: loggability
metadata.gz.sig CHANGED
@@ -1,2 +1,3 @@
1
- �� �^(����\Q
2
- !�ݚ w���$��L��lN�Z��}Y:4�㻐5��6�}^���ݎs��B:��ˑ��7t�Z��2�sb��[Ÿ��Xp�?ft&��6�=a�俓��M�puPa#"�d�a��GӘG�ꠔλ�.���{����Y0��OP_�mYvb�zV��M}���p%�NwA������a�fڵK��������j�<`�E��\Sґc50A�W��d%�V�[@�:`v����A��j�H����'�
1
+ t�T4=�ɵd�I�_@�����]���$w��Y �~�+ �:X���x���ǯ0u���{r�K�!���
2
+ :�;ș��{�X�S���;͔��S|� ҙ�n
3
+ w5�6>TI0���`���bQc���O�!�����s[|٣&L�m��h���LQ3���g L�� �9p��44�Z������ЃH��� �*���8�*E ���񚳴��|���q+Hą�4_"�sD��l��7�\�Z���F;�