From 30da1a5b70de8015d0bed81165e8754a40699ea9 Mon Sep 17 00:00:00 2001
From: John MacFarlane <fiddlosopher@gmail.com>
Date: Fri, 18 Jan 2013 20:37:30 -0800
Subject: [PATCH] Updated changelog.

---
 changelog | 699 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 699 insertions(+)

diff --git a/changelog b/changelog
index d8ec82ce5..a5895b89e 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,702 @@
+pandoc (1.10)
+
+  [new features]
+
+  * New input formats:  `mediawiki` (MediaWiki markup).
+
+  * New output formats:  `epub3` (EPUB v3 with MathML),
+    `fb2` (FictionBook2 ebooks).
+
+  * New `--toc-depth` option, specifying how many levels of
+    headers to include in a table of contents.
+
+  * New `--epub-chapter-level` option, specifying the header
+    level at which to divide EPUBs into separate files.
+    Note that this normally affects only performance, not the
+    visual presentation of the EPUB in a reader.
+
+  * Removed the `--strict` option.  Instead of using `--strict`,
+    one can now use the format name `markdown_strict` for either input
+    or output.  This gives more fine-grained control that `--strict`
+    did, allowing one to convert from pandoc's markdown to strict
+    markdown or vice versa.
+
+  * It is now possible to enable or disable specific syntax
+    extensions by appending them (with `+` or `-`) to the writer
+    or reader name.  For example,
+
+        pandoc -f markdown-footnotes+hard_line_breaks
+
+    disables footnotes and enables treating newlines as hard
+    line breaks.  The literate Haskell extensions are now implemented
+    this way as well, using either `+lhs` or `+literate_haskell`.
+    For a list of extension names, see the README under
+    "Pandoc's Markdown."
+
+  * The following aliases have been introduced for specific
+    combinations of markdown extensions:  `markdown_phpextra`,
+    `markdown_github`, `markdown_mmd`, `markdown_strict`.  These aliases
+    work just like regular reader and writer names, and can be modified
+    with extension modifiers as described above. (Note that conversion
+    from one markdown dialect to another does not work perfectly,
+    because there are differences in markdown parsers besides
+    just the extensions, and because pandoc's internal document model is
+    not rich enough to capture all of the extensions.)
+
+  * New `--html-q-tags` option.  The previous default was to use `<q>`
+    tags for smart quotes in HTML5.  But `<q>` tags are also valid HTML4.
+    Moreover, they are not a robust way of typesetting quotes, since
+    some user agents don't support them, and some CSS resets (e.g.
+    bootstrap) prevent pandoc's quotes CSS from working properly.
+    We now just insert literal quote characters by default in both
+    `html` and `html5` output, but this option is provided for
+    those who still want `<q>` tags.
+
+  * The markdown reader now prints warnings (to stderr) about
+    duplicate link and note references.  Closes #375.
+
+  * Markdown syntax extensions:
+
+    + Added pipe tables.  Thanks to François Gannaz for the initial patch.
+      These conform to PHP Markdown Extra's pipe table syntax. A subset
+      of org-mode table syntax is also supported, which means that you can
+      use org-mode's nice table editor to create tables.
+
+    + Added support for RST-style line blocks. These are
+      useful for verse and addresses.
+
+    + Attributes can now be specified for headers, using the same
+      syntax as in code blocks.  (However, currently only the
+      identifier has any effect in most writers.)  For example,
+
+            # My header {#foo}
+
+            See [the header above](#foo).
+
+    + Pandoc will now act as if link references have been defined
+      for all headers without explicit identifiers.
+      So, you can do this:
+
+            # My header
+
+            Link to [My header].
+            Another link to [it][My header].
+
+      Closes #691.
+
+  * LaTeX reader:
+
+    + Command macros now work everywhere, including non-math.
+      Environment macros still not supported.
+    + `\input` now works, as well as `\include`.  TEXINPUTS is used.
+      Pandoc looks recursively into included files for more included files.
+
+  [behavior changes]
+
+  * The Markdown reader no longer puts the text of autolinks in a
+    `Code` inline.  This means that autolinks will no longer appear
+    in a monospace font.
+
+  * The character `/` can now appear in markdown citation keys.
+
+  * HTML blocks in strict_markdown are no longer required to begin
+    at the left margin.  Technically this is required, according to
+    the markdown syntax document, but `Markdown.pl` and other markdown
+    processors are more liberal.
+
+  * The `-V` option has been changed so that if there are duplicate
+    variables, those specified later on the command line take precedence.
+
+  * Tight lists now work in LaTeX and ConTeXt output.
+
+  * The LaTeX writer no longer relien on the `enumerate` package.
+    Instead, it uses standard LaTeX commands to change the list numbering
+    style.
+
+  * The LaTeX writer now uses `longtable` instead of `ctable`. This allows
+    tables to be split over page boundaries.
+
+  * The RST writer now uses a line block to render paragraphs containing
+    linebreaks (which previously weren't supported at all).
+
+  * The markdown writer now applies the `--id-prefix` to footnote IDs.
+    Closes #614.
+
+  * The plain writer no longer uses backslash-escaped line breaks
+    (which are not very "plain").
+
+  * `Text.Pandoc.UTF8`: Better error message for invalid UTF8.
+    Read bytestring and use `Text`'s decodeUtf8 instead of using
+    `System.IO.hGetContents`.  This way you get a message saying
+    "invalid UTF-8 stream" instead of "invalid byte sequence."
+    You are also told which byte caused the problem.
+
+  * Docx, ODT, and EPUB writers now download images specified by a URL
+    instead of skipping them or raising an error.
+
+  * EPUB writer:
+
+    + The default CSS now left-aligns headers by default, instead of
+      centering.  This is more consistent with the rest of the writers.
+    + A proper multi-level table of contents is now used in `toc.ncx`.
+      There is no longer a subsidiary table of contents at the beginning
+      of each chapter.
+    + Code highlighting now works by default.
+    + Section divs are used by default for better semantic markup.
+    + The title is used instead of "Title Page" in the table of contents.
+      Otherwise we have a hard-coded English string, which looks
+      strange in ebooks written in other languages.  Closes #572.
+
+  * HTML writer:
+
+    + Put mathjax in span with class "math".  Closes #562.
+    + Put citations in a span with class "citation." In HTML5, also include
+      a `data-cite` attribute with a space-separated list of citation
+      keys.
+
+  * `Text.Pandoc.UTF8`:  use universalNewlineMode in reading.
+    This treats both `\r\n` and `\n` as `\n` on input, no matter
+    what platform we're running on.
+
+  * Citation processing is now done in the Markdown and LaTeX
+    readers, not in `pandoc.hs`.  This makes it easier for library users
+    to use citations.
+
+  [template changes]
+
+  * HTML: Added css to template to preserve spaces in `<code>` tags.
+    Thanks to Dirk Laurie.
+
+  * Beamer:  Remove English-centric strings in section pages.
+    Section pages used to have "Section" and a number as well as the
+    section title. Now they just have the title.  Similarly for part
+    and subsection.  Closes #566.
+
+  * LaTeX, ConTeXt: Added papersize variable.
+
+  * LaTeX, Beamer templates: Use longtable instead of ctable.
+
+  * LaTeX, Beamer templates: Don't require 'float' package for tables.
+    We don't actually seem to use the '[H]' option.
+
+  * Markdown, plain: Fixed titleblock so it is just a single string.
+    Previously separate title, author, and date variables were used,
+    but this didn't allow different kinds of title blocks.
+
+  * EPUB:
+
+    + Rationalized templates.  Previously there were three different
+      templates involved in epub production. There is now just one
+      template, `default.epub` or `default.epub3`. It can now be
+      overridden using `--template`, just like other templates.
+      The titlepage is now folded into the default template.
+      A `titlepage` variable selects it.
+    + UTF-8, lang tag, meta tags, title element.
+
+  * Added scale-to-width feature to beamer template
+
+  [API changes]
+
+  * `Text.Pandoc.Definition`: Added `Attr` field to `Header`.
+    Previously header identifers were autogenerated by the writers.
+    Now they are added in the readers (either automatically or explicitly).
+
+  * The readers now take a `ReaderOptions` rather than a `ParserState`
+    as a parameter.  Indeed, not all parsers use the `ParserState` type;
+    some have a custom state.  The motivation for this change was to separate
+    user-specifiable options from the accounting functions of parser state.
+
+  * New module `Text.Pandoc.Options`.  This includes the `WriterOptions`
+    formerly in `Text.Pandoc.Shared`, and its associated
+    data types.  It also includes a new type `ReaderOptions`, which
+    contains many options formerly in `ParserState`, and its associated
+    data types:
+
+    + `ParserState.stateParseRaw` -> `ReaderOptions.readerParseRaw`.
+    + `ParserState.stateColumns` -> `ReaderOptions.readerColumns`.
+    + `ParserState.stateTabStop` -> `ReaderOptions.readerTabStop`.
+    + `ParserState.stateOldDashes` -> `ReaderOptions.readerOldDashes`.
+    + `ParserState.stateLiterateHaskell` -> `ReaderOptions.readerLiterateHaskell`.
+    + `ParserState.stateCitations` -> `ReaderOptions.readerReferences`.
+    + `ParserState.stateApplyMacros` -> `ReaderOptions.readerApplyMacros`.
+    + `ParserState.stateIndentedCodeClasses` ->
+      `ReaderOptions.readerIndentedCodeClasses`.
+    + Added `ReaderOptions.readerCitationStyle`.
+
+  * `WriterOptions` now includes `writerEpubVersion`, `writerEpubChapterLevel`,
+    `writerEpubStylesheet`, `writerEpubFonts`, `writerReferenceODT`,
+    `writerReferenceDocx`, and `writerTOCDepth`.  `writerEPUBMetadata` has
+    been renamed `writerEpubMetadata` for consistency.
+
+  * Changed signatures of `writeODT`, `writeDocx`, `writeEPUB`, since they no
+    longer stylesheet, fonts, reference files as separate parameters.
+
+  * Removed `writerLiterateHaskell` from `WriterOptions`, and
+    `readerLiterateHaskell` from `ReaderOptions`.  LHS is now handled
+    by an extension (`Ext_literate_haskell`).
+
+  * Removed deprecated `writerXeTeX`.
+
+  * Removed `writerStrict` from `WriterOptions`.  Added `writerExtensions`.
+    Strict is now handled through extensions.
+
+  * `Text.Pandoc.Options` exports `pandocExtensions`, `strictExtensions`,
+    `phpMarkdownExtraExtensions`, `githubMarkdownExtensions`,
+    and `multimarkdownExtensions`, as well as the `Extensions` type.
+
+  * New `Text.Pandoc.Readers.MediaWiki` module, exporting
+    `readMediaWiki`.
+
+  * New `Text.Pandoc.Writers.FB2` module, exporting `writeFB2`
+    (thanks to Sergey Astanin).
+
+  * `Text.Pandoc`:
+
+    + Added `getReader`, `getWriter` to `Text.Pandoc`.
+    + `writers` is now an association list `(String, Writer)`.
+      A `Writer` can be a `PureStringWriter`, an `IOStringWriter`, or
+      an `IOByteStringWriter`.  ALL writers are now in the 'writers'
+      list, including the binary writers and FB2 writer.  This allows
+      code in `pandoc.hs` to be simplified.
+    + Changed type of `readers`, so all readers are in IO.
+      Users who want pure readers can still get them form the reader
+      modules; this just affects the function `getReader` that looks up
+      a reader based on the format name.  The point of this change is to
+      make it possible to print warnings from the parser.
+
+  * `Text.Pandoc.Parsing`:
+
+    + `Text.Parsec` now exports all Parsec functions used in pandoc code.
+      No other module directly imports Parsec.  This will make it easier
+      to change the parsing backend in the future, if we want to.
+    + `Text.Parsec` is used instead of `Text.ParserCombinators.Parsec`.
+    + Export the type synonym `Parser`.
+    + Export `widthsFromIndices`, `NoteTable'`, `KeyTable'`, `Key'`, `toKey'`,
+     `withQuoteContext`, `singleQuoteStart`, `singleQuoteEnd`,
+     `doubleQuoteStart`, `doubleQuoteEnd`, `ellipses`, `apostrophe`,
+     `dash`, `nested`, `F(..)`, `askF`, `asksF`, `runF`, `lineBlockLines`.
+    + `ParserState` is no longer an instance of `Show`.
+    + Added `stateSubstitutions` and `stateWarnings` to `ParserState`.
+    + Generalized type of `withQuoteContext`.
+    + Added `guardEnabled`, `guardDisabled`, `getOption`.
+    + Removed `failIfStrict`.
+    + `lookupKeySrc` and `fromKey` are no longer exported.
+
+  * `Data.Default` instances are now provided for `ReaderOptions`,
+    `WriterOptions`, and `ParserState`.  `Text.Pandoc` re-exports `def`.
+    Now you can use `def` (which is re-exported by `Text.Pandoc`) instead
+    of `defaultWriterOptions` (which is still defined).  Closes #546.
+
+  * `Text.Pandoc.Shared`:
+
+    + Added `safeRead`.
+    + Renamed `removedLeadingTrailingSpace` to `trim`,
+      `removeLeadingSpace` to `triml`, and `removeTrailingSpace` to `trimr`.
+    + Count `\r` as space in `trim` functions.
+    + Moved `renderTags'` from HTML reader and `Text.Pandoc.SelfContained`
+      to `Shared`.
+    + Removed `failUnlessLHS`.
+    + Export `compactify'`, formerly in Markdown reader.
+    + Export `isTightList`.
+    + Do not export `findDataFile`.
+    + `readDataFile` now returns a strict ByteString.
+    + Export `readDataFileUTF8` which returns a String, like the
+      old `readDataFile`.
+    + Export `fetchItem` and `openURL`.
+
+  * `Text.Pandoc.ImageSize`: Use strict, not lazy bytestrings.
+    Removed `readImageSize`.
+
+  * `Text.Pandoc.UTF8`: Export `encodePath`, `decodePath`,
+     `decodeArg`, `toString`, `fromString`, `toStringLazy`,
+     `fromStringLazy`.
+
+  * `Text.Pandoc.UTF8` is now an exposed module.
+
+  * `Text.Pandoc.Biblio`:
+
+    + csl parameter now a `String` rather than a `FilePath`.
+    + Changed type of `processBiblio`.  It is no longer in the IO monad.
+      It now takes a `Maybe Style` argument rather than parameters for CSL
+      and abbrev filenames.  (`pandoc.hs` now calls the functions to parse
+      the style file and add abbreviations.)
+
+  * Markdown reader now exports `readMarkdownWithWarnings`.
+
+  * `Text.Pandoc.RTF` now exports `writeRTFWithEmbeddedImages` instead of
+    `rtfEmbedImage`.
+
+  [bug fixes]
+
+  * Make `--ascii` work properly with `--self-contained`.  Closes #568.
+
+  * Markdown reader:
+
+    + Fixed link parser to avoid exponential slowdowns.  Closes #620.
+      Previously the parser would hang on input like this:
+
+            [[[[[[[[[[[[[[[[[[hi
+
+      We fixed this by making the link parser parser characters
+      between balanced brackets (skipping brackets in inline code spans),
+      then parsing the result as an inline list.  One change is that
+
+            [hi *there]* bud](/url)
+
+      is now no longer parsed as a link.  But in this respect pandoc behaved
+      differently from most other implementations anyway, so that seems okay.
+
+    + Look for raw html/latex blocks before tables.
+      Otherwise the following gets parsed as a table:
+
+            \begin{code}
+            --------------
+            -- My comment.
+            \end{code}
+
+      Closes #578.
+
+  * RST reader:
+
+    + Added support for `:target:` on `.. image::` blocks
+      and substitutions.
+    + Field list fixes:
+
+        - Fixed field lists items with body beginning after a new line
+          (Denis Laxalde).
+        - Allow any char but ':' in names of field lists in RST reader
+          (Denis Laxalde).
+        - Don't allow line breaks in field names.
+        - Require whitespace after field list field names.
+        - Don't create empty definition list for metadata field lists.
+          Previously a field list consisting only of metadata fields (author,
+          title, date) would be parsed as an empty DefinitionList, which is
+          not legal in LaTeX and not needed in any format.
+
+    + Don't recognize inline-markup starts inside words.
+      For example, `2*2 = 4*1` should not contain an emphasized
+      section.  Added test case for "Literal symbols".  Closes #569.
+    + Allow dashes as separator in simple tables.  Closes #555.
+    + Added support for `container`, `compound`, `epigraph`,
+      `rubric`, `highlights`, `pull-quote`.
+    + Added support for `.. code::`.
+    + Made directive labels case-insensitive.
+    + Removed requirement that directives begin at left margin.
+      This was (correctly) not in earlier releases; docutils doesn't
+      make the requirement.
+    + Added support for `replace::` and `unicode::` substitutions.
+    + Ignore unknown interpreted roles.
+    + Renamed image parser to `subst`, since it now handles all
+      substitution references.
+
+  * Textile reader:
+
+    + Allow newlines before pipes in table.  Closes #654.
+    + Fixed bug with list items containing line breaks.
+      Now pandoc correctly handles hard line breaks inside list items.
+      Previously they broke list parsing.
+    + Implemented comment blocks.
+    + Fixed bug affected words ending in hyphen.
+    + Properly handle links with surrounding brackets.
+      Square brackets need to be used when the link isn't surrounded by
+      spaces or punctuation, or when the URL ending may be ambiguous.
+      Closes #564.
+    + Removed nullBlock.  Better to know about parsing problems than
+      to skip stuff when we get stuck.
+    + Allow ID attributes on headers.
+    + Textile reader:  Avoid parsing dashes as strikeout.
+      Previously the input
+
+            text--
+            text--
+            text--
+            text--
+
+      would be parsed with strikeouts rather than dashes. This fixes
+      the problem by requiring that a strikeout delimiting - not be
+      followed by a -.  Closes #631.
+    + Expanded list of `stringBreakers`.
+      This fixes a bug on input like "(_hello_)" which should
+      be a parenthesized emphasized "hello".
+      The new list is taken from the PHP source of textile 2.4.
+    + Fixed autolinks.  Previously the textile reader and writer
+      incorrectly implented RST-style autolinks for URLs and email
+      addresses.  This has been fixed.  Now an autolink is done this way:
+      `"$":http://myurl.com`.
+    + Fixed footnotes bug in textile.  This affected notes occuring
+      before punctuation, e.g. `foo[1].`.  Closes #518.
+
+  * LaTeX reader:
+
+    + Better handling of citation commands.
+    + Better handling of `\noindent`.
+    + Added a 'try' in rawLaTeXBlock, so we can handle `\begin` without `{`.
+      Closes #622.
+    + Made `rawLaTeXInline` try to parse block commands as well.  This
+      is usually what we want, given how `rawLaTeXInline` is used in
+      the markdown and textile readers.  If a block-level LaTeX command
+      is used in the middle of a paragraph (e.g. `\subtitle` inside a title),
+      we can treat it as raw inline LaTeX.
+    + Handle \slash command.  Closes #605.
+    + Basic `\enquote` support.
+    + Fixed parsing of paragraphs beginning with a group.  Closes #606.
+    + Use curly quotes for bare straight quotes.
+    + Support obeylines environment.  Closes #604.
+    + Guard against "begin", "end" in inlineCommand and
+      blockCommand.
+    + Better error messages for environments.  Now it should tell you that
+      it was looking for \end{env}, instead of giving "unknown parse error."
+
+  * HTML reader:
+
+    + Added HTML 5 tags to list of block-level tags.
+    + HTML reader: Fixed bug in `htmlBalanced`, which
+      caused hangs in parsing certain markdown input using
+      strict mode.
+    + Parse `<q>` as `Quoted DoubleQuote`.
+    + Handle nested `<q>` tags properly.
+    + Modified `htmlTag` for fewer false positives.
+      A tag must start with `<` followed by `!`,`?`, `/`, or a letter.
+      This makes it more useful in the wikimedia and markdown parsers.
+
+  * DocBook reader: Support title in "figure" element.  Closes #650.
+
+  * MediaWiki writer:
+
+    + Remove newline after `<br/>` in translation of `LineBreak`
+      There's no particular need for a newline (other than making the
+      generated MediaWiki source look nice to a human), and in fact
+      sometimes it is incorrect: in particular, inside an enumeration, list
+      items cannot have embedded newline characters. (Brent Yorgey)
+    + Use `<code>` not `<tt>` for Code.
+
+  * Man writer: Escape `-` as `\-`.
+    Unescaped `-`'s become hyphens, while `\-`'s are left as ascii minus
+    signs.  That is preferable for use with command-line options.  See
+    <http://lintian.debian.org/tags/hyphen-used-as-minus-sign.html>.  Thanks
+    to Andrea Bolognani for bringing the issue to our attention.
+
+  * RST writer:
+
+    + Improved line block output. Use nonbreaking spaces for
+      initial indent (otherwise lost in HTML and LaTeX).
+      Allow multiple paragraphs in a single line block.
+      Allow soft breaks w continuations in line blocks.
+    + Properly handle images with no alt text.  Closes #678.
+    + Fixed bug with links with duplicate text.  We now (a) use anonymous
+      links for links with inline URLs, and (b) use an inline link instead
+      of a reference link if the reference link would require a label that
+      has already been used for a different link.  Closes #511.
+    + Fixed hyperlinked images. Closes #611. Use `:target:`
+      field when you have a simple linked image.
+    + Don't add `:align: center` to figures.
+
+  * Texinfo writer:  Fixed internal cross-references.
+    Now we insert anchors after each header, and use `@ref` instead of `@uref`
+    for links.  Commas are now escaped as `@comma{}` only when needed;
+    previously all commas were escaped.  (This change is needed, in part,
+    because `@ref` commands must be followed by a real comma or period.) Also
+    insert a blank line in from of `@verbatim` environments.
+
+  * DocBook writer:
+
+    + Made --id-prefix work in DocBook as well as HTML.
+      Closes #607.
+    + Don't include empty captions in figures.  Closes #581.
+
+  * LaTeX writer:
+
+    + Use `\hspace*` for nonbreaking space after line break,
+      since `~` spaces after a line break are just ignored.
+      Closes #687.
+    + Don't escape `_` in URLs or hyperref identifiers.
+    + Properly escape strings inside \url{}.  Closes #576.
+    + Use `[fragile]` only for slides containing code rendered
+      using listings. Closes #649.
+    + Escape `|` as `\vert` in LaTeX math.  This avoids a clash with
+      highlighting-kate's macros, which redefine `|` as a short verbatim
+      delimiter.  Thanks to Björn Peemöller for raising this issue.
+    + Use minipage rather than parbox for block containers in tables.
+      This allows verbatim code to be included in grid tables.
+      Closes #663.
+    + Prevent paragraphs containing only linebreaks or spaces.
+
+  * HTML writer:
+
+    + Included `highlighting-css` for code spans, too.
+      Previously it was only included if used in a code block.  Closes #653.
+    + Improved line breaks with `<dd>` tags.  We now put a newline between
+      `</dd>` and `<dd>` when there are multiple definitions.
+    + Changed mathjax cdn url so it doesn't use https.  (This caused
+      problems when used with `--self-contained`.) See #609.
+
+  * EPUB writer:
+
+    + `--number-sections` now works properly.
+    + Don't strip meta and link elements in epub metadata.
+      Patch from aberrancy. Closes #589.
+    + Fixed a couple validation bugs.
+    + Use ch001, ch002, etc. for chapter filenames.  This improves sorting
+      of chapters in some readers, which apparently sort ch2 after ch10.
+      Closes #610.
+
+  * ODT writer: properly set title property (Arlo O'Keeffe).
+
+  * Docx writer:
+
+    + Fixed bug with nested lists.  Previously a list like
+
+            1. one
+                - a
+                - b
+            2. two
+
+      would come out with a bullet instead of "2."
+      Thanks to Russell Allen for reporting the bug.
+    + Use `w:cr` in `w:r` instead of `w:br` for linebreaks.
+      This seems to fix a problem viewing pandoc-generated
+      docx files in LibreOffice.
+    + Use integer ids for bookmarks.  Closes #626.
+    + Added nsid to abstractNum elements.  This helps when merging
+      word documents with numbered or bulleted lists.  Closes #627.
+    + Use separate footnotes.xml for notes.
+      This seems to help LibreOffice convert the file, even though
+      it was valid docx before.  Closes #637.
+    + Use rIdNN identifiers for r:embed in images.
+    + Avoid reading image files again when we've already processed them.
+    + Fixed typo in `referenc.docx` that prevented image captions from
+      working. Thanks to Huashan Chen.
+
+  * `Text.Pandoc.Parsing`:
+
+    + Fixed bug in `withRaw`, which didn't correctly handle the case
+      where nothing is parsed.
+    + Made `emailAddress` parser more correct.  Now it is based on RFC 822,
+      though it still doesn't implement quoted strings in email addresses.
+    + Revised URI parser.  It now allows many more schemes, allows
+      uppercase URIs, and better handles trailing punctuation and
+      trailing slashes in bare URIs.  Added many tests.
+    + Simplified and improved singleQuoteStart.  This makes `'s'`, `'l'`,
+      etc. parse properly.  Formerly we had some English-centric heuristics,
+      but they are no longer needed. Closes #698.
+
+  * `Text.Pandoc.Pretty`:  Added wide punctuation range to `charWidth`.
+    This fixes bug with Chinese commas in markdown and reST tables, and
+    a bug that caused combining characters to be dropped.
+
+  * `Text.Pandoc.MIME`: Added MIME types for .wof and .eot.  Closes #640.
+
+  * `Text.Pandoc.Biblio`:
+
+    + Run `mvPunc` and `deNote` on metadata too.
+      This fixed a bug with notes on titles using footnote styles.
+    + Fixed bug in fetching CSL files from CSL data directory.
+
+  * `pandoc.hs`:  Give correct value to `writerSourceDirectory` when a URL
+    is provided.  It should be the URL up to the path.
+
+  * Fixed/simplified diff output for tests.
+    Biblio: Make sure mvPunc and deNote run on metadata too.
+    This fixed a bug with notes on titles using footnote styles.
+
+  [under the hood improvements]
+
+  * We no longer depend on `utf8-string`.  Instead we use functions
+    defined in `Text.Pandoc.UTF8` that use `Data.Text`'s conversions.
+
+  * Use `safeRead` instead of using `reads` directly (various modules).
+
+  * "Implicit figures" (images alone in a paragraph) are now handled
+    differently.  The markdown reader gives their titles the prefix `fig:`; the
+    writers look for this before treating the image as a figure.  Though this
+    is a bit of a hack, it has two advantages: (i) implicit figures can be
+    limited to the markdown reader, and (ii) they can be deactivated by turning
+    off the `implicit_figures` extension.
+
+  * `catch` from `Control.Exception` is now used instead of the
+    old Preface `catch`.
+
+  * `Text.Pandoc.Shared`:  Improved algorithm for `normalizeSpaces`
+    and `oneOfStrings` (which is now non-backtracking).
+
+  * `Text.Pandoc.Biblio`: Remove workaround for `toCapital`.
+    Now citeproc-hs is fixed upstream, so this is no longer needed.
+    Closes #531.
+
+  * Textile reader: Improved speed of `hyphenedWords`.
+    This speeds up the textile  reader by about a factor of 4.
+
+  * Use `Text.Pandoc.Builder` in RST reader, for more flexibility,
+    better performance, and automatic normalization.
+
+  * Major rewrite of markdown reader:
+
+    + Use `Text.Pandoc.Builder` instead of lists.  This also
+      means that everything is normalized automatically.
+    + Move to a one-pass parsing strategy, returning values in the reader
+      monad, which are then run (at the end of parsing) against the final
+      parser state.
+
+  * In HTML writer, we now use `toHtml` instead of pre-escaping.
+    We work around the problem that blaze-html unnecessarily escapes `'`
+    by pre-escaping just the `'` characters, instead of the whole string.
+    If blaze-html later stops escaping `'` characters, we can simplify
+    `strToHtml` to `toHtml`.  Closes #629.
+
+  * Moved code for embedding images in RTFs from `pandoc.hs` to the
+    RTF writer (which now exports `writeRTFWithEmbeddedImages`).
+
+  * Moved citation processing from `pandoc.hs` into the readers.
+    This makes things more convenient for library users.
+
+  * The man pages are now built by an executable `make-pandoc-man-pages`,
+    which has its own stanza in the cabal file so that dependencies can be
+    handled by Cabal. Special treatment in `Setup.hs` ensures that this
+    executable never gets installed; it is only used to create the man pages.
+
+  * The cabal file has been modified so that the pandoc library is used
+    in building the pandoc executable.  (This required moving `pandoc.hs`
+    from `src` to `.`.)  This cuts compile time in half.
+
+  * The `executable` and `library` flags have been removed.
+
+  * `-threaded` has been removed from ghc-options.
+
+  * Version bounds of dependencies have been raised, and the
+    `blaze_html_0_5` flag now defaults to True.  Pandoc now compiles on
+    GHC 7.6.
+
+  * We now require base >= 4.2.
+
+  * Integrated the benchmark program into cabal.  One can now do:
+
+        cabal configure --enable-benchmarks && cabal build
+        cabal bench --benchmark-option='markdown' --benchmark-option='-s 20'
+
+    The benchmark now uses README + testsuite, so benchmark results
+    from older versions aren't comparable.
+
+  * Integrated test suite with cabal.
+    To run tests, configure with `--enable-tests`, then `cabal test`.
+    You can specify particular tests using `--test-options='-t markdown'`.
+    No output is shown unless tests fail.  The Haskell test modules
+    have been moved from `src/` to `tests/`.
+
+  * Moved all data files and templates to the `data/` subdirectory.
+
+  * Added an `embed_data_files` cabal flag.  This causes all
+    data files to be embedded in the binary, so that the binary
+    is self-sufficient and can be relocated anywhere, copied on
+    a USB key, etc.  The Windows installer now uses this.
+    (Since we no longer have the option to build the executable
+    without the library, this is the only way to get a relocatable
+    binary on Windows.)
+
+  * Removed pcre3.dll from windows package.
+    It isn't needed unless highlighting-kate is compilled with the
+    `pcre-light` flag. By default, regex-prce-builtin is used.
+
+
 pandoc (1.9.4.2)
 
   * Don't encode/decode file paths if base >= 4.4.