@@ -1,24 +1,43 @@
1−pandoc (2.6.1) PROVISIONAL
1+pandoc (2.7)
2+
3+ * Use XDG data directory for user data directory (#3582). Instead of
4+ `$HOME/.pandoc`, the default user data directory is now
5+ `$XDG_DATA_HOME/pandoc`, where `XDG_DATA_HOME` defaults to
6+ `$HOME/.local/share` but can be overridden by setting the
7+ environment variable. If this directory is missing, then
8+ `$HOME/.pandoc` is searched instead, for backwards compatibility.
9+ However, we recommend moving local pandoc data files from
10+ `$HOME/.pandoc` to `$HOME/.local/share/pandoc`. On Windows the
11+ default user data directory remains the same.
12+
13+ * Add command line option `--ipynb-output=all|none|best` (#5339).
214
315 * `asciidoctor` is now an output format separate from `asciidoc`,
416 to accommodate some minor implementation-specific differences
517 (currently just in the treatment of display math).
18+
19+ * Add `latexmk` as an option for `--pdf-engine` (#3195).
20+ Note that you can use `--pdf-engine-opt=-outdir=bar` to specify
21+ a persistent temp directory.
622
723 * Markdown reader:
824
9− + Improve tight/loose list handling (#5285). Previously the algorithm
10− allowed list items with a mix of Para and Plain, which is never wanted.
11− This patch modifies `compactify` in Text.Pandoc.Shared so that, if a
12− list's items contain (at the top level) Para elements (aside from perhaps
13− at the very end), *all* Plains are converted to Paras.
25+ + Improve tight/loose list handling (#5285). Previously the
26+ algorithm allowed list items with a mix of Para and Plain, which
27+ is never wanted.
1428 + Add newline when parsing blocks in YAML (#5271).
1529 Otherwise last block gets parsed as a Plain rather than
1630 a Para. This is a regression in pandoc 2.x. This patch restores
1731 pandoc 1.19 behavior.
32+ + Make `yamlToMeta` respect extensions (#5272, Mauro Bieg).
33+ This adds a `ReaderOptions` parameter to `yamlToMeta` [API change].
34+ + Fix bug parsing fenced code blocks (#5304). Previously parsing
35+ would break if the code block contained a string of backticks of
36+ sufficient length followed by something other than end of line.
1837
19− * LaTeX reader: don't let `\egroup` match `{`. `braced` now actually
20− requires nested braces. Otherwise some legitimate command and environment
21− definitions can break.
38+ * LaTeX reader: don't let `\egroup` match `{`. `braced` now actually
39+ requires nested braces. Otherwise some legitimate command and
40+ environment definitions can break.
2241
2342 * Docx reader (Jesse Rosenthal):
2443
@@ -36,24 +55,57 @@ pandoc (2.6.1) PROVISIONAL
3655 Some paths in archives are absolute (have an opening slash) which, for
3756 reasons unknown, produces a failure in the test suite on MS
3857 Windows. This fixes that by removing the leading slash if it exists.
58+ + Add comments to aid code readability.
59+ + Trim space inside the last inline (#5273).
60+ + Unwrap sdt elements in footnotes and comments (#5302).
3961
40− * Muse reader: test that block level markup does not break `<verbatim>`
41− (Alexander Krotov).
62+ * Muse reader (Alexander Krotov):
63+
64+ + Test that block level markup does not break `<verbatim>`.
65+ + Add secondary note support.
4266
4367 * ipynb reader: handle images referring to attachments.
4468 Previously we didn't strip off the attachment: prefix,
4569 so even though the attachment is available in the mediabag,
4670 pandoc couldn't find it.
4771
72+ * JATS reader:
73+
74+ + Fix parsing of figures (#5321). This ensures that a figure
75+ containing a single image is parsed as a pandoc "implicit
76+ figure" (i.e., a Para with a single Image whose title attribute
77+ begins with `fig:`). More complex figures will still be parsed
78+ as divs.
79+ + Support `fig-group` block element (#5317).
80+ + Handle citations with multiple references (#5310).
81+ The `rid` attribute can have a space-separated list of ids.
82+
4883 * AsciiDoc Writer: Add `writeAsciiDoctor` [API change, Tarik Graba].
4984 Handle display math appropriately for Asciidoctor.
5085
5186 * JATS writer: wrap figure caption in `<p>` to fix validation (#5290,
5287 Mauro Bieg).
5388
54− * HTML writer: implement WAI-ARIA roles for (end)notes (#4213).
89+ * HTML writer:
5590
56− * ipynb writer - ensure final newline.
91+ + Implement WAI-ARIA roles for (end)notes, citations,
92+ and bibliography (#4213). Note that doc-biblioref is only used when
93+ link-citations produces links, since it belongs on links.
94+ + Include content under title slides (#4317, #5237). This
95+ facilitates real 2D revealjs slideshows, with content under the
96+ top-level slide in each stack. It also enables notes on title slides.
97+ Behavior change: content above slide level is no longer ignored; it
98+ now gets added to the title slide.
99+
100+ * ipynb writer:
101+
102+ + Ensure final newline.
103+ + Only include metadata under `jupyter` field.
104+ + Don't create attachments for images with absolute URIs,
105+ including data: URIs (#5303).
106+ + Keep plain text fallbacks in output even if a richer format is
107+ included (#5293). We don't know what output format will be needed.
108+ The fallback can always be weeded out using a filter.
57109
58110 * Markdown writer: use `markdown="1"` when appropriate for Divs:
59111 when `native_divs` and `markdown_in_html_blocks` are disabled
@@ -69,27 +121,50 @@ pandoc (2.6.1) PROVISIONAL
69121 the `{}` when it is not necessary. Now `\ldots` and other
70122 control sequences used in escaping will be followed by either
71123 a `{}`, a space, or nothing, depending on context.
124+ + For beamer, include contents under headers superordinate to
125+ slidelevel (#4317). Currently we keep the fancy title slide, and
126+ add a new slide with the same title and whatever content was
127+ under the header. This changes behavior of slides, but is
128+ consistent with the new behavior of the revealjs and other HTML
129+ slide show writers.
130+
131+ * Powerpoint writer (Jesse Rosenthal): support underlines.
132+ Use span with single class "underline" as in docx writer.
133+
134+ * Muse writer: escape secondary notes (Alexander Krotov).
135+
136+ * FB2 writer: add section identifiers support (#5229, John KetzerX).
137+
138+ * Make `--fail-if-warnings` work for PDF output (#5343).
72139
73140 * Lua filters (Albert Krewinkel):
74141
75− + load module `pandoc` before calling `init.lua` (#5287).
76− The file `init.lua` in pandoc's data directory is run as part of pandoc's
77− Lua initialization process. Previously, the `pandoc` module was loaded in
78− `init.lua`, and the structure for marshaling was set-up after. This
79− allowed simple patching of element marshaling, but made using `init.lua`
80− more difficult. Now, all required modules are now loaded before calling
81− `init.lua`. The file can be used entirely for user customization.
82− Patching marshaling functions, while discouraged, is still possible via
142+ + Load module `pandoc` before calling `init.lua` (#5287). The file
143+ `init.lua` in pandoc's data directory is run as part of pandoc's
144+ Lua initialization process. Previously, the `pandoc` module was
145+ loaded in `init.lua`, and the structure for marshaling was
146+ set-up after. This allowed simple patching of element
147+ marshaling, but made using `init.lua` more difficult. Now, all
148+ required modules are now loaded before calling `init.lua`. The
149+ file can be used entirely for user customization. Patching
150+ marshaling functions, while discouraged, is still possible via
83151 the `debug` module.
84−
85152 + Re-export all bundled modules (Albert Krewinkel).
86153 All Lua modules bundled with pandoc, i.e., `pandoc.List`,
87154 `pandoc.mediabag`, `pandoc.utils`, and `text` are re-exported from the
88155 `pandoc` module. They are assigned to the fields `List`, `mediabag`,
89156 `utils`, and `text`, respectively.
90157
91− * latex template: support the `subject` metadata variable (#5289,
92− Pascal Wagler).
158+ * Text.Pandoc.Lua (Albert Krewinkel):
159+
160+ + Split `StackInstances` into smaller Marshaling modules.
161+ + Get `CommonState` from Lua global. This allows more control over
162+ the common state from within Lua scripts.
163+
164+ * LaTeX template:
165+
166+ + Support the `subject` metadata variable (#5289, Pascal Wagler).
167+ + Add \frontmatter, \mainmatter, \backmatter for book classes (#5306).
93168
94169 * epub3 template: Add titlepage class to section (#5269).
95170
@@ -97,23 +172,37 @@ pandoc (2.6.1) PROVISIONAL
97172
98173 * Make --metadata-file use pandoc-markdown (#5279, #5272, Mauro Bieg).
99174
175+ * Text.Pandoc.Shared:
176+
177+ + Remove `withTempDir` [API change].
178+ + Add new exported function `defaultUserDataDirs` [API change].
179+ + Add `filterIpynbOutput` [API change].
180+ + `compactify`: Avoid lists with a mix of Plain and Para elements
181+ (#5285).
182+
183+ * Text.Pandoc.Translations: reorder alphabetically and remove `Author`
184+ (#5334, Mauro Bieg).
185+
100186 * Text.Pandoc.Extensions:
101187
102188 + More carefully groom ipynb default extensions.
103189 + Add `all_symbols_escapable` to `githubMarkdownExtensions`.
104190
105− * Text.Pandoc.PDF: Use system temp directory when possible (#1192).
106− Previously we created temp dirs in the working directory,
107− partly (a) because there were problems using the system temp
108− directory on Windows, when their pathnames included tildes,
109− and partly (b) because programs like `epstopdf.pl` would not
110− be allowed to write to directories outside the working
111− directory in restricted mode. We now (a) use the system
112− temp dir except when the path includes tildes, and
113− (b) set TEXMFOUTPUT when creating the PDF, so that
114− subsidiary programs can use the system temp directory.
115− This addresses problems that occurred when pandoc
116− was used in a synced directory.
191+ * Text.Pandoc.PDF:
192+
193+ + Use system temp directory when possible (#1192). Previously we
194+ created temp dirs in the working directory, partly (a) because
195+ there were problems using the system temp directory on Windows,
196+ when their pathnames included tildes, and partly (b) because
197+ programs like `epstopdf.pl` would not be allowed to write to
198+ directories outside the working directory in restricted mode. We
199+ now (a) use the system temp dir except when the path includes
200+ tildes, and (b) set TEXMFOUTPUT when creating the PDF, so that
201+ subsidiary programs can use the system temp directory. This
202+ addresses problems that occurred when pandoc was used in a
203+ synced directory.
204+ + Change types of subsidiary functions to PandocIO, to allow
205+ warnings to be threaded through (#5343).
117206
118207 * Text.Pandoc.MIME: add WebP (#5267, Mauro Bieg).
119208
@@ -123,18 +212,26 @@ pandoc (2.6.1) PROVISIONAL
123212
124213 * Added simple ipynb reader/writer tests (#5274).
125214
126− * Use latest skylighting (adds support for `protobuf`,
127− updates definitions for other languages).
215+ * Rearrange `--help` output in a more rational way (#5336).
216+
217+ * trypandoc: Add JATS and other missing formats (Arfon Smith, #5291).
128218
129− * trypandoc: Add JATS to output option (Arfon Smith, #5291).
219+ * Add missing copyright notices and remove license boilerplate (#4592,
220+ Albert Krewinkel).
130221
131222 * Use latest basement/foundation on 32bit windows.
132223
133− * Add missing copyright notices and remove license boilerplate (#5112,
134− Albert Krewinkel). Quite a few modules were missing copyright notices.
135− This commit adds copyright notices everywhere via haddock module
136− headers. The old license boilerplate comment is redundant with this and has
137− been removed. Update copyright years to 2019. Closes #4592.
224+ * Use latest skylighting (#5328).
225+
226+ * Require texmath 0.11.2.1
227+
228+ * Use latest pandoc-citeproc (0.16.1).
229+
230+ * MANUAL.txt:
231+
232+ + Clarify variable substitution indentation in templates (#5338,
233+ Agustín Martín Barbero).
234+ + Reorder custom-styles section (#5324, Mauro Bieg).
138235
139236pandoc (2.6)
140237