inversion 0.0.1

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.
Files changed (78) hide show
  1. data.tar.gz.sig +2 -0
  2. data/.gemtest +0 -0
  3. data/ChangeLog +836 -0
  4. data/History.md +4 -0
  5. data/Manifest.txt +74 -0
  6. data/README.rdoc +171 -0
  7. data/Rakefile +55 -0
  8. data/bin/inversion +276 -0
  9. data/lib/inversion.rb +98 -0
  10. data/lib/inversion/exceptions.rb +21 -0
  11. data/lib/inversion/mixins.rb +236 -0
  12. data/lib/inversion/monkeypatches.rb +20 -0
  13. data/lib/inversion/renderstate.rb +337 -0
  14. data/lib/inversion/sinatra.rb +35 -0
  15. data/lib/inversion/template.rb +250 -0
  16. data/lib/inversion/template/attrtag.rb +120 -0
  17. data/lib/inversion/template/calltag.rb +16 -0
  18. data/lib/inversion/template/codetag.rb +164 -0
  19. data/lib/inversion/template/commenttag.rb +54 -0
  20. data/lib/inversion/template/conditionaltag.rb +49 -0
  21. data/lib/inversion/template/configtag.rb +60 -0
  22. data/lib/inversion/template/containertag.rb +45 -0
  23. data/lib/inversion/template/elsetag.rb +62 -0
  24. data/lib/inversion/template/elsiftag.rb +49 -0
  25. data/lib/inversion/template/endtag.rb +55 -0
  26. data/lib/inversion/template/escapetag.rb +26 -0
  27. data/lib/inversion/template/fortag.rb +120 -0
  28. data/lib/inversion/template/iftag.rb +69 -0
  29. data/lib/inversion/template/importtag.rb +70 -0
  30. data/lib/inversion/template/includetag.rb +51 -0
  31. data/lib/inversion/template/node.rb +102 -0
  32. data/lib/inversion/template/parser.rb +297 -0
  33. data/lib/inversion/template/pptag.rb +28 -0
  34. data/lib/inversion/template/publishtag.rb +72 -0
  35. data/lib/inversion/template/subscribetag.rb +88 -0
  36. data/lib/inversion/template/tag.rb +150 -0
  37. data/lib/inversion/template/textnode.rb +43 -0
  38. data/lib/inversion/template/unlesstag.rb +60 -0
  39. data/lib/inversion/template/uriencodetag.rb +30 -0
  40. data/lib/inversion/template/yieldtag.rb +51 -0
  41. data/lib/inversion/tilt.rb +82 -0
  42. data/lib/inversion/utils.rb +235 -0
  43. data/spec/data/sinatra/hello.inversion +1 -0
  44. data/spec/inversion/mixins_spec.rb +177 -0
  45. data/spec/inversion/monkeypatches_spec.rb +35 -0
  46. data/spec/inversion/renderstate_spec.rb +291 -0
  47. data/spec/inversion/sinatra_spec.rb +59 -0
  48. data/spec/inversion/template/attrtag_spec.rb +216 -0
  49. data/spec/inversion/template/calltag_spec.rb +30 -0
  50. data/spec/inversion/template/codetag_spec.rb +51 -0
  51. data/spec/inversion/template/commenttag_spec.rb +84 -0
  52. data/spec/inversion/template/configtag_spec.rb +105 -0
  53. data/spec/inversion/template/containertag_spec.rb +54 -0
  54. data/spec/inversion/template/elsetag_spec.rb +105 -0
  55. data/spec/inversion/template/elsiftag_spec.rb +87 -0
  56. data/spec/inversion/template/endtag_spec.rb +78 -0
  57. data/spec/inversion/template/escapetag_spec.rb +59 -0
  58. data/spec/inversion/template/fortag_spec.rb +98 -0
  59. data/spec/inversion/template/iftag_spec.rb +241 -0
  60. data/spec/inversion/template/importtag_spec.rb +106 -0
  61. data/spec/inversion/template/includetag_spec.rb +108 -0
  62. data/spec/inversion/template/node_spec.rb +81 -0
  63. data/spec/inversion/template/parser_spec.rb +170 -0
  64. data/spec/inversion/template/pptag_spec.rb +51 -0
  65. data/spec/inversion/template/publishtag_spec.rb +69 -0
  66. data/spec/inversion/template/subscribetag_spec.rb +60 -0
  67. data/spec/inversion/template/tag_spec.rb +97 -0
  68. data/spec/inversion/template/textnode_spec.rb +86 -0
  69. data/spec/inversion/template/unlesstag_spec.rb +84 -0
  70. data/spec/inversion/template/uriencodetag_spec.rb +49 -0
  71. data/spec/inversion/template/yieldtag_spec.rb +54 -0
  72. data/spec/inversion/template_spec.rb +269 -0
  73. data/spec/inversion/tilt_spec.rb +47 -0
  74. data/spec/inversion_spec.rb +95 -0
  75. data/spec/lib/constants.rb +9 -0
  76. data/spec/lib/helpers.rb +160 -0
  77. metadata +316 -0
  78. metadata.gz.sig +0 -0
