Jeff Williams
fd5ca944d2
abolish the post-install script and template/plugin copying ( #519 , #612 )
...
JSDoc has a few requirements that are somewhat unusual for a Node.js app:
1. We need `require('jsdoc/foo')` to work from any module.
2. We need `require('jsdoc/foo')` to work from external code, such as templates and plugins.
Prior to this commit, JSDoc did two separate things to meet these requirements:
1. Use an npm post-install script to create a symlink from `lib/jsdoc` to `node_modules/jsdoc`.
2. When a user runs JSDoc, copy templates and plugins into the JSDoc directory.
These fixes worked, sort of. But they also caused numerous issues with file permissions, especially on Windows.
We now use the Requizzle module, which hacks the Node.js module system to support JSDoc's use cases. There's no longer a post-install script, and there's no need for a symlink in `node_modules`.
2014-06-09 17:27:06 -07:00
Jeff Williams
bce238bb51
replace JSHint with ESLint (and associated cleanup)
2014-04-19 10:38:02 -07:00
Jeff Williams
49ad746e49
trailing whitespace cleanup
2014-03-04 13:47:57 -08:00
Jeff Williams
48e6c392d5
huge whitespace cleanup
...
- remove all trailing whitespace
- for consistency, replace all tabs with spaces
2014-03-03 07:43:01 -08:00
Jeff Williams
c9b0237c12
overhaul logging and error handling ( #416 )
2013-12-23 15:25:28 -08:00
Jeff Williams
f55feb1a0e
'use strict'ify
2013-11-11 23:49:54 -08:00
Jeff Williams
e0df71b1ae
fix various path-related issues on Windows
...
- add env.pwd global, and use it instead of process.env.PWD, which is
undefined in Node.js on Windows
- normalize paths where necessary
2013-11-10 16:57:48 -08:00
Jeff Williams
705e72b77f
permissions change
2013-11-05 20:57:03 -08:00
Jeff Williams
f7256d8d07
make npm installs work correctly; misc cross-platform fixes; cleanup
...
includes new Rhino jar that strips hashbangs before execution:
https://github.com/jsdoc3/rhino/commit/95487737
2013-11-02 23:14:04 -07:00
Jeff Williams
de4297b20b
refactor jsdoc.js; update Rhino
...
- Switched to a new Rhino fork: https://github.com/jsdoc3/rhino
(currently reflects mozilla/rhino HEAD + enhancements for JSDoc)
- Removed jsdoc/util/global; new Rhino fork provides a `global` alias
just like Node.js
- Moved most of jsdoc.js into cli.js, and refactored for clarity
2013-10-27 10:46:27 -07:00
Jeff Williams
751bea1b0a
fixes for Node.js compatibility (see details)
...
- new Rhino .jar to help find module paths
(https://github.com/hegemonic/rhino/commit/31b70105 )
- make __dirname and process.cwd() provide the current module path; use
only env.dirname for JSDoc's home dir; fix callers
- get rid of jsdoc/util/include (and update test framework accordingly)
- avoid running Rhino/Node.js tests on the wrong runtime
- remove support for global 'publish' function, which relied upon
jsdoc/util/include
- update jsdoc/util/dumper for consistency with Node.js'
JSON.stringify()
- fix jsdoc/util/runtime to detect Node.js correctly
- add Node.js versions of jsdoc/fs and jsdoc/path
- other minor cleanup
2013-10-25 23:30:56 -07:00
Jeff Williams
9745685dde
make the fs.statSync shim throw an error (consistent with Node.js)
2013-10-23 09:32:20 -07:00
Jeff Williams
e02afd570e
create parser, THEN attach plugins
...
fixes broken test
2013-10-21 09:11:23 -07:00
Jeff Williams
23003541ad
add config setting to choose a parser
2013-10-21 08:54:39 -07:00
Jeff Williams
e7752cde18
Merge branch 'master' into parsimony
...
Conflicts:
lib/jsdoc/name.js
lib/jsdoc/src/handlers.js
lib/jsdoc/src/parser.js
lib/jsdoc/tag/dictionary/definitions.js
lib/jsdoc/util/templateHelper.js
package.json
test/specs/documentation/alias.js
test/specs/documentation/modules.js
test/specs/tags/augmentstag.js
test/specs/tags/overviewtag.js
2013-10-21 08:42:29 -07:00
Jeff Williams
735a9b790c
esprima parser (currently disabled)
2013-10-21 08:02:03 -07:00
Jeff Williams
77546a9d52
more fixes to ensure that we always generate valid filenames ( #440 )
2013-10-02 22:37:28 -07:00
Jeff Williams
c058a60ed1
hook up node visitors; gratuitous refactor of 'runtime' module (formerly 'vm'); move runtime-specific code
...
includes updated Rhino jar:
https://github.com/hegemonic/rhino/commit/b63c00d5
2013-07-05 09:11:27 -07:00
Jeff Williams
a507eced37
fail when a nonexistent config file is specified ( #425 )
2013-06-23 15:21:19 -07:00
Jeff Williams
11be32b325
fireProcessingComplete cleanup
2013-06-02 16:49:49 -07:00
Ernst Haagsman
93859fe94c
processingComplete event: covered by unit tests
...
The processingComplete event now contains an object with the docs array under the 'doclets' key. The event is now covered by a unit test.
2013-05-15 11:18:03 +02:00
Ernst Haagsman
d4ee1d324e
Plugins: Created processingComplete event
...
The processingComplete event fires after all processing has been
done. It gets the entire docs as its only parameter.
2013-05-10 11:56:34 +02:00
Jeff Williams
692f9c9290
fix fallback code for loading conf.json
2013-04-23 11:24:18 -07:00
Jeff Williams
ac857da48d
add the config file path to the error ( #407 )
2013-04-23 09:12:05 -07:00
Jeff Williams
352aa84091
refactor requires; don't suppress exceptions if the config file cannot be parsed ( #407 )
2013-04-23 09:02:02 -07:00
Jeff Williams
8c65d81e23
match Node.js' console.log/error/info/warn/trace; speed up -X option ( #298 )
2013-04-18 23:16:47 -07:00
Jeff Williams
a3286e38bc
remove jsVersion config property ( #390 )
2013-04-17 17:45:46 -07:00
Jeff Williams
f90f631980
address changes in recent JSHint versions
...
- be sneaky about assignment to global "app" and "env"
- disable the newly aggressive test for trailing whitespace
2013-03-07 21:48:17 -08:00
Gergely Aradszki
ef9660119f
Merge source includes with command line arguments *before* checking for README.md and package.json.
...
Allows to set these in configs source.includes.
2013-02-17 14:54:09 +01:00
Jeff Williams
41f538feb9
exit after catching a Rhino exception ( #325 )
2013-01-28 20:58:27 -08:00
Jeff Williams
7d4dd38902
store version info in env.version, and display version number in default template output ( #321 )
2013-01-27 21:07:23 -08:00
Jeff Williams
87cd24728f
allow plugins to be installed outside of the JSDoc directory ( #277 )
2013-01-27 07:56:43 -08:00
Jeff Williams
b814da3e8b
support -v option; provide more detailed version info ( #303 )
2013-01-17 18:06:31 -08:00
mathematicalcoffee
ac14eda668
added --version switch.
2013-01-18 10:16:41 +10:00
Jeff Williams
d73570defc
make fs module consistent with Node.js ( #211 )
2012-12-26 19:03:05 -08:00
Jeff Williams
b786527ea4
add mechanism for loading VM-specific functions ( #289 )
2012-12-26 11:56:33 -08:00
Jeff Williams
e4236eaa42
remove most globals from jsdoc.js ( #287 )
...
for clarity, also forward-declared all variables in main()
2012-12-25 04:55:50 -08:00
Jeff Williams
6c9ef48324
clean up VM-specific code ( #210 )
2012-12-23 17:57:38 -08:00
Jeff Williams
d5877c1217
move rhino_modules/ to lib/
2012-12-23 14:09:37 -08:00
Jeff Williams
9af22fdc3f
move lib/ to rhino/ ( #210 )
2012-12-23 09:51:58 -08:00
Jeff Williams
a17c90dfd2
deprecate env.dirname in favor of __dirname ( #286 )
...
plus some minor cleanup to address JSHint warnings
2012-12-23 09:45:11 -08:00
Jeff Williams
8bc7f7246a
Revert "support a raw array of doclets in addition to TaffyDB objects ( #258 )"
...
This reverts commit aad7b4896e503b66a29f46c02cc08f84e5535f42.
Conflicts:
test/specs/jsdoc/util/templateHelper.js
2012-12-04 21:53:17 -08:00
Jeff Williams
374c0c1dda
make the -c/--configure option work again
...
thanks to @majo44 for reporting the issue!
(also removed the unused __timerPool global from a JSHint comment.)
2012-12-04 08:08:41 -08:00
Jeff Williams
d2d05fcb88
fix conf.json issues
...
- don't try to create conf.json if it doesn't exist (resolves a
permissions issue when installing with npm -g)
- add default values for recently added properties (hopefully fixes
Travis CI build)
2012-12-02 20:26:05 -08:00
Jeff Williams
aad7b4896e
support a raw array of doclets in addition to TaffyDB objects ( #258 )
2012-11-20 21:55:49 -08:00
Jeff Williams
ef6d78f88e
simpler solution to #257
...
keeping env.run.finish in case we add more logging at some point
2012-11-11 02:48:30 -08:00
Jeff Williams
1a7a7f8588
allow shutdown to happen without swallowing exceptions ( #257 )
2012-11-10 12:04:35 -08:00
Jeff Williams
13274551c5
Revert "don't swallow uncaught exceptions ( #257 )"
...
This reverts commit f205e2bde105c3b7a5244ec0ac1733cee111dbca.
2012-11-10 11:27:08 -08:00
Jeff Williams
f205e2bde1
don't swallow uncaught exceptions ( #257 )
2012-11-10 11:19:30 -08:00
Jeff Williams
dabd3c4abe
make it possible to set env.opts.destination in a config file ( #252 )
2012-11-07 06:33:02 -08:00