Commit graph

14298 commits

Author SHA1 Message Date
John MacFarlane
13021313e8 Update changelog, AUTHORS. 2021-03-20 18:40:18 -07:00
John MacFarlane
c389211e2f Support yaml_metadata_block extension form commonmark, gfm.
This is a bit more limited than with markdown, as documented
in the manual:

- The YAML block must be the first thing in the input.
- The leaf notes are parsed in isolation from the rest of
  the document.  So, for example, you can't use reference
  links if the references are defined later in the document.

Closes #6537.
2021-03-20 15:58:33 -07:00
John MacFarlane
2274eb88a4 Move yamlMetaBlock from Markdown reader to T.P.Readers.Metadata. 2021-03-20 15:58:33 -07:00
John MacFarlane
bea86f394e Markdown reader: export yamlMetaBlock.
[API change]

This will allow us to parse YAML metadata blocks in other
readers, potentially.
2021-03-20 15:58:33 -07:00
John MacFarlane
ce418667ae Text.Pandoc.Parsing: remove F type synonym.
Muse and Org were defining their own F anyway, with their
own state.  We therefore move this definition to the Markdown
reader.
2021-03-20 15:58:32 -07:00
John MacFarlane
4d041953f5 T.P.Readers.Metadata: made yamlBsToMeta, yamlBsToRefs polymorphic...
on the parser state, instead of requiring ParserState.
[API change]
2021-03-20 15:58:32 -07:00
John MacFarlane
84d8f3efd8 RST writer: use NonEmpty for init, last. 2021-03-20 15:58:32 -07:00
Erik Rask
82e8c29cb0 Include Header.Attr.attributes as XML attributes on section
Add key-value pairs found in the attributes list of Header.Attr as
XML attributes on the corresponding section element.

Any key name not allowed as an XML attribute name is dropped, as
are keys with invalid values where they are defined as enums in
DocBook, and xml:id (for DocBook 5)/id (for DocBook 4) to not
intervene with computed identifiers.
2021-03-20 21:29:17 +01:00
John MacFarlane
3861809815 Add date on changelog 2021-03-20 00:40:40 -07:00
John MacFarlane
80ae929922 Update man page and manual date. 2021-03-20 00:40:04 -07:00
John MacFarlane
99c15f8e85 Bump to 2.13, update changelog 2021-03-20 00:39:38 -07:00
John MacFarlane
a1a57bce4e T.P.Shared: remove backslashEscapes, escapeStringUsing.
[API change]

These are inefficient association list lookups.
Replace with more efficient functions in the writers that
used them (with 10-25% performance improvements in
haddock, org, rtf, texinfo writers).
2021-03-20 00:24:49 -07:00
John MacFarlane
ceadf33246 Tests: Use getExecutablePath from base...
avoiding the need to depend on the executable-path package.
2021-03-19 23:35:47 -07:00
John MacFarlane
eacead3eb3 Fix fallback to default partials on templates.
If the directory containing a template does not contain
the partial, it should be sought in the default data files.
Closes #7164.
2021-03-19 22:57:48 -07:00
John MacFarlane
dc94601eb5 Tests: factor out setupEnvironment in Test.Helpers.
This avoids code duplication between Command and Old.
2021-03-19 21:17:13 -07:00
John MacFarlane
2ca1b20a85 Fix finding of data files from test programs.
Apparently Cabal sets a `pandoc_datadir` environment variable
so that the data files will be sought in the source directory
rather than in the final destination (where they aren't yet
installed).

So we no longer need to set `--data-dir` in the tests. We just
need to make sure `pandoc_datadir` is set in the environment
when we call the program in the test suite.

This will fix the issue with loading of pandoc.lua when
pandoc is built with `-embed_data_files`, reported in #7163.

Closes #7163.
2021-03-19 18:57:13 -07:00
John MacFarlane
c3a9322b93 cabal.project: move flags: to top level (not under pandoc:).
If it's under the pandoc stanza, it can't be overriden on the
command line, it seems.

