1. #201
    Sencha User renku's Avatar
    Join Date
    Feb 2009
    Location
    Estonia
    Posts
    437
    Vote Rating
    17
    renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold

      0  

    Default


    JSDuck 4.3.1 released

    This release mostly concerns the comments system, which has been completely rewritten. It should function about the same though. The comments now include a tagging system to help moderators better organize all the comments posted to docs.sencha.com.

    The only other new feature is the ability to specify a path for each guide in guides JSON config file.

    But there's a bunch of bug fixes. See the changelog for details. So you should still upgrade

    In other news I've simplified the initial setup procedure of JSDuck development environment. See the Hacking guide if you want to jump in.

    Any feedback most welcome as always.

  2. #202
    Sencha User renku's Avatar
    Join Date
    Feb 2009
    Location
    Estonia
    Posts
    437
    Vote Rating
    17
    renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold

      0  

    Default


    JSDuck 4.4 released

    Finally the JSDuck comments server is available as a separate app.

    It's still not quite convenient to set up though. The main problematic part is the handling users. The Sencha Docs site gets the user data from Sencha Forum database, but obviously this isn't an option if you want to use it outside of Sencha. Maybe you would like to connect it to your own users database somewhere. Or maybe you would like to keep a separate users db just for JSDuck comments. Frankly I don't really know what's the main scenario here.

    For now there are two authentication schemes implemented: Sencha Forum, and a simple implementation that uses the local comments database itself. But the latter there is no sign-up form or users management UI implemented for that. So it serves more as a starting point for somebody who would like to set up his own.

    So at this point I'm asking some input from the community. What would you like to have? Maybe somebody could write up something for his own use and share it with others. The code is all out there, so have a poke around.

    See the changelog for other smaller details in this release.

  3. #203
    Sencha User demongloom's Avatar
    Join Date
    Apr 2008
    Location
    Israel
    Posts
    30
    Vote Rating
    3
    demongloom is on a distinguished road

      2  

    Default JsDuck + PlantUML

    JsDuck + PlantUML


    Hi Nene!

    I'm working on plugin for jsduck which generates flow charts from code. It uses the esprima parser to get AST of analyzing function and graphviz syntax to create chart.

    I've attached some images in post to demonstrate it.

    My plugin is still far from completeness and lot of the flows is not supported, but I must to share it with community.
    Attached Images


  4. #204
    Sencha User SimoAmi's Avatar
    Join Date
    Oct 2008
    Location
    New York
    Posts
    119
    Vote Rating
    3
    SimoAmi will become famous soon enough

      0  

    Default


    Hi demongloom,
    Interesting idea. Not to discourage you but if you have heavy classes with lengthy functions, you'll end up with huge images. For instance imagine what you'll get with something like jquery.js or ext-all.js.

  5. #205
    Sencha User demongloom's Avatar
    Join Date
    Apr 2008
    Location
    Israel
    Posts
    30
    Vote Rating
    3
    demongloom is on a distinguished road

      0  

    Default


    Yes, of course, sometimes graphviz fails in image rendering due large size. Or renders spaghetti graphs (if it's spaghetti code). It's visually show that code is too much heavy and needs in refactor With these images is much easier to prove it.

    IMHO, for small functions such kind of visualization is perfect.


  6. #206
    Sencha User renku's Avatar
    Join Date
    Feb 2009
    Location
    Estonia
    Posts
    437
    Vote Rating
    17
    renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold

      0  

    Default


    Interesting experiment indeed.

    Though I personally find that the flow charts of code aren't really useful - I better just read the source directly. But that might be just me and your view might be completely the opposite. As SimoAmi sayd: don't let this discourage you.

    Anyway, I've played around with Graphviz too to generate some higher level diagrams. In particular diagrams of inheritance and other relations between classes which I've found much more useful.

    Do you have plans of also doing some other diagrams, or are you planning to strictly stick with the flow charts?

  7. #207
    Sencha User demongloom's Avatar
    Join Date
    Apr 2008
    Location
    Israel
    Posts
    30
    Vote Rating
    3
    demongloom is on a distinguished road

      0  

    Default


    First of all it's just an experiment, which is succeeds from my point of view. Now I have much more experience with graphviz and esprima than before.
    Yes, I also have plans to generate high-level abstraction charts like which functions are called within inspected function or whose use this function. But to implement it I need create major changes in jsduck code to get more information. My current implementation have a hacky trick to process only the code which is belongs to inspected function. For higher level diagrams I would need to access to the other files and make more complex analyzes of the relationships in code.

    It even could be an separated project without any relation to jsduck.

    And of course I need to share my plugin in github.

    Below you can find some real visualizations from ext.
    Attached Images


  8. #208
    Sencha User renku's Avatar
    Join Date
    Feb 2009
    Location
    Estonia
    Posts
    437
    Vote Rating
    17
    renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold

      0  

    Default


    JSDuck 4.5 released

    No big changes, but some neat additions that should make your life better:

    JSDuck now finally prints out warning messages when it encounters unknown @tags - previously it just ignored any tag it didn't know of, making it hard to discover a simple typos like writing @mehtod instead of @method.

    Events can now be more easily documented by just placing doc-comment before this.fireEvent() call:

    Code:
    /**
     * Fired when element is clicked on.
     */
    this.fireEvent("click", this, value);
    The --external option now accepts '*' wildcard, so instead of ignoring classes one-by-one you can ignore a whole namespace of classes by using something like --external='MyApp.*'.

    See the changelog for details.

  9. #209
    Sencha User
    Join Date
    Mar 2007
    Posts
    7,854
    Vote Rating
    4
    tryanDLS is on a distinguished road

      0  

    Default


    Just getting around to converting my old jsdoc stuff to jsduck and I'm looking for more info as to what can be passed in via the config json file.

    I have this, but I'm wondering what other options can be passed and what some mean (seo?). I don't see anything in the wiki beyond the sample config file.


    {
    "--title": JavaScript API",
    "--output": "./out",
    "verbose": true,
    "--welcome": "welcome.html",
    //"--warnings": ["-link", "-no_doc"],
    //"--seo": true,
    "--": [
    "./in/NewUtility.js"
    ]
    }

    Thanks

  10. #210
    Sencha User renku's Avatar
    Join Date
    Feb 2009
    Location
    Estonia
    Posts
    437
    Vote Rating
    17
    renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold renku is a splendid one to behold

      0  

    Default


    The config file is just another way to specify command line options, so all the command line options can be also used in config file.

    To get help about a specific option, use the --help option. e.g. to see what "--seo" option does:

    Code:
    $ jsduck --help=seo