2
2
3
3
The largest change to documentation.js so far.
4
4
5
+ ** Dropping streams**
6
+
5
7
This a major refactor of the documentation.js interface with a focus on
6
8
simplifying the system. Up until this point, documentation.js was built around
7
9
[ node.js streams] ( https://nodejs.org/api/stream.html ) , which are low-level
@@ -11,6 +13,37 @@ majority of documentation.js's internals are simple and synchronous functions
11
13
for which basic functional composition makes more sense than stream
12
14
semantics.
13
15
16
+ Documentation 3.0.0 uses simple functional composition for operations like
17
+ parmameter inference, rather than streams.
18
+
19
+ ** Stronger support for ES6, ES7, and Flow**
20
+
21
+ We've switched to [ Babel] ( https://babeljs.io/ ) as our source code parser,
22
+ which means that we have much broader support of new JavaScript features,
23
+ including import/export syntax and new features in ES6.
24
+
25
+ Babel also parses [ Flow type annotations] ( http://flowtype.org/docs/type-annotations.html ) ,
26
+ and new inference code means that we can infer
27
+
28
+ * Parameter names & types
29
+ * Return types
30
+
31
+ Without any explicit JSDoc tags. This means that for many simple functions,
32
+ we can generate great documentation with less writing.
33
+
34
+ ** mdast-based Markdown output**
35
+
36
+ We've switched from templating Markdown output with [ Handlebars.js] ( http://handlebarsjs.com/ )
37
+ to generating an [ abstract syntax tree] ( https://en.wikipedia.org/wiki/Abstract_syntax_tree )
38
+ of desired output and stringifying it with [ mdast] ( https://github.com/wooorm/mdast ) .
39
+ This lets documentation.js output complex Markdown without having to worry
40
+ about escaping and properly formatting certain elements.
41
+
42
+ ** Test coverage 100%**
43
+
44
+ documentation.js returns to 100% test coverage, so every single line
45
+ of code is covered by our large library of text fixtures and specific tests.
46
+
14
47
## 2.0.1
15
48
16
49
* Fixes ` @param ` tags that refer to properties of unmentioned objects: these
0 commit comments