Permalink
Browse files

Upgrade to 0.7 and add release notes

  • Loading branch information...
1 parent bb37dbe commit 23a70d1f1249d5d97ed9f00903cac81ecc7861a3 @mightybyte mightybyte committed Dec 1, 2011
@@ -0,0 +1,60 @@
+| title: Announcing: Snap Framework v0.7
+| author: Doug Beardsley <mightybyte@gmail.com>
+| published: 2011-12-01T01:13:00-0500
+| updated: 2011-12-01T01:13:00-0500
+| summary: Release notes for Snap 0.7
+
+The Snap team would like to announce the release of version 0.7 of the Snap
+Framework.
+
+## New features / improvements
+
+ - We realized that the \$() syntax Heist uses for accessing splices inside
+ of HTML attributes conflicts with the jQuery '$' function. We changed the
+ syntax to ${} to fix this. This is a major breaking change, so we added a
+ temporary compatibility mode to Heist that you can enable by using the
+ `useOldAttributeSyntax` function to modify your TemplateState. We will
+ remove this compatibility mode in the next major release, so update your
+ templates ASAP!
+
+ - Added `getRoutePattern` (and `setRoutePattern`) which allows you to find
+ out the actual route string that matched the currently running handler.
+
+ - Added `heistInit'` to make it possible to use Heist's onLoad hooks.
+
+ - Added the convenience functions getsRequest and getsResponse to the core
+ web server API.
+
+ - Fixed bug in how the route function handled url-encoded path segments.
+
+ - Properly catch EscapeHttpException.
+
+
+## API Changes
+
+ - `heist`: changed the `callTemplate` function to take general splices
+ rather than constant text splices, and simplified the return type. The
+ old functionality now exists with a simpler return type as
+ `callTemplateWithText`.
+
+ - `heist`: Since we are making major breaking changes, we decided to change
+ the name of TemplateState to the more appropriate HeistState. The old
+ name still exists as a type alias, but is marked as deprecated. Update
+ your code now because we will remove all the deprecated functionality in
+ the next major release.
+
+
+## Dependency changes
+
+ - Increased the upper version bound on the time package from 1.4 to 1.5.
+
+ - Increased the upper version bound on the regex-posix package from 0.94.4
+ to 0.95.2.
+
+ - Increased the upper version bound on the case-insensitive package from 0.4
+ to 0.5.
+
+ - Increased the lower version bound on attoparsec to 0.10.
+
+ - Increased the version constraints on attoparsec-enumerator to 0.3.*.
+
@@ -14,9 +14,9 @@
<posts:reverseChronological>
<div class="post">
<div class="title">
- <h3><a href="$(post:url)"><post:title/></a> <span class="date"><post:date/></span></h3>
+ <h3><a href="${post:url}"><post:title/></a> <span class="date"><post:date/></span></h3>
</div>
- <p class="summary"><post:summary/> <a class="readmore" href="$(post:url)">Read Post...</a></p>
+ <p class="summary"><post:summary/> <a class="readmore" href="${post:url}">Read Post...</a></p>
</div>
</posts:reverseChronological>
View
@@ -22,14 +22,14 @@ Executable snap-website
data-lens-template >= 2.1 && < 2.2,
directory,
filepath,
- heist >= 0.6 && < 0.7,
+ heist >= 0.7 && < 0.8,
MonadCatchIO-transformers >= 0.2 && < 0.3,
mtl >= 2 && <3,
process,
- snap >= 0.6 && <0.7,
- snap-core >= 0.6 && <0.7,
- snap-server >= 0.6 && <0.7,
- snap-static-pages >= 0.1 && <1.0,
+ snap >= 0.7 && <0.8,
+ snap-core >= 0.7 && <0.8,
+ snap-server >= 0.7 && <0.8,
+ snap-static-pages >= 0.2 && <0.3,
text,
time,
transformers,
@@ -64,11 +64,11 @@ make changes.
Heist also provides attribute string substitution using the same mechanism as
tag substitution. The syntax is different for attributes since angle bracket
tag syntax is not generally found there. Within the value of an attribute, use
-the delimiter `$(...)` for variable substitution.
+the delimiter `${...}` for variable substitution.
~~~~~~~~~~~~~~~ {.html}
<bind tag="foo">dynamic_name</bind>
- <p name="$(foo)">A paragraph</p>
+ <p name="${foo}">A paragraph</p>
~~~~~~~~~~~~~~~
The foo identifier is substituted into the name attribute of the paragraph
@@ -426,7 +426,7 @@ function: `bindSplice "fact" factSplice templateState`. This returns a
new `TemplateState` with factSplice bound to the `<fact>` tag. Now, in
any of your templates the snippet `<fact>5</fact>` will render as `120`.
-The contents of splices can also be used in attributes using the `$()` syntax
+The contents of splices can also be used in attributes using the `${}` syntax
mentioned above. As above, any markup is ignored, and just the text is
included. This works because a `<bind>` tag is really just a splice that
returns a constant node list.

0 comments on commit 23a70d1

Please sign in to comment.