@@ -0,0 +1,2 @@
1
+ M�q�4�+5(tjͧR�I�
2
+ 苌08$��-�e��?n��W9稙��Z�A[!�c�@��"�[���Gl�"�Ɍ|��>s#mg6�A��t�>��U'�����ewu#a��u@̧x<��J��=\���{M�ā)�l�������
File without changes
@@ -0,0 +1,836 @@
1
+ 2011-08-15 Michael Granger <ged@FaerieMUD.org>
2
+
3
+ * .hgtags:
4
+ Added tag v0.0.1 for changeset 42184d34d45d
5
+ [e9e43e8d1060] [tip]
6
+
7
+ * .hgsigs:
8
+ Added signature for changeset 0bca14d50d50
9
+ [42184d34d45d] [v0.0.1]
10
+
11
+ * Rakefile, manual/lib/api-filter.rb, manual/src/templates.page:
12
+ Update to hoe-manualgen 0.2.0.
13
+ [0bca14d50d50]
14
+
15
+ * manual/src/examples.page:
16
+ Stripping expanded Id tag
17
+ [9613e2c60530]
18
+
19
+ 2011-08-15 Mahlon E. Smith <mahlon@martini.nu>
20
+
21
+ * Branch merge with d3ed941ec7ef
22
+ [07cde3b1ffba]
23
+
24
+ * .hgignore, Manual Diagrams.graffle, README.rdoc, Rakefile,
25
+ experiments/demo.rb, experiments/templates/demo-content.tmpl,
26
+ lib/inversion/template/subscribetag.rb, manual/layouts/default.erb,
27
+ manual/lib/api-filter.rb, manual/lib/editorial-filter.rb, manual/lib
28
+ /examples-filter.rb, manual/lib/links-filter.rb,
29
+ manual/resources/css/manual.css,
30
+ manual/resources/fonts/GraublauWeb.otf,
31
+ manual/resources/fonts/GraublauWebBold.otf,
32
+ manual/resources/fonts/Inconsolata.otf,
33
+ manual/resources/images/arrow_225_small.png,
34
+ manual/resources/images/arrow_315_small.png,
35
+ manual/resources/images/arrow_skip.png, manual/resources/images/cc-
36
+ by.png, manual/resources/images/dialog-error.png,
37
+ manual/resources/images/dialog-information.png,
38
+ manual/resources/images/dialog-warning.png, manual/resources/images
39
+ /emblem-important.png, manual/resources/images/help.png,
40
+ manual/resources/images/information.png,
41
+ manual/resources/images/magnifier.png,
42
+ manual/resources/images/magnifier_left.png,
43
+ manual/resources/images/page_white_code.png,
44
+ manual/resources/images/page_white_copy.png,
45
+ manual/resources/images/printer.png,
46
+ manual/resources/images/question.png,
47
+ manual/resources/images/scripts_code.png,
48
+ manual/resources/images/wrap.png,
49
+ manual/resources/images/wrapping.png,
50
+ manual/resources/js/jquery-1.4.4.min.js,
51
+ manual/resources/js/manual.js, manual/resources/js/sh.js,
52
+ manual/resources/swf/clipboard.swf, manual/src/examples.page,
53
+ manual/src/gettingstarted.page, manual/src/index.page,
54
+ manual/src/tags.page, manual/src/templates.page:
55
+ Adding a manual.
56
+ [8d85088f0601]
57
+
58
+ 2011-08-02 Michael Granger <ged@FaerieMUD.org>
59
+
60
+ * lib/inversion/tilt.rb, spec/inversion/template/configtag_spec.rb,
61
+ spec/inversion/tilt_spec.rb:
62
+ Fixes for Ruby 1.9.3-preview1.
63
+ [d3ed941ec7ef]
64
+
65
+ * lib/inversion.rb:
66
+ Add a warning for older versions of Ruby
67
+ [73c3d8215868]
68
+
69
+ * .irbrc:
70
+ Guard against load errors in .irbrc
71
+ [663ff80c4a69]
72
+
73
+ 2011-07-30 Michael Granger <ged@FaerieMUD.org>
74
+
75
+ * lib/inversion/tilt.rb:
76
+ Adding more workaround code for Sinatra
77
+ [dd6eb02835f4]
78
+
79
+ * lib/inversion/template/tag.rb:
80
+ Commented out some of the spammier debugging in the tag-loading
81
+ code.
82
+ [277a65ffa0bf]
83
+
84
+ 2011-07-27 Michael Granger <ged@FaerieMUD.org>
85
+
86
+ * Rakefile, lib/inversion/template/timedeltatag.rb,
87
+ spec/inversion/mixins_spec.rb,
88
+ spec/inversion/template/timedeltatag_spec.rb,
89
+ spec/inversion_spec.rb:
90
+ Added some specs to improve coverage
91
+ [5fb307e8605a]
92
+
93
+ * Manifest.txt, README.md, README.rdoc, Rakefile, bin/inversion,
94
+ lib/inversion.rb, lib/inversion/exceptions.rb,
95
+ lib/inversion/mixins.rb, lib/inversion/monkeypatches.rb,
96
+ lib/inversion/renderstate.rb, lib/inversion/sinatra.rb,
97
+ lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
98
+ lib/inversion/template/codetag.rb,
99
+ lib/inversion/template/commenttag.rb,
100
+ lib/inversion/template/conditionaltag.rb,
101
+ lib/inversion/template/configtag.rb,
102
+ lib/inversion/template/containertag.rb,
103
+ lib/inversion/template/defaulttag.rb,
104
+ lib/inversion/template/elsetag.rb,
105
+ lib/inversion/template/elsiftag.rb,
106
+ lib/inversion/template/endtag.rb,
107
+ lib/inversion/template/escapetag.rb,
108
+ lib/inversion/template/fortag.rb,
109
+ lib/inversion/template/importtag.rb,
110
+ lib/inversion/template/includetag.rb,
111
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
112
+ lib/inversion/template/publishtag.rb,
113
+ lib/inversion/template/rescuetag.rb, lib/inversion/template/tag.rb,
114
+ lib/inversion/template/textnode.rb,
115
+ lib/inversion/template/timedeltatag.rb,
116
+ lib/inversion/template/uriencodetag.rb, lib/inversion/tilt.rb,
117
+ lib/inversion/utils.rb,
118
+ spec/inversion/template/timedeltatag_spec.rb:
119
+ Documentation cleanup, remove some leftover YARD crap
120
+ [4876bcc91507]
121
+
122
+ * spec/inversion/renderstate_spec.rb, spec/inversion/template_spec.rb:
123
+ Fixed a few things caused by changes for the begin/rescue tag.
124
+ [1a698b24bc45]
125
+
126
+ * README.md, experiments/templates/demo-content.tmpl,
127
+ lib/inversion/renderstate.rb, lib/inversion/template/begintag.rb,
128
+ lib/inversion/template/defaulttag.rb,
129
+ lib/inversion/template/elsetag.rb,
130
+ lib/inversion/template/rescuetag.rb,
131
+ spec/inversion/renderstate_spec.rb,
132
+ spec/inversion/template/begintag_spec.rb,
133
+ spec/inversion/template/rescuetag_spec.rb:
134
+ Add the begin/rescue tags.
135
+ [44db647d7a1a]
136
+
137
+ 2011-07-20 Michael Granger <ged@FaerieMUD.org>
138
+
139
+ * lib/inversion/mixins.rb, lib/inversion/utils.rb:
140
+ Merging ANSIColor methods into the ColorLogFormatter, which was the
141
+ only place the code was used.
142
+ [fb8c209aaa28]
143
+
144
+ 2011-07-20 Mahlon E. Smith <mahlon@martini.nu>
145
+
146
+ * experiments/demo.rb, experiments/templates/demo-content.tmpl,
147
+ experiments/templates/demo-layout.tmpl,
148
+ lib/inversion/renderstate.rb, lib/inversion/template/attrtag.rb,
149
+ lib/inversion/template/defaulttag.rb,
150
+ spec/inversion/template/defaulttag_spec.rb:
151
+ Adding the 'default' tag
152
+ [f95e6a8167c6]
153
+
154
+ 2011-07-18 Michael Granger <ged@FaerieMUD.org>
155
+
156
+ * Manifest.txt, README.md, lib/inversion/renderstate.rb,
157
+ lib/inversion/template.rb, lib/inversion/template/yieldtag.rb,
158
+ spec/inversion/renderstate_spec.rb,
159
+ spec/inversion/template/yieldtag_spec.rb,
160
+ spec/inversion/template_spec.rb:
161
+ Adding a 'yield' tag
162
+ [3f7a7fb440b8]
163
+
164
+ 2011-07-13 Michael Granger <ged@FaerieMUD.org>
165
+
166
+ * lib/inversion/template/timedeltatag.rb,
167
+ spec/inversion/template/timedeltatag_spec.rb:
168
+ Fixed the timedelta specs for machines without modern timezones (I
169
+ think). This should fix the FreeBSD build.
170
+ [5c2b595a1e35]
171
+
172
+ * experiments/demo.rb, experiments/templates/demo-content.tmpl,
173
+ experiments/templates/demo-layout.tmpl, experiments/templates/demo-
174
+ menu.tmpl:
175
+ Adding a demo to experiments/
176
+ [b1b3b7895982]
177
+
178
+ * README.md:
179
+ Updating the README
180
+ [50ff925706ee]
181
+
182
+ * lib/inversion/template/iftag.rb:
183
+ Fixed in bug in the 'if' tag that caused conditional nodes to be
184
+ double-appended, the second time as a stringified array
185
+ [6485006e82d9]
186
+
187
+ * lib/inversion/renderstate.rb:
188
+ Squelched some spammy debugging
189
+ [0f134e004f34]
190
+
191
+ * lib/inversion/template/timedeltatag.rb,
192
+ spec/inversion/template/timedeltatag_spec.rb:
193
+ Added the 'timedelta' tag.
194
+ [ab8e5eb37b44]
195
+
196
+ 2011-07-12 Michael Granger <ged@FaerieMUD.org>
197
+
198
+ * lib/inversion/template/iftag.rb,
199
+ spec/inversion/template/iftag_spec.rb:
200
+ Fixing a bug in the 'if' tag that caused renderstate to recursively
201
+ try to stringify itself.
202
+ [106d0d6bd2e1]
203
+
204
+ * lib/inversion/renderstate.rb:
205
+ Adding Inversion::RenderState#inspect and fixing a debug log message
206
+ [b58a659fc93b]
207
+
208
+ 2011-07-11 Michael Granger <ged@FaerieMUD.org>
209
+
210
+ * .hgignore:
211
+ Add the package directory to the ignorefile
212
+ [50b33db61aad]
213
+
214
+ * Manifest.txt, bin/inversion:
215
+ Adding a command-line template-API tool
216
+ [b2dbb3f0f286]
217
+
218
+ * Manifest.txt:
219
+ Remove accidentally-committed manifest changes from pending patches.
220
+ [e387d6954154]
221
+
222
+ 2011-07-11 Mahlon E. Smith <mahlon@martini.nu>
223
+
224
+ * lib/inversion/template.rb, lib/inversion/template/textnode.rb,
225
+ spec/inversion/template/textnode_spec.rb,
226
+ spec/inversion/template_spec.rb:
227
+ Adding code to strip extra blank lines from output
228
+ [2ad072cd87ab]
229
+
230
+ 2011-07-11 Michael Granger <ged@FaerieMUD.org>
231
+
232
+ * lib/inversion/template/attrtag.rb,
233
+ lib/inversion/template/escapetag.rb, lib/inversion/template/node.rb,
234
+ lib/inversion/template/pptag.rb,
235
+ lib/inversion/template/uriencodetag.rb,
236
+ spec/inversion/template/configtag_spec.rb:
237
+ Make Inversion::Template::Node#render consistently take a
238
+ RenderState argument across all tags.
239
+ [15857a26de10]
240
+
241
+ * lib/inversion/template/uriencodetag.rb,
242
+ spec/inversion/template/uriencodetag_spec.rb:
243
+ Fixed a bug in the uriencode tag for non-string attributes.
244
+ [fe52500a302b]
245
+
246
+ 2011-07-11 Mahlon E. Smith <mahlon@martini.nu>
247
+
248
+ * lib/inversion/template/parser.rb,
249
+ spec/inversion/template/parser_spec.rb:
250
+ Converted parser to use String#scan instead of StringScanner to make
251
+ dealing with encoding issues easier
252
+ [f16cd5fc4255]
253
+
254
+ 2011-07-11 Michael Granger <ged@FaerieMUD.org>
255
+
256
+ * lib/inversion/template/tag.rb:
257
+ Bugfix for Inversion::Template::Tag#as_comment_body for tags with
258
+ null bodies.
259
+ [5579ca88f7ac]
260
+
261
+ * Manifest.txt:
262
+ Updating the Manifest
263
+ [f2b67bf8db76]
264
+
265
+ 2011-07-08 Michael Granger <ged@FaerieMUD.org>
266
+
267
+ * experiments/benchmark-parser.rb:
268
+ Adding a little parser-benchmarking utility. Just point it at a
269
+ directory full of *.tmpl template files.
270
+ [06af47a12ed6]
271
+
272
+ * .hgignore, Rakefile, spec/lib/helpers.rb:
273
+ Rakefile cleanup/separate coverage from specs
274
+ - Remove all the release stuff from the Rakefile that's already in
275
+ hoe-deveiate.
276
+ - Add a 'coverage' task to enable coverage generation so it doesn't
277
+ get run by default.
278
+ [cc53d24b4c56]
279
+
280
+ 2011-07-07 Michael Granger <ged@FaerieMUD.org>
281
+
282
+ * lib/inversion/template/attrtag.rb,
283
+ spec/inversion/template/attrtag_spec.rb:
284
+ Adding format syntax to attr with a methodchain
285
+ [739dfd64abba]
286
+
287
+ * lib/inversion/template/parser.rb:
288
+ Cleaned up parser logging
289
+ [1799cab39156]
290
+
291
+ 2011-07-07 Mahlon E. Smith <mahlon@martini.nu>
292
+
293
+ * spec/lib/helpers.rb:
294
+ Add SimpleCov to the Rakefile.
295
+ [9d871bbfa95d] [github/master]
296
+
297
+ 2011-07-07 Michael Granger <ged@FaerieMUD.org>
298
+
299
+ * lib/inversion/template/elsetag.rb,
300
+ spec/inversion/template/elsetag_spec.rb:
301
+ Fix the ElseTag constructor so it handles creation from the parser.
302
+ [3d53a4f4a2b4]
303
+
304
+ * lib/inversion/template/tag.rb, spec/inversion/template/tag_spec.rb:
305
+ Fixing a bug in Inversion::Template::Tag.create when given an
306
+ illegal tagname.
307
+ [75b323c6bc84]
308
+
309
+ 2011-07-06 Michael Granger <ged@FaerieMUD.org>
310
+
311
+ * Merged with b822cc9b6ff2
312
+ [f46b1ff133cd]
313
+
314
+ * .hgignore, README.md, Rakefile, lib/inversion.rb,
315
+ lib/inversion/monkeypatches.rb, lib/inversion/renderstate.rb,
316
+ lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
317
+ lib/inversion/template/codetag.rb,
318
+ lib/inversion/template/conditionaltag.rb,
319
+ lib/inversion/template/configtag.rb,
320
+ lib/inversion/template/containertag.rb,
321
+ lib/inversion/template/elsetag.rb,
322
+ lib/inversion/template/elsiftag.rb,
323
+ lib/inversion/template/endtag.rb, lib/inversion/template/iftag.rb,
324
+ lib/inversion/template/importtag.rb,
325
+ lib/inversion/template/includetag.rb,
326
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
327
+ lib/inversion/template/publishtag.rb,
328
+ lib/inversion/template/subscribetag.rb,
329
+ lib/inversion/template/tag.rb, lib/inversion/template/unlesstag.rb,
330
+ spec/inversion/renderstate_spec.rb,
331
+ spec/inversion/template/attrtag_spec.rb,
332
+ spec/inversion/template/endtag_spec.rb,
333
+ spec/inversion/template/iftag_spec.rb,
334
+ spec/inversion/template/includetag_spec.rb,
335
+ spec/inversion/template/node_spec.rb,
336
+ spec/inversion/template/parser_spec.rb,
337
+ spec/inversion/template/publishtag_spec.rb,
338
+ spec/inversion/template/subscribetag_spec.rb,
339
+ spec/inversion/template/tag_spec.rb,
340
+ spec/inversion/template/unlesstag_spec.rb,
341
+ spec/inversion/template_spec.rb, spec/lib/helpers.rb:
342
+ Adding publish/subscribe.
343
+ - Replaces import/export.
344
+ - De-Yarded.
345
+ - Load monkeypatches from the top level.
346
+ - Inversion::RenderState
347
+ * Made it heirarchical to provide access to enclosing template state
348
+ from tags during rendering.
349
+ * Added pub/sub support via #publish and #subscribe methods.
350
+ * Pulled a bunch of rendering logic out of Template.
351
+ * Deferred stringification until the last possible moment for nodes
352
+ that need to hang around until the very end of rendering.
353
+ * Allow the render destination to be overridden for a block.
354
+ * Pulled subtemplate (or any delegated) rendering up out of AttrTag
355
+ - Made the logic in Inversion::Template::ContainerTag/Inversion::Templ
356
+ ate::ConditionalTag more consistent.
357
+ - Extract non-general rendering logic from ConditionalTag into
358
+ IfTag/UnlessTag.
359
+ - Changed #before_append/#after_append to *_appending to be more
360
+ consistent with #before_/#after_rendering
361
+ - Added a yield to ContainerTag's #initialize for prettier node-tree
362
+ building.
363
+ - Pulled subtemplate loading from IncludeTag up into
364
+ Inversion::Parser::State so it can be used by other tags.
365
+ - Pulled container-closing up into EndTag.
366
+ - Inversion::Template::Tag's constructor now strips the body.
367
+ - Add SimpleCov coverage ()
368
+ [4d7a94c4cf02]
369
+
370
+ 2011-07-05 Mahlon E. Smith <mahlon@martini.nu>
371
+
372
+ * lib/inversion/template/pptag.rb, spec/inversion/mixins_spec.rb,
373
+ spec/inversion/template/pptag_spec.rb:
374
+ Heh, added the pp tag and mixin spec files back from changeset
375
+ 5d244064e631. Whoops.
376
+ [b822cc9b6ff2]
377
+
378
+ 2011-07-05 Michael Granger <ged@FaerieMUD.org>
379
+
380
+ * Rakefile, lib/inversion/sinatra.rb, lib/inversion/tilt.rb,
381
+ spec/data/sinatra/hello.inversion, spec/inversion/sinatra_spec.rb,
382
+ spec/inversion/tilt_spec.rb:
383
+ Adding support for Sinatra.
384
+ [a4d57edad888]
385
+
386
+ * lib/inversion/template.rb, lib/inversion/template/tag.rb:
387
+ Fixed some shadowed variable warnings.
388
+ [5c326f09c56e]
389
+
390
+ * Rakefile, experiments/tilt-test.tmpl, lib/inversion/tilt.rb,
391
+ spec/inversion/tilt_spec.rb:
392
+ Adding Tilt (https://github.com/rtomayko/tilt) support
393
+ [e414459913e5]
394
+
395
+ 2011-06-29 Michael Granger <ged@FaerieMUD.org>
396
+
397
+ * spec/inversion/template_spec.rb:
398
+ Fix omitted spec from the import tag commit
399
+ [5c8fe7fdc063]
400
+
401
+ * lib/inversion/template/importtag.rb:
402
+ Downgrade accidentally-committed error-level debugging messages
403
+ [6c0a7d914dc2]
404
+
405
+ * lib/inversion/template.rb, lib/inversion/template/importtag.rb,
406
+ spec/inversion/template/importtag_spec.rb,
407
+ spec/inversion/template_spec.rb:
408
+ Added the 'import' tag
409
+ [1ff17b49fb92]
410
+
411
+ 2011-06-27 Michael Granger <ged@FaerieMUD.org>
412
+
413
+ * lib/inversion/template.rb, spec/inversion/template_spec.rb:
414
+ Aliased Inversion::Template#render to #to_s
415
+ [0fdad3807675]
416
+
417
+ 2011-06-27 Mahlon E. Smith <mahlon@martini.nu>
418
+
419
+ * lib/inversion/template/attrtag.rb,
420
+ spec/inversion/template/attrtag_spec.rb:
421
+ Added before_rendering/after_rendering hooks to the attr tag
422
+ [25cef559d995]
423
+
424
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
425
+
426
+ * README.md, lib/inversion/template/conditionaltag.rb,
427
+ lib/inversion/template/elsetag.rb,
428
+ lib/inversion/template/elsiftag.rb, lib/inversion/template/iftag.rb,
429
+ lib/inversion/template/parser.rb,
430
+ lib/inversion/template/unlesstag.rb,
431
+ spec/inversion/renderstate_spec.rb,
432
+ spec/inversion/template/elsetag_spec.rb,
433
+ spec/inversion/template/elsiftag_spec.rb,
434
+ spec/inversion/template/iftag_spec.rb,
435
+ spec/inversion/template/parser_spec.rb,
436
+ spec/inversion/template/unlesstag_spec.rb:
437
+ Added conditional flow-control tags: if, elsif, else, unless.
438
+ [75f89b3b112e]
439
+
440
+ 2011-06-24 Mahlon E. Smith <mahlon@martini.nu>
441
+
442
+ * lib/inversion/template/attrtag.rb,
443
+ spec/inversion/template/attrtag_spec.rb:
444
+ Make attr tags not stringify their rendered values so overridding
445
+ implementations of #render can decide for themselves what to do
446
+ [f8bf76e02432]
447
+
448
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
449
+
450
+ * lib/inversion/template/attrtag.rb, lib/inversion/template/fortag.rb,
451
+ spec/inversion/template/attrtag_spec.rb:
452
+ Consistency fixes for debugging comment output
453
+ [5345b7293d41]
454
+
455
+ 2011-06-24 Mahlon E. Smith <mahlon@martini.nu>
456
+
457
+ * lib/inversion/template/endtag.rb,
458
+ spec/inversion/template/endtag_spec.rb:
459
+ Made end tag less special-case-ey, and added rendering as a comment
460
+ so container tags have opening and closing debugging comments
461
+ [74eef2dfaf25]
462
+
463
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
464
+
465
+ * lib/inversion/template/attrtag.rb,
466
+ spec/inversion/template/attrtag_spec.rb:
467
+ Rendered values of false are now returned as false instead of the
468
+ string 'false'
469
+ [7496f1b5840d]
470
+
471
+ * lib/inversion/renderstate.rb, spec/inversion/renderstate_spec.rb:
472
+ Changed the RenderState's attribute-accessor proxy method to be more
473
+ flexible
474
+ [a413d2252282]
475
+
476
+ * lib/inversion/template/fortag.rb,
477
+ spec/inversion/template/fortag_spec.rb:
478
+ Fixed 'for' in the case where the enumerated attribute isn't set
479
+ [da438e56caef]
480
+
481
+ * spec/inversion/template/calltag_spec.rb.orig:
482
+ Remove accidentally-committed .orig file
483
+ [039d8134bd10]
484
+
485
+ * lib/inversion/template/fortag.rb,
486
+ spec/inversion/template/fortag_spec.rb:
487
+ Fix bug in the 'for' tag
488
+ [fa20b04ea505]
489
+
490
+ 2011-06-24 Mahlon E. Smith <mahlon@martini.nu>
491
+
492
+ * lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
493
+ lib/inversion/template/calltag.rb,
494
+ lib/inversion/template/escapetag.rb,
495
+ lib/inversion/template/iftag.rb, lib/inversion/template/node.rb,
496
+ lib/inversion/template/uriencodetag.rb,
497
+ spec/inversion/renderstate_spec.rb,
498
+ spec/inversion/template/attrtag_spec.rb,
499
+ spec/inversion/template/calltag_spec.rb,
500
+ spec/inversion/template/configtag_spec.rb,
501
+ spec/inversion/template/iftag_spec.rb:
502
+ Adding 'if' tag.
503
+ - Combined 'code' and 'attr' tags; code is now just an alias for
504
+ 'attr'.
505
+ - Changed the API of Inversion::Template::Node#render to defer
506
+ stringification of the tag's value to Inversion::Template#render
507
+ instead of doing it itself. This makes #render easier to super to
508
+ for purposes other than rendered output (e.g., logical tags,
509
+ introspection).
510
+ - Added Inversion::Template::IfTag and spec.
511
+ [282f18320a55]
512
+
513
+ 2011-06-24 Michael Granger <ged@FaerieMUD.org>
514
+
515
+ * README.md:
516
+ Added/updated tags
517
+ [6b7ea4c5c4d8]
518
+
519
+ 2011-06-22 Michael Granger <ged@faerieMUD.org>
520
+
521
+ * README.md, lib/inversion/mixins.rb,
522
+ lib/inversion/template/escapetag.rb:
523
+ Added the pp tag; factored out escaping as a mixin so it can be
524
+ applied to multiple tags.
525
+ [5d244064e631]
526
+
527
+ 2011-06-22 Mahlon E. Smith <mahlon@martini.nu>
528
+
529
+ * lib/inversion/template/uriencodetag.rb,
530
+ spec/inversion/template/uriencodetag_spec.rb:
531
+ Add the <?uriencode ... ?> tag.
532
+ [a149dfdf20d4]
533
+
534
+ 2011-06-20 Mahlon E. Smith <mahlon@martini.nu>
535
+
536
+ * README.md, lib/inversion/template.rb,
537
+ lib/inversion/template/escapetag.rb,
538
+ spec/inversion/template/escapetag_spec.rb:
539
+ Added the <?escape ... ?> tag, currently just supporting HTML
540
+ escaping.
541
+ [0c06f24416bc]
542
+
543
+ 2011-06-20 Michael Granger <ged@FaerieMUD.org>
544
+
545
+ * spec/inversion/template/includetag_spec.rb:
546
+ Rearranged include tag specs
547
+ [3bfb053c8dcb]
548
+
549
+ 2011-06-20 Mahlon E. Smith <mahlon@martini.nu>
550
+
551
+ * lib/inversion/template/codetag.rb:
552
+ Changed tag-pattern methods to support runtime inheritance
553
+ [a1e3fc29efae]
554
+
555
+ 2011-06-20 Michael Granger <ged@FaerieMUD.org>
556
+
557
+ * README.md:
558
+ Updated README
559
+ [d44d7db1901a]
560
+
561
+ 2011-06-20 Mahlon E. Smith <mahlon@martini.nu>
562
+
563
+ * Rakefile, spec/lib/helpers.rb:
564
+ Updated the deprecated "Rspec" constant to "RSpec".
565
+ [3bb4dbe2439a]
566
+
567
+ * lib/inversion/exceptions.rb, lib/inversion/template.rb,
568
+ lib/inversion/template/configtag.rb,
569
+ lib/inversion/template/includetag.rb,
570
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
571
+ lib/inversion/template/tag.rb,
572
+ spec/inversion/template/includetag_spec.rb,
573
+ spec/inversion/template/node_spec.rb,
574
+ spec/inversion/template/parser_spec.rb,
575
+ spec/inversion/template_spec.rb:
576
+ Added the <?include ...?> tag.
577
+ [bb7a010fc3c9]
578
+
579
+ 2011-06-17 Mahlon E. Smith <mahlon@martini.nu>
580
+
581
+ * lib/inversion/template.rb, lib/inversion/template/configtag.rb,
582
+ spec/inversion/template_spec.rb:
583
+ Untaint template contents if read from a file.
584
+ [daab04896e58]
585
+
586
+ * lib/inversion/template/configtag.rb,
587
+ spec/inversion/template/configtag_spec.rb:
588
+ Forgot to add the config files to the repo! :)
589
+ [390eb0a3a6e4]
590
+
591
+ * README.md, lib/inversion/mixins.rb, lib/inversion/renderstate.rb,
592
+ lib/inversion/template.rb, lib/inversion/template/node.rb,
593
+ lib/inversion/template/parser.rb,
594
+ spec/inversion/renderstate_spec.rb,
595
+ spec/inversion/template/node_spec.rb,
596
+ spec/inversion/template/parser_spec.rb,
597
+ spec/inversion/template_spec.rb:
598
+ - Added the <?config ?> tag.
599
+ - Changed the config variable 'raise_on_unknown' to
600
+ 'ignore_unknown_tags'.
601
+ - Added options to the renderstate and parserstate, so the config tag
602
+ can override.
603
+ - Added #on_append to the Node class, so nodes have an opportunity to
604
+ modify the parse state as they are being parsed.
605
+ [cacdac743e2f]
606
+
607
+ 2011-06-15 Michael Granger <ged@FaerieMUD.org>
608
+
609
+ * lib/inversion/exceptions.rb, lib/inversion/template.rb,
610
+ spec/inversion/template_spec.rb:
611
+ Adding configurable exception-handling to the render phase
612
+ [f336e4928b34]
613
+
614
+ * lib/inversion/template/parser.rb:
615
+ Fixing bug in construction of trailing text node in
616
+ Inversion::Template::Parser
617
+ [1eba061a9a82]
618
+
619
+ * lib/inversion/renderstate.rb, spec/inversion/renderstate_spec.rb:
620
+ Use Object#clone instead of #dup to preserve frozen-ness and
621
+ singleton methods on attribute objects
622
+ [9020a2fc1db5]
623
+
624
+ * lib/inversion/template/commenttag.rb,
625
+ spec/inversion/template/commenttag_spec.rb:
626
+ Adding a comment tag
627
+ [9259443da186]
628
+
629
+ * lib/inversion/template/node.rb:
630
+ Added linnum and colnum readers to Inversion::Template::Node
631
+ [e35d429943ca]
632
+
633
+ * spec/inversion/template/fortag_spec.rb:
634
+ Aesthetic naming fix
635
+ [0b6afb5de2bf]
636
+
637
+ * lib/inversion/renderstate.rb, lib/inversion/template.rb,
638
+ lib/inversion/template/attrtag.rb,
639
+ lib/inversion/template/calltag.rb, lib/inversion/template/fortag.rb,
640
+ lib/inversion/template/node.rb, spec/inversion/renderstate_spec.rb,
641
+ spec/inversion/template/calltag_spec.rb.orig,
642
+ spec/inversion/template/fortag_spec.rb,
643
+ spec/inversion/template_spec.rb:
644
+ Adding state to nodes, for attribute overlay
645
+ [d5a4256b2252]
646
+
647
+ 2011-06-08 Mahlon E. Smith <mahlon@martini.nu>
648
+
649
+ * .hgignore, lib/inversion/template.rb,
650
+ lib/inversion/template/attrtag.rb,
651
+ lib/inversion/template/calltag.rb,
652
+ lib/inversion/template/codetag.rb, lib/inversion/template/fortag.rb,
653
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
654
+ lib/inversion/template/tag.rb, lib/inversion/template/textnode.rb,
655
+ spec/inversion/template/node_spec.rb,
656
+ spec/inversion/template/parser_spec.rb,
657
+ spec/inversion/template/tag_spec.rb,
658
+ spec/inversion/template_spec.rb:
659
+ Add parse state information to tag objects for improved error
660
+ reporting. (Line numbers, column number, file name.)
661
+ [6cb1f242e538]
662
+
663
+ 2011-06-03 Mahlon E. Smith <mahlon@martini.nu>
664
+
665
+ * README.md, lib/inversion/mixins.rb, lib/inversion/template.rb,
666
+ lib/inversion/template/containertag.rb,
667
+ lib/inversion/template/endtag.rb, lib/inversion/template/fortag.rb,
668
+ lib/inversion/template/node.rb, lib/inversion/template/parser.rb,
669
+ lib/inversion/template/tag.rb,
670
+ spec/inversion/template/containertag_spec.rb,
671
+ spec/inversion/template/node_spec.rb,
672
+ spec/inversion/template/parser_spec.rb:
673
+ Add scoping to the template parser.
674
+ [eca7f0156079]
675
+
676
+ 2011-06-01 Mahlon E. Smith <mahlon@martini.nu>
677
+
678
+ * lib/inversion/template/fortag.rb,
679
+ spec/inversion/template/fortag_spec.rb:
680
+ Adding initial implementation of the "for" tag
681
+ [618d9df5f550]
682
+
683
+ 2011-05-27 Mahlon E. Smith <mahlon@martini.nu>
684
+
685
+ * lib/inversion/monkeypatches.rb, lib/inversion/template/codetag.rb,
686
+ spec/inversion/monkeypatches_spec.rb:
687
+ Splitting out monkeypatches into a separate file
688
+ [6ac7016be589]
689
+
690
+ * Rakefile, lib/inversion/template/calltag.rb,
691
+ lib/inversion/template/codetag.rb,
692
+ spec/inversion/template/calltag_spec.rb:
693
+ Adding 'call' tag parsing and evaluation
694
+ [9d22efa61e28]
695
+
696
+ 2011-05-11 Michael Granger <ged@FaerieMUD.org>
697
+
698
+ * .rvmrc, README.md, lib/inversion.rb, lib/inversion/template.rb,
699
+ lib/inversion/template/attrtag.rb,
700
+ lib/inversion/template/codetag.rb, lib/inversion/template/node.rb,
701
+ lib/inversion/template/parser.rb, lib/inversion/template/tag.rb,
702
+ lib/inversion/template/textnode.rb,
703
+ spec/inversion/template/attrtag_spec.rb,
704
+ spec/inversion/template/node_spec.rb,
705
+ spec/inversion/template/tag_spec.rb,
706
+ spec/inversion/template/textnode_spec.rb,
707
+ spec/inversion/template_spec.rb:
708
+ More work:
709
+ * Reworked the README to introduce what Inversion *is* first, rather
710
+ than starting off by explaining what it's *not*. Also: funny
711
+ examples.
712
+ * Added Configurability support.
713
+ * Added output-comment debugging.
714
+ [e82a185289d3]
715
+
716
+ 2011-04-27 Michael Granger <ged@FaerieMUD.org>
717
+
718
+ * lib/inversion/template/attrtag.rb,
719
+ spec/inversion/template/attrtag_spec.rb:
720
+ Got attribute rendering working.
721
+ [94ec90e08413]
722
+
723
+ * README.md:
724
+ Adding some tentative tag ideas to the README
725
+ [ee74ef4f58f0]
726
+
727
+ 2011-04-15 Michael Granger <ged@FaerieMUD.org>
728
+
729
+ * README.md, Rakefile, experiments/dumptemplate.rb,
730
+ lib/inversion/template.rb, lib/inversion/template/parser.rb,
731
+ lib/inversion/template/textnode.rb,
732
+ spec/inversion/template/parser_spec.rb,
733
+ spec/inversion/template_spec.rb:
734
+ New features:
735
+ * Inversion::Template:
736
+ - Added a ::load method for loading template by path.
737
+ * Inversion::Template::Parser:
738
+ - Added options
739
+ - Added option for raising an exception on an unknown tag
740
+ * Renamed TextNode#source to #body for consistency
741
+ * Added the beginnings of a command-line utility for dumping the
742
+ node tree of a template
743
+ [3ced66ae330d]
744
+
745
+ 2011-04-13 Michael Granger <ged@FaerieMUD.org>
746
+
747
+ * experiments/custom_enumerator.rb, experiments/pi_to_methods.rb,
748
+ lib/inversion/template.rb, lib/inversion/template/attrtag.rb,
749
+ lib/inversion/template/calltag.rb,
750
+ lib/inversion/template/codetag.rb, lib/inversion/template/node.rb,
751
+ lib/inversion/template/textnode.rb, spec/inversion/template_spec.rb:
752
+ Added rendering, template attributes, attribute accessors
753
+ [1ad1e0c91065]
754
+
755
+ 2011-04-12 Michael Granger <ged@FaerieMUD.org>
756
+
757
+ * README.md:
758
+ Adding Mahlon to the copyright statement in the README
759
+ [7753d3c9b470]
760
+
761
+ * README.md, Rakefile:
762
+ Merged with dc16cc877dfc, updated README
763
+ [0fdf3122bf7c]
764
+
765
+ 2011-04-06 Michael Granger <ged@FaerieMUD.org>
766
+
767
+ * .irbrc, Rakefile, experiments/ripper_spike.rb, lib/inversion.rb,
768
+ lib/inversion/exceptions.rb, lib/inversion/mixins.rb,
769
+ lib/inversion/template.rb, lib/inversion/template/attr_tag.rb,
770
+ lib/inversion/template/attrtag.rb,
771
+ lib/inversion/template/calltag.rb,
772
+ lib/inversion/template/codetag.rb, lib/inversion/template/node.rb,
773
+ lib/inversion/template/parser.rb, lib/inversion/template/tag.rb,
774
+ lib/inversion/template/textnode.rb, lib/inversion/utils.rb,
775
+ spec/inversion/template/attr_tag_spec.rb,
776
+ spec/inversion/template/attrtag_spec.rb,
777
+ spec/inversion/template/calltag_spec.rb,
778
+ spec/inversion/template/codetag_spec.rb,
779
+ spec/inversion/template/node_spec.rb,
780
+ spec/inversion/template/parser_spec.rb,
781
+ spec/inversion/template/tag_spec.rb,
782
+ spec/inversion/template/textnode_spec.rb,
783
+ spec/inversion/template_spec.rb, spec/inversion_spec.rb,
784
+ spec/lib/constants.rb, spec/lib/helpers.rb:
785
+ Adding parsed tag bodies.
786
+ [dc16cc877dfc]
787
+
788
+ 2011-03-18 Michael Granger <ged@FaerieMUD.org>
789
+
790
+ * Merging with b50fef00621b
791
+ [861b21a30656]
792
+
793
+ * lib/inversion.rb:
794
+ Clearing Revision tag
795
+ [cdacb5f98f93]
796
+
797
+ 2011-02-07 Mahlon E. Smith <mahlon@martini.nu>
798
+
799
+ * lib/inversion/template.rb, lib/inversion/template/attr_tag.rb,
800
+ lib/inversion/template/tag.rb,
801
+ spec/inversion/template/attr_tag_spec.rb,
802
+ spec/inversion/template/tag_spec.rb,
803
+ spec/inversion/template_spec.rb:
804
+ Checkpoint, fleshing out Tags.
805
+ [4a4fc3f1dc14]
806
+
807
+ 2011-04-12 Michael Granger <ged@FaerieMUD.org>
808
+
809
+ * README.md, experiments/erb_scope_bleed.rb:
810
+ Fleshing out the README, adding scope-bleedover example
811
+ [f44b597af8bd]
812
+
813
+ * lib/inversion.rb:
814
+ Removing checked-in revision value
815
+ [773feca505b8]
816
+
817
+ 2011-02-07 Mahlon E. Smith <mahlon@martini.nu>
818
+
819
+ * lib/inversion.rb, lib/inversion/template.rb,
820
+ spec/inversion/template_spec.rb, spec/inversion_spec.rb:
821
+ Totally awesome templating system DONE. Now: profit!
822
+ [b50fef00621b]
823
+
824
+ 2011-02-04 Mahlon E. Smith <mahlon@martini.nu>
825
+
826
+ * experiments/pi_to_methods.rb, experiments/ripper_spike.rb,
827
+ lib/inversion.rb:
828
+ Added experiments
829
+ [77d6892cd988]
830
+
831
+ 2011-02-02 Mahlon E. Smith <mahlon@martini.nu>
832
+
833
+ * .hgignore, .rvmrc, History.md, Manifest.txt, README.md, Rakefile,
834
+ lib/inversion.rb, spec/inversion_spec.rb:
835
+ Project setup.
836
+ [1020dbbfb52c]