16 Commits

Author SHA1 Message Date
Tom MacWright
25152edeb9 style(prettier): Use prettier for code formatting (#710)
* style(prettier): Use prettier for code formatting

This saves us style issues. Also adds husky and lint-staged for pre-commit testing

Refs https://github.com/documentationjs/documentation/issues/709
2017-04-10 14:25:45 -04:00
Tom MacWright
631c6925d4 feat(core): Switch to Promises everywhere. Adopt Node v4 ES6 (#648)
* feat(core): Switch to Promises everywhere. Adopt Node v4 ES6

Big changes:

* Uses template strings where appropriate
* Config and argument parsing is unified and there is no such thing
  as formatterOptions anymore. All user-passed options go through
  mergeConfig.
* The node API surface changed (again): `buildSync` is removed,
  building operations return Promises.
* Now using Flow for internal type annotations.

More changes:

* Remove buildSync command
* feat(inference): Partially implement object shorthand support
* Refs #649
* Use Flow annotations to  enforce types
* Keep flow but switch to comment syntax
* Clarify types
* More flow improvements
* Turn server into class
* LinkerStack becomes class too
* Fix comment description type
* Run flow on lint
* Many more flow fixes
* More intense flow refactoring
* Simplify inference steps
* Update inference tests, flow errors down to 1
* Continue refining types
* Fix more flow issues
* Use 'use strict' everywhere
* Make 'ast' property configurable
* Fix many tests
* Fix more tests
* Fix more tests
* Fix augments
* Test Markdown meta support
* Improve test coverage
* Switch back from for of to for for speed
2017-01-27 16:14:19 -05:00
Tom MacWright
cb8fdfa74f feat(bin): Support globs on windows and use smarter recursion (#629)
This brings logic from eslint over to documentation: instead of readdirSync, we're using the glob
module. This also, I hope, will let us support globs on Windows without changing OSX/Linux behavior.
Fixes #607
2016-12-26 10:24:30 -05:00
Tom MacWright
846ab94772 fix(parser): Avoid error about deoptimization on very large files (#621)
This sets compact: false for babelify, so that Babel doesn't complain about not being able to

compact'ify very large files

* https://github.com/documentationjs/gulp-documentation/issues/14
2016-11-26 18:57:09 -05:00
Tom MacWright
4dc8cb0ca9 Support system.import with nice handy babel plugin (#603)
* Support system.import with nice handy babel plugin

* Use a smaller import

* Use smaller imports here too
2016-11-18 10:51:03 -05:00
Tom MacWright
06412eaad8 Turbo v1 (#497) 2016-08-19 12:22:54 -04:00
Tom MacWright
caa1637880 Fix ability to require() JSON and other files without extension.
Fixes #402
2016-06-03 13:47:42 -04:00
Tom MacWright
aadb8addc6 Even more documentation 2016-06-02 14:53:58 -04:00
Tom MacWright
e67409e296 More docs 2016-06-01 17:41:02 -04:00
Zachary Golba
f1e35ad763 feat: add decorator support 2016-05-26 20:34:37 -04:00
Tom MacWright
d858eca51b Expand directories. Fixes #429 2016-05-20 20:32:39 -04:00
Tom MacWright
3da1ff6dd0 Source-sorting by default (#410)
* Source-sorting by default

Many changes

* Uses a new version of module-deps that exposes a sort key
  we use to sort documentation.
* Adds inference for methods in objects
* Groups events into a separate comment property

* Add jsdoc property. Refs https://github.com/documentationjs/documentation/pull/388#issuecomment-215791547

* Namespaces and paths

* More powerful paths: paths now include name, kind, and scope
* comments now include a 'namespace' property with a formatted namespace

* Fix tests

* Re-ignore fonts

* Nix sourceKey from output

* Pin dependency versions

* Fix module-deps-sortable ref

* Update tests for right deps
2016-04-29 18:09:52 -04:00
Tom MacWright
70fbdedf0c Babel 6 upgrade, round 2 2016-02-14 13:15:54 -05:00
Tom MacWright
bcc4b2c6b2 Enforce semi: 2 2015-12-06 18:01:55 -05:00
Tom MacWright
8ca0e0844f Support ES7 class properties 2015-10-27 11:55:55 -04:00
Tom MacWright
c38b91b4e3 Reparse transformed source 2015-10-05 14:19:48 -04:00