The NetBSD Project

CVS log for pkgsrc/print/R-knitr/distinfo

[BACK] Up to [] / pkgsrc / print / R-knitr

Request diff between arbitrary revisions

Default branch: MAIN

Revision 1.14 / (download) - annotate - [select for diffs], Sun Jun 4 02:54:56 2023 UTC (3 months, 3 weeks ago) by mef
Branch: MAIN
CVS Tags: pkgsrc-2023Q3-base, pkgsrc-2023Q3, pkgsrc-2023Q2-base, pkgsrc-2023Q2, HEAD
Changes since 1.13: +4 -4 lines
Diff to previous 1.13 (colored)

(print/R-knitr) Updated 1.42 to 1.43

 (w3m -insecure -dump -T text
knitr 1.43
25 May 13:30


  * Progress bar includes the chunk location (chunk-name @ file:line) when
    options(knitr.progress.linenums = TRUE) is set (thanks, @zeehio, #2232).

  * The global option knitr.progress.simple can be used to decide whether to
    output the bar in the progress. When set to FALSE, only the step numbers
    and chunk labels will be printed, and the progress bar is omitted. This can
    be more useful for logging purposes since the bar itself is not useful
    (thanks, @hadley, #2221). By default, the simple progress output is used
    when the progress is not written to a connection such as stdout or stderr
    (e.g., written to a file instead), or the output connection is not a

  * HTML Widgets can now support alt text by specifying an attribute
    aria-labelledby="<label>" in their first HTML tag. The text will be
    obtained from the fig.alt or fig.cap chunk option in the usual way (thanks,
    @dmurdoch, #2243).

  * Added a new argument newline to kable() to handle newlines in data when the
    table output format is Markdown-based (simple, pipe, rst, or jira). By
    default, newlines are not processed, which can result in broken tables. To
    substitute newlines with spaces, use kable(..., newline = ' '). To remove
    newlines, use kable(..., newline = '') (thanks, @aronatkins, #2255).


  * The chunk option collapse = TRUE works with HTML widgets now (thanks,
    @dmurdoch, #2212).

  * Option hooks should be run before child documents are processed (thanks,
    @richarddmorey, #2247).

  * For .Rnw documents, is_latex_output() returns TRUE for output formats
    sweave (render_sweave()) and listings (render_listings()) now (thanks,
    @DavisVaughan, #2231).

  * write_bib() does not fail anymore if an empty string is passed as package
    name (thanks, @phargarten2, #2240).

  * Fix an issue with using cache = TRUE on sql engine chunk not defining a
    output.var (thanks, @mfherman, @eitsupi, #1842).

  * plot_crop() correctly checks the required tools (pdfcrop and ghostscript)
    on Windows when the LaTeX is distribution is TeX Live or TinyTeX (thanks,
    @remlapmot, #2246). An external installation of ghostscript is no longer
    required on Windows, since TeX Live's built-in ghostscript will be used.

  * The chunk option dev.args was not recognized in certain cases (thanks,
    @petrbouchal, #2238).


  * The css and js engines work for the markdown output format now. Previous
    these engines will not output anything when the output format is markdown.
    If you still want to disable them for markdown output, you may use the
    chunk option eval = FALSE or eval = knitr::is_html_output(excludes =

  * is_html_output() recognizes R Markdown v1 documents now (.Rmd documents
    compiled via the markdown package).

  * For .Rnw documents, dots in figure file paths are no longer sanitized to
    underscores (thanks, @otoomet, #2213). Other special characters are still
    sanitized, but this feature can be turned off via options
    (knitr.sanitize.paths = FALSE).

  * imgur_upload() now recognizes a global option knitr.imgur.key or an
    environment variable R_KNITR_IMGUR_KEY for a custom client ID (thanks,
    @jonthegeek, #2233).

  * imgur_upload() requires fewer package dependencies now. It only requires
    the curl package; httr is no longer required, and xml2 has become optional.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Feb 12 04:59:48 2023 UTC (7 months, 2 weeks ago) by mef
Branch: MAIN
CVS Tags: pkgsrc-2023Q1-base, pkgsrc-2023Q1
Changes since 1.12: +4 -4 lines
Diff to previous 1.12 (colored)

(print/R-knitr) Updated 1.41 to 1.42  ChangeLog, known

Revision 1.12 / (download) - annotate - [select for diffs], Sat Dec 31 11:53:51 2022 UTC (8 months, 4 weeks ago) by mef
Branch: MAIN
Changes since 1.11: +4 -4 lines
Diff to previous 1.11 (colored)

(print/R-knitr) Updated 1.41, Newest info unknown
knitr 1.40

24 Aug 15:39


  * Added a function convert_chunk_header() to convert the old in-header chunk
    options to the new in-body chunk options (#2149 #2151).

  * Added a new "graphics device", dev = "gridSVG", which uses
    gridSVG::grid.export() to export grid graphics to SVG (thanks, @jooyoungseo
    , #2152).

  * Added a new engine eviews, which calls the EviewsR package to execute
    EViews code (thanks, @sagirumati, #2158).

  * Added support for a php engine like other engines for interpreted
    languages. It will call php -r <code>, with <code> being the chunk content
    (thanks, @ralmond, #2144).

  * Per suggestion of @jakubkaczor (#2116) and discussion with @pedropark99 (#
    2140), the chunk option fig.sep can also be used to add LaTeX code before
    the first sub-figure now. Previously this option can only be used for
    adding LaTeX code after each sub-figure.

  * knitr::kable() supports tabularx and xltabular environments now for LaTeX
    tables, e.g., knitr::kable(head(iris), format = 'latex', tabular =
    'tabularx') (thanks, @amarakon, #2138).

  * For HTML output formats of R Markdown, SVG plots (e.g., in case of chunk
    option dev = 'svg' or dev = 'gridSVG') can be embedded differently now when
    options(knitr.svg.object = TRUE): if the HTML output is self-contained, the
    raw SVG code will be embedded directly in HTML, otherwise the .svg file is
    embedded in the <object> tag. By default, this feature is not enabled,
    i.e., the default is options(knitr.svg.object = FALSE) for
    backward-compatibility, which means the <img> tag is used for SVG plots
    just like other plot formats. This new feature will make assistive
    technology agents, such as screen readers, interact with SVG plots (thanks,
    @jooyoungseo, #2152).

knitr 1.39
27 Apr 02:07

  * Added an argument rel_path to include_graphics(), which defaults to TRUE,
    meaning that this function will try to convert absolute paths to relative
    paths automatically. If the conversion fails, it will issue a warning. If
    you want to suppress the conversion (and the warning), you may use rel_path
    = FALSE or set the global option options( = FALSE).
    In the previous version of knitr, this function would always issue a
    warning when it detects absolute paths (thanks, @davidski @kendavidn, #2119

Revision 1.11 / (download) - annotate - [select for diffs], Sat Apr 23 02:07:00 2022 UTC (17 months, 1 week ago) by mef
Branch: MAIN
CVS Tags: pkgsrc-2022Q4-base, pkgsrc-2022Q4, pkgsrc-2022Q3-base, pkgsrc-2022Q3, pkgsrc-2022Q2-base, pkgsrc-2022Q2
Changes since 1.10: +4 -4 lines
Diff to previous 1.10 (colored)

(print/R-knitr) Updated 1.34 to 1.38

knitr 1.38

  * The chunk option file can take a vector of file paths now, i.e., this
    option can be used to read more than one file (e.g., file = c("foo.R",

  * Added a new engine named exec (#2073) to execute an arbitrary command on
    the code chunk, e.g.,

    ```{exec, command='Rscript'}
    1 + 1

    The above code chunk executes the Rscript command with the chunk body as
    its input (which basically means executing the R code in a new R session).
    See the example #124 in the repo
    for more info.

    There exists several command-based engines in knitr, such as awk, bash,
    perl, go, and dot, etc. This new exec engine provides a general mechanism
    to execute any command that users provide. For example, the code chunk

    echo 'Hello world!'

    is equivalent to the chunk using the exec engine and the bash command:

    ```{exec, command='bash'}
    echo 'Hello world!'

    With this new engine, we no longer need to provide or maintain other simple
    command-based engines. For example, to support TypeScript (#1833), we only
    need to specify command = 'ts-node' with the exec engine.

    If the command has significant side-effects (e.g., compile source code to
    an executable and run the executable, or generate plots to be included in
    the output), it is also possible to create a new engine based on the exec
    engine. The example #124 in the knitr-examples repo has provided a gcc

    We'd like to thank @TianyiShi2001 for the inspiration (#1829 #1823 #1833).

  * Added a new engine ditaa based on the exec engine to convert ASCII art
    diagrams to bitmaps via the ditaa command (thanks, @kondziu, #2092).

  * Added two new chunk options, class.chunk and attr.chunk, for R Markdown
    output. These options can enclose the whole chunk output (source and
    results) in a fenced Div. Their syntax follows other chunk options with the
    similar names class.* and attr.* (e.g., class.source and attr.source). For
    example, class.chunk = "foo" would wrap the chunk output inside ::: {.foo}
    and ::: (thanks, @atusy, #2099).

  * Added a new chunk option lang to set the language name of a code chunk. By
    default, the language name is the engine name. This is primarily useful for
    syntax highlighting the source chunks in Markdown-based output. Previously
    the lang option was only available to a few engines such as verbatim and
    embed. Now it is available to all engines.

  * Added a new wrapper function rnw2pdf(). It allows users to specify an
    arbitrary output file path, clean the intermediate files, and stop when any
    error occurs in knitting (thanks, @shrektan, #2113).

  * New calling.handlers option for opts_chunk$set() to register calling
    handlers within chunks. See ?evaluate::new_output_handler for details.


  * The minimal required version of R was bumped from 3.2.3 to 3.3.0 (thanks,
    @essemenoff, #2100).

  * The working directory under which chunk options are evaluated has been
    changed to the directory of the source document by default. If the package
    option root.dir is set to a different directory, that directory will be
    used as the working directory (#2081).

  * include_graphics() will expand ~ in the image paths now and also warn
    against absolute paths (thanks, @kcarnold, #2063).

  * opts_chunk$set() returns values of old chunk options after setting new
    chunk options now, instead of returning NULL, which can make it a little
    simpler to reset chunk options, e.g., you can temporarily change a few
    chunk options and save them with old = opts_chunk$set(error = FALSE,
    fig.height = 3), and reset them later with opts_chunk$set(old). This works
    for any other objects in knitr that have the $set() methods, such as
    opts_knit, opts_hooks, knit_hooks, knit_engines, and so on.


  * The chunk option fig.scap has been added to eval.after in opts_knit
    (thanks, @knokknok, #2061).


  * Chunk options defined in the #| style are not recognized when the code
    chunk is indented or quoted (thanks, @mine-cetinkaya-rundel, #2086).

  * Fixed a bug in Sweave2knitr() #2097 (thanks, @chroetz).

knitr 1.37

  * Added a new chunk option named file so that the chunk content can be read
    from an external file. Setting the chunk option file = "test.R" is
    equivalent to using the chunk option code = xfun::read_utf8("test.R").

  * For R Markdown documents, code chunks can be embedded in a parent code
    chunk with more backticks now. For example, a code chunk with four
    backticks can contain code chunks with three backticks. One application is
    to conditionally include some verbatim content that contains code chunks
    via the asis engine, e.g.,

    ````{asis, echo=format(Sys.Date(), "%w") == 1}
    Some conditional content only included when report is built on a Monday

    1 + 1

    On another day, this content won't be included.

    Note that the embedded child code chunks (e.g., in the asis chunk above)
    are not parsed or evaluated by knitr, and only the top-level code chunk is
    parsed and evaluated.

  * Added a new engine named comment to comment out content, e.g.,

    Arbitrary content to be commented out.

    1 + 1

    The above code chunk will not be executed.
    Inline code like `r pi * 5^2` will be ignored, too.

    Note that if any line of the content to be commented out contains N
    backticks, you will have to use at least N + 1 backticks in the chunk
    header and footer of the comment chunk.

  * Added a new engine named verbatim mainly for R Markdown documents to output
    verbatim content that contains code chunks and/or inline expressions, e.g.,

    We can output arbitrary content verbatim.

    1 + 1

    The content can contain inline code like
    `r pi * 5^2`, too.

    By default, the verbatim content is placed in a fenced default code block:

    We can output arbitrary content verbatim.

    1 + 1

    The content can contain inline code like
    `r pi * 5^2`, too.

    You can change the default language name of the block via the chunk option
    lang, e.g., lang = 'markdown' will output a code block like this:

    We can output arbitrary content verbatim.

    1 + 1

    The content can contain inline code like
    `r pi * 5^2`, too.

    To disable the language name on the block, use an empty string lang = ''.

    The difference between the verbatim and asis engine is that the former will
    put the content in a fenced code block, and the latter just output the
    content as-is.

    You can also display a file verbatim by using the chunk option file, e.g.,

    ```{verbatim, file="test.Rmd"}

    This engine also works for other types of documents (e.g., Rnw) but it will
    not allow for nested code chunks within the verbatim code chunk.

  * Added a new engine named embed to embed external plain-text files. It is
    essentially a simple wrapper based on the verbatim engine, with the chunk
    content read from an external file and default language guessed from file
    extension. That is,

    ```{embed, file="foo.R"}

    is equivalent to

    ```{verbatim, file="foo.R", lang="r"}

    If you provide the chunk option file to the embed engine, it will read the
    file and show its content verbatim in the output document. Alternatively,
    you can specify the file path in the chunk body, e.g.,


    The quotes are optional but can be helpful for editors (e.g., RStudio IDE)
    to autocomplete the file paths.

    The syntax highlighting language name is from the filename extension by
    default, and you can override it with the chunk option lang (e.g., file =
    "", lang = "bash") which is then identical to the verbatim engine.


  * The chunk option child also respects the package option root.dir now
    (thanks, @salim-b,

  * Fixed a LaTeX error "Package xcolor Error: Undefined color `fgcolor'" with
    .Rnw documents (thanks, Kurt Hornik).


  * Improved the (warning) message when unbalanced chunk delimiters are
    detected in R Markdown documents, to make it easier for users to fix the
    problem. The message now contains the line numbers of the opening fence and
    closing fence, as well as the opening and closing backticks. For example,
    the opening fence may be "````{r}" (four backticks) but the closing fence
    is "```" (three backticks---should also be four to match the opening
    fence), or the opening fence is indented " ```{r}" but the closing fence is
    not "```". Note that this warning message may become an error in the
    future, i.e., unbalanced chunk delimiters will no longer be allowed.

knitr 1.36

  * In knitr 1.35, if the indentation of the closing backticks does not match
    the indentation of the chunk header in an Rmd document, the closing
    backticks would not be treated as closing fence of a code chunk. This
    behavior has been reverted because we have discovered several cases in
    which the indentation was accidental. A warning message will be issued
    instead, and you are still recommended to fix the improper indentation if


  * Fixed a regression in knitr 1.31 that caused package vignettes to generate
    (tangle) invalid R scripts (thanks, @t-kalinowski @halldc, #2052).

knitr 1.35

  * Chunk options can also be written inside a code chunk now after the special
    comment #|, e.g.,

    #| echo = FALSE, fig.width = 10,
    #| fig.cap = "This is a long caption."


    The main differences between this new syntax and traditional syntax (i.e.,
    chunk options in the chunk header) are: 1) the chunk options can be freely
    wrapped, i.e., you can write them on as many lines as you prefer; 2) you
    can also use the YAML syntax instead of the comma-separated syntax if you
    like, e.g.,

    #| echo: false
    #| fig.width: 10

    Chunk options provided inside a code chunk will override options with the
    same names in the chunk header if chunk options are provided in both
    places, e.g.,

    ```{r, echo = TRUE}
    #| echo = FALSE, fig.width = 10

    The effective chunk options for the above chunk are echo = FALSE and
    fig.width = 10.


  * For R Markdown documents, if the chunk header is indented, the closing
    backticks (usually ```) of the chunk must be indented with the same amount
    of spaces (thanks, @atusy, #2047). For example, the following is no longer
    a valid code chunk because the chunk header is indented but the closing
    backticks are not:

    1 + 1

    If you see an error "attempt to use zero-length variable name" when
    knitting an Rmd document, it may be because of this change, and you may
    have indented the chunk header by accident. If that is the case, you need
    to remove the extra white spaces before the chunk header.

    The same problem applies to blockquotes, i.e., > before ```. If you quote
    the chunk header, you have to quote the footer as well, e.g.,

    > ```{r}
    1 + 1

    The above unbalanced code chunk needs to be corrected to:

    > ```{r}
    > 1 + 1
    > ```

    Quoting the chunk body is optional but recommended.


  * Fixed a regression in v1.34: now blank lines in code chunks are stripped
    only when collapse = FALSE but no longer stripped by default when collapse
    = TRUE. If you prefer blank lines to be always stripped, set strip.white =
    TRUE globally or on the per chunk basis (thanks, @IndrajeetPatil, rstudio/
    rmarkdown#2220, #2046).

  * In knitr::combine_words(), when words is length 2 and and = "", sep will
    now be used (thanks, @eitsupi, #2044).

  * For R Markdown documents, if the chunk output contains N backticks, the
    output hook will use N + 1 backticks to wrap the output, so that the N
    verbatim backticks can be correctly preserved (thanks, @atusy, #2047).

Revision 1.10 / (download) - annotate - [select for diffs], Tue Oct 26 11:12:02 2021 UTC (23 months ago) by nia
Branch: MAIN
CVS Tags: pkgsrc-2022Q1-base, pkgsrc-2022Q1, pkgsrc-2021Q4-base, pkgsrc-2021Q4
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)

print: Replace RMD160 checksums with BLAKE2s checksums

All checksums have been double-checked against existing RMD160 and
SHA512 hashes

Revision 1.9 / (download) - annotate - [select for diffs], Thu Oct 7 14:48:50 2021 UTC (23 months, 3 weeks ago) by nia
Branch: MAIN
Changes since 1.8: +1 -2 lines
Diff to previous 1.8 (colored)

print: Remove SHA1 hashes for distfiles

Revision 1.8 / (download) - annotate - [select for diffs], Sat Sep 18 13:40:56 2021 UTC (2 years ago) by mef
Branch: MAIN
CVS Tags: pkgsrc-2021Q3-base, pkgsrc-2021Q3
Changes since 1.7: +5 -5 lines
Diff to previous 1.7 (colored)

(print/R-knitr) Updated 1.33 to 1.34

@yihui yihui released this Sep 9, 2021


  * Added a package option latex.tilde so that users can customize the tilde
    symbol, e.g., you can set knitr::opts_knit$set(latex.tilde = "\\hlopt{\\
    scriptsize{\\ensuremath{\\sim}}}"). This is because the default tilde is
    too high in the PDF output, and it's often more desirable to use a middle
    tilde instead (thanks, @brry #1992, @jaredlander #492).

  * For the tikz engine, the class options of the standalone document classs
    can be specified via the chunk option engine.opts$classoption (thanks,
    @XiangyunHuang, #1985). The default value is tikz, i.e., \documentclass
    [tikz]{standalone} is used by default.

  * Added the ability to pass additional arguments to dvisvgm when using the
    tikz engine with fig.ext = "svg" by using dvisvgm.opts in engine.opts
    (thanks, @andrewheiss, #2039). Recent versions of dvisvgm now allow you to
    embed fonts into SVG files as base64-encoded WOFF files, so tikz chunks can
    embed fonts using like so: ```{tikz, fig.ext="svg", engine.opts=list
    (dvisvgm.opts = "--font-format=woff")}.

  * Added a new targets engine (ropensci/targets#503, @wlandau). Details:

  * The chunk option cache.globals can take values TRUE and FALSE now (in
    addition to a character vector). When FALSE, it tries to find all symbols
    in the code chunk, no matter if they are local or global variables. When
    NULL or TRUE, it tries to find all global variables (thanks, @knokknok, #


  * An error is now thrown when an inline code result is not coercible to
    character. This has always been the assumed behavior but it happens to be
    different in certain formats with unknown automatic coercion. This is now
    enforced to prevent any unexpected output. An inline code expression must
    evaluate to a character vector or an object coercible by as.character() (#

  * The markdown package has been moved from Imports to Suggests in knitr's
    DESCRIPTION, which means it is no longer a hard dependency but has become a
    soft dependency of knitr (#1864). One consequence for package developers is
    that if you use the vignette engines based on markdown (such as
    knitr::knitr), you will have to explicitly declare the (soft) dependency on
    markdown, because the implicit dependency through knitr is no longer there.

  * For R packages that use the knitr::rmarkdown engine to build their
    vignettes, rmarkdown must be declared as a dependency in the package
    DESCRIPTION (e.g., in Suggests). Previously, knitr would fall back to using
    the markdown package to build vignettes if rmarkdown is not declared (#1864
    , #2020).

  * write_bib() only uses the first URL if multiple are found in a package (#


  * The attribute data-external="1" will be added to <iframe>s generated by
    include_url() to prevent Pandoc from embedding the URL as base64 data
    (thanks, @IndrajeetPatil,

  * The chunk option strip.white = TRUE used to work only when the chunk option
    collapse = FALSE. Now the two options are independent, i.e., strip.white
    also works when collapse = TRUE (thanks, @kbvernon, #2011).

  * When building R Markdown vignettes but Pandoc is not available, the
    vignette engine will emit a message instead of a warning before falling
    back to using the markdown package.

  * The internal function is_abs_path() has been removed. Users (if any) should
    use the exported function xfun::is_abs_path() instead.


  * Fix an issue with the RStudio IDE when using knitr::include_url() or
    knitr::include_app() in interactive Notebook mode. This will no more cause
    an error but print the list object as is (thanks, @systemnova, #2015).

  * Fix a regression with fig.keep chunk option used in chunks with only one
    figure where the figure was not showing in output (thanks, @fmichonneau, #

  * Allow vignettes to be tangled (and output compared) in R CMD check if they
    have a corresponding (thanks, @lentinj, #2018).

Revision 1.7 / (download) - annotate - [select for diffs], Mon May 31 23:56:07 2021 UTC (2 years, 4 months ago) by mef
Branch: MAIN
CVS Tags: pkgsrc-2021Q2-base, pkgsrc-2021Q2
Changes since 1.6: +5 -5 lines
Diff to previous 1.6 (colored)

(print/R-knitr) Updated 1.23 to 1.33, unknown

Revision 1.6 / (download) - annotate - [select for diffs], Wed Jul 31 20:46:05 2019 UTC (4 years, 2 months ago) by brook
Branch: MAIN
CVS Tags: pkgsrc-2021Q1-base, pkgsrc-2021Q1, pkgsrc-2020Q4-base, pkgsrc-2020Q4, pkgsrc-2020Q3-base, pkgsrc-2020Q3, pkgsrc-2020Q2-base, pkgsrc-2020Q2, pkgsrc-2020Q1-base, pkgsrc-2020Q1, pkgsrc-2019Q4-base, pkgsrc-2019Q4, pkgsrc-2019Q3-base, pkgsrc-2019Q3
Changes since 1.5: +5 -5 lines
Diff to previous 1.5 (colored)

R-knitr: update to version 1.23.

Update to the canonical form of an R package and fix the LICENSE

Revision 1.5 / (download) - annotate - [select for diffs], Sat Mar 11 12:42:19 2017 UTC (6 years, 6 months ago) by wen
Branch: MAIN
CVS Tags: pkgsrc-2019Q2-base, pkgsrc-2019Q2, pkgsrc-2019Q1-base, pkgsrc-2019Q1, pkgsrc-2018Q4-base, pkgsrc-2018Q4, pkgsrc-2018Q3-base, pkgsrc-2018Q3, pkgsrc-2018Q2-base, pkgsrc-2018Q2, pkgsrc-2018Q1-base, pkgsrc-2018Q1, pkgsrc-2017Q4-base, pkgsrc-2017Q4, pkgsrc-2017Q3-base, pkgsrc-2017Q3, pkgsrc-2017Q2-base, pkgsrc-2017Q2, pkgsrc-2017Q1-base, pkgsrc-2017Q1
Changes since 1.4: +5 -5 lines
Diff to previous 1.4 (colored)

Update to 1.15.1

Upstream changes:


@yihui yihui released this on 23 Nov 2016 · 49 commits to master since this release

    added a new hook function hook_pngquant() that can call pngquant to optimize PNG images (thanks, @slowkow, #1320)


    not really a knitr bug, but knit_params() should be better at dealing with multibyte characters now due to the bug fix in the yaml package viking/r-yaml#6


    Source code (zip)
    Source code (tar.gz)



@yihui yihui released this on 10 Nov 2016 · 63 commits to master since this release

    NA values can be displayed using different characters (including empty strings) in kable(); you can set the option knitr.kable.NA, e.g. options(knitr.kable.NA = '') to hide NA values (#1283)
    added a fortran95 engine (thanks, @stefanedwards, #1282)
    added a block2 engine for R Markdown documents as an alternative to the block engine; it should be faster and supports arbitrary Pandoc's Markdown syntax, but it is essentially a hack; note when the output format is LaTeX/PDF, you have to define \let\BeginKnitrBlock\begin \let\EndKnitrBlock\end in the LaTeX preamble
    figure captions specified in the chunk option fig.cap are also applied to HTML widgets (thanks, @byzheng, rstudio/bookdown#118)
    when the chunk option = 'animate' and ffmpeg.format = 'gif', a GIF animation of the plots in the chunk will be generated for HTML output (
    added a width argument to write_bib() so long lines in bib entries can be wrapped
    the inline syntax r#code is also supported besides r code; this can make sure the inline expression is not split when the line is wrapped (thanks, Dave Jarvis)
    provided a global R option knitr.use.cwd so users can choose to evaluate the R code chunks in the current working directory after setting options(knitr.use.cwd = TRUE); the default is to evaluate code in the directory of the input document, unless the knitr option opts_knit$set(root.dir = ...) has been set
    if options(knitr.digits.signif = TRUE), numbers from inline expressions will be formatted using getOption('digits') as the number of significant digits, otherwise (the default behavior) getOption('digits') is treated as the number of decimal places (thanks, @numatt, #1053)
    the chunk option engine.path can also be a list of paths to the engine executables now, e.g., you can set knitr::opts_chunk$set(engine.path = list(python = '/anaconda/bin/python', perl = '/usr/local/bin/perl')), then when a python code chunk is executed, /anaconda/bin/python will be called instead of the system default (rstudio/rmarkdown#812)
    introduced a mechanism to protect text output in the sense that it will not be touched by Pandoc during the conversion from R Markdown to another format; this is primarily for package developers to extend R Markdown; see ?raw_output for details (which also shows new functions extract_raw_output() and restore_raw_output())


    the minimal version of R required for knitr is 3.1.0 now (#1269)
    the formatR package is an optional package since the default chunk option tidy = FALSE has been there for a long time; if you use tidy = TRUE, you need to install formatR separately if it is not installed
    :set +m is no longer automatically added to haskell code chunks (#1274)


    the package option opts_knit$get('stop_on_error') has been removed
    the confusing warning message about knitr::knit2html() when buiding package vignettes using the knitr::rmarkdown engine without pandoc/pandoc-citeproc has been removed (#1286)
    the default value of the quiet argument of plot_crop() was changed from !opts_knit$get('progress') to TRUE, i.e., by default the messages from cropping images are suppressed


    the chunk option cache.vars did not really behave like what was documented (thanks, @simonkth, #1280)
    asis_output() should not be merged with normal character output when results='hold' (thanks, @kevinushey, #1310)


    Source code (zip)
    Source code (tar.gz)



@yihui yihui released this on 12 Aug 2016 · 845 commits to master since this release

    improved caching for Rcpp code chunks: the shared library built from the C++ code will be preserved on disk and reloaded the next time if caching is enabled (chunk option cache = TRUE), so that the exported R functions are still usable in later R code chunks; note this feature requires Rcpp >= (thanks, @jjallaire, #1239)
    added a helper function all_rcpp_labels(), which is simply all_labels(engine == 'Rcpp') and can be used to extract all chunk lables of Rcpp chunks
    added a new engine named sql that uses the DBI package to execute SQL queries, and optionally assign the result to a variable in the knitr session; see for details (#1241)
    fig.keep now accepts numeric values to index low-level plots to keep (#1265)


    fixed #1211: pandoc('') generates foo_utf8.html instead of foo.html by default
    fixed #1236: include = FALSE for code chunks inside blockquotes did not work (should return > instead of a blank line) (thanks, @fmichonneau)
    fixed #1217: define the command \hlipl for syntax highlighting for Rnw documents (thanks, @conjugateprior)
    fixed #1215: restoring par() settings might fail when the plot window is partitioned, e.g. par(mfrow = c(1, 2)) (thanks, @jrwishart @jmichaelgilbert)
    fixed #1250: in the quiet mode, knit() should not emit the message "processing file ..." when processing child documents (thanks, @KZARCA)


    knitr will no longer generate screenshots automatically for HTML widgets if the webshot package or PhantomJS is not installed


    if dev = 'cairo_pdf', the cairo_pdf device will be used to record plots (previously the pdf device was used) (#1235)
    LaTeX short captions now go up to the first ., : or ; character followed by a space or newline (thanks, @knokknok, #1249)

Revision 1.4 / (download) - annotate - [select for diffs], Thu Jul 28 14:37:35 2016 UTC (7 years, 2 months ago) by wen
Branch: MAIN
CVS Tags: pkgsrc-2016Q4-base, pkgsrc-2016Q4, pkgsrc-2016Q3-base, pkgsrc-2016Q3
Changes since 1.3: +5 -5 lines
Diff to previous 1.3 (colored)

Update to 1.13

Upstream changes:



    code chunks that generate metadata may be cached now; it requires htmlwidgets >= v0.6 and htmltools >= 0.3.3 if you cache code chunks that contain HTML widgets or Shiny inputs/outputs (#1158)

    when the output format is not HTML, HTML widgets used to fail to render; now knitr will try to generate static screenshots for HTML widgets automatically using the webshot package; you can specify alternative screenshots via the chunk option screenshot.alt (which takes a character vector of image paths), and pass more options to webshot::webshot() via the chunk option screenshot.opts, e.g. list(delay = 3, cliprect = 'viewport')

    added two functions include_url() and include_app() to embed URLs in the output (the latter is for Shiny app URLs); when the output format is HTML, iframe will be used; otherwise screenshots of the URLs will be used

    screenshotting for HTML widgets and URLs can be forced for all output formats via the chunk option screenshot.force = TRUE; if you set the chunk option screenshot.force = FALSE, knitr will just render these content normally and not take screenshots

    added a new chunk option, which can be used to attach hyperlinks on figures, e.g. you can add a link to a screenshot of a Shiny app so that readers can check out the actual live app after clicking on the static screenshot (this chunk option currently only works for Markdown and LaTeX output)

    syntactical errors in code chunks will be allowed when the chunk option error = TRUE and the package version of evaluate is at least 0.8.4; previously knitr would just stop on parsing errors (hadley/evaluate#65)

    PNG/JPEG images included via include_graphics() also respects the chunk option dpi now; if it is numeric and the chunk option out.width is not set, the output width (in inches) of an image will be automatically calculated from the actual width (in pixels) divided by dpi; note this feature requires the packages png and/or jpeg to be installed, and you can disable the feature using dpi = NA (thanks, @hadley, rstudio/bookdown#38)

    added a new hook function named evaluate in knit_hooks so that users can redefine a evaluator to evaluate the code chunk; the default is evaluate::evaluate(), and your custom evaluator must be compatible with evaluate::evaluate() in terms of the argument names and the data structure of the returned value (a list of values with special classes)

    added a new function combine_words() to combine multiple words / phrases into a single string, which may be useful in inline R expressions, e.g. combine_words(c('a', 'b', 'c')) returns a, b, and c

    render_markdown() gained a new argument fence_char to customize the character to be used as the code blocks fence, e.g. it can be a backtick, or a tilde, depending on the Markdown rendering engine (thanks, @tinyheero, #1161)

    the pandoc() function no longer assumes Markdown input (thanks, @scls19fr, #1170)

    added a new function knit_meta_add() so that users can manually inject metadata into the current knitr session

    for the tikz engine, if fig.ext = 'svg', dvisvgm will be called to convert the DVI output of TikZ to SVG; you need to install dvisvgm, and Windows users have to install GhostScript as well (thanks, @dkilfoyle, #1177)

    new js and css engines which surround their content with <script> and <style> tags respecitvely, and print no output when not in an HTML document

    for LaTeX tables, kable() supports short captions now via the caption.short argument, e.g. kable(..., caption = 'A long caption', caption.short = 'A short caption') (thanks, @ismayc, #1199)

    added three global R options knitr.sanitize.errors, knitr.sanitize.warnings, and knitr.sanitize.messages to mask or change the messages, e.g. if options(knitr.sanitize.errors = TRUE) and the chunk option error = TRUE, the actual error message will be replaced by a character string like "An error occurred"; these options can also accept character values so you can customize the messages to be displayed, e.g. options(knitr.sanitize.warnings = 'You had a warning from the code'); see rstudio/shiny#1123 for the motivation of these options


    when the chunk option cache.rebuild = TRUE, the cache database should be rewritten (thanks, Oleg Mayba)

    include_graphics() did not work in inline R expressions (thanks, @WastlM, #1166)

    the cex parameter was not correctly restored in the case of opts_knit$set(global.par = TRUE) (

    for Rnw documents, when there are two instances of \documentclass{}, knitr might mistakenly treats the second instance as the the actual command to declare the document class (thanks, #1180, @ekstroem)

    corrected the environment for evaluating R scripts in stitch_rhtml() and stitch_rmd() (thanks, @Hughan, #1207)


    the default value of the package option eval.after is changed from NULL to fig.cap, i.e. the figure caption will always be evaluated after a code chunk is evaluated (thanks, @JoshOBrien, #1165)

    the function eclipse_theme() has been removed since the website has been down for a long time

Revision 1.3 / (download) - annotate - [select for diffs], Sat Apr 16 15:00:48 2016 UTC (7 years, 5 months ago) by wen
Branch: MAIN
CVS Tags: pkgsrc-2016Q2-base, pkgsrc-2016Q2
Changes since 1.2: +5 -5 lines
Diff to previous 1.2 (colored)

Update to 1.12.3

Upstream changelog is too long, please visit:

Revision 1.2 / (download) - annotate - [select for diffs], Wed Nov 4 01:01:30 2015 UTC (7 years, 10 months ago) by agc
Branch: MAIN
CVS Tags: pkgsrc-2016Q1-base, pkgsrc-2016Q1, pkgsrc-2015Q4-base, pkgsrc-2015Q4
Changes since 1.1: +2 -1 lines
Diff to previous 1.1 (colored)

Add SHA512 digests for distfiles for print category

Problems found locating distfiles:
	Package acroread7: missing distfile AdobeReader_enu-7.0.9-1.i386.tar.gz
	Package acroread8: missing distfile AdobeReader_enu-8.1.7-1.sparc.tar.gz
	Package cups-filters: missing distfile cups-filters-1.1.0.tar.xz
	Package dvidvi: missing distfile dvidvi-1.0.tar.gz
	Package lgrind: missing distfile lgrind.tar.bz2

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.

Revision 1.1 / (download) - annotate - [select for diffs], Sat Sep 20 04:03:40 2014 UTC (9 years ago) by brook
Branch: MAIN
CVS Tags: pkgsrc-2015Q3-base, pkgsrc-2015Q3, pkgsrc-2015Q2-base, pkgsrc-2015Q2, pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4, pkgsrc-2014Q3-base, pkgsrc-2014Q3

Initial import of knitr v1.6 as print/R-knitr.

This package provides a general-purpose tool for dynamic report
generation in R, which can be used to deal with any type of (plain
text) files, including Sweave, HTML, Markdown, reStructuredText,
AsciiDoc, and Textile. R code is evaluated as if it were copied and
pasted in an R terminal thanks to the evaluate package (e.g., we do
not need to explicitly print() plots from ggplot2 or lattice). R code
can be reformatted by the formatR package so that long lines are
automatically wrapped, with indent and spaces added, and comments
preserved. A simple caching mechanism is provided to cache results
from computations for the first time and the computations will be
skipped the next time. Almost all common graphics devices, including
those in base R and add-on packages like Cairo, cairoDevice and
tikzDevice, are built-in with this package and it is straightforward
to switch between devices without writing any special functions. The
width and height as well as alignment of plots in the output document
can be specified in chunk options (the size of plots for graphics
devices is also supported). Multiple plots can be recorded in a single
code chunk, and it is also allowed to rearrange plots to the end of a
chunk or just keep the last plot. Warnings, messages and errors are
written in the output document by default (can be turned off). The
language in code chunks is not restricted to R (there is simple
support to Python and shell scripts, etc). Many features are borrowed
from or inspired by Sweave, cacheSweave, pgfSweave, brew and decumar.

Note: this commit is part of reorganizing some of the recently
imported R packages, which are being reimported into more appropriate
categories (and removed from math) as a result of a recent discussion
on tech-pkg and privately with wiz@.  See the thread starting with:

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.

CVSweb <>