Also we remove ghc-options.
2021-03-19 14:51:21 -07:00
John MacFarlane
7678c48122 Hlint suggestion. 2021-03-19 14:43:42 -07:00
John MacFarlane
b0c8ba88a7 CI: test with different flags. 2021-03-19 14:34:13 -07:00
John MacFarlane
029de661f4 Narrow version bounds for skylighting, citeproc, and texmath.
This reduces the chance that tests will fail due to behavior
changes in one of these dependencies. (See e.g. #7163)
2021-03-19 14:13:53 -07:00
John MacFarlane
005f0fbcd5 T.P.Shared: Remove ToString, ToText typeclasses [API change].
T.P.Parsing: revise type of readWithM so that it takes a Text
rather than a polymorphic ToText value.

These typeclasses were there to ease the transition from String
to Text. They are no longer needed, and they may clash with
more useful versions under the same name.

This will require a bump to 2.13.
2021-03-19 12:36:04 -07:00
John MacFarlane
425c2e47b5 Use skylighting 0.10.5.
This fixes a bad regression in Haskell syntax highlighting.
2021-03-19 11:58:56 -07:00
John MacFarlane
4002c35a91 Protect partial uses of maximum with NonEmpty. 2021-03-19 11:55:59 -07:00
John MacFarlane
8d5116381b Use NonEmpty instead of minimumDef. 2021-03-19 10:30:32 -07:00
John MacFarlane
a31731b8e2 Docx reader: Don't reimplement NonEmpty. 2021-03-19 10:11:08 -07:00
John MacFarlane
3428248deb Use minimumDef instead of minimum (partial function). 2021-03-18 23:01:12 -07:00
John MacFarlane
f0e4b9cc3c Require safe >= 0.3.18 and remove cpp. 2021-03-18 21:37:56 -07:00
John MacFarlane
1da6208315 Rewrite a foldl1 as a foldl'. 2021-03-18 21:30:59 -07:00
John MacFarlane
67e173bda1 Remove another foldr1 partial function use. 2021-03-18 21:10:22 -07:00
John MacFarlane
fd76e605cd T.P.Readers.Odt.StyleReader: rewrite foldr1 use as foldr.
This avoids a partial function.
2021-03-18 21:02:05 -07:00
John MacFarlane
2d10f46de5 Don't bake in extra stack size to the executables.
I don't think this is necessary; stack overflows generally
indicate a code problem and should be fixed (and have been when
reported).
2021-03-18 17:18:31 -07:00
John MacFarlane
a71732fd01 Minor revisions to provisional changelog. 2021-03-18 17:00:44 -07:00
John MacFarlane
2e00ed3fde Bump to 2.12.1 and update changelog. 2021-03-18 15:50:13 -07:00
John MacFarlane
8235daf780 Use -A8m for default rtsopts for benchmark 2021-03-18 15:46:20 -07:00
John MacFarlane
87eb8dfda4 Revert the -j related changes in make_artifacts.sh.
This led to very slow build times.
2021-03-18 14:59:50 -07:00
John MacFarlane
4c51fa1d55 Change -A256m to -A8m in GHCOPTS 2021-03-18 13:07:54 -07:00
John MacFarlane
c7230182a0 pandoc.cabal: bake in -A8m to rtsopts.
This reserves a larger allocation area and reduces GC,
speeding up execution.
2021-03-18 11:02:46 -07:00
John MacFarlane
0012750c42 build-arm.sh : remove strict checking on first ssh access 2021-03-18 10:22:49 -07:00
John MacFarlane
89a89a8cf3 make_artifacts.sh: try using -j for cabal rather than -j4 ghc-options. 2021-03-18 09:14:12 -07:00
John MacFarlane
27d7652329 Use random 1.2.0 in stack.yaml. 2021-03-17 22:49:50 -07:00
John MacFarlane
c3f9e8c122 Docx writer: make nsid in abstractNum deterministic.
Previously we assigned a random number (though in a deterministic
way).  But changes in the random package mean we get different
results now on different architectures, even with the same random
seed. We don't need random values; so now we just assign a value
based on the list number id, which is guaranteed to be unique
to the list marker.
2021-03-17 22:31:20 -07:00
Alexey Kuleshevich
613c070cbd
Update bounds for random (#7156) 2021-03-17 18:57:32 -07:00
John MacFarlane
0075a456cc Fix benchmark in ci. 2021-03-17 17:08:42 -07:00
John MacFarlane
c6e5cf2e74 Benchmark improvements.
* Build `+RTS -A256m -RTS` into default ghc-options for benchmark,
  so we don't have to specify this separately on the command line.
  This is necessary to get accurate benchmark results; otherwise
  we are largely measuring garbage collecting, some not related
  to the current benchmark.
* Switch back from gauge to tasty-bench.
* Allow specifying BASELINE file in 'make bench' for comparison
  (otherwise the latest is chosen by default).
* Remove obsolete reference to weigh-pandoc from CONTRIBUTING.md.
* Remove `-Rghc-timing` from 'make bench'.
2021-03-17 13:34:17 -07:00
John MacFarlane
84836719aa Makefile: Add comment documenting benchmark settings. 2021-03-17 09:25:39 -07:00
John MacFarlane
7bf4be04b0 Fix regression with tex_math_backslash in Markdown reader.
Added regression test.  Closes #7155.
2021-03-17 09:10:44 -07:00
John MacFarlane
e66bf891ec Add test for #7155. 2021-03-17 09:10:37 -07:00
John MacFarlane
0b1869fd42 Remove unnecessary tasty-bench from extra-deps 2021-03-17 09:01:43 -07:00
John MacFarlane
f54e218bf8 Revert "Makefile: add --static to quick target"
This reverts commit 6075b17ae1.
2021-03-17 08:57:25 -07:00
John MacFarlane
6075b17ae1 Makefile: add --static to quick target 2021-03-16 18:04:39 -07:00