Bump version to 3.1.5
Require "abstract_controller/rendering" before monkeypatching.

See issues #529 and #519.

If users create a mimimal Rails stack this module may not be have been
loaded.

I'm less than  happy about making Haml require this module, it seems
that if people didn't want to require it in the first place, Haml
shouldn't do it. A better solution than the <haml:newline/> hack would
attack this problem at the root, but for now this should at least solve
the most immediate issue.
Update changelog and bump version.
Don't adjust whitespace if buffer has preserve tag

This is in references to various issues on Github, including:

Issue #532, #519, #516, #506, and #503.

Recently I released 3.1.5 to work around a change in Rails 3.2.3 which
made textarea helpers append newlines to the opening tag. Rails's
motivation for this change was to fix a longstanding bug which impeded
the ability to save texarea content with leading newlines.

Unfortunately, Haml 3.1.4 treated this newline as content, rather than
as a seperator between the textarea tag and its content.

Solving the issue was not simply a matter of decoding the newline,
because in indented mode, Haml would add spaces before the newline in
partials, making nested textareas have spaces before their content.

Haml 3.1.5 solved this by adding <haml:newline/> rather than a newline,
and monkeypatched Rails to replace it with a real newline after the
document was rendered. You ever do something you just *know* is going to
cause problems, even though all your tests seem to indicate things are
working fine? Yeah, I know that feeling.

As it turns out, monkeypatching the Rails does the actual
rendering is not as easy as it seems. First, because there are several
places where a monkey patch needs to be applied. Second, because those
modules are not always loaded, and it's not very nice to force people to
load them in order to use Haml: an application may have a very good
reason not to have loaded part of Rails.

Last but not least, the monkeypatch caused <haml:newline/> to appear in
some Erb documents when the haml gem was loaded for use elsewhere in the
applcation.

This commit attempts to make a simpler and wiser solution to the issue.
Rather than adding some silly tag (WTF was I thinking???), this simple
makes Haml replace the first encoded newline emitted by Rails's textarea
helper methods with a real newline. Then, when rending the Haml
document in ugly mode, everything works exactly as you would expect,
with no need to monkepatch Rails's template rendering.

However this comes with a tradeoff: in order to not completely break
textareas in indented mode, Haml will now make no attempt to reindent a
partials or the output of helpers when they match a very simple regular
expression for opening <textarea>, <pre>, or <code> tags.

This makes textareas work properly in Haml 3.1.6. at the expense of
slightly uglier documents, when those documents contain the listed tags.

Now, everybody knows that you shouldn't rely on regular expressions to
parse HTML. This is where another tradeoff comes in: parsing the buffer
with an XML parser would have a much larger impact on performance, and
Haml is already slow enough as it stands in indented mode. So I've
compromised and used a simple, somewhat braindead, but fast regexp.

This issue has been nagging and annoying, and I apologize to anybody
affected by this, most especially for the <haml:newline/> silliness in
introduced in 3.1.5. Please give Haml 3.1.6 a try (it's currently in the
stable branch) and let me know if you come across any problems. I'll try
to get this release out as soon as possible.

The change is also in the master branch, for those who like to live
dangerously.
Updated Changelog
Bump version to 3.1.6.rc.1

If you are affected by any of the issues raised in #532, #519, #516, #506,
or #503 then please give try this version.
Bumped version to 3.1.6
Delete duplicate line in api doc
(cherry picked from commit fe623cfd32d828227932222b3af8791913ff7f2d)
Merge branch 'master' into 3-2-stable
Bump version
Merge branch '3-2-stable' into stable

Conflicts:
	VERSION
Use Erubis for parsing static method bodies if available
Use TinyRuby rather than Eruby for static method parsing.
Merge branch 'master' into 3-2-stable
Bump version
Merge branch '3-2-stable' into stable
Merge branch 'master' into 3-2-stable
Merge branch '3-2-stable' into stable
Bumped version
Merge branch 'master' into 3-2-stable