Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to master grimoire by Ismael Luceno (4a525c229c51fff18c9a7f674475537dd3af20c0)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Ismael Luceno <scm AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to master grimoire by Ismael Luceno (4a525c229c51fff18c9a7f674475537dd3af20c0)
  • Date: Fri, 26 Jun 2015 19:23:21 +0000

GIT changes to master grimoire by Ismael Luceno <ismael AT sourcemage.org>:

ChangeLog | 3 ++
doc/cmark/BUILD | 1
doc/cmark/DETAILS | 50 ++++++++++++++++++++++++++++++++++++++
doc/cmark/HISTORY | 2 +
haskell/haskell-cmark/DEPENDS | 3 ++
haskell/haskell-cmark/DETAILS | 54
++++++++++++++++++++++++++++++++++++++++++
haskell/haskell-cmark/HISTORY | 2 +
7 files changed, 115 insertions(+)

New commits:
commit 4a525c229c51fff18c9a7f674475537dd3af20c0
Author: Ismael Luceno <ismael AT sourcemage.org>
Commit: Ismael Luceno <ismael AT sourcemage.org>

haskell-cmark: new spell, libcmark bindings for Haskell

commit f9c154056b45ca2c0c225690a3dedcd365e1e1b0
Author: Ismael Luceno <ismael AT sourcemage.org>
Commit: Ismael Luceno <ismael AT sourcemage.org>

cmark: new spell, A strongly specified, highly compatible implementation
of Markdown

diff --git a/ChangeLog b/ChangeLog
index 852c2a7..ac3b3fc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -17,6 +17,9 @@
* haskell/haskell-base64-bytestring: new spell, Fast base64 encoding
and decoding for ByteStrings
* haskell/haskell-nats: new spell, Natural numbers
+ * doc/cmark: new spell, A strongly specified, highly compatible
+ implementation of Markdown
+ * haskell/haskell-cmark: new spell, libcmark bindings for Haskell

