Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update: add pandoc version v3.5 #2239

Merged
merged 1 commit into from
Nov 15, 2024
Merged

update: add pandoc version v3.5 #2239

merged 1 commit into from
Nov 15, 2024

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 15, 2024

This PR contains the following updates:

Package Update Change
pandoc major 1.19.2.1 -> 3.5

Release Notes

jgm/pandoc (pandoc)

v3.5

Compare Source

  • Add command-line options --list-of-figures/--lof and
    --list-of-tables/--lot (#​10029, Akash Patel).
    Only docx, latex, and context are affected by these options currently.
    Setting the lof and lot variables will also work for the formats
    that are currently supported.

    • Defaults files: interpolation of environment variables now
      works for to and from fields (#​8024). This is needed because
      these files can contain paths of custom readers/writers.

    • Docx reader:

      • Reset lists after headers in same list numId (#​10258).
        To accomplish this, we add a Heading constructor to BodyPart and
        include on it all the information list items have.
    • DocBook reader:

      • Parse id, class, and tabstyle on tables (#​10181, Erik Rask).
        Add parsing of id (xml:id), class, and tabstyle XML attributes
        for table and informaltable in the DocBook reader.
        The tabstyle value is put in the 'custom-style' attribute.
    • Dokuwiki reader:

      • Be more forgiving about misaligned lists, like dokuwiki itself (#​8863).
      • Improve blockquote parsing in dokuwiki. Allow for quoted code blocks.
      • Enable smart extension.
      • Properly parse -- and --- as dashes.
      • Fix block quote behavior (#​6461). Blockquotes are not really block
        containers in DokuWiki; the lines are interpreted literally (so,
        e.g., you can't start a list), and line breaks are added at the ends.
    • EPUB reader:

      • Fix links to other files in the EPUB, making them internal links
        to a fragment derived from the filename (#​10207). There was
        already code to handle links like #foo, but not to handle links
        like ch0001.html#foo.
    • LaTeX reader:

      • Add em, ex, px, mu to list of units for dimension args (#​10212).
    • ANSI writer:

      • Fix subscripts (Evan Silberman).
    • DokuWiki writer:

      • Don't emit <HTML> tags (#​7413). The use of these tags is now
        strongly discouraged for security reasons, and will be removed.
        We previously used them as a fallback for lists that could not
        be represented using DokuWiki syntax, e.g. ordered lists with
        fancy numbers or lists with multiple blocks in their items.
        We also used them for block quotes with multiple blocks as
        their contents. We now use the <WRAP> syntax (from the optional
        WRAP plugin) to handle lists with multiple blocks as their contents.
        A new method of handling block quotes with complex contents
        has the side benefit of also handling nested block quotes,
        which weren't supported before.
        <HTML> and <html> tags are only for raw HTML blocks and
        inlines, and only if the raw_html extension is enabled. (It is
        now a valid extension for dokuwiki, though off by default.)
    • Docx writer:

      • Support --list-of-figures and --list-of-tables (or lof and
        lot variables) (Akash Patel).
    • HTML writer:

      • Don't emit missing title/lang warnings if templates does not
        contain the pagetitle or lang variables respectively (#​9370).
    • LaTeX writer:

      • Better fix for lists in definition lists (#​10241).
        In commit a26ec96 we added an
        empty \item[] to the beginning of a list that occurs first
        in a definition list, to avoid having one item on the line with
        the label. This gave bad results in some cases (#​10241) and there
        is a more idiomatic solution anyway: using \hfill.
      • Avoid error on refs div with empty citations (#​10185).
        If there are no citations, don't emit an empty CSLReferences environment.
    • RST writer:

      • Change bullet list hang from 3 to 2. This accords with the style in
        the RST reference docs.
      • Handle cases where indented context starts with block quote (#​10236).
        In these cases we emit an empty comment to fix the point from
        which indentation is measured; otherwise the block quote is not
        parsed as a block quote. This affects list items and admonitions.
      • Don't enclose the list table in a .. table::; this leads to
        doubled captions (#​10226).
      • Fix alignment of list table items corresponding to cells (#​10227).
    • JATS template:

      • Support floats-group (Albert Krewinkel, see #​10196).
        The content of the floats-group variable is now rendered in a
        <floats-group> element when using the publishing or archiving tag
        sets.
    • LaTeX and Beamer templates:

      • Split old default.latex into two templates, default.latex and
        default.beamer, factoring common parts into partials:
        fonts.latex, common.latex, passoptions.latex,
        hypersetup.latex, after-header-includes.latex.
      • Make default.beamer the default template for beamer.
      • Add shorttitle, shortsubtitle, shortauthor, shortinstitute,
        shortdate variables to beamer template (#​10248, Thomas Hodgson).
      • Make --number-sections work with beamer (#​12045, Thomas Hodgson).
      • Support a list of images for titlegraphic in beamer template
        (#​10246, Thomas Hodgson). Title graphic options will be
        applied to each title graphic. Images will be separated by \enspace.
      • Beamer theme options (#​10243)
      • Add theme options to beamer template: colorthemeoptions,
        fontthemeoptions, innerthemeoptions, outerthemeoptions (#​10243,
        Thomas Hodgson).
      • Don't load amsmath, amssym in beamer template. These are loaded by
        beamer automatically.
    • Text.Pandoc.SelfContained:

      • Improve handling of links to remote CSS (#​10261).
    • Text.Pandoc.Class:

      • Allow extracting data: URIs even in PandocPure (--sandbox)
        (#​10249).
      • Export extractURIData [API change].
    • Text.Pandoc.PDF:

      • Read .toc and .log files from output directory (#​10186).
        When this is different from the input directory, this is
        where .toc and .log files are written.
    • Text.Pandoc.Shared:

      • Modify addPandocAttributes for changes in commonmark-pandoc.
        The new commonmark-pandoc version automatically adds the
        attribute wrapper="1" on all Divs and Spans that
        are introduced just as containers for attributes that belong
        properly to their contents. So we don't need to add the
        attribute here. This gives much better results in some cases.
        Previously the wrapper attribute was being added even for
        explicit Divs and Spans in djot, but it is not needed in these cases.
    • Text.Pandoc.Options:

      • Add writerListOfFigures and writerListOfTables fields
        to WriterOptions (#​8245, Akash Patel). [API change]
    • Text.Pandoc.App:

      • Add optListOfFigures and optListOfTables to Opt (#​8245)
        [API change].
    • Lua subsystem (Albert Krewinkel):

      • Update List module (#​9835). The module now comes with a method
        :at(index[, def]) that allows to access indices, accepts
        negative indices to count from the end, and will return the
        def value as a default if the list has no item at the given position.
        Furthermore, the list constructor pandoc.List now accepts iterators.
        E.g., pandoc.List(text:gmatch '%S+') returns the list of words
        in text.
      • Support character styling via pandoc.layout. The Doc values
        produced and handled by the pandoc.layout module can now
        be styled using bold, italic, underlined, or strikeout. The
        style is ignored in normal rendering, but becomes visible when
        rendering to ANSI output. The pandoc.layout.render function
        now takes a third parameter that defines the output style,
        either plain or ansi.
      • It is now possible to return a single filter from a filter file, e.g.
        -- Switch single- and double quotes
        return {
          Quoted = function (q)
            elem.quotetype = elem.quotetype == 'SingleQuote'
              and 'DoubleQuote' or 'SingleQuote'
            return elem
          end
        }
        The filter must not contain numerical indexes, or it might be treated
        as a list of filters.
      • Add list_of_figures and list_of_tables to writer options
        (Akash Patel).
    • Use latest releases of commonmark, commonmark-pandoc, texmath, djot.

    • Stop depending on package SHA (Albert Krewinkel). Use crypton instead.

    • linux/make_artifacts.sh: add riscv64 support (Olivier Benz).

    • Fix invalid XML in test/docx/normalize.docx (#​10242).

    • doc/lua-filters.md: list functions in pandoc.utils alphabetically
      (Albert Krewinkel).

    • MANUAL.txt:

      • Clarify use of beamerarticle variable (#​10250).
      • Add clarification to address user issues like #​6704 (Yehuda Katz).

v3.4

Compare Source

  • New output format: ansi (for formatted console output) (Evan Silberman).
    Most Pandoc elements are supported and printed in a reasonable way, if
    not always ideally. This version does no detection of terminal
    capabilities, nor does it fall back to different output styles for
    less-capable terminals.

    • Add command line options --table-caption-position and
      --figure-caption-position. These allow the user to specify whether
      to put captions above or below tables and figures, respectively.
      The following output formats are supported: HTML (and related such
      as EPUB), LaTeX (and Beamer), Docx, ODT/OpenDocument, Typst.

    • Change default --pdf-engine via HTML to WeasyPrint (#​10142).
      wkhtmltopdf is deprecated. weasyprint is the easiest-to-install,
      maintained alternative. For better results, one might prefer
      pagedjs-cli.

    • Org reader:

      • Fix parsing of src blocks with an -i flag (#​10071, Albert Krewinkel).
        Tabs are now preserved in the contents of src blocks if the the block
        has the -i flag.
    • RTF reader:

      • Handle images inside shp contexts (#​10145).
    • RST reader:

      • Improve simple table support (#​10093). Multiline rows occur
        only when the first cell is empty; we were previously treating
        lines with any empty cell as row continuations. In addition, we
        no longer wrap multiline cells in Para if they can be represented
        as Plain. This is consistent with docutils behavior.
    • LaTeX reader:

      • Math environments don't have bracketed options (#​10160).
      • Parse nested tabular environments (#​4746).
    • Typst reader:

      • Change how "block" elements are handled. Previously they were
        always parsed as divs. But actually they can occur in some "inline"
        contexts. Now we first try to parse them as inlines, and only as
        blocks if that fails. A surrounding Div or Span element is added
        only if there is an identifier.
    • HTML reader:

      • Only parse main element's contents (if present) (#​10140).
        If main has an id or class, we include a div with that id or class;
        otherwise just the contents.
      • Read TeX annotation in MathML content if present (#​9971).
      • Better handle KaTeX-generated math (#​9971). KaTeX emits the mathml
        followed by a span with an HTML fallback. Previously pandoc was
        converting both. We now ignore the HTML fallback span, marked
        with class katex-html.
    • Docx reader:

      • Add "SuppressAuthor" and "AuthorOnly" to citationMode
        when +citations is used (thomjur).
    • New module: Text.Pandoc.Writers.ANSI [API change] (Evan Silberman).

    • Docx writer:

      • Support custom-style attribute for docx table (Sebbones).
      • Support --number-offsets.
      • Make table/figure rendering sensitive to caption position settings.
    • OpenDocument writer:

      • Make table/figure rendering sensitive to caption position settings.
    • Typst writer/template:

      • Implement figure caption positions by triggering a show rule in
        the default template, which determines caption positions for
        figures and tables globally.
      • Don't include trailing semicolon after @ style citations with suffixes
        (#​10148).
      • Template: move header-includes before show doc (#​9996, Gordon Woodhull).
    • LaTeX writer:

      • Make table/figure rendering sensitive to caption position settings (#​5116).
      • Preserve locator labels with --natbib (#​10057).
    • HTML writer/template:

      • Make <figcaption> placement sensitive to caption position
        settings. For tables, <caption> must be the first element, and
        positioning is determined by CSS, for here we set a variable
        which the default template is sensitive to.
      • Use makeSectionsWithOffsets for writerNumberOffsets,
        instead of the old, inefficient code.
      • Don't add doc-biblioref role to every link in a citation;
        only to links to the bibliography (#​10156).
      • Add data- when rendering label attribute (#​10048).
    • Markdown writer:

      • Avoid emitting markdown caption if table has fallen back to raw HTML,
        which will then contain a <caption> tag (#​10094).

      • Make math sensitive to tex_math_gfm extension (#​9121).
        This means that in GFM output, the "new style" math will be used
        by default, e.g.

        $`x=y`$
        
        ```math
        x = y
        ```
        

        To defeat this and get the older behavior, namely

        $x=y$
        
        $$x=y$$
        

        one could use -t gfm-tex_math_gfm.

    • AsciiDoc writer:

      • Add link: prefix when needed (#​10105). AsciiDoc requires it
        except for http, https, irc, mailto, ftp schemes (#​10105).
      • Preserve original base level (#​10062). We used to normalize so
        that the base level is always 1, but asciidoc no longer seems
        to care about that, and the behavior creates difficulties when
        we are converting fragments.
      • Don't emit empty figure caption (#​10047).
    • ODT writer:

      • Add TableCaption to styles.xml (#​10058, Ian Max Andolina).
    • LaTeX template:

      • Fix wrong beamer color in (sub)section page (Jonathan).
    • Text.Pandoc.Options:

      • Add CaptionPosition and new WriterOptions fields
        writerFigureCaptionPosition and writerTableCaptionPosition
        [API change].
    • Text.Pandoc.Opt:

      • Change default for optNumberOffset to []. This behaves the same as
        [0,0,0,0,0].
      • Add Opt fields optFigureCaptionPosition and
        optTableCaptionPosition [API change].
    • Text.Pandoc.Format: change formatFromFilePaths so that it is
      smarter about URLs. URLs are parsed, and we take the format from
      the path component, if present (#​10141). This means that
      https://emacs.org/ will be treated as HTML, while
      https://emacs.org/sample.org will be treated as Org.

    • Text.Pandoc.URI:

      • Add unofficial gemini: to list of URI schemes (Pau RE).
    • Text.Pandoc.Shared:

      • Add makeSectionsWithOffsets [API change].
      • Remove `stripEmptyParagraphs [API change] (Albert Krewinkel).
        This function is no longer used.
    • Text.Pandoc.Highlighting: Expose formatANSI [API change]
      (Evan Silberman).

    • Text.Pandoc.Writers.Shared: export to{Sub,Super}scriptInline
      [API change] (Evan Silberman).

    • Remove use of partial functions (e.g. head) in code.

    • Use latest skylighting-core, skylighting, doclayout, texmath, typst.

    • pandoc-lua-engine: Add accessors for several writer options, including
      some that were added in previous releases.

    • pandoc-server: Initialize some missing fields in WriterOptions:
      writerEpubTitlePage, writerChunkTemplate, writerListTables,
      writerFigureCaptionPosition, writerTableCaptionPosition.

    • CONTRIBUTING.md: Summarize steps for adding a new cli option.

    • MANUAL.txt:

      • Clarify that the --number-offset option should only
        directly affect numbering of the first section heading in
        a document; subsequent headings will increment normally.
      • Fix asciidoc link (#​10039).
      • Fix CSL Docs broken link (#​10100, Tristano Ajmone).
      • Document the use of luatexja when CJKmainfont is used with lualatex
        (#​3873, Kolen Cheung).
      • Add a citations (typst) section to the manual (#​9127).
      • Clarify that citations affects both input and output for org.
      • Add note on --citeproc that you may need to disable citations
        extension on the output format (e.g., -t markdown-citations) to
        see the rendered citation (#​9127, #​10012).
    • INSTALL.md — reorganise info on static binaries and add conda-forge
      install options (#​10098, #​10069, Ian Max Andolina).

v3.3

Compare Source

  • New cli option: --link-images. This causes images to be linked
    rather than embedded in ODT.

    • Allow --number-sections to take an optional true|false argument.

    • RTF reader:

      • Handle \*\shppict without dropping image (#​10025).
    • TWiki Reader:

      • Recognize WikiWords as internal links (#​9941).
      • Avoid partial function.
    • Typst reader:

      • Ignore 'pad' and just parse its body (#​9958).
      • Use typst 0.5.0.5. Fixes parsing of equations like $1.$.
    • Docx writer:

      • Fix regression with nested lists (#​9994). The bug affects e.g.
        ordered lists with bullet sublists; after the sublist the top-level
        list reverts to bullets instead of being properly numbered.
        This is a regression introduced in version 3.2.1.
    • BibTeX writer:

      • Ensure that "literal" names are enclosed in braces (#​9987).
    • Man writer:

      • Use default middle header when metadata does not include header
        (#​9943). This change causes pandoc to omit the middle
        header parameter when header is not set, rather than
        emitting "". The parameter is optional and man will use
        a default based on the section if it is not specified.
    • HTML templates: don't load polyfill (#​9918).
      This was added in a period when MathJaX required polyfill.
      MathJaX no longer recommends this and polyfill should no
      longer be necessary on any reasonably modern browser.

    • Translations:

      • Add ua.yaml (Jens Oehlschlägel).
      • Add a script (tools/update-translations.py) and Makefile
        target (update-translations) to update translation data
        automatically from babel and polyglossia upstream
        (Stephen Huan).
      • Use this script to update language data, increasing the number
        of languages we cover (Stephen Huan). Fix a few small bugs in
        existing translations.
    • Fix some mistakes with Japanese language code (#​9938).
      In several places we were mistakenly assuming that the BCP 47 code for
      Japanese language was jp. It is ja.

    • Text.Pandoc.Options:

      • New field in WriterOptions: writerLinkImages [API change] (#​9815).
    • Text.Pandoc.App.Opt:

      • New field in Opt: optLinkImages [API change] (#​9815).
    • Lua subsystem:

      • Keep lpeg and re as "loaded" modules (Albert Krewinkel).
        The modules lpeg and re are now treated as if they had been
        loaded with require. Previously the modules were only assigned
        to global values, but could be loaded again via require,
        thereby allowing to use a system-wide installation. However, this
        proved to be confusing.

        The old behavior can be restored by adding the following lines to
        the top of Lua scripts, or to the init.lua in the data dir.

        debug.registry()['_LOADED'].lpeg = nil
        debug.registry()['_LOADED'].re = nil
        
    • pandoc-cli: Include pandoc copyright in Lua version info (Albert
      Krewinkel).

    • pandoc-cli: Refer printing of version info to the Lua interpreter
      (Albert Krewinkel). The Lua interpreter no longer terminates when
      called with -v or --version arguments, thus improving
      compatibility with the default lua interpreter program.

    • Avoid partial functions in JATS reader, DocBook writer, Haddock reader.

    • Allow tls 2.1.x.

    • MANUAL.txt:

      • Make documentation of extensions clearer (#​9060).
      • Fix section level for two Extensions entries.
    • lua-filters.md: Partially autogenerate docs for module pandoc
      (Albert Krewinkel). The documentation system isn't powerful enough to
      generate the full documentation automatically.

v3.2.1

Compare Source

  • Fix gfm_auto_identifiers to replace emojis with their aliases,
    as documented (#​9876).

    • CSV reader:

      • Turn line breaks into LineBreaks not SoftBreaks (#​9797).
    • Docx reader:

      • Support task lists (#​8211).
      • Fix a small bug in parsing delimiters in numbered lists,
        which led to the default delimiter being used wrongly in some cases.
      • Improve handling of captions.
        • Turn captioned images into Figure elements. Closes #​9391.
        • Improve the logic for associating elements with captions (#​9358).
        • Ensure that captions that can't be associated with an
          element aren't just silently dropped (#​9610).
      • Support HorizontalRule. We support both pandoc-style and the style
        described on a Microsoft support page, an empty paragraph with
        a bottom border (#​6285).
      • React to "left" value on jc attribute.
      • Handle column and cell alignments (#​8551). We take the column alignments
        from the first body row.
      • Fix a bug that caused comments inside insertions or deletions
        to be ignored (#​9833).
    • HTML reader:

      • Better handle non-li elements in ul and ol (#​9809).
        For example, a p after a closed li will be incorporated into
        the previous li. This mirrors what browsers do with this
        invalid HTML.
    • LaTeX reader:

      • Fix parsing of dimensions beginning with ., e.g. \kern.1pt (#​9902).
    • Markdown reader:

      • Allow author-only textual citations (#​7219). E.g. -@&#8203;reese2002
        outside of brackets.
    • RST reader:

      • Tighten up rules for when emphasis can start (#​9805).
      • Support :cite: role with citeproc (#​9904). A subset of the
        functionality of the sphinxcontrib-bibtex extension to Sphinx
        is supported.
    • Textile reader:

      • Don't let spans begin right after a symbol (#​9878).
    • Typst reader:

      • Fix an incomplete pattern match (#​9807).
      • Handle inline bodies ending in a parbreak. E.g.
        `#strong[
        test
        ]
    • ConTeXt template: remove \setupbackend[export=yes] (#​9820).

    • Docx writer:

      • Allow OpenXML templates to be used with docx (#​8338, #​9069, #​7256,
        #​2928). The --reference-doc option allows customization of styles in
        docx output, but it does not allow one to adjust the content of the output
        (e.g., changing the order in which metadata, the table of contents,
        and the body of the document are displayed), or adding boilerplate
        text before or after the document body. For these changes, one can
        now use --template with an OpenXML template. (See the default
        openxml template for a sample.) --include-before-body and
        --include-after-body can also now be used with docx output.
        The included files must be OpenXML fragments suitable for
        inclusion in the document body.
      • New unexported module Text.Pandoc.Writers.Docx.OpenXML.
      • Omit jc attribute on table cells with AlignDefault (#​5662).
      • Better formatting for task lists. Task lists are now properly
        formatted, with no bullet (#​5198).
      • Replace an expensive generic traverse to remove Space elements,
        for better performance.
      • Wrap figures with id in a bookmark (#​8662).
      • Add eastAsia font hints to w:r (#​9817). We do this when the text
        in the run contains any CJK characters. This ensures that ambiguous
        code points (e.g. quotation marks) will be represented as "wide"
        characters when together with CJK characters.
      • Clean up Abstract Title and Subtitle in default reference docx.
        Center Subtitle, remove color.
    • HTML writer:

      • Ensure URI escaping needed for html4 (#​9905).
        Unicode characters need not be escaped for html5, and still won't be.
      • Don't emit unnecessary classes in HTML tables (#​9325, Thomas Soeiro).
        Pandoc used to emit a header class on the tr element that forms
        the table header. This is no longer needed, because head > tr will
        do the same thing. Similarly, pandoc used to emit even and odd
        classes on trs, allowing striped styling. This is no longer needed,
        because one can use e.g. tbody tr:nth-child(2n).
        Compatibility warning: users who relied on these classes to style
        tables may need to adjust their CSS.
    • JATS writer:

      • Support supplementary-material in metadata for jats_articlepublishing
        (#​9818).
    • LaTeX writer:

      • New method for ensuring images don't overflow (#​9660).
        Previously we relied on graphicx internals and made global
        changes to Gin to force images to be resized if they exceed
        textwidth. This approach is brittle and caused problems
        with \includesvg (see #​9660). The new approach uses a new macro
        \pandocbounded that is now defined in the LaTeX template.
        (Thanks here to Falkhttps://github.com/mrpiggi/svg/issues/60vg/issues/60.)
        The LaTeX writer has been changed to enclose \includegraphics
        and \includesvg commands in this macro when they don't explicitly
        specify a width or height. In addition, the writer now adds
        keepaspectratio to the \includegraphics or \includesvg
        options if height is specified without width, or vice versa.
        Previously, this was set in the preamble as a global option.
        Users should attend to the following compatibility issues:
        • If custom templates are used with the new LaTeX writer, they will have
          to be updated to include the new \pandocbounded macro, or an error
          will be raised because of the undefined macro.
        • Documents that specify explicit dimensions for an image may render
          differently, if the dimensions are greater than the line width or
          page height. Previously pandoc would shrink these images to fit,
          but the new behavior takes the specified dimensions literally.
          In addition, pandoc previously always enforced keepaspectratio,
          even when width and height were both specified, so images with
          width and height specified that do not conform to their intrinsic
          aspect ratio will appear differently.
      • Task lists must be unordered (#​9185).
      • Specify language option for selnolig and only include it if
        english or german is used (#​9863). (This includes changes to the
        LaTeX template.) This should restore proper ligature suppression when
        lualatex is used.
      • Fix --toc-depth with beamer output (#​9861). Previously only top-level
        sections were ever included in the TOC, regardless of the setting of
        --toc-depth.
      • Use \linewidth instead of \columnwidth or \textwidth
        for resizing figures, table cells, etc. in LaTeX (#​9775).
        \linewidth, unlike the others, is sensitive to indented environments
        like lists.
    • LaTeX template: put babel-lang in options to beamer (#​9868).
      This is required to make beamer use proper localized terms for
      things like "Section."

    • Markdown writer:

      • Don't print extra caption when using implicit_figures.
      • Ensure blank line after HTML blocks in commonmark-based formats (#​9792).
      • Fix bug rendering block quotes in lists (#​9908).
    • Texinfo writer:

      • Ensure proper escaping in all node/link contexts.
      • Target node rather than anchor when possible in internal links.
      • Remove illegal characters from internal link anchors (#​6177).
      • Use two commas not one in @ref.
      • Don't add anchors to headings. We don't need them, now that we
        make internal links use the node.
      • Avoid duplicate node names.
      • Improve menus. Properly handle the case where the node name is
        different from the descriptive title.
    • Texinfo template: add variables for filename and version.

    • Typst writer:

      • Support '.typst:no-figure' and 'typst:figure:kind=kind' attributes
        (#​9778, Carlos Scheidegger). This extends support for fine-grained
        properties in Typst. If the typst:no-figure class is present on a
        Table, the table will not be placed in a figure. If the
        typst:figure:kind attribute is present, its value will be used
        for the figure's kind (#​9777). These features are documented in
        doc/typst-property-output.md.
    • Typst template:

      • Add subtitle (#​9747, Mickaël Canouil).
      • Use content rather than string for title, author, date, email (#​9823).
        This allows formatting in title, author, date, and email fields.
        Since the PDF metadata requires a string, and typst only
        converts the title to a string (not the authors), we use
    • Textile writer:

      • Get rid of header, odd, even classes on tr (#​9376).
    • Text.Pandoc.Class:

      • fillMediaBag: Convert IOErrors to warnings when fetching absolute
        paths (#​9859, Albert Krewinkel). This will allow many conversions that
        would have failed with an error to succeed (albeit without images or
        other needed resources).
    • Text.Pandoc.ImageSize:

      • Don't prefer exif width/height when they conflict with image
        width/height (#​9871). That was a mistaken call in #​6936.
        Usually when these values disagree, it is because the image
        has been resized by a tool that leaves the original exif values
        the same, so the width/height metadata are more likely to be
        correct that exif width/height.
    • Text.Pandoc.SelfContained:

      • Strip CRs from XML before base64 encoding for data URI
        (so tests can work on Windows).
      • Only create <svg> elements for SVG images when the image has
        the class inline-svg. Otherwise just use a data URI as we do
        with other images (#​9787).
    • Lua subsystem (Albert Krewinkel):

      • Split Init module into more modules. The module has grown unwieldy and
        is therefore split into three internal Haskell modules, Init,
        Module, and Run.
      • Add function pandoc.utils.run_lua_filter (#​9803).
      • Add function pandoc.template.get (#​9854, co-authored by Carsten Gips).
        The function allows to specify a template with the same argument value
        that would be used with the --template command line parameter.
      • Keep CommonState object in the registry. The state is an internal
        value and should be treated as such. The PANDOC_STATE global is
        merely a copy; unsetting the global no longer breaks the Lua engine.
      • Allow passing an environment to run_lua_filter.
        The default is now to use a copy of the global environment when running
        a filter; this ensures better separation when run_lua_filter is used
        multiple times. A custom environment can be specified via the
        optional third parameter.
      • Set pandoc.List as default metatable for JSON lists (#​9834).
        Lists created by pandoc.json.decode now behave like lists generated
        via pandoc.List. This also ensures that pandoc.List tables are
        encoded as JSON arrays when passed to pandoc.json.encode.
    • Text.Pandoc.Writers.Shared: export toTaskListItem [API change].

    • Add unexported module Text.Pandoc.Char. This exports isCJK.
      Use this instead of locally defined isCJK in T.P.Readers.MediaWiki.

    • MANUAL.txt:

      • Remove false claim that Lua mode does not support -i (#​9757,
        Ian Max Andolina).
      • Use level-3 headings for extensions (to avoid gaps).
      • Add anchor for tagging extension.
      • Remove explicit referencess to generate anchors.
        These will be linkified automatically.
      • Fixed links to option--reference-doc.
      • Add a note that column widths aren't supported in pptx for Divs
        with class columns (#​9890).
      • Fix alerts example (#​9826, Ian Max Andolina).
      • Fix markup of babelfonts example code (Albert Krewinkel).
    • doc/custom-writers.md:

      • Fix usage of Template in example (Albert Krewinkel).
      • Document the separator arg of Writer.Blocks (Albert Krewinkel).
    • doc/lua-filters.md (Albert Krewinkel):

      • Fix outdated documentation for math and quoting functions and fields.
      • Autogenerate docs for module pandoc.template and pandoc.layout.
      • Document operators of the "Doc" type.
    • pandoc-lua-engine: depend on pandoc >= 3.2 (see #​9755).

    • Allow crypton-connection 0.4, time 1.14.

    • Allow tasty-quickcheck 0.11.

    • Use latest emojis, skylighting, skylighting-core, citeproc, djot,
      commonmark-extensions, typst-hs

v3.2

Compare Source

  • Fix gfm_auto_identifiers to replace emojis with their aliases,
    as documented (#​9876).

    • CSV reader:

      • Turn line breaks into LineBreaks not SoftBreaks (#​9797).
    • Docx reader:

      • Support task lists (#​8211).
      • Fix a small bug in parsing delimiters in numbered lists,
        which led to the default delimiter being used wrongly in some cases.
      • Improve handling of captions.
        • Turn captioned images into Figure elements. Closes #​9391.
        • Improve the logic for associating elements with captions (#​9358).
        • Ensure that captions that can't be associated with an
          element aren't just silently dropped (#​9610).
      • Support HorizontalRule. We support both pandoc-style and the style
        described on a Microsoft support page, an empty paragraph with
        a bottom border (#​6285).
      • React to "left" value on jc attribute.
      • Handle column and cell alignments (#​8551). We take the column alignments
        from the first body row.
      • Fix a bug that caused comments inside insertions or deletions
        to be ignored (#​9833).
    • HTML reader:

      • Better handle non-li elements in ul and ol (#​9809).
        For example, a p after a closed li will be incorporated into
        the previous li. This mirrors what browsers do with this
        invalid HTML.
    • LaTeX reader:

      • Fix parsing of dimensions beginning with ., e.g. \kern.1pt (#​9902).
    • Markdown reader:

      • Allow author-only textual citations (#​7219). E.g. -@&#8203;reese2002
        outside of brackets.
    • RST reader:

      • Tighten up rules for when emphasis can start (#​9805).
      • Support :cite: role with citeproc (#​9904). A subset of the
        functionality of the sphinxcontrib-bibtex extension to Sphinx
        is supported.
    • Textile reader:

      • Don't let spans begin right after a symbol (#​9878).
    • Typst reader:

      • Fix an incomplete pattern match (#​9807).
      • Handle inline bodies ending in a parbreak. E.g.
        `#strong[
        test
        ]
    • ConTeXt template: remove \setupbackend[export=yes] (#​9820).

    • Docx writer:

      • Allow OpenXML templates to be used with docx (#​8338, #​9069, #​7256,
        #​2928). The --reference-doc option allows customization of styles in
        docx output, but it does not allow one to adjust the content of the output
        (e.g., changing the order in which metadata, the table of contents,
        and the body of the document are displayed), or adding boilerplate
        text before or after the document body. For these changes, one can
        now use --template with an OpenXML template. (See the default
        openxml template for a sample.) --include-before-body and
        --include-after-body can also now be used with docx output.
        The included files must be OpenXML fragments suitable for
        inclusion in the document body.
      • New unexported module Text.Pandoc.Writers.Docx.OpenXML.
      • Omit jc attribute on table cells with AlignDefault (#​5662).
      • Better formatting for task lists. Task lists are now properly
        formatted, with no bullet (#​5198).
      • Replace an expensive generic traverse to remove Space elements,
        for better performance.
      • Wrap figures with id in a bookmark (#​8662).
      • Add eastAsia font hints to w:r (#​9817). We do this when the text
        in the run contains any CJK characters. This ensures that ambiguous
        code points (e.g. quotation marks) will be represented as "wide"
        characters when together with CJK characters.
      • Clean up Abstract Title and Subtitle in default reference docx.
        Center Subtitle, remove color.
    • HTML writer:

      • Ensure URI escaping needed for html4 (#​9905).
        Unicode characters need not be escaped for html5, and still won't be.
      • Don't emit unnecessary classes in HTML tables (#​9325, Thomas Soeiro).
        Pandoc used to emit a header class on the tr element that forms
        the table header. This is no longer needed, because head > tr will
        do the same thing. Similarly, pandoc used to emit even and odd
        classes on trs, allowing striped styling. This is no longer needed,
        because one can use e.g. tbody tr:nth-child(2n).
        Compatibility warning: users who relied on these classes to style
        tables may need to adjust their CSS.
    • JATS writer:

      • Support supplementary-material in metadata for jats_articlepublishing
        (#​9818).
    • LaTeX writer:

      • New method for ensuring images don't overflow (#​9660).
        Previously we relied on graphicx internals and made global
        changes to Gin to force images to be resized if they exceed
        textwidth. This approach is brittle and caused problems
        with \includesvg (see #​9660). The new approach uses a new macro
        \pandocbounded that is now defined in the LaTeX template.
        (Thanks here to Falkhttps://github.com/mrpiggi/svg/issues/60vg/issues/60.)
        The LaTeX writer has been changed to enclose \includegraphics
        and \includesvg commands in this macro when they don't explicitly
        specify a width or height. In addition, the writer now adds
        keepaspectratio to the \includegraphics or \includesvg
        options if height is specified without width, or vice versa.
        Previously, this was set in the preamble as a global option.
        Users should attend to the following compatibility issues:
        • If custom templates are used with the new LaTeX writer, they will have
          to be updated to include the new \pandocbounded macro, or an error
          will be raised because of the undefined macro.
        • Documents that specify explicit dimensions for an image may render
          differently, if the dimensions are greater than the line width or
          page height. Previously pandoc would shrink these images to fit,
          but the new behavior takes the specified dimensions literally.
          In addition, pandoc previously always enforced keepaspectratio,
          even when width and height were both specified, so images with
          width and height specified that do not conform to their intrinsic
          aspect ratio will appear differently.
      • Task lists must be unordered (#​9185).
      • Specify language option for selnolig and only include it if
        english or german is used (#​9863). (This includes changes to the
        LaTeX template.) This should restore proper ligature suppression when
        lualatex is used.
      • Fix --toc-depth with beamer output (#​9861). Previously only top-level
        sections were ever included in the TOC, regardless of the setting of
        --toc-depth.
      • Use \linewidth instead of \columnwidth or \textwidth
        for resizing figures, table cells, etc. in LaTeX (#​9775).
        \linewidth, unlike the others, is sensitive to indented environments
        like lists.
    • LaTeX template: put babel-lang in options to beamer (#​9868).
      This is required to make beamer use proper localized terms for
      things like "Section."

    • Markdown writer:

      • Don't print extra caption when using implicit_figures.
      • Ensure blank line after HTML blocks in commonmark-based formats (#​9792).
      • Fix bug rendering block quotes in lists (#​9908).
    • Texinfo writer:

      • Ensure proper escaping in all node/link contexts.
      • Target node rather than anchor when possible in internal links.
      • Remove illegal characters from internal link anchors (#​6177).
      • Use two commas not one in @ref.
      • Don't add anchors to headings. We don't need them, now that we
        make internal links use the node.
      • Avoid duplicate node names.
      • Improve menus. Properly handle the case where the node name is
        different from the descriptive title.
    • Texinfo template: add variables for filename and version.

    • Typst writer:

      • Support '.typst:no-figure' and 'typst:figure:kind=kind' attributes
        (#​9778, Carlos Scheidegger). This extends support for fine-grained
        properties in Typst. If the typst:no-figure class is present on a
        Table, the table will not be placed in a figure. If the
        typst:figure:kind attribute is present, its value will be used
        for the figure's kind (#​9777). These features are documented in
        doc/typst-property-output.md.
    • Typst template:

      • Add subtitle (#​9747, Mickaël Canouil).
      • Use content rather than string for title, author, date, email (#​9823).
        This allows formatting in title, author, date, and email fields.
        Since the PDF metadata requires a string, and typst only
        converts the title to a string (not the authors), we use
    • Textile writer:

      • Get rid of header, odd, even classes on tr (#​9376).
    • Text.Pandoc.Class:

      • fillMediaBag: Convert IOErrors to warnings when fetching absolute
        paths (#​9859, Albert Krewinkel). This will allow many conversions that
        would have failed with an error to succeed (albeit without images or
        other needed resources).
    • Text.Pandoc.ImageSize:

      • Don't prefer exif width/height when they conflict with image
        width/height (#​9871). That was a mistaken call in #​6936.
        Usually when these values disagree, it is because the image
        has been resized by a tool that leaves the original exif values
        the same, so the width/height metadata are more likely to be
        correct that exif width/height.
    • Text.Pandoc.SelfContained:

      • Strip CRs from XML before base64 encoding for data URI
        (so tests can work on Windows).
      • Only create <svg> elements for SVG images when the image has
        the class inline-svg. Otherwise just use a data URI as we do
        with other images (#​9787).
    • Lua subsystem (Albert Krewinkel):

      • Split Init module into more modules. The module has grown unwieldy and
        is therefore split into three internal Haskell modules, Init,
        Module, and Run.
      • Add function pandoc.utils.run_lua_filter (#​9803).
      • Add function pandoc.template.get (#​9854, co-authored by Carsten Gips).
        The function allows to specify a template with the same argument

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) November 15, 2024 22:09
@renovate renovate bot merged commit 3f420ca into master Nov 15, 2024
16 checks passed
@twangboy twangboy deleted the renovate/pandoc-3.x branch November 15, 2024 22:15
Copy link

🎉 This PR is included in version 1.0.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants