| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  |  | 
|  | It's possible that cmark_chunk_set_cstr is called with a substring
(suffix) of the current string. Delay freeing of the chunk content
to handle this case correctly.
Fixes issue #139. | 
|  | Add library option to render softbreaks as spaces | 
|  | Replaced nodes are not automatically freed. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | API change.
I've found in using the API that this is very often
wanted. | 
|  | This did not allow for the possibility that a node
might have no containing block, causing the commonmark
renderer to segfault if passed an inline node with no
block parent. | 
|  | render_commonmark on a non-block node.
Still don't know why. | 
|  | Closes #51. | 
|  | Removed a test we can't yet handle with the render interface.
The renderer isn't smart enough to escape a `-` that wraps to
the beginning of a line. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | API change.  Sorry, but this is the time to break things,
before 1.0 is released.  This matches the recent changes to
CommonMark.dtd. | 
|  | CMARK_NODE_HRULE -> CMARK_NODE_THEMATIC_BREAK.
However we've defined the former as the latter to keep
backwards compatibility.
See jgm/CommonMark 8fa94cb460f5e516b0e57adca33f50a669d51f6c | 
|  | Defined CMARK_NODE_HEADER to CMARK_NODE_HEADING to ease
the transition. | 
|  | See jgm/CommonMark commit 0cdbcee4e840abd0ac7db93797b2b75ca4104314
Note that we have defined
cmark_node_get_header_level = cmark_node_get_heading_level
and
cmark_node_set_header_level = camrk_node_set_heading_level
for backwards compatibility in the API. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | Closes #71.
Added a test to api_test. | 
|  | Currently fails. | 
|  | * Added `CMARK_OPT_SAFE`.  This option disables rendering of raw HTML
  and potentially dangerous links.
* Added `--safe` option in command-line program.
* Updated `cmark.3` man page.
* Added `scan_dangerous_url` to scanners.
* In HTML, suppress rendering of raw HTML and potentially dangerous
  links if `CMARK_OPT_SAFE`.  Dangerous URLs are those that begin
  with `javascript:`, `vbscript:`, `file:`, or `data:` (except for
  `image/png`, `image/gif`, `image/jpeg`, or `image/webp` mime types).
* Added `api_test` for `OPT_CMARK_SAFE`.
* Rewrote `README.md` on security. | 
|  | This is easier to access using ffi, since some languages, like C#
like to use only function interfaces for accessing library
functionality.
fixes #60 | 
|  | Also command line option `--validate-utf8`.
This option causes cmark to check for valid UTF-8,
replacing invalid sequences with the replacement
character, U+FFFD.
Reinstated api tests for utf8. | 
|  | We no longer validate utf8 before parsing. | 
|  |  | 
|  |  | 
|  | This closes #33. | 
|  |  | 
|  |  | 
|  | Also to some non-exported functions in blocks and inlines. | 
|  | Add version number and string as macros and symbols. Version numbers can
be easily compared, for example in the C preprocessor:
    #include <cmark.h>
    #if CMARK_VERSION < 0x020200
    #error Requires libcmark 2.2.0 or higher
    #endif
Storing the version in a global variable allows to check the library
version at runtime. For example:
    if (CMARK_VERSION != cmark_version) {
        warn("Compiled against libcmark %s, but using %s",
             CMARK_VERSION_STRING, cmark_version_string);
    }
The version should be updated whenever the public API is changed. | 
|  | * Advance to the next node when calling 'cmark_iter_next', not when
  calling 'cmark_iter_get_node'.
* Add 'cmark_iter_get_event_type' accessor.
* Allow deletion of nodes after an 'EXIT' event, or an 'ENTER' event for
  leaf nodes. | 
|  |  | 
|  | To keep the API simple and avoid API changes when new options are
added, this is just a long integer.
Set it by disjoining options that are defined as powers of 2:  e.g.
`CMARK_HTML_SOURCEPOS | CMARK_HTML_HARDREAKS`.
Test options using `&`: `if (options & CMARK_HTML_SOURCEPOS)`.
Added `--hardbreaks` and `--sourcepos` command-line options. | 
|  | Even though this doesn't make a difference in default HTML
output, it's worth keeping track; some output formats may allow
you to distinguish lists with `1)` and with `1.` delimiters. | 
|  |  | 
|  |  | 
|  |  | 
|  | * Added `iterator.c`, `iterator.h`.
* Removed `cmark_walk`.
* Replaced `cmark_walk` with iterator in HTML renderer.
* Replaced API test for `cmark_walk` with simple iterator test. | 
|  | Added cmark_event_type enum, which is used as the second
parameter of the handler passed to cmark_walk.
See #224. |