inversion 1.3.1 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/Examples.md +134 -0
- data/GettingStarted.md +50 -0
- data/Guide.md +14 -0
- data/{History.rdoc → History.md} +59 -43
- data/{README.rdoc → README.md} +43 -34
- data/Tags.md +555 -0
- data/bin/inversion +4 -8
- data/lib/inversion/cli/api.rb +75 -0
- data/lib/inversion/cli/tagtokens.rb +34 -0
- data/lib/inversion/cli/tree.rb +70 -0
- data/lib/inversion/cli.rb +406 -0
- data/lib/inversion/exceptions.rb +0 -1
- data/lib/inversion/mixins.rb +10 -11
- data/lib/inversion/parser.rb +5 -6
- data/lib/inversion/refinements.rb +18 -0
- data/lib/inversion/renderstate.rb +24 -25
- data/lib/inversion/sinatra.rb +0 -1
- data/lib/inversion/template/attrtag.rb +7 -5
- data/lib/inversion/template/begintag.rb +0 -1
- data/lib/inversion/template/calltag.rb +0 -1
- data/lib/inversion/template/codetag.rb +37 -28
- data/lib/inversion/template/commenttag.rb +0 -1
- data/lib/inversion/template/configtag.rb +3 -4
- data/lib/inversion/template/containertag.rb +1 -2
- data/lib/inversion/template/defaulttag.rb +1 -2
- data/lib/inversion/template/elsetag.rb +0 -1
- data/lib/inversion/template/elsiftag.rb +0 -1
- data/lib/inversion/template/endtag.rb +2 -3
- data/lib/inversion/template/escapetag.rb +1 -2
- data/lib/inversion/template/fortag.rb +2 -3
- data/lib/inversion/template/fragmenttag.rb +1 -2
- data/lib/inversion/template/iftag.rb +3 -1
- data/lib/inversion/template/importtag.rb +2 -3
- data/lib/inversion/template/includetag.rb +1 -2
- data/lib/inversion/template/node.rb +4 -5
- data/lib/inversion/template/pptag.rb +1 -2
- data/lib/inversion/template/publishtag.rb +2 -3
- data/lib/inversion/template/rescuetag.rb +1 -2
- data/lib/inversion/template/subscribetag.rb +3 -4
- data/lib/inversion/template/tag.rb +3 -4
- data/lib/inversion/template/textnode.rb +1 -2
- data/lib/inversion/template/timedeltatag.rb +1 -2
- data/lib/inversion/template/unlesstag.rb +0 -1
- data/lib/inversion/template/uriencodetag.rb +1 -2
- data/lib/inversion/template/yieldtag.rb +0 -1
- data/lib/inversion/template.rb +18 -22
- data/lib/inversion/tilt.rb +1 -2
- data/lib/inversion.rb +2 -3
- data/lib/roda/plugins/inversion.rb +225 -0
- data/spec/helpers.rb +19 -13
- data/spec/inversion/mixins_spec.rb +1 -1
- data/spec/inversion/parser_spec.rb +1 -1
- data/spec/inversion/refinements_spec.rb +22 -0
- data/spec/inversion/renderstate_spec.rb +1 -1
- data/spec/inversion/sinatra_spec.rb +1 -1
- data/spec/inversion/template/attrtag_spec.rb +1 -1
- data/spec/inversion/template/begintag_spec.rb +1 -1
- data/spec/inversion/template/calltag_spec.rb +1 -1
- data/spec/inversion/template/codetag_spec.rb +24 -1
- data/spec/inversion/template/commenttag_spec.rb +1 -1
- data/spec/inversion/template/configtag_spec.rb +1 -1
- data/spec/inversion/template/containertag_spec.rb +1 -1
- data/spec/inversion/template/defaulttag_spec.rb +1 -1
- data/spec/inversion/template/elsetag_spec.rb +1 -1
- data/spec/inversion/template/elsiftag_spec.rb +1 -1
- data/spec/inversion/template/endtag_spec.rb +1 -1
- data/spec/inversion/template/escapetag_spec.rb +1 -1
- data/spec/inversion/template/fortag_spec.rb +1 -1
- data/spec/inversion/template/fragmenttag_spec.rb +1 -1
- data/spec/inversion/template/iftag_spec.rb +1 -1
- data/spec/inversion/template/importtag_spec.rb +1 -1
- data/spec/inversion/template/includetag_spec.rb +1 -1
- data/spec/inversion/template/node_spec.rb +1 -1
- data/spec/inversion/template/pptag_spec.rb +1 -1
- data/spec/inversion/template/publishtag_spec.rb +1 -1
- data/spec/inversion/template/rescuetag_spec.rb +1 -1
- data/spec/inversion/template/subscribetag_spec.rb +1 -1
- data/spec/inversion/template/tag_spec.rb +1 -1
- data/spec/inversion/template/textnode_spec.rb +1 -1
- data/spec/inversion/template/timedeltatag_spec.rb +1 -1
- data/spec/inversion/template/unlesstag_spec.rb +1 -1
- data/spec/inversion/template/uriencodetag_spec.rb +1 -1
- data/spec/inversion/template/yieldtag_spec.rb +1 -1
- data/spec/inversion/template_spec.rb +1 -1
- data/spec/inversion/tilt_spec.rb +1 -1
- data/spec/inversion_spec.rb +1 -1
- data/spec/roda/plugins/inversion_spec.rb +91 -0
- data.tar.gz.sig +0 -0
- metadata +90 -58
- metadata.gz.sig +0 -0
- data/Examples.rdoc +0 -134
- data/GettingStarted.rdoc +0 -44
- data/Guide.rdoc +0 -47
- data/Manifest.txt +0 -86
- data/Rakefile +0 -7
- data/Tags.rdoc +0 -560
- data/lib/inversion/command.rb +0 -278
- data/lib/inversion/monkeypatches.rb +0 -21
- data/spec/inversion/monkeypatches_spec.rb +0 -25
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 772c7fe7c3b9c566e4962e424da512a6bb2f52d9aa401d20317af3a744310793
|
4
|
+
data.tar.gz: 4a7d20b35a0e5b15730fa59998ebca00f448eccc5f5f7af23718c1bf356038f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2d1d273ca7ca57b36cdc411d5bba92d1b1189c26e087090cff257ff4d0f78cb25e32902f6007ea148eb49e9e9570a45802ad4187ea87688f8007621886b44090
|
7
|
+
data.tar.gz: 7d6f6e8a5868fe4f8a0f7f4835dcbfcdd66a8e06b3c2cffae7255e3b07bc70fd614c9213e0dcaaa0db40c6d7f252f89d6c8c80a8ac6ab6984e571f9458728f34
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/Examples.md
ADDED
@@ -0,0 +1,134 @@
|
|
1
|
+
# Annotated Examples
|
2
|
+
|
3
|
+
This is a list of template examples with annotations explaining what each group of lines is doing.
|
4
|
+
|
5
|
+
## Simple Examples
|
6
|
+
|
7
|
+
...
|
8
|
+
|
9
|
+
|
10
|
+
## Advanced Examples
|
11
|
+
|
12
|
+
Here's a somewhat more complex example. At our company Spime-Thorpe from above, say we're creating a system that will handle mass layoffs without the need for management to handle all those messy personal interactions. We'll need a mass-mailer for the employees that will be afforded the chance to explore their career opportunities, right? So we create a template called `overboard-mail.tmpl`:
|
13
|
+
|
14
|
+
<?config debugging_comments: true ?>
|
15
|
+
<?default grace_period to "7 days" ?>
|
16
|
+
|
17
|
+
<?begin?>
|
18
|
+
<p>Dear <?call employee.fullname ?>,</p>
|
19
|
+
<?rescue DatabaseError ?>
|
20
|
+
<p>Dear Valued Ex-Employee,</p>
|
21
|
+
<?end begin?>
|
22
|
+
|
23
|
+
<p>Congratulations! You have been selected by <?call failed_company.name ?>'s
|
24
|
+
elite management team as one of the many lucky individuals that will
|
25
|
+
enjoy the exciting challenge of pursuing other rewarding employment
|
26
|
+
opportunities!</p>
|
27
|
+
|
28
|
+
<p><em>Kudos!</em></p>
|
29
|
+
|
30
|
+
<p>You will find your accounts have been disabled, your desk has been helpfully
|
31
|
+
cleared out for you, and all of your personal effects packaged up and
|
32
|
+
delivered to your address of record approximately
|
33
|
+
<?timedelta tracking_info.delivery_date ?>:</p>
|
34
|
+
|
35
|
+
<?for line in employee.address ?>
|
36
|
+
<?attr line ?><br />
|
37
|
+
<?end for ?>
|
38
|
+
|
39
|
+
<p>Please visit your <a href="[?call config.overboard_url ?]/[?uriencode
|
40
|
+
failed_company.id ?]/[?uriencode employee.id ?]">customized Man OverBoard
|
41
|
+
transition site</a> immediately:</p>
|
42
|
+
|
43
|
+
<p>This will acknowledge that you have received this message, and automatically
|
44
|
+
disable your email account. Be sure and save this message!</p>
|
45
|
+
|
46
|
+
<?if employee.severance_amount.nonzero? ?>
|
47
|
+
<p>Failure to acknowledge this message within <?attr grace_period ?> could result
|
48
|
+
in delay of your final severance pay, in the amount of
|
49
|
+
<?call "$%0.2f" % employee.severance_amount ?>.</p>
|
50
|
+
<?else?>
|
51
|
+
<p>Failure to acknowledge this message within <?attr grace_period ?> will
|
52
|
+
result in automatic forfeiture of your numerous Man Overboard package benefits.</p>
|
53
|
+
<?end if?>
|
54
|
+
|
55
|
+
<?comment Disabled at client request ?>
|
56
|
+
If you have any questions or concerns, please don't hesitate to contact your
|
57
|
+
friendly Spime-Thorpe <a href="mailto:salesteam2@spime-thorpe.com">representative</a>.
|
58
|
+
<?end comment ?>
|
59
|
+
|
60
|
+
<p>Good Luck,<br />
|
61
|
+
Your friends at Spime-Thorpe, Inc!<br />
|
62
|
+
<a href="http://www.spime-thorpe.com/">http://www.spime-thorpe.com/</a></p>
|
63
|
+
|
64
|
+
When wrapped with a layout template, here's what this renders as:
|
65
|
+
|
66
|
+
<?example { language: xml, caption: "The rendered output for one lucky individual" } ?>
|
67
|
+
<!DOCTYPE html>
|
68
|
+
<!--
|
69
|
+
|
70
|
+
Spime-Thorpe!
|
71
|
+
$Id$
|
72
|
+
|
73
|
+
-->
|
74
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
75
|
+
<head>
|
76
|
+
<title>Spime-Thorpe: Untitled</title>
|
77
|
+
|
78
|
+
<link rel="stylesheet" src="/css/base.css" type="text/css" />
|
79
|
+
|
80
|
+
<script type="text/javascript" src="/js/jquery-latest.min.js"></script>
|
81
|
+
|
82
|
+
</head>
|
83
|
+
<body>
|
84
|
+
|
85
|
+
<header>
|
86
|
+
<hgroup>
|
87
|
+
<h1>Spime-Thorpe</h1>
|
88
|
+
<h2></h2>
|
89
|
+
</hgroup>
|
90
|
+
</header>
|
91
|
+
|
92
|
+
<section id="content">
|
93
|
+
<p>Dear James Random,</p>
|
94
|
+
|
95
|
+
<p>Congratulations! You have been selected by Widgets R Us's
|
96
|
+
elite management team as one of the many lucky individuals that will
|
97
|
+
enjoy the exciting challenge of pursuing other rewarding employment
|
98
|
+
opportunities!</p>
|
99
|
+
|
100
|
+
<p><em>Kudos!</em></p>
|
101
|
+
|
102
|
+
<p>You will find your accounts have been disabled, your desk has been helpfully
|
103
|
+
cleared out for you, and all of your personal effects packaged up and
|
104
|
+
delivered to your address of record approximately
|
105
|
+
3 days ago:</p>
|
106
|
+
|
107
|
+
1213 NE. Winding Road<br />
|
108
|
+
Syracuse, NY 100213<br />
|
109
|
+
|
110
|
+
<p>Please visit your <a href="http://failedcompany.spime-thorpe.com/overboard/a18661/1881">
|
111
|
+
customized Man OverBoard transition site</a> immediately:</p>
|
112
|
+
|
113
|
+
<p>This will acknowledge that you have received this message, and automatically
|
114
|
+
disable your email account. Be sure and save this message!</p>
|
115
|
+
|
116
|
+
<p>Failure to acknowledge this message within 11 days could result
|
117
|
+
in delay of your final severance pay, in the amount of
|
118
|
+
$12.81.</p>
|
119
|
+
|
120
|
+
|
121
|
+
<p>Good Luck,<br />
|
122
|
+
Your friends at Spime-Thorpe, Inc!<br />
|
123
|
+
<a href="http://www.spime-thorpe.com/">http://www.spime-thorpe.com/</a></p>
|
124
|
+
</section>
|
125
|
+
|
126
|
+
<footer>
|
127
|
+
<section id="copyright">Copyright 2011, Spime-Thorpe</section>
|
128
|
+
</footer>
|
129
|
+
|
130
|
+
</body>
|
131
|
+
</html>
|
132
|
+
|
133
|
+
This example can be found in the Inversion repository, in the `experiments` directory.
|
134
|
+
|
data/GettingStarted.md
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
# Getting Started
|
2
|
+
|
3
|
+
## Requirements
|
4
|
+
|
5
|
+
- Ruby 2.7.5 or later
|
6
|
+
|
7
|
+
|
8
|
+
## Installation
|
9
|
+
|
10
|
+
$ gem install inversion
|
11
|
+
|
12
|
+
|
13
|
+
## Basic Usage
|
14
|
+
|
15
|
+
Inversion, like most other templating systems, works by giving you a way of
|
16
|
+
defining the static parts of your output, and then letting you combine that at
|
17
|
+
a later point with the dynamic parts:
|
18
|
+
|
19
|
+
Create the template and use it to render an exciting message:
|
20
|
+
|
21
|
+
tmpl = Inversion::Template.new( "Hello, <?attr name ?>!" )
|
22
|
+
tmpl.name = "World"
|
23
|
+
puts tmpl.render
|
24
|
+
|
25
|
+
The `<?attr name ?>` tag defines the _name_ accessor on the
|
26
|
+
[template](rdoc-ref:Templates) object, the value of which is substituted for
|
27
|
+
any occurrences of `name` in the template:
|
28
|
+
|
29
|
+
Hello, World!
|
30
|
+
|
31
|
+
This by itself isn't fantastically useful, but it does illustrate one of the
|
32
|
+
ways in which Inversion is different: the program and the template share data
|
33
|
+
through an API, instead of through a complex data structure, which establishes
|
34
|
+
a clear delineation between what responsibility is the program's and which is
|
35
|
+
the template's. The program doesn't have to know how the view uses the data
|
36
|
+
it's given, and tests of the controller can substitute a Mock Object for the
|
37
|
+
template to test the interaction between the two instead of having to match
|
38
|
+
patterns in the eventual output like an integration test.
|
39
|
+
|
40
|
+
You can also interact with the values set in the template:
|
41
|
+
|
42
|
+
Name: <?attr employee.full_name ?>
|
43
|
+
|
44
|
+
This will call the #full_name method on whatever is set as the `employee`
|
45
|
+
attribute when rendered, and the result will take the place of the tag.
|
46
|
+
|
47
|
+
Inversion also comes with a collection of [other tags](rdoc-ref:Tags) that
|
48
|
+
provide flow control, exception-handling, etc.
|
49
|
+
|
50
|
+
|
data/Guide.md
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
# Inversion User's Guide
|
2
|
+
|
3
|
+
Inversion is a templating system for Ruby. It uses the Inversion of Control principle to decouple
|
4
|
+
the contents and structure of the template from the code that uses it, making it easier to use,
|
5
|
+
test-friendly, and clean.
|
6
|
+
|
7
|
+
[Getting Started](rdoc-ref:GettingStarted) goes over the requirements, installation, and basic usage of the library.
|
8
|
+
|
9
|
+
The rdoc-ref:Templates topic has more details about how to load templates and control their behavior with options.
|
10
|
+
|
11
|
+
When you're ready to start making your own templates, there's a quick-reference for the list of built-in rdoc-ref:Tags, too.
|
12
|
+
|
13
|
+
Finally, there are a number of [Annotated Examples](rdoc-ref:Examples) that illustrate how to solve common problems while templating.
|
14
|
+
|
data/{History.rdoc → History.md}
RENAMED
@@ -1,8 +1,24 @@
|
|
1
|
-
|
1
|
+
# Release History for inversion
|
2
2
|
|
3
3
|
---
|
4
4
|
|
5
|
-
|
5
|
+
## v1.5.0 [2023-04-20] Mahlon E. Smith <mahlon@martini.nu>
|
6
|
+
|
7
|
+
Improvements:
|
8
|
+
|
9
|
+
- Add Roda framework (https://roda.jeremyevans.net/) plugin support.
|
10
|
+
|
11
|
+
|
12
|
+
## v1.4.0 [2022-12-21] Michael Granger <ged@faeriemud.org>
|
13
|
+
|
14
|
+
Improvements:
|
15
|
+
|
16
|
+
- Update for Ruby 3, modernize RSpec setup
|
17
|
+
- Convert CLI to GLI+TTY
|
18
|
+
- Fix up error class in codetag.
|
19
|
+
|
20
|
+
|
21
|
+
## v1.3.1 [2020-09-29] Michael Granger <ged@faeriemud.org>
|
6
22
|
|
7
23
|
Improvements:
|
8
24
|
|
@@ -10,14 +26,14 @@ Improvements:
|
|
10
26
|
- Handle HTML encoding for uriencoding tag ourselves
|
11
27
|
|
12
28
|
|
13
|
-
|
29
|
+
## v1.3.0 [2020-04-08] Mahlon E. Smith <mahlon@martini.nu>
|
14
30
|
|
15
31
|
- Use safe_yaml when deserializing config tag contents.
|
16
32
|
- Un-hoeify.
|
17
33
|
- Updates for Ruby 2.7.
|
18
34
|
|
19
35
|
|
20
|
-
|
36
|
+
## v1.2.0 [2019-05-14] Michael Granger <ged@FaerieMUD.org>
|
21
37
|
|
22
38
|
Enhancements:
|
23
39
|
|
@@ -26,14 +42,14 @@ Enhancements:
|
|
26
42
|
'decorators' optional.
|
27
43
|
|
28
44
|
|
29
|
-
|
45
|
+
## v1.1.1 [2017-11-13] Michael Granger <ged@FaerieMUD.org>
|
30
46
|
|
31
47
|
Bugfixes:
|
32
48
|
|
33
49
|
- Yield subarrays in `each` tags when there's only one block argument (#3).
|
34
50
|
|
35
51
|
|
36
|
-
|
52
|
+
## v1.1.0 [2017-08-17] Mahlon E. Smith <mahlon@martini.nu>
|
37
53
|
|
38
54
|
Enhancements:
|
39
55
|
|
@@ -44,17 +60,17 @@ Enhancements:
|
|
44
60
|
parents matcher patterns.
|
45
61
|
|
46
62
|
|
47
|
-
|
63
|
+
## v1.0.0 [2017-01-16] Michael Granger <ged@FaerieMUD.org>
|
48
64
|
|
49
65
|
Mark as stable, update dependencies.
|
50
66
|
|
51
67
|
|
52
|
-
|
68
|
+
## v0.18.0 [2015-10-01] Michael Granger <ged@FaerieMUD.org>
|
53
69
|
|
54
70
|
Add a `strict_attributes` option for templates.
|
55
71
|
|
56
72
|
|
57
|
-
|
73
|
+
## v0.17.4 [2015-07-08] Michael Granger <ged@FaerieMUD.org>
|
58
74
|
|
59
75
|
Fixes:
|
60
76
|
|
@@ -62,14 +78,14 @@ Fixes:
|
|
62
78
|
Galanakis <rob.galanakis@gmail.com>.
|
63
79
|
|
64
80
|
|
65
|
-
|
81
|
+
## v0.17.3 [2015-02-16] Michael Granger <ged@FaerieMUD.org>
|
66
82
|
|
67
83
|
- Performance fix: Re-comment the #inspect logging message
|
68
84
|
in the RenderState
|
69
85
|
- Updated tag docs
|
70
86
|
|
71
87
|
|
72
|
-
|
88
|
+
## v0.17.2 [2015-01-22] Michael Granger <ged@FaerieMUD.org>
|
73
89
|
|
74
90
|
- Fix a bug with the fragment tag.
|
75
91
|
|
@@ -77,35 +93,35 @@ Fragments will now propagate to the container template when they're
|
|
77
93
|
added by inner templates.
|
78
94
|
|
79
95
|
|
80
|
-
|
96
|
+
## v0.17.1 [2015-01-15] Michael Granger <ged@FaerieMUD.org>
|
81
97
|
|
82
98
|
Re-push to fix a misbuilt gem.
|
83
99
|
|
84
100
|
|
85
|
-
|
101
|
+
## v0.17.0 [2015-01-15] Michael Granger <ged@FaerieMUD.org>
|
86
102
|
|
87
103
|
Support snakecase tag names/tag filenames
|
88
104
|
|
89
105
|
|
90
|
-
|
106
|
+
## v0.16.0 [2015-01-14] Michael Granger <ged@FaerieMUD.org>
|
91
107
|
|
92
108
|
Add support for loading templates from an alternate path
|
93
109
|
via :template_paths option to Inversion::Template.load.
|
94
110
|
|
95
111
|
|
96
|
-
|
112
|
+
## v0.15.0 [2014-11-24] Michael Granger <ged@FaerieMUD.org>
|
97
113
|
|
98
114
|
Add a mechanism to allow tags to extend the template.
|
99
115
|
|
100
116
|
|
101
|
-
|
117
|
+
## v0.14.0 [2014-11-05] Michael Granger <ged@FaerieMUD.org>
|
102
118
|
|
103
119
|
- Add the fragment tag and docs
|
104
120
|
- Remove old manual doc artifacts. Add documentation for the
|
105
121
|
'begin/rescue' and 'default' tags.
|
106
122
|
|
107
123
|
|
108
|
-
|
124
|
+
## v0.13.0 [2014-04-23] Michael Granger <ged@FaerieMUD.org>
|
109
125
|
|
110
126
|
- Carry global configuration into instantiated template options.
|
111
127
|
- Documentation update.
|
@@ -113,90 +129,90 @@ Add a mechanism to allow tags to extend the template.
|
|
113
129
|
(Never released.)
|
114
130
|
|
115
131
|
|
116
|
-
|
132
|
+
## v0.12.3 [2013-09-20] Michael Granger <ged@FaerieMUD.org>
|
117
133
|
|
118
134
|
- Don't deep_copy IOs or Tempfiles (bugfix).
|
119
135
|
|
120
136
|
|
121
|
-
|
137
|
+
## v0.12.2 [2013-06-19] Michael Granger <ged@FaerieMUD.org>
|
122
138
|
|
123
139
|
- Fix propagation of config tags into subtemplates (fixes #1)
|
124
140
|
- Use replacement in transcoding instead of raising encoding errors
|
125
141
|
|
126
142
|
|
127
|
-
|
143
|
+
## v0.12.1 [2013-03-05] Michael Granger <ged@FaerieMUD.org>
|
128
144
|
|
129
145
|
A bunch of optimization and inspect-encoding fixes.
|
130
146
|
|
131
147
|
|
132
|
-
|
148
|
+
## v0.12.0 [2013-03-01] Michael Granger <ged@FaerieMUD.org>
|
133
149
|
|
134
150
|
- Make exceptions rendered as comments include the backtrace if
|
135
151
|
debugging comments are enabled.
|
136
152
|
|
137
153
|
|
138
|
-
|
154
|
+
## v0.11.2 [2012-09-17] Michael Granger <ged@FaerieMUD.org>
|
139
155
|
|
140
156
|
- [bugfix] Don't cast enumerated values in for tags to Arrays.
|
141
157
|
|
142
158
|
|
143
|
-
|
159
|
+
## v0.11.1 [2012-09-17] Michael Granger <ged@FaerieMUD.org>
|
144
160
|
|
145
161
|
- [bugfix] Make subscriptions get nodes that were already published
|
146
162
|
|
147
163
|
|
148
|
-
|
164
|
+
## v0.11.0 [2012-07-06] Michael Granger <ged@FaerieMUD.org>
|
149
165
|
|
150
166
|
- Automatically transcode output according to the registered encoding
|
151
167
|
if the template is created with one
|
152
168
|
|
153
169
|
|
154
|
-
|
170
|
+
## v0.10.2 [2012-06-27] Mahlon E. Smith <mahlon@martini.nu>
|
155
171
|
|
156
172
|
- Bugfix: Don't dup Classes and Modules in template attributes.
|
157
173
|
- Optimization: Don't needlessly duplicate the node tree on template
|
158
174
|
duplication.
|
159
175
|
|
160
176
|
|
161
|
-
|
177
|
+
## v0.10.1 [2012-06-22] Michael Granger <ged@FaerieMUD.org>
|
162
178
|
|
163
179
|
- Bugfix: duplicated templates get distinct copies of their attributes.
|
164
180
|
|
165
181
|
|
166
|
-
|
182
|
+
## v0.10.0 [2012-05-07] Michael Granger <ged@FaerieMUD.org>
|
167
183
|
|
168
184
|
- Added signature for changeset 9d9c49d532be
|
169
185
|
|
170
|
-
|
186
|
+
## v0.10.0 [2012-05-07] Michael Granger <ged@FaerieMUD.org>
|
171
187
|
|
172
188
|
- Convert to Loggability for logging.
|
173
189
|
|
174
190
|
|
175
|
-
|
191
|
+
## v0.9.0 [2012-04-24] Michael Granger <ged@FaerieMUD.org>
|
176
192
|
|
177
193
|
- Split the template path out from the config into a class instance variable.
|
178
194
|
- Documentation update.
|
179
195
|
|
180
196
|
|
181
|
-
|
197
|
+
## v0.8.0 [2012-04-01] Michael Granger <ged@FaerieMUD.org>
|
182
198
|
|
183
199
|
- Optimization fixes
|
184
200
|
- Fixed rendering flow control to not use a begin/rescue.
|
185
201
|
|
186
202
|
|
187
|
-
|
203
|
+
## v0.7.0 [2012-03-29] Michael Granger <ged@FaerieMUD.org>
|
188
204
|
|
189
205
|
- Switch to a much more flexible way to render tag bodies. This should
|
190
206
|
resolve most of the problems we've encountered with complex templates.
|
191
207
|
|
192
208
|
|
193
|
-
|
209
|
+
## v0.6.1 [2012-03-16] Michael Granger <ged@FaerieMUD.org>
|
194
210
|
|
195
211
|
- Commented out some of the more expensive debug logging for an order
|
196
212
|
of magnitude increase in render speed.
|
197
213
|
|
198
214
|
|
199
|
-
|
215
|
+
## v0.6.0 [2012-03-13] Michael Granger <ged@FaerieMUD.org>
|
200
216
|
|
201
217
|
- Fix a bug with "for" tag iteration over complex data structures
|
202
218
|
- Add a configurable delay for checking for changes on file-based
|
@@ -206,13 +222,13 @@ A bunch of optimization and inspect-encoding fixes.
|
|
206
222
|
- Handle Configurability's configure-with-defaults call.
|
207
223
|
|
208
224
|
|
209
|
-
|
225
|
+
## v0.5.0 [2012-01-05] Michael Granger <ged@FaerieMUD.org>
|
210
226
|
|
211
227
|
Added an encoding option to Inversion::Template.load for
|
212
228
|
specifying the encoding of the template source.
|
213
229
|
|
214
230
|
|
215
|
-
|
231
|
+
## v0.4.0 [2011-10-05] Michael Granger <ged@FaerieMUD.org>
|
216
232
|
|
217
233
|
Reworked render toggling so the before/after rendering hooks are
|
218
234
|
called immediately before and after the node *would* have been
|
@@ -223,14 +239,14 @@ demark aren't even touched if rendering is disabled.
|
|
223
239
|
Adjusted the other tags to account for the change.
|
224
240
|
|
225
241
|
|
226
|
-
|
242
|
+
## v0.3.0 [2011-10-05] Michael Granger <ged@FaerieMUD.org>
|
227
243
|
|
228
244
|
- Fix require loop in if/elsif tags
|
229
245
|
- Fixing a problem with HTML escaping of objects other than Strings
|
230
246
|
- Added render timing (Inversion::RenderState#time_elapsed)
|
231
247
|
|
232
248
|
|
233
|
-
|
249
|
+
## v0.2.0 [2011-09-27] Michael Granger <ged@FaerieMUD.org>
|
234
250
|
|
235
251
|
- Bugfixes (#1, #2)
|
236
252
|
- Renamed Inversion::Template::Parser to Inversion::Parser
|
@@ -238,18 +254,18 @@ Adjusted the other tags to account for the change.
|
|
238
254
|
per-render basis.
|
239
255
|
|
240
256
|
|
241
|
-
|
257
|
+
## v0.1.1 [2011-09-23] Michael Granger <ged@FaerieMUD.org>
|
242
258
|
|
243
259
|
- Bugfix for the Subscribe tag.
|
244
260
|
|
245
261
|
|
246
|
-
|
262
|
+
## v0.1.0 [2011-09-23] Michael Granger <ged@FaerieMUD.org>
|
247
263
|
|
248
264
|
- Added template reloading via Inversion::Template#changed?
|
249
265
|
and #reload.
|
250
266
|
|
251
267
|
|
252
|
-
|
268
|
+
## v0.0.4 [2011-09-21] Michael Granger <ged@FaerieMUD.org>
|
253
269
|
|
254
270
|
- Avoid Pathname#expand_path in Inversion::Template.load
|
255
271
|
[optimization]
|
@@ -258,17 +274,17 @@ Adjusted the other tags to account for the change.
|
|
258
274
|
- Added a manual
|
259
275
|
|
260
276
|
|
261
|
-
|
277
|
+
## v0.0.3 [2011-08-15] Michael Granger <ged@FaerieMUD.org>
|
262
278
|
|
263
279
|
- Dependency fix
|
264
280
|
|
265
281
|
|
266
|
-
|
282
|
+
## v0.0.2 [2011-08-15] Michael Granger <ged@FaerieMUD.org>
|
267
283
|
|
268
284
|
- Packaging fix
|
269
285
|
|
270
286
|
|
271
|
-
|
287
|
+
## v0.0.1 [2011-02-02] Michael Granger <ged@FaerieMUD.org>
|
272
288
|
|
273
289
|
Initial release.
|
274
290
|
|