Commit 9d011dc6 authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Moved Hacking guide and Changelog to wiki.

parent dbc86b62
Loading
Loading
Loading
Loading
+2 −170
Original line number Diff line number Diff line
@@ -126,78 +126,7 @@ classes inherit from Ext JS classes.
Hacking it
----------

For hacking fork it from github:

    $ git clone git://github.com/senchalabs/jsduck.git

JsDuck depends on [json][], [RDiscount][], and [parallel][]; plus
[RSpec][] for tests, [compass][] for compiling the stylesheets, and
[Sencha SDK tools][sdk-tools] for combining JavaScript files.  Make
sure you have these installed:

    $ gem list

First smoke test. Run the testsuite:

    $ cd jsduck
    $ rake

If everything is green continue with some configuration.  Copy an
ExtJS 4 download inside template/extjs directory (you might just
create a symlink if you wish so):

    $ cp -r path/to/ext-4.0.2a template/extjs

Now create a file `sdk-vars.rb` inside the jsduck directory.  Use the
following template:

    # path to Ext JS 4 build
    EXT_DIR='/path/to/ext-4.0.2a'
    # where to output the docs
    OUT_DIR='/path/to/ouput/dir'
    # path to SDK (for developers at Sencha)
    SDK_DIR='/path/to/SDK'

These config options define the input and output directories for the
ext4 rake task.  Leave out the SDK_DIR option if you are not a Sencha
developer.  Now run the task:

    $ rake ext4

This will generate a development/debug version of the docs app into
the output directory you specified in `sdk-vars.rb` file.  Open up the
directory in your web browser and see if everything looks fine.  (This
task only creates the class documentation, don't worry about guides,
examples, etc being missing, and the index page of api docs blank).

This rake task is most suitable when developing the JavaScript side of
the app, as it only symlinks the files in template/ directory,
allowing you to modify the files there and see the results by just
refreshing the browser window (and not having to run the rake task
again and again).

To generate a stand-alone version of documentation (which you could
upload to some server), add export parameter to the rake task:

    $ rake ext4[export]

This will combine and compress the javascript files using Sencha SDK
Tools and does not create symlinks to the development directory.

For developing the Ruby side, try to please the unit tests.

If you are a Sencha developer, use the `sdk` and `touch` tasks instead
to generate either extjs or touch docs from the corresponding branches
in SDK repository.

Happy hacking.

[json]: http://flori.github.com/json/
[RDiscount]: https://github.com/rtomayko/rdiscount
[parallel]: https://github.com/grosser/parallel
[RSpec]: http://rspec.info/
[compass]: http://compass-style.org/
[sdk-tools]: http://www.sencha.com/products/sdk-tools/
See [Hacking guide](https://github.com/senchalabs/jsduck/wiki/Hacking) in wiki.


Documenting your code with JSDuck
@@ -236,101 +165,4 @@ reported bugs, submitted patches, and provided a lot of useful input.
Changelog
---------

* 3.0.pre - Completely new theme with tabs
  * Tabs are back
  * Separate front page
  * Guides in separate section
  * New Videos section
  * New Examples section
  * Inline examples
  * Syntax for documenting object properties.
  * Syntax for documenting default values.
  * New Syntax for optional parameters.
  * Syntax for required configs.
  * Print view and support for Google AJAX crawling.
  * No more --show-private-classes option, private classes now always shown.
  * Lots and lots of other fixes...

* 2.0.pre4 - Fixes for the previous pre-release.
  * Paging of search results.
  * Support opening classes in tree in new tabs in IE and Firefox.
  * Include upgraded version of prettifier, fixing formatting in IE.
  * New --head-html and --body-html command line options.
  * New --local-storage-db command line option.
  * Avoid creating case-insensitively same source file names,
    preventing duplicate file conflicts in Windows.
  * Include missing ExtJS image files.
  * Don't exclude static members from singleton classes, simply print
    warning about using @static in singleton class.

* 2.0.pre3 - Bogus release, skipped.

* 2.0.pre2 - Fixes for the previous pre-release.
  * New --stdout command line option.
  * Fix opening links in new tabs.
  * Few other small bugfixes and enhancements.

* 2.0.pre - Completely overhauled Ext4-themed version.
  * A lot of changes since 0.6 releases.

* 0.6.1 - Bug fixes.
  * Fix scrolling to class members in Chrome 12.
  * Make JSDuck work with Ruby 1.8.6.
  * Upgrade the embedded ExtJS to 3.4.0.

* 0.6 - JsDuck is now used for creating the official ExtJS4 documentation.
  * Automatic linking of class names found in comments.  Instead of writing
    `{@link Ext.Panel}` one can simply write `Ext.Panel` and link will be
    automatically created.
  * In generated docs, method return types and parameter types are also
    automatically linked to classes if such class is included to docs.
  * Support for `{@img}` tag for including images to documentation.
    The markup created by `{@link}` and `{@img}` tags can now be customized using
    the --img and --link command line options to supply HTML templates.
  * Links to source code are no more simply links to line numbers.
    Instead the source code files will contain ID-s like `MyClass-cfg-style`.
  * New tags: `@docauthor`, `@alternateClassName`, `@mixins`.
    The latter two Ext4 class properties are both detected from code and
    can also be defined (or overriden) in doc-comments.
  * Global methods are now placed to separate "global" class.
    Creation of this can be turned off using `--ignore-global`.
  * Much improved search feature.
    Search results are now ordered so that best matches are at the top.
    No more is there a select-box to match at beginning/middle/end -
    we automatically search first by exact match, then beginning and
    finally by middle.  Additionally the search no more lists a lot of
    duplicates - only the class that defines a method is listed, ignoring
    all the classes that inherit it.
  * Support for doc-comments in [SASS](http://sass-lang.com/) .scss files:
    For now, it's possible to document SASS variables and mixins.
  * Several bug fixes.

* 0.5 - Search and export
  * Search from the actually generated docs (not through sencha.com)
  * JSON export with --json switch.
  * Listing of mixed into classes.
  * Option to control or disable parallel processing.
  * Accepting directories as input (those are scanned for .js files)
  * Many bug fixes.

* 0.4 - Ext4 support
  * Support for Ext.define() syntax from ExtJS 4.
  * Showing @xtype and @author information on generated pages.
  * Showing filename and line number in warnings.
  * Fix for event showing the same doc as method with same name.

* 0.3 - Performance improvements
  * Significant peed improvements - most importantly utilizing
    multiple CPU-s (if available) to speed things up.  On my 4-core
    box JsDuck is now even faster than ext-doc.
  * Printing of performance info in verbose mode
  * Support for comma-first coding style
  * Few other fixes to JavaScript parsing

* 0.2 - most features of ext-doc supported.
  * Links from documentation to source code
  * Syntax highlighting of code examples
  * Tree of parent classes
  * List of subclasses

* 0.1 - initial version.
See [Changelog](https://github.com/senchalabs/jsduck/wiki/Changelog) page in wiki.