- Browserify- now easier than before! Following up on wmhilton's
work from our
8.0.0
release, zeke added some scripts and docs to make using marky with Browserify even easier. Among other things, marky now ships with a browserified file ready to go! (pull/211)
- Table troubles be gone! Or at least, any troubles with text-alignment.
Marky was stripping
style
attributes from<td>
and<th>
elements- and thanks to revin's hardwork, it isn't anymore! (issues/212, pull/216)
- A slightly new and reogranized README- refocused to make it easier for potential users of marky to learn about what marky does and wants to do! (pull/221)
mocha
updated to3.0.2
(pull/219)atom-language-nginx
update to0.6.1
, adding support for highlighting lua directives! (pull/214)
Progress toward feature parity with GitHub's markdown rendering continues...
- get your
class
on: syntax highlighting now supports ES2015 (pull/206)! The changes to the rendered markup for highlighted JavaScript aren't purely additive (we wish we could be more specific, but the functionality comes from atom/language-javascript, which currently doesn't publish a changelog; if you're feeling particularly brave, there's always the diff 😳), so dependening on how your CSS works, there may or may not be non-trivial work for you to do - changed the way certain links are auto-generated (i.e., linkifying
www.example.com
but notreadme.md
) so as to more closely match how Github does it (pull/151, issue/146); thanks to puzrin for help working out the details <
and>
are no longer allowed in auto-linked text due to a sub-dependency update coming in frommarkdown-it
(see below, also linkify-it/26 for details)- we now allow link reference definitions to appear immediately following paragraphs rather than requiring a blank link in between them; this contradicts CommonMark but matches Github's behavior. (issue/159, pull/164)
- we now support Github flavored markdown task lists in markdown documents. (issue/166, pull/168)
- we no longer strip HTML
<dl>
,<dt>
, and<dd>
elements from embedded markup, so you can write definition lists. HOWEVER: these are not directly supported by any particular standard Markdown syntax; since they are treated as inline HTML, any lines indented with four or more spaces will get rendered as code blocks as per CommonMark; see the discussion in issue/169. (pull/170) - big thanks to wmhilton who swooped in out of the blue and made
it so marky now works in a web browser! 🎉 🎉 🎉
Unfortunately, you have to specify
{highlightSyntax: false}
in the options because the deepest recesses of our dependency tree have some native C++ stuff which can't be browserified. On the other hand, leaving out syntax highlighting cuts the final bundle size roughly in half, so that's a win. (pull/203) - if you invoke marky with
{highlightSyntax: false}
in the options, we no longer apply the syntax highlighting-related CSS classes to the rendered HTML; e.g., rather than<div class="highlight js"><pre class="editor editor-colors">...</pre></div>
we will render simply<pre><code>...</code></pre>
. (issue/162, pull/163)
Due to the update to markdown-it
(see below), our markdown parsing now uses CommonMark 0.25 (up from 0.23) as a baseline. The CommonMark 0.24 Changelog and CommonMark 0.25 Changelog have the details; the main interesting parts are:
-
setext headings can span multiple lines now
This didn't work as a heading before but now it does =========
-
link destinations can no longer contain spaces, even when surrounded by angle brackets
[link text](<this used to be valid.html>)
Note: This has already caught a few people out; we have an issue tracking it (see issue/195) and are looking at reintroducing the more flexible (non-standard) parsing in the future.
-
valid link schemes used to be enumerated ('http', 'https', 'ftp', etc...); now they're defined as "any sequence of 2--32 characters beginning with an ASCII letter and followed by any combination of ASCII letters, digits, or the symbols plus ('+'), period ('.'), or hyphen ('-')"; in practice, this won't affect most documents, but it is more flexible and future-compatible.
- fixed a bug where markdown headings containing HTML links were still wrongly being wrapped with generated anchor links, thanks to jdalton for pointing it out! (issue/200, pull/201)
- removed some unused configuration option handling from the process by which we wrap markdown code blocks (pull/154)
- unit tests were breaking when dependencies's READMEs weren't in our file tree (specifically mocha, a devDependency); now we skip trying to process those (pull/184)
- a dependency was leaking a variable into the global scope; now we test for that; thanks aredridel! (issue/180, pull/186)
- added some tests to make sure marky doesn't accidentally do mustache template variable replacement (issue/160, pull/161)
glob
updated to7.0.0
(pull/150)lodash.pickBy
updated to4.2.1
(pull/155)github-url-to-object
held at2.1.0
(pull/158) pending resolution of github-url-to-object-issue-19standard
updated to7.1.0
(pull/179)mocha
updated to2.5.2
(pull/184)markdown-it-emoji
updated to1.2.0
(pull/189)
- updated
markdown-it
to5.1.0
that broke the behavior of fenced code blocks. updated tests to reflect new behavior. (pull/100) by revin - we were seeing rendering issues because
markdown-it
does not do anything with tab characters in fenced code blocks. we now convert tab characters into four-spaces, which follows Github flavored markdown (issue/126,pull/127) by revin - converts emoji in heading IDs to emoji shortcode names to more closely match Github flavored markdown (issue/128, pull/133) filed by chrisdickinson, fixed by revin
- badges about the time til close for PRs and issues were added to
the
README
by ashleygwilliams - a line about
:emoji:
conversion was added to theREADME
by revin - a trailing comma in the options description was removed by revin
- originally we were installing some packages as
devDependencies
in order to use theirREADME
s in tests. this became an issue when greenkeeper would attempt to update them and break our tests :) we now have pulled in theREADME
s as static assets (issue/91 pull/114), by revin - tests were all in a single file, broken up in categories (issue/122, pull/123) by revin
- test coverage was greatly improved (pull/138) by revin
- our
packagize
module would error out if the package provided, lacked a name,if()
guard added - ensure that
cdn
module bails if there isn't sufficient package data supplied - add a few lines to
github.md
test fixture to make sure it handles<img>
elements with a blank/missingsrc
attribute and<a>
elements with a blank/missinghref
- ensure running marky with
{debug: true}
produces the same output as normal execution
- our
- any URL containing "//youtube.com" was make it through our iframe filter, but the intent was to only allow actual YouTube URLs. (issue/108, pull/110), filed by lovasoa, solved by revin
glob
updated to6.0.4
(pull/101)- remove
front-matter
(pull/134) by revin cheerio
updated to0.20.0
(pull/135)lodash
updated to4.2.0
(pull/136)standard
updated to6.0.4
(pull/144) by Flet
- some code existed for creating meta tags based on
README
frontmatter that was not being used. it and its tests were removed. (issue/43, pull/116) by revin - a small module for removing HTML comments was still in the codebase but had not been used in a while. was finally fully removed (pull/121) by revin
- we strip
h1
tags fromREADME
s that have the same content as the package name, however we did not update this feature to account for scoped package names, e.g. @scope/pkg. now we remove the scope from the package meta-data to check theREADME
'sh1
. (issue/48) - reported by sindresorhus, solved by revin
- fix syntax error in code example re: npm package parsing (pull/102) - by latentflip
- updated
README
to reflect current list of dependencies - (pull/107) - by revin - updated author in
package.json
to reflect ashleygwilliams is current maintainer (pull/112) - by ashleygwilliams
- we were parsing
:)
into emoji, though this is not the desired behavior. disabled shortcut emoji parsing in the markdown-it-emoji plugin. (issue/95, pull/97) - reported by cloakedninjas, solved by revin
markdown-it@5.1.0
would break the build, sopackage.json
was updated to hold at minor version,~5.0.2
(pull/90) - by ashleygwilliams