2015-06-25 Ismael Luceno <ismael AT sourcemage.org>
* haskell/haskell-ansi-terminal: new spell, Simple ANSI terminal
diff --git a/doc/cmark/BUILD b/doc/cmark/BUILD
new file mode 100755
index 0000000..e013b8d
--- /dev/null
+++ b/doc/cmark/BUILD
@@ -0,0 +1 @@
+cmake_build
diff --git a/doc/cmark/DETAILS b/doc/cmark/DETAILS
new file mode 100755
index 0000000..eea3089
--- /dev/null
+++ b/doc/cmark/DETAILS
@@ -0,0 +1,50 @@
+ SPELL=cmark
+ VERSION=0.20.0
+ SOURCE="$SPELL-$VERSION.tar.gz"
+ SOURCE_URL[0]=https://github.com/jgm/$SPELL/archive/$VERSION.tar.gz
+
SOURCE_HASH=sha512:fa71c3f68e99057ea0bd278a2bdc587dabfa8732a786d8bdeda98eb302afa75560f625f2260a817923f4e6917a5a06176e9a106c267c9ed8d247d666c46fcbb6
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/${SPELL}-$VERSION"
+ WEB_SITE="http://commonmark.org/";
+ LICENSE[0]="BSD2 MIT"
+ ENTERED=20150626
+ KEYWORDS=""
+ SHORT="A strongly specified, highly compatible implementation of
Markdown"
+cat << EOF
+cmark is the C reference implementation of CommonMark, a rationalized version
+of Markdown syntax with a spec.
+
+It provides a shared library (libcmark) with functions for parsing CommonMark
+documents to an abstract syntax tree (AST), manipulating the AST, and
rendering
+the document to HTML, groff man, CommonMark, or an XML representation of
+the AST. It also provides a command-line program (cmark) for parsing and
+rendering CommonMark documents.
+
+Advantages of this library:
+
+* Portable. The library and program are written in standard C99 and have no
+ external dependencies. They have been tested with MSVC, gcc, tcc, and
clang.
+
+* Fast. cmark can render a Markdown version of War and Peace in the blink of
an
+ eye (127 milliseconds on a ten year old laptop, vs. 100-400 milliseconds
for
+ an eye blink). In our benchmarks, cmark is 10,000 times faster than the
+ original Markdown.pl, and on par with the very fastest available Markdown
+ processors.
+
+* Accurate. The library passes all CommonMark conformance tests.
+
+* Standardized. The library can be expected to parse CommonMark the same way
as
+ any other conforming parser. So, for example, you can use commonmark.js on
the
+ client to preview content that will be rendered on the server using cmark.
+
+* Robust. The library has been extensively fuzz-tested using american fuzzy
+ lop. The test suite includes pathological cases that bring many other
Markdown
+ parsers to a crawl (for example, thousands-deep nested bracketed text or
block
+ quotes).
+
+* Flexible. CommonMark input is parsed to an AST which can be manipulated
+ programatically prior to rendering.
+
+* Multiple renderers. Output in HTML, groff man, CommonMark, and a custom XML
+ format is supported. And it is easy to write new renderers to support other
+ formats.
+EOF
diff --git a/doc/cmark/HISTORY b/doc/cmark/HISTORY
new file mode 100644
index 0000000..86606c7
--- /dev/null
+++ b/doc/cmark/HISTORY
@@ -0,0 +1,2 @@
+2015-06-26 Ismael Luceno <ismael AT sourcemage.org>
+ * BUILD, DETAILS: spell created
diff --git a/haskell/haskell-cmark/DEPENDS b/haskell/haskell-cmark/DEPENDS
new file mode 100755
index 0000000..5e085c8
--- /dev/null
+++ b/haskell/haskell-cmark/DEPENDS
@@ -0,0 +1,3 @@
+depends cmark &&
+depends ghc &&
+depends haskell-text
diff --git a/haskell/haskell-cmark/DETAILS b/haskell/haskell-cmark/DETAILS
new file mode 100755
index 0000000..c852470
--- /dev/null
+++ b/haskell/haskell-cmark/DETAILS
@@ -0,0 +1,54 @@
+ SPELL=haskell-cmark
+ VERSION=0.3.4
+ SOURCE="cmark-$VERSION.tar.gz"
+ SOURCE_URL[0]=http://hackage.haskell.org/package/cmark-$VERSION/$SOURCE
+
SOURCE_HASH=sha512:1491d671ad98af061beee31f22d4d7e73ce4090342f34713848d26fbabefb8367d8bd2686814659ef36e49b2298967ce06e41ac5d7cbd13dcce27e4fe5ce7895
+SOURCE_DIRECTORY="$BUILD_DIRECTORY/cmark-$VERSION"
+ WEB_SITE="https://github.com/jgm/commonmark-hs";
+ LICENSE[0]="BSD3"
+ ENTERED=20150626
+ KEYWORDS=""
+ SHORT="libcmark bindings for Haskell"
+cat << EOF
+This package provides Haskell bindings for libcmark, the reference parser for
+CommonMark, a fully specified variant of Markdown. It includes sources for
+libcmark (0.20.0) and does not require prior installation of the C library.
+
+cmark provides the following advantages over existing Markdown libraries for
+Haskell:
+
+- Speed: Conversion speed is on par with the sundown library. We were unable
to
+ measure precisely against sundown, which raised a malloc error when
compiled
+ into our benchmark suite. Relative to other implementations: cmark was 82
+ times faster than cheapskate, 59 times faster than markdown, 105 times
faster
+ than pandoc, and 2.8 times faster than discount.
+
+- Memory footprint: Memory footprint is on par with sundown. On one sample,
the
+ library uses a fourth the memory that markdown uses, and less than a tenth
the
+ memory that pandoc uses.
+
+- Robustness: cmark can handle whatever is thrown at it, without the
exponential
+ blowups in parsing time one can sometimes get with other libraries.
+
+- Accuracy: cmark passes the CommonMark spec's suite of over 500 conformance
+ tests.
+
+- Standardization: Since there is a spec and a comprehensive suite of tests,
we
+ can have a high degree of confidence that any two CommonMark
implementations
+ will behave the same. Thus, for example, one could use this library for
+ server-side rendering and commonmark.js for client-side previewing.
+
+- Ease of installation: cmark is portable and has minimal dependencies.
+
+cmark does not provide Haskell versions of the whole libcmark API, which is
+built around mutable cmark_node objects. Instead, it provides functions for
+converting CommonMark to HTML (and other formats), and a function for
+converting CommonMark to a Node tree that can be processed further using
+Haskell.
+
+A note on security: This library does not attempt to sanitize HTML output. We
+recommend using xss-sanitize to filter the output.
+
+A note on stability: There is a good chance the API will change significantly
+after this early release.
+EOF
diff --git a/haskell/haskell-cmark/HISTORY b/haskell/haskell-cmark/HISTORY
new file mode 100644
index 0000000..bed0eed
--- /dev/null
+++ b/haskell/haskell-cmark/HISTORY
@@ -0,0 +1,2 @@
+2015-06-26 Ismael Luceno <ismael AT sourcemage.org>
+ * DEPENDS, DETAILS: spell created



  • [SM-Commit] GIT changes to master grimoire by Ismael Luceno (4a525c229c51fff18c9a7f674475537dd3af20c0), Ismael Luceno, 06/26/2015

Archive powered by MHonArc 2.6.24.

Top of Page