Commit Graph

23 Commits

Author SHA1 Message Date
Tim Schaub
c820a7a1f8 Additional doc for the namespace option
People should be discouraged from exporting to single letter namespaces to avoid collissions with the symbols generated by the compiler.
2014-05-21 13:22:40 +02:00
Tim Schaub
250f6901d3 Pass around single config object 2014-05-21 13:22:32 +02:00
Andreas Hocevar
3447f93bfe Document the new namespace option 2014-05-20 21:56:32 +02:00
Andreas Hocevar
cd4092f3e0 Allow to specify an objectToExportTo for goog.exportSymbol
This allows users to build ol3 without anything exposed in the
global namespace. This can e.g. be useful for creating an ol3
AMD module, by simply using a build configuration with
"define('ol',function(){var o={};%output%return o.ol;});" as
"output_wrapper".
2014-05-20 21:49:26 +02:00
Tim Schaub
c3184f2cce Support for debug builds (concatenation only)
Whitespace builds are still painful to debug.  Skipping the compiler altogether and simply concatenating sources is a better option for development and debugging.  By ommitting the `compile` option in a build config, the output is "uncompiled" - a straight concatenation of all sources in dependency order.
2014-05-14 10:39:51 -06:00
Tim Schaub
f9157a6123 Rename generate-symbols.js to generate-info.js
This task generates build related metadata for the library based on doc annotations.  Since it is about more than writing out exportable symbols, it makes sense to have a more general name.
2014-05-05 07:41:47 -07:00
Tim Schaub
48828a238a Generate metadata for boolean defines in addition to exportable symbols 2014-05-05 07:14:23 -07:00
Tim Schaub
ec6aa21912 Include goog.require calls in exports file 2014-04-29 09:57:25 -06:00
Tim Schaub
d087fdbefd Add list of provides to symbol metadata 2014-04-29 09:57:25 -06:00
Tim Schaub
fd170eb295 Accept a path for exports file 2014-04-29 09:57:19 -06:00
Tim Schaub
3dd5fb88e5 Allow configuration of JVM arguments in build 2014-04-29 09:53:07 -06:00
Tim Schaub
758eed357e Accept a src config, add docs 2014-04-29 09:53:06 -06:00
Tim Schaub
a28db38eef Parse options and add docs 2014-04-29 09:53:06 -06:00
Tim Schaub
b6277e0a01 Build task for driving the compiler 2014-04-29 09:53:06 -06:00
Tim Schaub
88e41f25ea Generate symbols before exports 2014-04-29 09:53:06 -06:00
Tim Schaub
88d67b7370 Regenerate symbols if parents have changed
The generate-symbols.js task runs JSDoc on source files.  Because this takes a long time (13s) to run on the whole library, the resulting symbols file includes additional metadata to make it possible to do incremental symbol generation on subsequent runs.  The 'path' and 'extends' metadata for a symbol are used to determine what needs to be regenerated.
2014-04-29 09:53:06 -06:00
Tim Schaub
c692204ffd Task for generating a limited set of exports 2014-04-29 09:53:05 -06:00
Tim Schaub
d3e477a8df Allow main method to be called from elsewhere 2014-04-29 09:53:05 -06:00
Tim Schaub
457cfe851a Add a task to generate metadata on exported symbols
This runs JSDoc with the "symbols" config, providing a list of source files that have been changed since the previous run.  The output is used to generate a symbols.json metadata file containing all exportable symbols info.  A separate task will be run to generate the exports.js file.  These same metadata files will be used by a build tool.
2014-04-29 09:53:05 -06:00
Tim Schaub
6fc915ba7b Strip tags from shortdesc (et al.) when parsing
This strips markup from elements with id attributes that we care about: title, shortdesc, tags.  This will only work for people who use `npm install && npm start` to browse examples.  The other example parser doesn't strip this markup, so it should still not be used in these elements.
2014-04-04 10:07:25 -06:00
Tim Schaub
3ce6c295be Add task for parsing examples 2014-02-03 14:59:06 -07:00
Tim Schaub
2b8e87f17f Add error handler
If the server fails to start, display error message and exit.  Typically this is due to the address being in use.
2014-01-10 12:05:38 -07:00
Tim Schaub
75fffd1f47 Making use of the closure-util package
This provides some initial development utilities for people using Node.

Instructions for installing:

    npm install

After pulling down the dependencies, you can start a developement server that provides the libraries (ol and Closure Library) in debug mode (not minified/compiled).  Run the dev server with the following:

    npm start

Currently, the example index page needs to be built with `build.py`.  After building that, you should be able to browse all static files, view the examples and run the tests.
2013-09-14 18:10:12 -06:00