2011-12-03 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, docs/WhatsNew.md, lib/yard.rb: Bump to version 0.7.4 and update README/ChangeLog/WhatsNew * lib/yard/templates/helpers/markup_helper.rb: Revert loading of RDoc inside of markup helper, load it in RDocMarkup instead (since JRuby does not like this all the time) * lib/yard/templates/helpers/markup/rdoc_markup.rb: JRuby doesn't like doing a require 'rdoc' without the gem. * lib/yard/templates/helpers/markup/rdoc_markup.rb, spec/templates/helpers/html_helper_spec.rb: Add support for RDoc 3.10 which no longer requires 'rdoc' inside markup sources * lib/yard/server/commands/search_command.rb: Prune search results according to verifiers (no-private, etc.) This should ensure that the server side search results are in sync with the statically generated class/method lists. Closes #420 * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Add support for rb_define_alias Closes #413 * lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/html_helper_spec.rb: Re-organize markup types text, none, and add type 'pre'. The new behaviour for the types are as follows: pre: Pre-formatted text, wrapping input inside <pre> tags. text: No formatting except for replacing newlines with <br> tags. none: No formatting at all. In all cases, HTML is escaped. Note that syntax highlighting does not work in these markup types. Closes #416
2011-12-02 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/html_helper_spec.rb: Add 'textile_strict' markup type that uses strict hard breaks on newlines * lib/yard/templates/helpers/markup/rdoc_markup.rb, spec/templates/helpers/markup/rdoc_markup_spec.rb: Ignore <tt>typewritertext</tt> inside code blocks Closes #403 * lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Redcarpet is now the default markdown provider for YARD * lib/yard/templates/helpers/html_helper.rb: Autolink when using red carpet * .../helpers/html_syntax_highlight_helper_spec.rb: Fix specs to use new css rules when generating HTML syntax highlighted Ruby * .../helpers/html_syntax_highlight_helper.rb, templates/default/fulldoc/html/css/style.css, templates/guide/fulldoc/html/css/style.css: Change generated HTML when performing syntax highlighting of Ruby code to generate ids with CSS prefix "rubyid_" to avoid collisions with other CSS class names.
2011-12-01 Mark Morga <markmorga@gmail.com>
* lib/yard/rake/yardoc_task.rb: Documentation improvements in YardocTask. Fixed attr :options to indicate that it should be an Array<String> rather than Hash. Added an example for attr :files to show correct use of "-" for extra files.
2011-11-28 Loren Segal <lsegal@soen.ca>
* lib/yard/server/commands/library_command.rb, .../doc_server/processing/html/processing.erb: Server "processing" response should return HTTP code 202 Accepted instead of 302. This change makes IE8/IE9 happier about redirects, and is the proper response code for this situation. Closes #418
2011-11-26 Kouhei Sutou <kou@clear-code.com>
* lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: support encoding detection in C source file. * spec/parser/source_parser_spec.rb: accept 'coding: ENCODING; OTHER PARAMTERS' style encoding line. * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: support UTF-8 as encoding name.
2011-11-25 Kouhei Sutou <kou@clear-code.com>
* spec/registry_store_spec.rb: ensure test directory nonexistent.
2011-11-09 yuta yamada <yamada@clear-code.com>
* README.md: fix a typo.
2011-11-06 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/style.css, templates/guide/fulldoc/html/css/style.css: Better CSS targeting to handle example identifiers inside code blocks Closes #410
2011-11-04 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/markup_helper.rb: Require 'rdoc' when loading RDoc markup. Fixes issues with new RDoc 3.x markup loading. Closes #406, #407
2011-10-21 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/js/app.js: Actually want nextAll(), not next() when filtering next elements in collapse/view source links * templates/default/fulldoc/html/js/app.js: Be more specific about which next() element to toggle (collapse and view source JS event handlers) * docs/GettingStarted.md: Fix link to types.html
2011-10-20 Loren Segal <lsegal@soen.ca>
* lib/yard/rubygems/specification.rb: Also ensure that has_rdoc is always boolean inside of has_rdoc? (in case accessor was not called by newer RubyGems) References #401 * lib/yard/rubygems/specification.rb: Ensure that has_rdoc is true by default (always boolean) Closes #401
2011-10-16 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Error early if files have markup formats that are not available on the system * lib/yard/code_objects/base.rb: Remove unused self.line setting method. This method was initiating a dispatch to method_missing, since the method did not exist, and was silently setting an attribute on the object that is never used. * lib/yard/code_objects/base.rb: Implement to_ary on CodeObjects::Base Ruby 1.9.2+ likes to ask the base object if it responds to to_ary when Array#flatten is called on a list. This causes method_missing to be dispatched to and incurs significant overhead. A 6% performance improvement was noted for implementing this method alone.
2011-10-15 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb: Update README, ChangeLog and bump to 0.7.3 for release * Rakefile: Add ruby193 to suite * spec/config_spec.rb: Remove unnecessary file? stub, fixes JRuby spec * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Support rb_define_attr in CRuby code Allows for commented /* rb_define_attr */ block to define an attribute silently when attribute methods are defined through rb_define_method. Closes #362 * docs/GettingStarted.md: Fix reference to changed method name in Getting Started documentation
2011-10-14 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix tokenizing of heredoc source Closes #366 * lib/yard/code_objects/macro_object.rb: Fix escaping of {} * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Use ! to escape {} syntax * spec/cli/server_spec.rb, spec/handlers/constant_handler_spec.rb: Make tests more Windows friendly * lib/yard/parser/ruby/ruby_parser.rb: Fix parsing of %w{} and %w() when ended by a newline * README.md: Sentence rewording * README.md: Get rid of those unicode characters in README * templates/default/fulldoc/html/css/style.css, templates/guide/fulldoc/html/css/style.css: Add styling for RDoc definition lists (default and guide templates) Fixes #359
2011-10-14 Dirkjan Bussink <d.bussink@gmail.com>
* lib/yard/verifier.rb: Use remove_method instead of undef_method undef_method has very different semantics. It prevents the class from responding to the named method. This means that also original methods on super classes won't be called. This for example results in weird behavior on Rubinius since the original method_missing method can't be called which normally throws the NoMethodError. Also see: http://www.nach-vorne.de/2008/2/28/undef_method-remove_method/index.html
2011-10-07 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Clean up array AST node handling
2011-10-05 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/js/full_list.js: Force items to show in list search when parent lists are collapsed. Fixes #392 * templates/default/fulldoc/html/js/full_list.js: Improve JS searching capabilities by adding minimal fuzzy finding behaviour. Toggle case sensitive searching when capital letters are used
2011-10-04 Grégory Karékinian <greg@karekinian.com>
* docs/GettingStarted.md: Added information about escaping curly braces
2011-10-01 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix displaying of source for unary operator nodes in the AST Closes #371 * lib/yard/templates/helpers/markup_helper.rb: Print proper missing gem error message for files with auto-detected markups that are different from default markup format. Closes #373 * lib/yard/parser/source_parser.rb: Display backtraces on parser errors in debugging mode * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fixes "Bad value for range" error in 1.9.2-p290 and 1.9.3 when using %w{} syntax (changes to ripper API). Fixes #370
2011-07-12 Tobias Koch <tobias@tobijk.de>
* lib/yard/parser/c_parser.rb: More flexible return type guessing in c-parser * handle keyword (un)signed for Integers * handle class names as return types * recognize C++ 'bool' * treat return types starting with 'char' as String * lib/yard/parser/c_parser.rb: Find override comment for C constructor
2011-10-01 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix broken ruby parser specs
2011-09-07 Loren Segal <lsegal@soen.ca>
* spec/code_objects/extra_file_object_spec.rb, spec/handlers/base_spec.rb, spec/parser/source_parser_spec.rb, spec/templates/helpers/html_helper_spec.rb: Fix various encoding and toplevel class variable changes for 1.9.3 compatibility * lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/visibility_handler.rb, lib/yard/parser/ruby/ast_node.rb, spec/handlers/ruby/base_spec.rb, spec/parser/ruby/ast_node_spec.rb: Add support for new Ripper vcall AST node, replaces var_ref for method calls Closes #384 * lib/yard/handlers/base.rb, lib/yard/parser/source_parser.rb: LoadOrderError should not stuff continuation inside of message (1.9.3 now calls to_s on raise argument) * Rakefile, lib/yard/cli/yri.rb: Remove depcrecated Config in favour of RbConfig
2011-08-18 Kouhei Sutou <kou@clear-code.com>
* lib/yard/templates/helpers/html_helper.rb: escape HTML meta characters in text for HTML output. Here is an example text file. hello.txt: Hello >_<! Here is a command to generate HTML: % yardoc - hello.txt It generates the following HTML: ... ...<pre>Hello >_<!</pre>... ... We should escape ">", "<" and so on in text to output valid HTML.
2011-08-14 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/method001.html: Fix broken spec from incomplete merge on #372
2011-08-07 Kouhei Sutou <kou@clear-code.com>
* templates/default/tags/html/option.erb: fix wrong close tag.
2011-07-01 Rob Gleeson <rob@flowof.info>
* lib/yard/templates/helpers/html_helper.rb: Add support for GitHub codeblocks when using RedCarpet.
2011-07-07 Kouhei Sutou <kou@clear-code.com>
* .../default/fulldoc/html/full_list_methods.erb: [template][html] add missing escape in object link label. This problem can be reproducable by the following steps: 1. Create the following script: class Array def &(other) end end 2. Genreate documents from the above script: % yardoc array-amp.rb 3. Find link markup in method_list.html: % grep '#&' method_list.html <span class='object_link'><a href="Array.html#%26-instance_method" title="Array#& (method)">#&</a></span> '>#&</a' should be '>#&</a'. * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: [html] fix missing escape in title.
2011-06-22 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/exception_handler.rb, lib/yard/handlers/ruby/legacy/exception_handler.rb, spec/handlers/exception_handler_spec.rb: Ignore empty raise calls instead. It is too ambiguous for YARD to guess at * spec/parser/c_parser_spec.rb: Fix C parser spec * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Handle proper filenames in C parser /* in FILE */ declarations Closes #358 * spec/parser/c_parser_spec.rb: Refactor C parser specs
2011-06-20 Sven Fuchs <svenfuchs@artweb-design.de>
* .travis.yml: Don't use bundler_args: --local in .travis.yml This setting only works on the current production worker because the gems all happen to be installed already. The new worker setup will rollback changes after every install and so tests will always fail with this setting.
2011-06-19 Loren Segal <lsegal@soen.ca>
* lib/yard/rubygems/specification.rb: Support RubyGems 1.8.x in rubygems_plugin.rb
2011-06-15 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/exception_handler.rb, lib/yard/handlers/ruby/legacy/exception_handler.rb, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Handle empty raise statements as raising Exception Closes #356
2011-06-14 Loren Segal <lsegal@soen.ca>
* README.md: Point contributors section to github's contributors page (easier maintenance) * .travis.yml: Only test for 1.8.6, 1.8.7 and ree on travis-ci.org * .travis.yml: One more update for Travis CI * Rakefile: Fix travis_ci task status exiting and legacy mode * Gemfile: Remove ripper from Gemfile temporarily * .travis.yml, Rakefile, spec/cli/yri_spec.rb: Add support for travis-ci.org * Gemfile: Fix Gemfile to add ripper/rubygems sources * ChangeLog, README.md, lib/yard.rb: 0.7.2 release * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Add extra spec for `{http://...}` links (and fix behaviour) * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Support YARD style `{http://... title}` links when using markdown provider that performs URL autolinking. Closes #353
2011-06-13 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Print correct constant values when using %w() arrays Closes #348 * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Use capitalized tag name if title is not provided in --tag Closes #352 * .gitignore, Gemfile: Add Gemfile for Bundler support
2011-06-12 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/library.rb: Fix typo in transitive_tags docs
2011-06-11 Michael S. Klishin <michael@novemberain.com>
* spec/registry_spec.rb: Eliminate deadlocks for thread-local spec group on 1.8.7-p334 Ruby 1.8.7 seems to treat empty while loops "specially". As soon as a Kernel#puts call or a variable assignment happens in the while loop body, deadlocks are gone. Note that synchronization alone wasn't sufficient.
2011-06-07 Akzhan Abdulin <akzhan.abdulin@gmail.com>
* lib/yard/autoload.rb: __p method should not depend on / file path separator. Actually it has only one parameter.
2011-06-06 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb, spec/templates/onefile_spec.rb, templates/default/onefile/html/setup.rb: Fix readme logic using --one-file and add tests * templates/default/fulldoc/html/setup.rb: No longer need to add files/readmes in templates (done inside CLI::Yardoc) * spec/cli/yardoc_spec.rb: Stub out README in extra files spec
2011-06-05 Nick Plante <nap@zerosum.org>
* lib/yard/cli/yardoc.rb: ensure that readme isn't duplicated in file list * lib/yard/cli/yardoc.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/library_command.rb, spec/cli/yardoc_spec.rb: Fix readme option display for YARD server (frames)
2011-06-03 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/legacy/statement_list.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Properly handle 'def end' in legacy parser Closes #343
2011-05-27 Loren Segal <lsegal@soen.ca>
* spec/cli/diff_spec.rb: Make File mocks in diff_spec.rb more resilient to different environments (bundler) * lib/yard/templates/helpers/text_helper.rb, spec/templates/helpers/text_helper_spec.rb: Make overload fix work with text helper as well * lib/yard/server/commands/library_command.rb: Require 'thread' in LibraryCommand Closes #338
2011-05-24 Franklin Webber <franklin.webber@gmail.com>
* lib/yard/config.rb: YARD::Config - fixed typo Thanks Loren * lib/yard/config.rb: YARD Configuration Documentation Included example of using the YARD::Config from the point-of-view of plugin designer.
2011-05-24 Jon Wood <jon@blankpad.net>
* README.md: Fix a type in the query documentation.
2011-05-23 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb, .../templates/helpers/shared_signature_examples.rb: Method signature should use regular return tag if @overload is empty * lib/yard/code_objects/macro_object.rb: Fix documentation for macro interpolation ($* not $&) * lib/yard/handlers/ruby/macro_handler_methods.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: The @attribute tag should allow setting the method name * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Link to correct object when `@overload` tag uses different method name Reported by @ryansobol Closes #330 * lib/yard/cli/yardoc.rb: Don't use --charset in 1.8 * spec/templates/helpers/html_helper_spec.rb: Load markup provider before stubbing file so specs pass * lib/yard/cli/server.rb: Simplify the assignment of expanded library path
2011-05-23 Rob Gleeson <rob@flowof.info>
* lib/yard/cli/server.rb, spec/cli/server_spec.rb: Fix failing specs.
2011-05-22 Rob Gleeson <rob@flowof.info>
* lib/yard/cli/server.rb: Resolve relative links in daemon mode.
2011-05-22 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Handles the valid 'utf8' locale value as 'utf-8' Supporting #317 * spec/templates/helpers/html_helper_spec.rb: Stub ENV for charset test Closes #317
2011-05-21 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb: Fix documentation claiming that SourceParser.parse returns a parser object; it returns void. Closes #325 * spec/cli/command_spec.rb: Add more tests for unrecognized options in yard commands * lib/yard/cli/command.rb, spec/cli/command_spec.rb: Try to continue parsing options if one argument failed to parse
2011-05-20 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Remove default parsing of --help/--version in OptionParser so that yardoc --help shows up again Closes #324 * lib/yard/handlers/ruby/legacy/macro_handler.rb, lib/yard/handlers/ruby/macro_handler.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: Enable DSL/macro detection in top level namespace Closes #321 * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Don't enforce K&R C syntax when searching for CRuby function bodies Closes #320 * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Refactor C Parser tests and ensure that comments are no longer part of the method body * lib/yard/handlers/base.rb, lib/yard/logging.rb, lib/yard/parser/c_parser.rb: Add Logger#warn_no_continuations to refactor the multiple calls to this global warning switch * lib/yard/autoload.rb: Add NamespaceMissingError to autoload
2011-05-20 Rob Gleeson <rob@flowof.info>
* lib/yard/cli/yardoc.rb: Provide a solution to issue #322. Ask 'Encoding' does it respond to default_external= before assuming that it does.
2011-05-18 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/stats.rb, spec/parser/base_spec.rb: Fix some incompatible specs on Rubinius * .gitignore: Ignore .rbc files from project * ChangeLog, lib/yard.rb: Update version / changelog * README.md: Bump to 0.7.1 * spec/code_objects/constants_spec.rb: Fix a spec
2011-05-18 Simone Carletti <weppos@weppos.net>
* docs/GettingStarted.md: Fixed broken links.
2011-05-17 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/setup.rb: Oops, yard server sets @items manually and does not fill options[:objects] * ChangeLog, README.md: Release 0.7.0 * lib/yard.rb: Bump version to 0.7.0 * README.md: Update readme for release
2011-05-16 Loren Segal <lsegal@soen.ca>
* docs/WhatsNew.md: Discuss new -t guide template in WhatsNew * lib/yard/templates/helpers/html_helper.rb: A little hack to avoid {http://foo.com} from warning about invalid object when autolinking is turned on in the markup provider * docs/WhatsNew.md: Add documentation about new --yardopts flag * templates/guide/fulldoc/html/css/style.css: Fix some tag stylings in guide style * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Make sure RDiscount autolinks URLs (silly RDiscount) * .gitignore: Ignore doc_guide dir * .yardopts_guide: Put the guide docs in another directory * .yardopts_guide: Add title to Guide docs * docs/GettingStarted.md: Document the use of the @encoding extra file metadata tag * .yardopts_guide: Add guide yardopts
2011-05-15 Loren Segal <lsegal@soen.ca>
* templates/guide/layout/html/layout.erb: Update layout to remove ToC title if there are no topics * templates/guide/fulldoc/html/css/style.css, templates/guide/layout/html/layout.erb: Update guide style
2011-04-11 Loren Segal <lsegal@soen.ca>
* templates/guide/class/html/setup.rb, templates/guide/docstring/html/setup.rb, templates/guide/fulldoc/html/css/style.css, templates/guide/fulldoc/html/js/app.js, templates/guide/fulldoc/html/setup.rb, templates/guide/layout/html/layout.erb, templates/guide/layout/html/setup.rb, templates/guide/method/html/header.erb, templates/guide/method/html/setup.rb, templates/guide/module/html/header.erb, templates/guide/module/html/method_list.erb, templates/guide/module/html/setup.rb, templates/guide/tags/html/setup.rb: Add initial guide template
2011-05-16 Loren Segal <lsegal@soen.ca>
* docs/Templates.md: Update Templates guide on adding custom js/css; manually generating assets is no longer necessary * spec/templates/onefile_spec.rb, templates/default/fulldoc/html/setup.rb, templates/default/onefile/html/files.erb, templates/default/onefile/html/setup.rb: Fix --one-file template generation and add some sanity specs so it doesn't break again
2011-05-15 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: HtmlHelper#charset should be aware of extra files and set proper page encoding * lib/yard/code_objects/extra_file_object.rb, spec/code_objects/extra_file_object_spec.rb: Attempt to reparse extra file contents as binary data if it cannot be parsed as utf-8 * lib/yard/cli/yardoc.rb: Fix wording of --charset * docs/Tags.md: Fix formatting in Tags.md * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix bug in htmlify when encountering a {} string * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add support for --yardopts FILE to specify a non-standard yardopts filename * lib/yard/cli/command.rb, lib/yard/cli/yardoc.rb: Fix yard doc --help formatting of options to make it fit on 80 width terminals
2011-05-14 Loren Segal <lsegal@soen.ca>
* docs/WhatsNew.md: What's New docs for 0.7.0 * lib/yard/code_objects/macro_object.rb, lib/yard/parser/source_parser.rb: Some inter-doc link formatting fixes * docs/WhatsNew.md: Initial what's new sections * lib/yard/parser/source_parser.rb: Add @since tag for SourceParser#contents * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Add SourceParser.{before,after}_parse_{list,file} callbacks which allow plugin developers to register callbacks and hook into parsing phase, either on a per-file basis or a per-"parse" (list of files) basis. Closes #315 * lib/yard/docstring.rb: Make Docstring#create_tag public
2011-05-13 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/macro_object.rb: Fix formatting of list in MacroObject#expand * docs/GettingStarted.md: Add `{render:}` sample tag in getting started guide * docs/GettingStarted.md: Document new {render:FOO} syntax Closes #309 * docs/GettingStarted.md, docs/Tags.md: Document new macros behaviour in Getting Started guide and Tags Overview Closes #307 * lib/yard/templates/helpers/html_helper.rb: Don't attempt to link file without serializer * lib/yard/handlers/base.rb: Make sure globals.__attached_macros is initialized in handlers * lib/yard/code_objects/macro_object.rb: Document MacroObject class * lib/yard/docstring.rb, lib/yard/handlers/base.rb, lib/yard/handlers/ruby/macro_handler_methods.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: Properly handle @overload tags and create @overload tag when @method is used
2011-05-13 Franklin Webber <franklin.webber@gmail.com>
* lib/yard/cli/command.rb: Load Script - load error message For scripts that are composed of multiple files the load script error message, in it's current state is a head scratcher. I updated the load error message to include the load exception in the output to help debug the loading of the script.
2011-05-13 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/parser/source_parser.rb, spec/cli/yardoc_spec.rb: Add 'app/**/*.rb' to default parsing glob. Closes #314 * templates/default/fulldoc/html/css/style.css: Make style more friendly to {render} on extra files
2011-05-11 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/legacy/base.rb, lib/yard/handlers/ruby/legacy/macro_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/handlers/ruby/macro_handler_methods.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/method_handler_spec.rb, spec/parser/source_parser_spec.rb: Support @macro creation/expansion in any object docstring * lib/yard/docstring.rb: Docstring should accept initialization with array (legacy handler support)
2011-05-10 misfo <tedwardo2@gmail.com>
* templates/default/fulldoc/html/js/app.js: ignore keyboard shortcuts when an input is active use event.target since it's standard across all browsers, event.originalTarget is mozilla-specific
2011-05-10 Loren Segal <lsegal@soen.ca>
* .yardopts: Ignore rubygems/ from docs (they're just backports)
2011-05-09 Loren Segal <lsegal@soen.ca>
* lib/yard.rb, lib/yard/rubygems/backports.rb, lib/yard/rubygems/backports/LICENSE.txt, lib/yard/rubygems/backports/MIT.txt, lib/yard/rubygems/backports/gem.rb, lib/yard/rubygems/backports/source_index.rb: Fix RubyGems 1.8.x deprecations by backporting Gem::SourceIndex We can work on migrating to the new API as time goes on. Closes #311
2011-05-08 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/full_list.css: Remove '|' after content for menus; it is now generated statically.
2011-05-08 Franklin Webber <franklin.webber@gmail.com>
* docs/Templates.md: Template - Adding and Overriding Search Menus An explanation of overriding the existing functionality of the search menus An explanation of adding a new search menu * docs/Templates.md: Template - Custom Javascript and Stylesheets Outlined how to override and add a custom javascript and stylesheet file for plugin authors
2011-05-07 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/processor.rb: Fix Processor spec, expects a globals object to be created * lib/yard/code_objects/base.rb: No longer support 'Foo.bar' or 'Foo#bar' syntax as name argument to Base.new It was never used in YARD's codebase, and makes initialization very complex. * lib/yard/cli/yardoc.rb: Handle objects with no file/line info when printing * lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/list.rb, spec/cli/list_spec.rb: Add `yard list` command, basically just passes off to `yard doc --list`. Closes #283 * lib/yard/handlers/ruby/macro_handler_methods.rb: Don't need to ensure_loaded when checking macros anymore * lib/yard/handlers/processor.rb, lib/yard/parser/source_parser.rb: Make sure same globals object is passed across all SourceParsers * lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/class_condition_handler.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/class_variable_handler.rb, lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/extend_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, .../handlers/ruby/legacy/class_variable_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, lib/yard/handlers/ruby/legacy/extend_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/legacy/module_handler.rb, .../ruby/legacy/private_constant_handler.rb, .../handlers/ruby/legacy/visibility_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, lib/yard/handlers/ruby/module_handler.rb, lib/yard/handlers/ruby/private_constant_handler.rb: Declare a bunch of handlers as namespace_only (for potential future optimizations) * lib/yard/handlers/ruby/legacy/macro_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/handlers/ruby/macro_handler_methods.rb, lib/yard/handlers/ruby/method_handler.rb: Optimize macro handler, increase performance to pre-macro speeds * lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/parser/source_parser.rb, spec/handlers/processor_spec.rb, spec/handlers/spec_helper.rb: Make Processor#globals global to entire post-process phase and add #extra_state for file-specific state
2011-05-07 Franklin Webber <franklin.webber@gmail.com>
* templates/default/fulldoc/html/setup.rb: Fulldoc Template Updated to contain information about the various helper methods specified.
2011-05-07 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, spec/handlers/base_spec.rb: Add Processor#globals and Handlers::Base#globals to allow handlers to share state within post processing of files. Closes #310 * lib/yard/handlers/ruby/macro_handler.rb, lib/yard/parser/ruby/ast_node.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: Properly handle macro calls with no arguments * lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/cli/yardoc_spec.rb: Properly clear markup cache, and try to load markup cache from markup_class * lib/yard/autoload.rb, lib/yard/handlers/ruby/legacy/macro_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/handlers/ruby/macro_handler_methods.rb, spec/handlers/examples/macro_handler_001.rb.txt: Backport macros to legacy parser/handlers * spec/docstring_spec.rb: Remove silly useless spec. * spec/spec_helper.rb: Only htmlify p() and puts() inside of TextMate (rspec helpers) * lib/yard/handlers/ruby/macro_handler.rb: Make attribute tag parser regex 1.8 compatible * lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/html_helper_spec.rb: Add -m ruby markup type and detection of .rb/.ru extra files. Also marks up files when included via {include:file:...} (and works with ruby source files). Closes #303 * lib/yard/templates/helpers/base_helper.rb, spec/templates/helpers/base_helper_spec.rb: Disallow users from calling include:file: on files outside of Dir.pwd * templates/default/fulldoc/html/setup.rb: Don't duplicate README if specified manually * .../templates/doc_server/full_list/html/setup.rb: Show instance attributes in method list for yard server Closes #302
2011-05-01 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/macro_object.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/tags/library.rb, spec/code_objects/macro_object_spec.rb, spec/handlers/macro_handler_spec.rb: Refactor macro expansion methods into MacroObject class
2011-04-29 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/macro_handler.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: Handle RDoc style ## hash flag docstrings when recognizing DSL methods
2011-04-28 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/macro_object.rb, lib/yard/handlers/ruby/macro_handler.rb, spec/code_objects/macro_object_spec.rb, spec/handlers/macro_handler_spec.rb, spec/handlers/method_handler_spec.rb: Add MacroObject.find to do a Registry lookup without needing to know the .macro. prefix * lib/yard/code_objects/macro_object.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/code_objects/macro_object_spec.rb, spec/handlers/macro_handler_spec.rb, spec/handlers/method_handler_spec.rb: Refactor MacroObject API to make it easier to use, and add MacroObject.create for quick macro creation * lib/yard/handlers/ruby/macro_handler.rb: Fix lookup path from outside of spec suite * lib/yard/autoload.rb, lib/yard/handlers/base.rb, lib/yard/handlers/ruby/legacy/process_handler.rb, lib/yard/handlers/ruby/process_handler.rb, spec/handlers/process_handler_spec.rb: New macros make process handler obsolete, it can be removed * lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add macro objects when creating class methods * spec/spec_helper.rb: Better HTML friendly printing in the test environment * lib/yard/handlers/ruby/base.rb: Allow handles method_call to have no specified method (catches all method calls) * lib/yard/docstring.rb, spec/docstring_spec.rb: Add Docstring#delete_tags, Docstring#delete_tag_if and Docstring#dup to support new macros behaviour * lib/yard/autoload.rb, lib/yard/code_objects/macro_object.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/tags/library.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: Add MacroObject and MacroHandler which processes DSL methods in a namespace that have any @tags defined on them as dynamically generated methods, where the first argument is the method name. YARD will now automatically detect a dynamic method if it sees tags defined in its docstring, for example: # The name property # @return [String] a user's name property :name, String The above definition will automatically create an instance method named `name` with the docstring "The name property" (and return tag). In addition to this default behaviour, the method name and object type/properties can be customized with the addition of the @method, @attribute, @scope, @visibility tags. Specifically, the example above can be defined as an attribute by specifying: # @attribute # @return [String] the name property property :name, String The attribute can be customized further by adding the 'r' or 'w' type to specify if it is writeonly: # @attribute [w] property :writeonlyproperty The method/attribute name/signature can also be customized by adding a signature to the @method/@attibute tags: # @method foobar(name, opts = {}) # @param [String] name # @scope class register :foobar Note that because @scope is set, `foobar` will be made into a class method. Visibility can be set in the same way. Finally, a new @macro tag is added, with a MacroObject to support it. Whenever a @macro is defined on a docstring, it creates a new re-usable named macro object that can be re-applied to any other object, either explicitly by calling on the name, or implicitly through the "attach" keyword (or by declaring the macro on a class method directly [*not yet supported*]). Macros are expanded when applied, interpolating `$N` or `${N-M}` strings with the respective parameters in the original DSL method. `$0` and `$*` are special tokens that refer to the DSL method name and the full source line, respectively. The following is an example of how a DSL method for a CLI option parsing library (such as Rake, Thor, or others) can be easily documented with macro expansion: # @macro command # @method $1(opts = {}) # $3 # @return [$2] the result of the $0 command :create_file, String, "Creates a new file and returns the filename" The above will automatically expand the macro on the first usage, and then create a new macro named 'command' that can be reused by other commands. The above docstring would be expanded into the full docstring: # @method create_file(opts = {}) # Creates a new file and returns the filename # @return [String] the result of the command command :create_file, String, "Creates a new file and returns the filename" This macro can then be re-used on other commands, either explicitly via: # @macro command command :exit, Fixnum, "Exits the shell and returns the exit code" Or implicitly by attaching the command macro to the `command` method call. This can be done by adding `[attach]` to the initial @macro definition: # @macro [attach] command # ... command :create_file, ... The next use of `command` will automatically use this macro, even without any explicit docstring or tags: command :foobar, String, "this will be in my docs!" Note that the `command` must come from a class that is in the same inheritance tree as the initially defined macro. That is, if `command` is used in another class, it will not be documented. A new macro can be defined for that separate method. In the future, it will be possible to define a macro directly on the class method declaration itself, ie.: class CommandParser # @macro command # @method $1(opts = {}) # $3 # @return [$2] def self.command(name, return_type, docstring, &block) # implementation... end command :name, String, "retrieves a username" do DB.get(username) end end * @attribute [rw] optional_name - defines the DSL method as an attribute * @macro name DOCSTRING - defines a new macro using name and expands DOCSTRING * @method signature - declares that the DSL method is a method with an optional signature. Use this when you otherwise have no other tags to specify for the docstring (since YARD requires at least one @tag to detect a dynamic DSL method) * @scope class|instance - sets the scope of the newly added method * @visibility public|private|protected - sets the visibility of the newly added method
2011-05-07 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix rendering of %w() array literals Closes #306 * lib/yard/handlers/base.rb, lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb: Ensure docstring has line_range if parsed from a file Closes #243 * ChangeLog: Don't markdown changelog * lib/yard/code_objects/base.rb: Cache CodeObjects::Base#docstring properly * lib/yard/docstring.rb, spec/docstring_spec.rb: Docstring#line should return nil if #line_range is nil * lib/yard/autoload.rb: Update documentation in autoload * lib/yard/rake/yardoc_task.rb, spec/rake/yardoc_task_spec.rb: Fix regression where YardocTask#verifier would not properly set verifier object Closes #282 * lib/yard/rake/yardoc_task.rb: Document that YardocTask#verifier should take a Verifier object Closes #281 * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Allow run(nil) to cancel argument parsing in Yardoc * spec/parser/source_parser_spec.rb: Only test BOM in ripper/1.9 * .../default/module/html/inherited_attributes.erb: Sort inherited attributes * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Support any number of hashes prefixing a comment line * lib/yard/parser/c_parser.rb: Remove nonexistent ENOTFILE constant
2011-05-05 Postmodern <postmodern.mod3@gmail.com>
* lib/yard.rb: Catch all Exceptions raised by Rubinius or JRuby when testing callcc.
2011-04-26 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/extra_file_object.rb, spec/code_objects/extra_file_object_spec.rb: Add support for @encoding metadata in extra files to specify individual file encodings
2011-04-25 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Warn when extra C file is missing from documentation * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Gracefully handle missing extra source files when parsing C code * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb, spec/parser/examples/extrafile.c.txt, spec/parser/examples/multifile.c.txt: Find docstring for methods that are documented in alternate C source files when "/* in file.c */" comment is found. * .../templates/default/layout/html/headers.erb, .../server/templates/default/layout/html/setup.rb: Update yard server templates to use new css/js listing feature from #289 * templates/default/fulldoc/html/setup.rb, templates/default/layout/html/headers.erb, templates/default/layout/html/search.erb, templates/default/layout/html/setup.rb: Refactor css/js API changes from #289 into layout template so that it works without fulldoc * lib/yard/server/commands/display_file_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/templates/helpers/html_helper.rb: Fix yard server to work with ExtraFileObjects * .../templates/default/layout/html/headers.erb, .../doc_server/full_list/html/full_list.erb, .../doc_server/library_list/html/headers.erb, templates/default/fulldoc/html/full_list.erb, templates/default/onefile/html/layout.erb: Add proper meta content-type tag to layout headers Closes #298 * lib/yard/cli/yardoc.rb: Properly check for -m being set in yardoc arguments * .../server/commands/display_object_command_spec.rb, spec/server/commands/library_command_spec.rb: Move tests to LibraryObjectCommand and improve setup/teardown * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Fix regression in `yard -m markup` selection
2011-04-25 Franklin Webber <franklin.webber@gmail.com>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb, .../server/commands/display_object_command_spec.rb: YARD server - rdoc not set as default markup; Fixes #300 yardoc parse_arguments reset the markup to assist with performing validation. However, that should only be done when yard is generating output, this is not the case when running 'yard server' which generates no output.
2011-04-21 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/library.rb: @api should be transitive too * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Add support for UTF-8 byte order mark encoded source files Closes #288
2011-04-21 Erik Michaels-Ober <sferik@gmail.com>
* lib/yard.rb, lib/yard/autoload.rb, lib/yard/cli/command.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/config.rb, lib/yard/cli/diff.rb, lib/yard/cli/gems.rb, lib/yard/cli/graph.rb, lib/yard/cli/help.rb, lib/yard/cli/server.rb, lib/yard/cli/stats.rb, lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/constant_object.rb, lib/yard/code_objects/extended_method_object.rb, lib/yard/code_objects/extra_file_object.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/module_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/code_objects/root_object.rb, lib/yard/config.rb, lib/yard/core_ext/array.rb, lib/yard/core_ext/file.rb, lib/yard/core_ext/insertion.rb, lib/yard/core_ext/module.rb, lib/yard/core_ext/string.rb, lib/yard/core_ext/symbol_hash.rb, lib/yard/docstring.rb, lib/yard/globals.rb, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/class_condition_handler.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/class_variable_handler.rb, lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/exception_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/base.rb, .../ruby/legacy/class_condition_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, .../handlers/ruby/legacy/class_variable_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, lib/yard/handlers/ruby/legacy/exception_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/legacy/module_handler.rb, .../ruby/legacy/private_constant_handler.rb, lib/yard/handlers/ruby/legacy/process_handler.rb, .../handlers/ruby/legacy/visibility_handler.rb, lib/yard/handlers/ruby/legacy/yield_handler.rb, lib/yard/handlers/ruby/method_condition_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, lib/yard/handlers/ruby/module_handler.rb, lib/yard/handlers/ruby/private_constant_handler.rb, lib/yard/handlers/ruby/process_handler.rb, lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/handlers/ruby/visibility_handler.rb, lib/yard/handlers/ruby/yield_handler.rb, lib/yard/logging.rb, lib/yard/parser/base.rb, lib/yard/parser/c_parser.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/parser/ruby/legacy/ruby_parser.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/legacy/token_list.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, lib/yard/rake/yardoc_task.rb, lib/yard/registry.rb, lib/yard/registry_store.rb, lib/yard/rubygems/specification.rb, lib/yard/serializers/base.rb, lib/yard/serializers/file_system_serializer.rb, lib/yard/serializers/process_serializer.rb, lib/yard/serializers/stdout_serializer.rb, lib/yard/serializers/yardoc_serializer.rb, lib/yard/server/adapter.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_file_command.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/library_command.rb, lib/yard/server/commands/library_index_command.rb, lib/yard/server/commands/list_command.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/commands/static_file_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/doc_server_serializer.rb, lib/yard/server/library_version.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/router.rb, lib/yard/server/static_caching.rb, .../templates/default/fulldoc/html/css/custom.css, .../templates/default/fulldoc/html/js/live.js, .../templates/default/layout/html/breadcrumb.erb, .../doc_server/full_list/html/full_list.erb, .../doc_server/library_list/html/contents.erb, .../doc_server/library_list/html/headers.erb, .../doc_server/processing/html/processing.erb, .../templates/doc_server/search/html/search.erb, lib/yard/server/webrick_adapter.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/default_tag.rb, lib/yard/tags/library.rb, lib/yard/tags/option_tag.rb, lib/yard/tags/overload_tag.rb, lib/yard/tags/ref_tag_list.rb, lib/yard/tags/tag.rb, lib/yard/templates/engine.rb, lib/yard/templates/erb_cache.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/filter_helper.rb, lib/yard/templates/helpers/html_helper.rb, .../helpers/html_syntax_highlight_helper.rb, lib/yard/templates/helpers/markup/rdoc_markup.rb, lib/yard/templates/helpers/markup_helper.rb, lib/yard/templates/helpers/method_helper.rb, lib/yard/templates/helpers/text_helper.rb, lib/yard/templates/helpers/uml_helper.rb, lib/yard/templates/section.rb, lib/yard/templates/template.rb, lib/yard/verifier.rb: Remove EOL whitespace * lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Add Redcarpet to the list of Markdown providers
2011-04-16 Franklin Webber <franklin.webber@gmail.com>
* templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/full_list.erb, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/headers.erb, templates/default/layout/html/search.erb, templates/default/layout/html/setup.rb: Customizable JS, CSS, and menus provided methods to override or add to Javascript, CSS, and the search fields.
2011-04-14 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb: 0.6.8 release
2011-04-13 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Allow backslash escaping of YARD syntax (`\{foo bar}`) Closes #279
2011-04-12 Loren Segal <lsegal@soen.ca>
* spec/cli/yardoc_spec.rb: Fix spec title
2011-04-12 Akzhan Abdulin <akzhan.abdulin@gmail.com>
* templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js: Fix JSLint issues
2011-04-11 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Remove BlueCloth as default markdown processor. Replace it with RDiscount and fall back on Kramdown as second source. Closes #263 * spec/cli/yardoc_spec.rb: Fix specs due to changes in ExtraFileObject API * lib/yard/code_objects/extra_file_object.rb, spec/code_objects/extra_file_object_spec.rb: Add specs for ExtraFileObject * spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/examples/method005.html, spec/templates/examples/module001.html, templates/default/tags/html/option.erb, templates/default/tags/html/tag.erb: Render the option key and parameter name before type specifications. Closes #240 * lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/markup_helper.rb, spec/cli/yardoc_spec.rb, spec/templates/helpers/base_helper_spec.rb, spec/templates/helpers/html_helper_spec.rb: Fix broken specs, make things work with new markup/extra file logic * lib/yard/code_objects/extra_file_object.rb, lib/yard/serializers/file_system_serializer.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/html_helper.rb, spec/serializers/file_system_serializer_spec.rb: Update ExtraFileObject and use this object in FileSystemSerializer and template helpers (for linking) * ChangeLog, docs/CodeObjects.md, docs/GettingStarted.md, docs/Glossary.md, docs/Handlers.md, docs/Overview.md, docs/Parser.md, docs/Tags.md, docs/Templates.md, docs/WhatsNew.md: Update docs to use new attribute tags for titles * lib/yard/templates/helpers/base_helper.rb: Add {render:Object} syntax to templating syntax. Inserts the formatted object in line to the call site. Closes #277 * README.md, docs/GettingStarted.md: Fix formatting in readme / doc files * lib/yard/templates/helpers/markup_helper.rb: Deprecate some markup file loading methods (use ExtraFileObject instead) * lib/yard/cli/yardoc.rb, templates/default/layout/html/headers.erb: Add global title to each page title * lib/yard/autoload.rb, lib/yard/cli/yardoc.rb, lib/yard/code_objects/extra_file_object.rb, lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/full_list_files.erb, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/files.erb, templates/default/layout/html/setup.rb: Add ExtraFileObject to abstract extra (doc) files
2011-04-10 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/markup_helper.rb: Ensure that load_markup_provider loads type as symbol * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Properly recognize --no-yardopts (and --no-document) when no --yardopts argument is in the options. Closes #276
2011-04-09 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Fix regression where default markup was not being set in yard server
2011-04-07 Loren Segal <lsegal@soen.ca>
* Rakefile, yard.gemspec: gemspec date can be set with Ruby! * lib/yard/logging.rb, spec/logging_spec.rb: Logger should show backtraces whenever logger level is set to debug * lib/yard/templates/helpers/markup/rdoc_markup.rb: Fix regression and support old RDoc versions
2011-04-07 Akzhan Abdulin <akzhan.abdulin@gmail.com>
* templates/default/fulldoc/html/js/jquery.js: Upgrade jQuery from 1.5.1 to 1.5.2
2011-04-06 Loren Segal <lsegal@soen.ca>
* README.md: Fix tabs formatting in README * ChangeLog: Update changelog for 0.6.7 release * ChangeLog, README.md, lib/yard.rb, lib/yard/rubygems/specification.rb: 0.6.7 release (fix issue with gem plugin) * yard.gemspec: Fix gemspec date * ChangeLog, README.md, lib/yard.rb: 0.6.6 release * lib/yard/templates/helpers/markup_helper.rb: Remove loading of 'rdoc' lib (not all systems have even this file)
2011-04-05 Michael Smit <mike.smit@amentra.com>
* spec/templates/examples/module001.dot, spec/templates/examples/module001.html, spec/templates/examples/module001.txt, spec/templates/module_spec.rb, .../default/module/html/inherited_attributes.erb, templates/default/module/setup.rb: Added a new section to the default module template which generates inherited attribute documentation. Modified the rspec test for the module template to reflect the change.
2011-04-05 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/cli/yardoc_spec.rb, spec/templates/helpers/html_helper_spec.rb: Add :none markup format (yard -m none) to bypass markup, and fallback on this format if RDoc is not present and no markup type is provided.
2011-04-04 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix matching of {http://link description} matches when description has newline in it. Closes #267 * lib/yard/autoload.rb, lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/html_helper_spec.rb, spec/templates/helpers/markup_helper_spec.rb: Refactor RDoc markup into Templates::Helpers::Markup::RDocMarkup class and improve early error detection if RDoc is not present on the system. Closes #270 * Rakefile, lib/yard/rubygems/specification.rb: Add support for RubyGems 1.7.x Closes #272
2011-03-22 Loren Segal <lsegal@soen.ca>
* benchmarks/splat_vs_flatten.rb, lib/yard/docstring.rb, lib/yard/tags/overload_tag.rb: Remove hackish OverloadTag#to_a support to workaround create_tag(*tags) issue (and fix support in JRuby)
2011-03-17 Akzhan Abdulin <akzhan.abdulin@gmail.com>
* lib/yard/core_ext/hash.rb: Fix RDoc failure in lib/yard/core_ext/hash.rb at or around line 13 column 11 Before reporting this, could you check that the file you're documenting compiles cleanly--RDoc is not a full Ruby parser, and gets confused easily if fed invalid programs. The internal error was: ERROR: While generating documentation for yard-0.6.5 ... MESSAGE: Name or symbol expected (got #<RubyToken::TkfLBRACK:0x1025e40e0>) ... RDOC args: --ri --op /Users/akzhanabdulin/.rvm/gems/ree-1.8.7-2011.03/doc/yard-0.6.5/ri --quiet lib --title yard-0.6.5 Documentation (continuing with the rest of the installation) Installing RDoc documentation for ripper-1.0.2... Installing RDoc documentation for yard-0.6.5...
2011-03-13 Loren Segal <lsegal@soen.ca>
* ChangeLog, LICENSE, README.md, docs/WhatsNew.md, lib/yard.rb, yard.gemspec: Update to 0.6.5
2011-03-11 Loren Segal <lsegal@soen.ca>
* spec/parser/c_parser_spec.rb: Gracefully continue if continuation is not present (for non-MRI 1.9 implementations) * lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb: Add KeywordNode, LiteralNode and improve RubyParser (ripper) support in 1.8.7 * Rakefile: Run ruby18 through test suite with ripper * lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Splice any alias references on method (re-)definitions into separate methods You can add extra documentation information for the alias itself as comments in the alias (or alias_method) statement. For instance, # Foo Bar def foo; "Hello" end # @deprecated alias bar foo # NOT FOO! def foo; 2 end Will turn 'bar' into its own method with docstring 'Foo Bar' *and* a @deprecated tag. 'foo' will be redefined to have the docstring 'NOT FOO!'. The alias information will be removed, and the methods will be considered separate. Closes #247 * lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/ruby/legacy/statement_list_spec.rb: Fix registering of 'before_last_ns_tk' in StatementList parser and properly handle keywords inside alias statements when in blocks * lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb, spec/handlers/examples/module_handler_001.rb.txt, spec/handlers/module_handler_spec.rb: Handle constants used as 'aliases' to other namespaces ie. module CONST::Foo; end Closes #248
2011-03-10 Loren Segal <lsegal@soen.ca>
* Rakefile: Add 'rake suite' task to run specs across all(?) supported ruby versions (and modes) * spec/server/rack_adapter_spec.rb: Fix specs to use proper rack protocol * spec/parser/base_spec.rb, spec/rake/yardoc_task_spec.rb: Fix specs in 1.9.1 * lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb: Make ruby_parser.rb loadable if Ripper is not available * lib/yard/handlers/base.rb: ensure_loaded! should short circuit with object if present (avoid callcc warnings) * lib/yard/templates/helpers/html_helper.rb: Fix fix_typewriter regression * lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb: Fix ruby18 support if ripper is not present
2011-03-09 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/markup_helper.rb: Print markup provider in error message when it cannot be loaded.
2011-03-07 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Support alias call with quoted symbols Closes #262
2011-02-28 Akzhan Abdulin <akzhan.abdulin@gmail.com>
* templates/default/fulldoc/html/js/jquery.js: Upgrade jQuery from 1.4.2 to 1.5.1
2011-02-27 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix regression where improved RDoc ++ parsing was not being activating inside of tag blocks * templates/default/fulldoc/html/css/style.css: Adjust padding on dt/dd to match rest of style * templates/default/fulldoc/html/css/style.css: Minor formatting adjustments * templates/default/fulldoc/html/css/style.css: Fix typo on css declarations
2011-02-28 Guten <ywzhaifei@gmail.com>
* templates/default/fulldoc/html/css/style.css: changes css style on list
2011-02-27 Guten <ywzhaifei@gmail.com>
* templates/default/fulldoc/html/css/style.css: add css style to list support <ul> <dl>
2011-02-26 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb: Fix regression in templates incorrectly loading rdoc ToHtml formatter * lib/yard/parser/ruby/legacy/ruby_parser.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Skip shebang and encoding lines in docstrings. Also also expose these comments in RubyParser classes through - RubyParser#encoding_line - RubyParser#shebang_line For new and legacy parsers. Closes #238 * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix a bug in Ripper that causes string_content tokens with newlines to only show the last line as a token in the AST. * Rakefile, lib/yard.rb, lib/yard/autoload.rb, lib/yard/parser/source_parser.rb, .../helpers/html_syntax_highlight_helper.rb, .../helpers/html_syntax_highlight_helper18.rb, spec/handlers/base_spec.rb, spec/handlers/ruby/base_spec.rb, spec/spec_helper.rb, .../helpers/html_syntax_highlight_helper_spec.rb: Update specs to allow toggling on and off of LEGACY environment variable for legacy tests in 1.8/1.9 Remove HAVE_RIPPER and LEGACY_PARSER from main YARD code, only use in specs.
2011-01-11 Loren Segal <lsegal@soen.ca>
* Rakefile, lib/yard.rb, lib/yard/autoload.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/method_condition_handler.rb, lib/yard/handlers/ruby/private_constant_handler.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/attribute_handler_spec.rb, spec/handlers/base_spec.rb, spec/handlers/class_condition_handler_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/class_variable_handler_spec.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/exception_handler_spec.rb, spec/handlers/extend_handler_spec.rb, spec/handlers/method_condition_handler_spec.rb, spec/handlers/method_handler_spec.rb, spec/handlers/mixin_handler_spec.rb, spec/handlers/module_handler_spec.rb, spec/handlers/private_constant_handler_spec.rb, spec/handlers/process_handler_spec.rb, spec/handlers/ruby/base_spec.rb, spec/handlers/visibility_handler_spec.rb, spec/handlers/yield_handler_spec.rb, spec/parser/ruby/ast_node_spec.rb, spec/parser/ruby/ruby_parser_spec.rb, spec/parser/source_parser_spec.rb, .../helpers/html_syntax_highlight_helper_spec.rb: Backport new-style parser to 1.8 compatible syntax (and semantics) for ripper1.8
2011-02-25 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Do not assume RDoc is installed. Moves requiring of SimpleMarkup code as a markup provider. Installs without rdoc installed will now load YARD properly. Based on patches by gioele. Closes #214
2011-01-13 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/base_helper.rb, spec/templates/helpers/base_helper_spec.rb: Add {include:file:FILENAME} syntax
2011-02-25 Loren Segal <lsegal@soen.ca>
* Rakefile, lib/rubygems_plugin.rb, lib/yard/rubygems/doc_manager.rb: Fix loading of YARD rubygems plugin in new location, and load gem plugins when building the gem
2011-02-25 Postmodern <postmodern.mod3@gmail.com>
* lib/rubygems_plugin.rb, lib/yard/rubygems/doc_manager.rb, lib/yard/rubygems/specification.rb: Move YARDs extensions to Gem::Specification and Gem::DocManager into 'yard/rubygems'. * Since RubyGems 1.4 disabled RubyGems Plugin loading for non-gem commands, YARDs extensions to RubyGems cannot be loaded by normal Ruby code. Moving these extensions into 'lib/yard', allows 'require' to load them again.
2011-02-25 Loren Segal <lsegal@soen.ca>
* templates/default/class/dot/superklass.erb: Ignore BasicObject superclass * templates/default/module/dot/info.erb, templates/default/module/dot/setup.rb: Fix invalid parsing of modules as classes in `yard graph` template Closes #245
2011-02-23 Bob Aman <bobaman@google.com>
* templates/default/layout/html/headers.erb: Fixed invalid meta element in headers. * spec/parser/source_parser_spec.rb: Added spec to verify docstrings on metaclasses get parsed correctly.
2011-02-07 latentflip <phil@latentflip.com>
* lib/yard/cli/graph.rb: Fixed a typo in yard-graph help messages: Direclty -> Directly
2011-01-26 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/serializers/process_serializer.rb, lib/yard/templates/helpers/markup_helper.rb: More spelling corrections * docs/WhatsNew.md, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/templates/template.rb: Fix typos in docs thanks to yard spellcheck * lib/yard/cli/config.rb, spec/cli/config_spec.rb: Add yard config --as-list and yard config --append to force setting of a single value as a list, and to append values to an existing list, respectively.
2011-01-23 Loren Segal <lsegal@soen.ca>
* docs/Tags.md: Write a note about @api private Closes #223 * templates/default/docstring/setup.rb: Show docstring if @api exists (even though it is a "hidden tag") Closes #231 * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Fix relative object link names removing common object name prefix Closes #232 * spec/config_spec.rb: Fix failing spec when ~/.yard/ignored_plugins does not exist * spec/templates/helpers/markup_helper_spec.rb: Fix broken spec with changed markup provider order * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Don't process ++ typewriter text inside of HTML attributes Closes #244
2011-01-19 Postmodern <postmodern.mod3@gmail.com>
* lib/yard/templates/helpers/markup_helper.rb: Prioritize the loading of kramdown before maruku.
2011-01-19 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/js/app.js: Generate better ids
2011-01-17 Akzhan Abdulin <akzhan.abdulin@gmail.com>
* spec/config_spec.rb: Specs should not broken when plugins installed in system * spec/cli/config_spec.rb, spec/config_spec.rb: Fix uninitialized constant RSpec::Core::ExampleGroup::Nested_2::Nested_1::YAML error
2011-01-05 Loren Segal <lsegal@soen.ca>
* lib/yard/docstring.rb, lib/yard/handlers/base.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Add Docstring#hash_flag to denote when a docstring comment started with '##' Closes gh-230 * lib/yard/tags/default_factory.rb, spec/docstring_spec.rb, spec/tags/default_factory_spec.rb: Remove trailing whitespace from freeform tags Closes gh-229 * spec/tags/default_factory_spec.rb: Update default_factory_spec.rb formatting
2011-01-01 Dominik Honnef <dominikh@fork-bomb.org>
* templates/default/fulldoc/html/css/style.css: make sure that alternatives specified in @deprecated don't get struck through and that they're set using a monospace font
2010-12-30 Loren Segal <lsegal@soen.ca>
* spec/cli/yardoc_spec.rb, spec/registry_store_spec.rb: Fix broken specs * templates/default/layout/html/files.erb, templates/default/layout/html/index.erb, templates/default/layout/html/listing.erb, templates/default/layout/html/objects.erb, templates/default/layout/html/setup.rb: Split index/listing templates into listing/files/objects * lib/yard/templates/helpers/html_helper.rb: Add documentation to simple_markup_html * lib/yard/templates/helpers/html_helper.rb: Make SimpleMarkupHtml thread local, remove constant
2010-12-29 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/library.rb: Fix documentation on tag library * lib/yard/registry.rb, lib/yard/registry_store.rb, spec/cli/yardoc_spec.rb, spec/registry_store_spec.rb, spec/serializers/yardoc_serializer_spec.rb: Add specs to single object db functionality * lib/yard/registry.rb, spec/registry_spec.rb: Add spec for single_object_db attribute default value
2010-12-28 Loren Segal <lsegal@soen.ca>
* lib/yard/serializers/yardoc_serializer.rb: Add check for empty object db * lib/yard/cli/yardoc.rb: Allow disabling of single_object_db * lib/yard/cli/yardoc.rb, lib/yard/registry.rb, lib/yard/registry_store.rb, lib/yard/serializers/yardoc_serializer.rb: Initial single object db implementation
2010-12-29 Loren Segal <lsegal@soen.ca>
* spec/registry_spec.rb: Fix formatting in spec * lib/yard/registry.rb, spec/registry_spec.rb: Add specs to thread local storage code, improve initializations * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Make sure the non-tag form of (see ...) only works at the start of a docstring
2010-12-25 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, .../ruby/legacy/private_constant_handler.rb, lib/yard/handlers/ruby/private_constant_handler.rb, .../examples/private_constant_handler_001.rb.txt, spec/handlers/private_constant_handler_spec.rb: Add support for `private_constant` class method calls to recognize private class, module and constant definitions (proposed for Ruby 1.9.3). Closes gh-219
2010-12-21 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump to version 0.6.4 * spec/server/rack_adapter_spec.rb: Fix RackMiddleware tests for 1.8.x * lib/yard/server/commands/base.rb, lib/yard/server/commands/library_command.rb: Move #render back to Commands::Base, since another class depends on it * lib/yard/autoload.rb, lib/yard/server/adapter.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_file_command.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/library_command.rb, lib/yard/server/commands/list_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/doc_server_serializer.rb, lib/yard/server/library_version.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/router.rb, lib/yard/server/static_caching.rb, lib/yard/server/webrick_adapter.rb: Beef up YARD::Server* documentation
2010-12-20 Loren Segal <lsegal@soen.ca>
* docs/GettingStarted.md: Extra information about type specifications, fix tools section * docs/GettingStarted.md: Improve getting started documentation, add more syntax documentation * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/root_object.rb: Cache CodeObjects::Base#path to significantly improve performance * lib/yard/templates/engine.rb: Fix broken documentation reference
2010-12-19 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/legacy/statement_list_spec.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix ordering of heredoc tokens Closes gh-209 * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix listing of heredoc source in 1.9.x * lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt, spec/parser/ruby/ruby_parser_spec.rb: Fix Derived < ::Base inheriting wrong Base (not top level) Closes gh-216
2010-12-17 Loren Segal <lsegal@soen.ca>
* Rakefile, spec/spec_helper.rb, spec/templates/helpers/html_helper_spec.rb, spec/templates/module_spec.rb: Make rakefile backwards compatible for rspec 1.x users * Rakefile, spec/cli/diff_spec.rb, spec/cli/stats_spec.rb, spec/cli/yardoc_spec.rb, spec/templates/engine_spec.rb: Add compatibility with rspec2
2010-12-15 Loren Segal <lsegal@soen.ca>
* spec/templates/spec_helper.rb: Can't use example() with rspec2
2010-12-12 Gioele Barabucci <gioele@svario.it>
* Rakefile, spec/spec_helper.rb: Minimal update to RSpec 2
2010-12-15 Loren Segal <lsegal@soen.ca>
* spec/cli/yri_spec.rb: Add sanity check tests to YRI specs * lib/yard/registry.rb, lib/yard/server/commands/library_command.rb: Use threadlocal registries
2010-12-15 Lee Jarvis <lee@jarvis.co>
* lib/yard/cli/yri.rb: prepend :: to adhere to rubys class lookup rules for Config::CONFIG
2010-11-24 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Fix automatic loading of markup providers by properly caching provider information. Closes gh-206 * lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Initial fix for automatic markup provider searching
2010-11-21 Loren Segal <lsegal@soen.ca>
* lib/yard/server/rack_adapter.rb, spec/server/rack_adapter_spec.rb: RackMiddleware should now pass 404 responses up to the next middleware in the stack
2010-11-21 srawlins <sam.rawlins@gmail.com>
* templates/default/fulldoc/html/css/style.css: Typos. Tested. Now this patch looks goooood. * spec/parser/c_parser_spec.rb: Fixed newline * templates/default/fulldoc/html/css/style.css: Fixed wrapping in Firefox, clipping in Chrome
2010-11-21 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump to version 0.6.3 * lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Fix regression where markup loading fails when generating HTML
2010-11-17 Franklin Webber <franklin.webber@gmail.com>
* templates/default/fulldoc/html/js/app.js: Minor Javascript Fix - Keyboard Shortcuts List link shortcuts checked to see if the original Target of the event was a INPUT or TEXTARA. However, if the orignal Target was undefined an error was raised. Checking for undefined.
2010-11-15 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump to version 0.6.2 * spec/cli/server_spec.rb: Fix specs failing under 1.8.x due to unstub! call * README.md, docs/GettingStarted.md: Tell users where to read information about .yardopts * ChangeLog, README.md: Update ChangeLog and summarize in README * spec/server/commands/static_file_command_spec.rb: Fix failing specs due to StaticFileCommand refactor and add new test cases * lib/yard/config.rb: Only show backtrace when plugin fails to load in Ruby debug mode (ruby -d), since we haven't parsed backtrace info yet * lib/yard/config.rb, spec/config_spec.rb: Ensure that --plugin is parsed out of .yardopts file as well * lib/yard/cli/command.rb, lib/yard/cli/server.rb, lib/yard/cli/yardoc.rb: Fix CLI commands accessing Config class after adding new CLI::Config * README.md: Add new contributors
2010-11-14 Loren Segal <lsegal@soen.ca>
* docs/GettingStarted.md, docs/WhatsNew.md: Document new YARD features in 0.6.2 * lib/yard/cli/config.rb: Update yard config help contents * lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/config.rb, lib/yard/config.rb, spec/cli/config_spec.rb: Add `yard config` CLI command to view or modify the YARD global configuration file (~/.yard/config). * lib/yard/config.rb, spec/config_spec.rb: Add YARD::Config.save for serializing to CONFIG_FILE
2010-11-14 Robert Wahler <robert@gearheadforhire.com>
* lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: add kramdown as a markdown provider Kramdown is a fast, pure Ruby markdown processor. Windows users need more pure Ruby options to avoid having to compile "C" extensions. Note that 'eval' is used instead of Kernel.get_const because the latter cannot find classes nested in modules.
2010-11-11 Loren Segal <lsegal@soen.ca>
* lib/yard/server.rb: YARD::Server.register_static_path is since 0.6.2 * lib/yard/autoload.rb, lib/yard/server.rb, spec/server_spec.rb: Add YARD::Server.register_static_path to register a static asset lookup path * lib/yard/server/commands/library_index_command.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/commands/static_file_command.rb: Document some server commands and reverse search order of static assets in StaticFileCommand
2010-11-10 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/extend_handler.rb, lib/yard/handlers/ruby/legacy/extend_handler.rb, spec/handlers/extend_handler_spec.rb: Disallow `extend self` inside of a class. Closes gh-202 * lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb: Fix error messages for undocumentable mixins * lib/yard/code_objects/class_object.rb: Disallow recursive inheritance_trees for mixins including classes (should never happen, but protected anyway)
2010-11-10 Anthony Thibault <ajt@hyperlogic.org>
* lib/yard/parser/c_parser.rb: Fixed parsing of constants defined in c extensions.
2010-11-10 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/command.rb, lib/yard/cli/server.rb, spec/cli/server_spec.rb: Add -t (--template-path) switch to `yard server` and load ruby scripts after adapter loads in order to allow overriding of adapter code.
2010-11-09 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Fixes --no-private with proxy namespace defined as a module Re-closes gh-197
2010-11-08 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/server.rb: Fix documentation in yard server CLI usage description * lib/yard/server/commands/library_command.rb: Clean up class variable declaration * lib/yard/verifier.rb, spec/cli/yardoc_spec.rb, spec/verifier_spec.rb: Verifier#call should ignore unresolved Proxy objects and return true. This makes it easier to write queries on objects that may include proxies. Closes gh-197 * templates/default/fulldoc/html/css/style.css: Fix spacing between summary note badges * templates/default/fulldoc/html/css/style.css: Add vertical space between notes in method/class/module detail section. Closes gh-199 * spec/templates/examples/method001.html, templates/default/tags/html/option.erb: Add space after mdash for option description text. Closes gh-200 * docs/Tags.md: Document missing tags @api and @note Closes gh-196 * docs/Tags.md: Clarify that @attr tags are only meant for Structs * spec/templates/examples/method001.html, spec/templates/examples/method001.txt, spec/templates/method_spec.rb, templates/default/tags/html/option.erb: Do not display N/A for @option with no default value. Closes gh-198
2010-11-04 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb: Don't perform syntax highlighting on plaintext extra files
2010-11-02 Mark Evans <mark@new-bamboo.co.uk>
* templates/default/fulldoc/html/js/app.js: Replace quotes with underscore for table of contents id generation (otherwise it causes errors)
2010-10-31 freeformz <emuller@engineyard.com>
* lib/yard/server/commands/library_command.rb: we're already chrooted'
2010-10-29 freeformz <emuller@engineyard.com>
* lib/yard/server/commands/library_command.rb: stop the threads from trying to chdir over each other
2010-10-22 David Turnbull <dturnbull@gmail.com>
* docs/GettingStarted.md: Expanded usage section. Getting Started has more overview of the tools and directs to the readme for details.
2010-10-14 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb: Refactor MarkupHelper and check markup options before doing any file parsing. This way we can fail early and tell the user to install a gem right away instead of the old behaviour of failing after all the code was parsed (which could take a long time). * lib/yard/handlers/ruby/visibility_handler.rb, .../examples/visibility_handler_001.rb.txt, spec/handlers/visibility_handler_spec.rb: Fix visibility statements using constant symbol values (private :Foo)
2010-10-13 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, lib/yard/handlers/ruby/struct_handler_methods.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Support @attr* on non-struct classes * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Disable --template-path from being used in safe mode * lib/yard.rb, lib/yard/cli/command.rb, lib/yard/cli/yardoc.rb, lib/yard/config.rb, spec/cli/yardoc_spec.rb: Add safe_mode Config (~/.yard/config) option to disable user-code from being executed (-e, --load and --query)
2010-10-09 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/examples/constant_handler_001.rb.txt: Support @attr declarations in "Klass = Struct.new(:a, :b, ...)" syntax Closes gh-187 * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: If a method is in a proxy namespace, overridden methods should return nil.
2010-10-04 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/serializers/yardoc_serializer.rb: Refactor StubProxy * lib/yard.rb, lib/yard/handlers/base.rb, lib/yard/parser/c_parser.rb: Change the way continuation support is detected (actually test callcc)
2010-10-03 Loren Segal <lsegal@soen.ca>
* spec/code_objects/proxy_spec.rb, spec/parser/base_spec.rb, spec/parser/c_parser_spec.rb, spec/parser/source_parser_spec.rb: Fix various JRuby spec failings. * lib/yard.rb, lib/yard/handlers/base.rb, lib/yard/parser/c_parser.rb: Change the way continuation support is checked * lib/yard/parser/source_parser.rb: Require continuation only if the lib exists (ie. ruby1.9). * lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Add support for inheriting from 'self' keyword, using current namespace as superclass. Example: class X class Y < self; end end * lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: If class method is defined on CONSTANT object, convert constant to class/module that the constant is referencing. * lib/yard/parser/ruby/legacy/statement_list.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt, spec/parser/ruby/legacy/statement_list_spec.rb: Fix handling of keywords in alias statements for block openers/closers (for/do/end) Closes gh-184 * lib/yard/handlers/ruby/legacy/exception_handler.rb: Ignore raise expressions that call methods on 1.8 as well * lib/yard/handlers/ruby/exception_handler.rb, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Gracefully ignore raise expressions that cannot be documented (`raise method_call('args')`) Closes gh-180 * lib/yard/cli/stats.rb, spec/cli/stats_spec.rb: Fix yard stats --list-undoc raising exception when no objects are undocumented. Closes gh-186
2010-09-27 srawlins <sam.rawlins@gmail.com>
* lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb, spec/parser/examples/override.c.txt: Added Parser::CParser#find_override_comment, almost straight from RDoc
2010-10-03 Loren Segal <lsegal@soen.ca>
* spec/cli/gems_spec.rb: Fix specs under 1.8.6 * spec/cli/gems_spec.rb: Add specs for yard gems command * lib/yard/cli/gems.rb: Add warnings if specified gems are not found, stop command entirely if none of the specified gems are found * lib/yard/cli/gems.rb: Require 'rubygems' in yard gems command for 1.8.x compat * lib/yard/cli/gems.rb: Replace #each_slice with 1.8.6 compatible iteration. Closes gh-178
2010-09-27 srawlins <sam.rawlins@gmail.com>
* lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb, spec/parser/examples/override.c.txt: Added Parser::CParser#find_override_comment, almost straight from RDoc
2010-09-25 Loren Segal <lsegal@soen.ca>
* .../ruby/legacy/class_condition_handler.rb, spec/handlers/class_condition_handler_spec.rb: Fix handling of complex class conditions with no else block Closes gh-175
2010-09-23 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Fix handling of encoding line when shebang is present. Adds tests for the many ways an encoding line can be written. Closes gh-174
2010-09-18 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/extend_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb: Refactor mixin undocumentable error changes and backport to 1.8 * lib/yard/server/commands/frames_command.rb: Show alpha index for yard server if no README is present * lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb, spec/handlers/class_handler_spec.rb: Fix proxy lookups for complex namespaces (A::B::C). Previously a lookup on "B::C" from inside "A" would find object "A::C" if A::C was defined before A::B::C. The new semantics will verify that the found object ("A::C") includes the original lookup path ("B::C") in the path string. If the path string is not found, the object is invalidated and the object is still a proxy. Also fixes a test that was incorrectly passing due to bug. * lib/yard/handlers/ruby/extend_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, spec/handlers/mixin_handler_spec.rb: Add undocumentable error warning for 'include <variable>' statement
2010-09-17 Loren Segal <lsegal@soen.ca>
* docs/Tags.md: Fix typo in Tags.md Closes gh-172 * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Improve relative path support for objects inside of a namespace (when called from outside that same namespace)
2010-09-16 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/command.rb, lib/yard/config.rb: Add documentation for YARD::Config and add --plugin option for commandline parsing so no warnings display * lib/yard.rb, lib/yard/autoload.rb, lib/yard/config.rb, spec/config_spec.rb, spec/yard_spec.rb: Refactored configuration support, adding YARD::Config class. Plugins are no longer loaded automatically by default, but this can be changed by editing ~/.yard/config as detailed below: The Config class now manages the loading of the ~/.yard/config file, a YAML file containing the YARD::Config::DEFAULT_CONFIG_OPTIONS options. It also manages the loading of plugins. The configuration file has 3 options specifying rules to use when loading plugins: :load_plugins (default: false) When enabled, gem plugins are automatically loaded (0.5.x and 0.6.0/1 behaviour) :autoload_plugins specifies a list of plugins to load automatically :ignored_plugins specifies a list of plugins to ignore The ~/.yard/ignored_plugins file is now deprecated in favour of specifying the :ignored_plugins setting in the config file.
2010-09-14 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb: Document introduction of in_file call * lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, spec/handlers/base_spec.rb: Add Handlers::Base.in_file to declare that a handler should only process certain files by string/regex match. Example: class MyHandler < Handlers::Ruby::Base handles method_call(:foo) in_file %r{/templates/} def process # Only process "foo" calls inside the /templates/ directory end end * lib/yard/server/commands/library_command.rb: Refactor #not_prepared to use request object * lib/yard/server/commands/library_command.rb, .../doc_server/processing/html/processing.erb: On-demand processing should commence from xhr request with ?process=true to avoid bots inadvertently triggering a parse. Also stops JS refresh code from retriggering the parser N times * lib/yard/cli/gems.rb: Remove --legacy option from gems option parser (switch is not removed from CLI, simply refactored. the option exists in the superclass)
2010-09-08 Loren Segal <lsegal@soen.ca>
* templates/default/tags/setup.rb: Refactor tag method generation code for templates
2010-09-07 Loren Segal <lsegal@soen.ca>
* README.md, docs/WhatsNew.md: Fix some markdown formatting errors
2010-09-06 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump to version 0.6.1 * templates/default/fulldoc/html/js/app.js: Fix TOC id links to include some punctuation and digits * spec/code_objects/base_spec.rb: Add spec for relative_path * templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/js/app.js: Refactor inheritance arrow and inheritance box display code * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Fix relative path linking with common substrings * lib/yard/tags/default_factory.rb: Gracefully error out if @example tag is misformatted
2010-09-03 Loren Segal <lsegal@soen.ca>
* spec/templates/helpers/html_helper_spec.rb: Fix broken spec of #link_object
2010-09-03 Arthur Schreiber <schreiber.arthur@gmail.com>
* spec/registry_store_spec.rb: Update specs to match reading marshal data as binary.
2010-09-02 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb: Fix printing of debugging information when displaying parser paths in 1.8.x
2010-09-02 Arthur Schreiber <schreiber.arthur@gmail.com>
* lib/yard/registry_store.rb: Fix remaining cases where Marshal data was not read as binary.
2010-09-02 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Fix matching of common namespace in Base#relative_path
2010-09-01 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/js/full_list.js: Improve inline JS search responsiveness on large lists
2010-09-01 Arthur Schreiber <schreiber.arthur@gmail.com>
* lib/yard/serializers/yardoc_serializer.rb, spec/registry_store_spec.rb: Fix #168 - open files with serialized contents in binary mode.
2010-09-01 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb, spec/templates/helpers/html_helper_spec.rb: Fix CodeObjects::Base#relative_path to work with parent namespaces and methods in sibling namespaces * lib/yard/code_objects/proxy.rb: Fix proxy implementation of name to match Base#name
2010-08-31 Loren Segal <lsegal@soen.ca>
* lib/yard/registry.rb, lib/yard/server/commands/search_command.rb: Avoid exception when Registry.at(nil) is accessed (for search command) * lib/yard/server/rack_adapter.rb: Print startup message for `yard server` if Mongrel is being used * lib/yard/server/rack_adapter.rb: Remove trap(INT) and server.shutdown, Rack does this on its own. Closes gh-165 * lib/yard/core_ext/string.rb, spec/core_ext/string_spec.rb, spec/spec_helper.rb: Removed String#underscore and String#camelcase. These methods were not being used in YARD's codebase (minus a few small utility functions) and they were causing incompatibility issues with other frameworks like Rails. Closes gh-167
2010-08-30 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/style.css: Put class list above ToC (take 2) Closes gh-164
2010-08-29 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/style.css: Lower z-index so class list shows up above * yard.gemspec: Update release date in gemspec * ChangeLog: Update ChangeLog * templates/default/fulldoc/html/css/style.css: Fix positioning for TOC * lib/yard/templates/helpers/html_helper.rb: Fix encoding issue where BlueCloth/markup libs might change the encoding if they are not encoding-aware. Force the original encoding. * templates/default/fulldoc/html/css/style.css: Show TOC above code examples (TOC should be hidden or code should be manually wrapped in this scenario) * docs/Templates.md: Fix reference to YARD::Templates::Section
2010-08-28 Loren Segal <lsegal@soen.ca>
* README.md: Fix some typos in readme * lib/yard.rb: Update version to 0.6.0 * README.md: Update README for 0.6.0 release * docs/WhatsNew.md: Update WhatsNew.md with new features in 0.6.0 * docs/Templates.md: Update Templates.md to include documentation about new Section API * README.md, docs/GettingStarted.md, docs/Handlers.md, docs/Overview.md, docs/Parser.md, docs/Tags.md, docs/WhatsNew.md: Update file: links to point to docs/ for server compatibility * .yardopts, Rakefile, lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add yardoc --asset to copy over files/directories to output dir after generation * lib/yard/cli/stats.rb: Make sure all arguments get recognized. * lib/yard/cli/yri.rb: Fix searching for gem paths * templates/default/fulldoc/html/css/style.css: Fix notes displaying as blocks (css) * templates/default/layout/html/setup.rb: Fix bug in generating index page with --use-cache * lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, lib/yard/globals.rb, lib/yard/registry.rb: Fix broken references to Registry (instance methods are now class methods) * lib/yard/cli/yardoc.rb: Deprecate Yardoc#all_objects * README.md: Update contributors list
2010-08-27 Pieter van de Bruggen <pvande@gmail.com>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb, .../helpers/html_syntax_highlight_helper_spec.rb, templates/default/method_details/html/source.erb, templates/default/tags/html/example.erb: Changing #html_syntax_highlight's default type. #html_syntax_highlight should now automatically infer when it's being used in non-Ruby contexts, by inspecting the value of `object.source_type`. This simplifies the syntax highlighting process quite a bit, while still providing the expected default and override mechanisms.
2010-08-27 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/style.css: Add margin around TOC
2010-08-25 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb: Refactor push_state code * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb: Fix push_state being unable to push individual state fields and add specs * lib/yard/cli/command.rb: Fix -e trying to load a file twice and failing * lib/yard/handlers/ruby/base.rb, lib/yard/parser/ruby/ast_node.rb: Update documentation groups * lib/yard/server/commands/library_command.rb: Server reloading should use cache
2010-08-22 Pieter van de Bruggen <pvande@gmail.com>
* lib/yard/handlers/processor.rb: Providing a hook for registering new handler namespaces. This should make setting up new language handlers more accessible. * templates/default/tags/html/example.erb: @example tags should be highlighted in the language of their source object.
2010-08-22 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb, lib/yard/templates/erb_cache.rb: Support `coding=ENC` encoding comment format (previously only supported `coding:ENC`) Closes gh-159 * templates/default/fulldoc/html/js/full_list.js: Fix inline searching JS Closes gh-161 * templates/default/fulldoc/html/js/jquery.js: Update jQuery to 1.4.2 * templates/default/fulldoc/html/js/app.js: Change TOC anchor links to use pretty anchors * templates/default/fulldoc/html/css/style.css: Remove webkit gradients on search links * templates/default/fulldoc/html/js/app.js: Fix undefined links in TOC Closes gh-160 * lib/yard/registry.rb: Fix bug in Registry refactoring that broke .yardoc generation
2010-08-19 Loren Segal <lsegal@soen.ca>
* spec/registry_spec.rb: Fix spec for 1.8.6 * lib/yard/registry.rb, spec/cli/yri_spec.rb, spec/registry_spec.rb: Turn Registry into module and remove Singleton class. Instead all methods are defined as singleton methods on the module. This simplifies the Registry interface and removes the distinction between class and instance methods (everything is now a class method). When Registry is refactored to support instances, this will be changed again. * lib/yard/registry.rb, spec/registry_spec.rb: Change Registry.load* to return self for chaining * lib/yard/handlers/ruby/legacy/base.rb, lib/yard/serializers/base.rb, lib/yard/serializers/file_system_serializer.rb: Fix broken references in documentation
2010-08-15 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/diff.rb: Make sure rubygems/package is loaded before running Diff utility
2010-08-07 Loren Segal <lsegal@soen.ca>
* spec/templates/helpers/html_helper_spec.rb: Clean up Encoding specs to be dependent on existence of Encoding class, not Ruby 1.9 * lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix specs and Encoding related calls under 1.8.x * lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Fix struct handler to allow inheriting of regular Struct (class A < Struct) * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: When parsing `{LINK}` syntax, ignore `{|x| ...}` block syntax.
2010-08-06 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Graceful handling of encoding errors in htmlify
2010-08-05 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/js/app.js: Fix bug in TOC generator when nesting headers. Closes gh-154 * lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/text_helper.rb, spec/templates/helpers/html_helper_spec.rb, .../templates/helpers/shared_signature_examples.rb: Call #uniq on return types before formatting method signature Closes gh-155 * lib/yard/cli/diff.rb, lib/yard/cli/server.rb, lib/yard/cli/yri.rb, spec/cli/diff_spec.rb, spec/cli/server_spec.rb, spec/cli/yardoc_spec.rb, spec/templates/examples/class002.html: Fix various specs and make specs pass under 1.8.6/1.9.2 * spec/templates/constant_spec.rb, spec/templates/examples/constant001.txt, spec/templates/examples/constant002.txt, spec/templates/examples/constant003.txt, templates/default/constant/text/header.erb, templates/default/constant/text/setup.rb: Add text template for constant objects (yri) Closes gh-150 * lib/yard/cli/yri.rb, spec/cli/yri_spec.rb: Add `YRI::DEFAULT_SEARCH_PATHS` to add extra search paths at runtime to be searched before all other paths. Closes gh-151 * lib/yard/code_objects/base.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/method_handler_spec.rb: Raise undocumentable error for methods defined on object instances (def foo.bar) * lib/yard/cli/yardoc.rb: Update docs for Yardoc * lib/yard/cli/yardoc.rb: Revert Yardoc caching by default. Yardoc no longer uses the .yardoc cache unless `--cache` is explicitly supplied. `--no-cache` is not removed in this revert.
2010-07-27 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/filter_helper.rb, lib/yard/templates/helpers/html_helper.rb, .../helpers/html_syntax_highlight_helper.rb, lib/yard/templates/helpers/markup_helper.rb, lib/yard/templates/helpers/method_helper.rb, lib/yard/templates/helpers/module_helper.rb, lib/yard/templates/helpers/text_helper.rb: Add documentation for helpers * lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/html_helper.rb: Add documentation for helpers
2010-07-26 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/base.rb: Update documentation for HandlesExtension * lib/yard/handlers/ruby/base.rb: Update documentation for Handlers::Ruby::Base * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Make sure CodeObjects::Base#files returns a unique list of file/line combinations
2010-07-24 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/visibility_handler.rb, .../examples/visibility_handler_001.rb.txt, spec/handlers/visibility_handler_spec.rb: Ignore expressions in public/private/protected statements Closes gh-153
2010-07-16 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/engine.rb: Properly rescue NameError * lib/yard/handlers/ruby/process_handler.rb: Add docstring for 'process' methods * lib/yard/handlers/base.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/class_condition_handler.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/class_variable_handler.rb, lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/exception_handler.rb, lib/yard/handlers/ruby/extend_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, .../ruby/legacy/class_condition_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, .../handlers/ruby/legacy/class_variable_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, lib/yard/handlers/ruby/legacy/exception_handler.rb, lib/yard/handlers/ruby/legacy/extend_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/legacy/module_handler.rb, lib/yard/handlers/ruby/legacy/process_handler.rb, .../handlers/ruby/legacy/visibility_handler.rb, lib/yard/handlers/ruby/legacy/yield_handler.rb, lib/yard/handlers/ruby/method_condition_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, lib/yard/handlers/ruby/module_handler.rb, lib/yard/handlers/ruby/process_handler.rb, lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/handlers/ruby/visibility_handler.rb, lib/yard/handlers/ruby/yield_handler.rb, lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/serializers/base.rb, lib/yard/serializers/file_system_serializer.rb, lib/yard/tags/tag.rb, lib/yard/templates/engine.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/uml_helper.rb: Update documentation in objects * lib/yard/cli/yardoc.rb, lib/yard/serializers/base.rb, lib/yard/serializers/file_system_serializer.rb: Cached generation will check if the file does not exist on the filesystem, in addition to whether or not it was changed. This change also adds Base#exists? that check whether the endpoint exists on the system. * lib/yard/templates/helpers/base_helper.rb, lib/yard/verifier.rb, spec/templates/helpers/base_helper_spec.rb: Add Verifier#run to prune a list of objects (similar to BaseHelper#run_verifier) * lib/yard/code_objects/base.rb, lib/yard/docstring.rb, spec/code_objects/base_spec.rb, spec/docstring_spec.rb: Add "(see PATH)" syntax for Docstrings. Allows the ability to reference an entire docstrings (including tags) using the following syntax: # (see OtherObject) class Object; end # Real doctring here # @since 0.1 class OtherObject The above example will use the docstring on OtherObject on both objects (including tags). The (see ...) syntax must be at the start of the docstring, though extra tags/info is allowed to be added afterwards. The following is valid: # (see OtherObject) # extra info # @author Name This change also adds Docstring#+ to add two docstrings together and maintain tag information.
2010-07-15 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/base.rb, lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/templates/engine.rb: Add/update documentation for various handler classes, update CodeObjects::Base constants, and document Templates::Engine * templates/default/fulldoc/html/css/style.css: Update styling for notes in constants docstrings * lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, spec/handlers/attribute_handler_spec.rb, .../handlers/examples/attribute_handler_001.rb.txt: [bugfix] Maintain visibility in attribute definitions
2010-07-14 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/css/style.css: Add {include:ObjectName} syntax to global YARD markup syntax. This allows the docstring from ObjectName to be inserted in-place into an existing docstring. For instance: # {include:OtherString} class String; end # The docstring is here class OtherString; end The above example prints "The docstring is here" for both classes. Note that this syntax does not copy over tags. * lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb: Make sure mixins are only added if they have not been * lib/yard/cli/yri.rb, lib/yard/code_objects/class_object.rb, lib/yard/handlers/base.rb, lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/templates/helpers/base_helper.rb: Update documentation for various classes/methods * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Fix visibility verifier specs (--no-public should only apply to methods) * lib/yard/cli/yardoc.rb, lib/yard/server/commands/library_command.rb, spec/cli/yardoc_spec.rb: Remove --incremental switch in yardoc. Incremental output generation is now automatic when the cache is used * lib/yard/cli/yardoc.rb: Update Yardoc documentation * templates/default/fulldoc/html/css/style.css: Improve styling of class/method/file list buttons * lib/yard/autoload.rb: Add autoload for WebrickServlet * lib/yard.rb, lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/yardoc.rb: Add documentation for various classes * lib/yard/cli/yardoc.rb, lib/yard/code_objects/base.rb: Simplify visibility Verifier expression * spec/templates/helpers/html_helper_spec.rb: Add spec for relative object link titles * spec/server/webrick_servlet_spec.rb: Add specs for WebrickServlet
2010-07-13 Loren Segal <lsegal@soen.ca>
* lib/yard/server/webrick_adapter.rb: Remove unnecessary code from WebrickAdapter * spec/server/commands/static_file_command_spec.rb: Add specs for StaticFileCommand * spec/server/commands/base_spec.rb: Clean up Commands::Base#cache specs * templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/js/app.js: Add JavaScript generated TOC for file documents * lib/yard/server/commands/display_file_command.rb: Remove reference to MIME_TYPES * lib/yard/server/commands/static_file_command.rb: Return an empty favicon.ico for browsers that request it (if it does not exist in static paths) * lib/yard/server/commands/static_file_command.rb: Add mime type for javascript (WEBrick does not have this defined) * templates/default/fulldoc/html/css/style.css: Fix styling for constant docstrings * lib/yard/cli/stats.rb: Add documentation for Stats::STATS_ORDER * lib/yard/cli/stats.rb: Fix failing stats specs in 1.8 * lib/yard/autoload.rb, lib/yard/server/commands/base.rb, spec/server/commands/base_spec.rb, spec/server/router_spec.rb, spec/server/spec_helper.rb: Add specs for Commands::Base * spec/server/adapter_spec.rb, spec/server/doc_server_serializer_spec.rb, spec/server/router_spec.rb, spec/server/spec_helper.rb, spec/server/static_caching_spec.rb: Add spec_helper.rb file and refactor adapter mocking * lib/yard/server/rack_adapter.rb: Unescape PATH_INFO in URLs coming in via Rack adapter * lib/yard/server/doc_server_helper.rb, lib/yard/server/doc_server_serializer.rb: Escape URLs in DocServerSerializer * lib/yard/server/commands/static_file_command.rb: Refactor static file mime type handling to use WEBrick::HTTPUtils#mime_type * lib/yard/server/commands/base.rb, lib/yard/server/commands/display_object_command.rb: Update Commands::Base to take error message in NotFoundError as body * lib/yard/server/library_version.rb: Remove debugging message from LibraryVersion * spec/server/static_caching_spec.rb: Add specs for StaticCaching * lib/yard/server/library_version.rb, spec/server/adapter_spec.rb, spec/server/doc_server_serializer_spec.rb, spec/server/router_spec.rb: Add Router specs and rewrite Adapter specs (routing moved to Router class) * lib/yard/server/library_version.rb, spec/cli/server_spec.rb, spec/server/adapter_spec.rb, spec/server/doc_server_serializer_spec.rb: Fix broken specs * templates/default/fulldoc/html/js/app.js: Add JS function to comb through markup generated URLs and add target=_parent for those that link outside docs for frames * templates/default/layout/html/footer.erb: Add target=_parent for yardoc.org link in footer * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Add target=_parent for URLs including scheme (http://,...) for frames * templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js: Fix javascript to copy title to frame parent in frames mode * lib/yard/server/commands/frames_command.rb: Fix titles for File urls in frames
2010-07-12 Loren Segal <lsegal@soen.ca>
* .../templates/default/fulldoc/html/css/custom.css, .../default/fulldoc/html/images/loading.gif, .../default/fulldoc/html/images/processing.gif, .../doc_server/processing/html/processing.erb: Much nicer 'processing' page
2010-07-10 Loren Segal <lsegal@soen.ca>
* .../templates/default/fulldoc/html/js/live.js: Fix javascript links to list prefix path * lib/yard/server/commands/library_command.rb, .../doc_server/processing/html/processing.erb, .../templates/doc_server/processing/html/setup.rb: Add temporary 'processing' page while library .yardoc is being generated * lib/yard/server/commands/display_file_command.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/library_command.rb, lib/yard/server/library_version.rb: Refactor LibraryVersion to support alternate sources; add LibraryVersion#prepare! to load yardoc lazily for a specific source type. Also add #source_path to list the location of the library's sources for the specific source type * lib/yard/server/commands/library_index_command.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/doc_server_serializer.rb, lib/yard/server/router.rb, .../templates/default/layout/html/breadcrumb.erb, .../templates/default/layout/html/headers.erb, .../templates/doc_server/frames/html/frames.erb, .../doc_server/full_list/html/full_list.erb, .../doc_server/library_list/html/contents.erb: Replace command prefix constants with methods that can be overridden, also use prefixes in templates * lib/yard/server/commands/base.rb: Only show 404 page if no body contents exist * lib/yard/server/adapter.rb: Allow alternate Router class to be specified with Adapter * lib/yard/cli/server.rb, spec/cli/server_spec.rb, spec/server/adapter_spec.rb: Change order of LibraryVersion constructor arguments
2010-07-09 Loren Segal <lsegal@soen.ca>
* lib/yard/server/commands/frames_command.rb: Update frames command to support /frames/Path/To/Object URL mapping. * .../doc_server/library_list/html/contents.erb, .../doc_server/library_list/html/headers.erb, .../doc_server/library_list/html/library_list.erb, .../doc_server/library_list/html/setup.rb, .../doc_server/library_list/html/title.erb: Refactor library_list template into multiple erb files * .../templates/default/layout/html/breadcrumb.erb: Link to /docs, not / in breadcrumb * lib/yard/server/commands/frames_command.rb: Only list relative path for filename in frames * lib/yard/autoload.rb, lib/yard/cli/server.rb, lib/yard/server/adapter.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/library_index_command.rb, lib/yard/server/library_version.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/router.rb, lib/yard/server/static_caching.rb, lib/yard/server/webrick_adapter.rb: Refactor routing from adapter into Router class and adjust some server functionality * lib/yard/server/commands/static_file_command.rb: Check document root for StaticFileCommand * lib/yard/server/commands/library_command.rb: Reuse yardoc file over multiple requests to same library * lib/yard/server/commands/library_command.rb: Support libraries without versions * lib/yard/cli/gems.rb: Run yardoc without stats
2010-07-08 Loren Segal <lsegal@soen.ca>
* lib/yard/server/adapter.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/frames_command.rb: Rename base_uri to base_path
2010-07-07 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yard_graph.rb: Fix typo in YardGraph
2010-07-05 Loren Segal <lsegal@soen.ca>
* Rakefile: Add YARD_VERSION env to Rakefile. Allows installing as arbitrary gem version with `rake install YARD_VERSION=x.y` Note that this does not change YARD::VERSION in the installed gem itself.
2010-07-04 Jake Kerr <jkerr@bumptechnologies.com>
* bin/yard-graph, lib/yard/cli/graph.rb: Fix typos in yard-graph script and graph command The bin/yard-graph script was referring to Yard::CLI::Graph by it's old name YardGraph. There was a comment in the graph command that also that referred to YardGraph
2010-06-30 Loren Segal <lsegal@soen.ca>
* spec/cli/diff_spec.rb, spec/cli/stats_spec.rb: Fix spec in 1.8 (block handling) * lib/yard/cli/diff.rb, lib/yard/cli/stats.rb, lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add --no-save to yardoc to parse files but without saving registry * lib/yard/cli/diff.rb: Documentation for Diff command * lib/yard/cli/command_parser.rb, spec/cli/command_parser_spec.rb: Document CommandParser, make CommandParser#commands private
2010-06-27 Gabriel Horner <gabriel.horner@gmail.com>
* lib/yard/templates/helpers/text_helper.rb, spec/templates/helpers/text_helper_spec.rb: Truncate text in align_right that is longer than allowed width Closes gh-147
2010-06-30 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Only print statistics if not listing objects
2010-06-27 Loren Segal <lsegal@soen.ca>
* lib/rubygems_plugin.rb, lib/yard/autoload.rb, lib/yard/cli/command.rb, lib/yard/cli/diff.rb, lib/yard/cli/gems.rb, lib/yard/cli/graph.rb, lib/yard/cli/help.rb, lib/yard/cli/server.rb, lib/yard/cli/stats.rb, lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/core_ext/file.rb, lib/yard/core_ext/insertion.rb, lib/yard/handlers/base.rb, .../ruby/legacy/class_condition_handler.rb, lib/yard/handlers/ruby/legacy/process_handler.rb, lib/yard/handlers/ruby/process_handler.rb, lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/parser/base.rb, lib/yard/parser/c_parser.rb, lib/yard/parser/ruby/legacy/ruby_parser.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, lib/yard/registry.rb, lib/yard/registry_store.rb, lib/yard/server/commands/library_command.rb, lib/yard/tags/library.rb, lib/yard/templates/erb_cache.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, lib/yard/templates/section.rb, lib/yard/templates/template.rb, lib/yard/verifier.rb: Add @since tags for objects between 0.5.0 and 0.6.0 * lib/yard/core_ext/file.rb, lib/yard/docstring.rb, lib/yard/globals.rb, lib/yard/logging.rb, lib/yard/registry.rb, lib/yard/serializers/base.rb: Add groups/docs * lib/yard/cli/diff.rb: Change debug messages back to info
2010-06-26 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb: Make sure namespace is not a proxy * lib/yard/cli/yardoc.rb, lib/yard/handlers/base.rb, lib/yard/tags/library.rb, spec/cli/yardoc_spec.rb, spec/handlers/base_spec.rb: Add transitive tags (and --transitive-tag). Transitive tags allow a user to declare a tag on a namespace (like a module or class) and have the tag be automatically applied to all methods and objects inside the namespace. Consider declaring "@since" on a new class. Instead of defining @since on every method inside the new class, a user can simply declare it on the class itself and the tag will automatically be applied to the methods inside. For example: # @since 1.1 class Foo def bar; end end The Foo#bar method will have a @since tag defined as well. * lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/diff.rb, spec/cli/diff_spec.rb: Add yard diff command to compare two library versions or gems * spec/cli/yardoc_spec.rb, spec/templates/examples/module001.txt: Fix broken specs * lib/yard/templates/section.rb, spec/templates/section_spec.rb: Add Section#unshift
2010-06-25 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/stats.rb: Ignore overridden methods from "undocumented" check, they don't need documentation. * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: Add MethodObject#overridden_method that returns the method the object overrides in a superclass/mixin, if any * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/namespace_object_spec.rb, spec/handlers/examples/module_handler_001.rb.txt, spec/handlers/module_handler_spec.rb: Fix mixin/inheritance tree ordering, also add :all key for meths/inherited_meths/included_meths to return all method objects, not just first one * lib/yard/verifier.rb: Fix Object#type deprecated warning in 1.8 for Verifier * lib/yard/registry.rb: Docs: rename 'reload' argument in Registry.load to 'reparse' for clarity * lib/yard/docstring.rb, lib/yard/handlers/ruby/legacy/base.rb: Docs: fix name resolution errors * lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/stats.rb, lib/yard/cli/yardoc.rb, spec/cli/stats_spec.rb, spec/cli/yardoc_spec.rb: Add 'yard stats' command to list documented/undocumented methods * benchmarks/parsing.rb: Fix parsing benchmark require clause * lib/yard/cli/yardoc.rb: Refactor Yardoc option parsing methods * lib/yard/cli/command.rb, lib/yard/cli/yardoc.rb: Move -e and --legacy to Command class * lib/yard/templates/template.rb: Fix bug causing specs to fail in 1.8 * lib/yard/code_objects/base.rb: Refactor CodeObjects::Base.new to use instance #path method to get key name instead of using Base.key_for hack
2010-06-24 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/core_ext/array.rb, lib/yard/core_ext/insertion.rb, lib/yard/templates/section.rb, lib/yard/templates/template.rb, spec/core_ext/array_spec.rb, spec/core_ext/insertion_spec.rb, spec/templates/section_spec.rb, spec/templates/template_spec.rb, templates/default/tags/setup.rb: Refactor 'sections' template command to take Section objects and build tree-like structures instead of plain Arrays. This change replaces all sections with Section objects, allowing subsections to be accessed with Section#[] by name: def init sections :a, :b, :c, [:sub1, :sub2] sections[:c].place(:sub3).after(:sub1) puts "(sections is now [:a, :b, :c, [:sub1, :sub2, :sub3]])" end This removes the need to use indexes, which is problematic when multiple plugins overload the same template (because the numeric index is not guaranteed). This change also adds Insertion#before_any and Insertion#after_any to insert an object before any section no matter how deeply nested it is. [1,[2,[3]]].place(4).after_any(3) #=> [1, [2, [3, 4]]] The above template could be refactored as: def init sections :a, :b, :c, [:sub1, :sub2] sections.place(:sub3).after_any(:sub1) end Closes gh-58 * lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/library.rb, lib/yard/tags/tag.rb: Docstring formatting: remove '##' pre-docstring lines * lib/yard/parser/ruby/ruby_parser.rb: Fix broken spec in 1.9 parser; groups not handling attributes (and other dsl syntaxes) * README.md: Fix server reloading docs, note no longer applies * lib/yard/code_objects/base.rb, lib/yard/registry_store.rb: Remove disable_identity_map hack to initialize RootObject * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Make sure --tag is only added once and fix specs * lib/yard/code_objects/base.rb, lib/yard/registry.rb, lib/yard/registry_store.rb: Remove Registry.objects cache and rely on RegistryStore as object cache only * lib/yard/docstring.rb, spec/docstring_spec.rb: Fix tag parsing of indented lines and allow tag names with numbers in them * lib/yard/cli/yardoc.rb, lib/yard/tags/library.rb, spec/cli/yardoc_spec.rb: Add yardoc switches: `--tag`, `--type-tag`, `--type-name-tag`, `--name-tag`, `--title-tag` and `--hide-tag` Allows the creation of custom YARD tags at the command line without requiring a YARD extension. Tags can be defined in the following way: $ yardoc --tag tagname:"Title of Tag" Similarly a "typed", "named" or "titled" tag (or a few combinations) can be added with the respective switches. Note the ':' separating the tag's @tagname from the title used in templates. The quotations is used to escape spaces in the shell (quotations should not be used when done inside Ruby). Titles are optional (omit the ":TITLE" part). Tags added in this way are automatically displayed in templates in the order that they are defined with the title given. If a given tag should not be displayed in the templates, use the `--hide-tag` switch to hide it: $ yardoc --tag tagname --hide-tag tagname This changeset also makes Library.visible_tags into an attribute.
2010-06-23 Loren Segal <lsegal@soen.ca>
* templates/default/tags/setup.rb: Remove tag_ prefix from sections (backwards compat.) * lib/yard/docstring.rb, lib/yard/tags/library.rb, spec/docstring_spec.rb, templates/default/tags/setup.rb: Rename .show_tags to .visible_tags and make Docstring#blank? only be blank if it has no visible tags (togglable) * lib/yard/core_ext/array.rb, spec/core_ext/array_spec.rb, templates/default/class/setup.rb: Fix bug with new Insertion behaviour * lib/yard/tags/library.rb, templates/default/tags/setup.rb: Add Tags::Library.show_tags to order tags for templates and redesign tags template to use that method when deciding which tags to show. Also add #factory_method_for to get tag type * lib/yard/core_ext/array.rb, spec/core_ext/array_spec.rb: Fix bug in Insertion#before/#after when inserting array objects * lib/yard/server/commands/library_command.rb, lib/yard/templates/engine.rb, lib/yard/templates/helpers/base_helper.rb, spec/templates/engine_spec.rb, spec/templates/module_spec.rb, templates/default/class/setup.rb, templates/default/module/setup.rb: Add #globals helper method to keep state for a rendering process (including all templates and sub-templates) * lib/yard/server/library_version.rb, spec/cli/server_spec.rb, spec/server/adapter_spec.rb: Fix server specs * spec/templates/examples/module002.html: Fix group listing spec * lib/yard/server/doc_server_helper.rb: Protect against nil error in DocServerHelper * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix warning for missing reference inside an extra-file. Now properly displays the file name and line number more accurately
2010-06-22 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/legacy/statement.rb: Fix displaying of first line in legacy parser for undocumentable error * lib/yard/parser/ruby/legacy/statement.rb: Fix displaying of first line in legacy parser for undocumentable error * lib/yard/cli/server.rb: Parse source and create .yardoc if does not exist (with no args passed to server) * README.md: Add info on yard server command * README.md: Fix yardoc --build gems command * README.md: Fix readme for yard graph command * yard.gemspec: Add 'yard' binary to gemspec, remove 'yard-graph' * spec/cli/yardoc_spec.rb: Add specs for --no-private Closes gh-146 * ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump to version 0.5.8 * spec/cli/yardoc_spec.rb: Add specs for --no-private Closes gh-146
2010-06-19 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Fix verifier for --no-private
2010-06-22 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/js/app.js: Add localStorage support for remembering collapsed/expanded state of method summary listing.
2010-06-21 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump to version 0.5.7 * lib/yard/server/rack_adapter.rb: Reset command on each request in Rack adapter * lib/yard/server/adapter.rb: Fix library loading for single library * templates/default/layout/html/setup.rb: Don't print readme filename for --one-file * templates/default/layout/html/setup.rb: Ignore private and @private classes/modules from alphabetic index * lib/yard/autoload.rb, lib/yard/cli/server.rb, lib/yard/server/adapter.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/library_command.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/static_caching.rb, lib/yard/server/webrick_adapter.rb: Add static caching support to adapters * lib/yard/server/doc_server_serializer.rb: Fix serialization for constants * lib/yard/server/commands/library_command.rb, .../templates/default/layout/html/breadcrumb.erb: 1.8 compatibility fixes * .../templates/default/layout/html/breadcrumb.erb: Smaller autocomplete window on right side
2010-06-20 Loren Segal <lsegal@soen.ca>
* lib/yard/server/commands/base.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/webrick_adapter.rb: Move xhr? method into Request objects * lib/yard/autoload.rb, lib/yard/cli/gems.rb, lib/yard/cli/server.rb, lib/yard/server/adapter.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/library_command.rb, lib/yard/server/library_version.rb, .../templates/default/layout/html/breadcrumb.erb, .../doc_server/library_list/html/library_list.erb: Add LibraryVersion and list projects by version * lib/yard/cli/server.rb, lib/yard/server/commands/library_command.rb: Add all gems by version for yard server command * .../doc_server/library_list/html/library_list.erb: Improve library listing page * lib/yard/server/commands/library_command.rb: Fix on-demand building of gems * lib/yard/server/commands/frames_command.rb: Fix frames command failing if no files are provided * lib/yard/autoload.rb, lib/yard/cli/server.rb, lib/yard/server/adapter.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_file_command.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/library_command.rb, lib/yard/server/commands/library_index_command.rb, lib/yard/server/commands/list_command.rb, lib/yard/server/commands/project_command.rb, lib/yard/server/commands/project_index_command.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/doc_server_serializer.rb, lib/yard/server/rack_adapter.rb, .../templates/default/fulldoc/html/js/live.js, .../templates/default/layout/html/breadcrumb.erb, .../templates/default/layout/html/headers.erb, .../doc_server/library_list/html/library_list.erb, .../doc_server/library_list/html/setup.rb, .../doc_server/project_list/html/project_list.erb, .../doc_server/project_list/html/setup.rb, lib/yard/server/webrick_adapter.rb, spec/cli/server_spec.rb, spec/server/adapter_spec.rb, spec/server/doc_server_serializer_spec.rb: Rename all references from 'projects' to 'libraries' in server * lib/yard/cli/server.rb, lib/yard/server/commands/project_command.rb, spec/cli/server_spec.rb: Add yard server --gems to serve gems on demand. If the gem does not have a yardoc file, it will be built on demand (with a small delay on the first load) * lib/yard/cli/gems.rb: Add ability to build gem for single gem in command * lib/yard/cli/server.rb, spec/cli/server_spec.rb: Add specs for CLI::Server and fix some bugs * lib/yard/server/adapter.rb, lib/yard/server/doc_server_serializer.rb, spec/server/adapter_spec.rb, spec/server/doc_server_serializer_spec.rb: Add specs for Server::Adapter, Server::DocServerSerializer * spec/templates/examples/module002.html, spec/templates/module_spec.rb: Add specs for @group * spec/cli/command_parser_spec.rb, spec/cli/yardoc_spec.rb: Fix broken specs
2010-06-19 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/server.rb: Add --adapter to select rack/webrick adapter and -s/--server to select server type (thin,mongrel,cgi,etc.) * lib/yard/server/commands/base.rb: Add low-level link to server adapter in command * lib/yard/cli/server.rb: Change daemonize option * lib/yard/autoload.rb, lib/yard/cli/server.rb, lib/yard/server/adapter.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/webrick_adapter.rb: Refactor Webrick code into Adapter class and add RackAdapter * lib/yard/cli/yardoc.rb: Fix verifier for --no-private * lib/yard/autoload.rb, lib/yard/server/commands/project_index_command.rb, lib/yard/server/commands/root_command.rb, lib/yard/server/webrick_adapter.rb: Rename RootCommand to ProjectIndexCommand * lib/yard/server/webrick_adapter.rb: Mount static paths and root separately * .../templates/default/layout/html/breadcrumb.erb: Fix link to project list * lib/yard/server/commands/root_command.rb: Fix RootCommand * lib/yard/autoload.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_file_command.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/list_command.rb, lib/yard/server/commands/project_command.rb, lib/yard/server/commands/root_command.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/webrick_adapter.rb: Refactor project commands into ProjectCommand and root commands as base, change Base initializer to accept hash and set attributes matching hash keys * lib/yard/cli/server.rb, lib/yard/cli/yardoc.rb, lib/yard/server/commands/base.rb, lib/yard/server/doc_server.rb, lib/yard/server/webrick_adapter.rb: Various server changes; add command line options and reload parsing * lib/yard/autoload.rb, lib/yard/cli/server.rb, lib/yard/server/commands/base.rb, lib/yard/server/commands/display_file_command.rb, lib/yard/server/commands/display_object_command.rb, lib/yard/server/commands/frames_command.rb, lib/yard/server/commands/list_command.rb, lib/yard/server/commands/root_command.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/commands/static_file_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/doc_server_serializer.rb, lib/yard/server/doc_server_url_helper.rb, .../default/fulldoc/html/images/loading.gif, .../templates/default/layout/html/breadcrumb.erb, .../templates/default/layout/html/headers.erb, .../templates/doc_server/frames/html/frames.erb, .../doc_server/full_list/html/full_list.erb, .../doc_server/project_list/html/project_list.erb, lib/yard/server/webrick_adapter.rb: Refactor server into Command pattern for each URL mapping * .yardopts: Ignore templates from docs * lib/yard/server/doc_server.rb, lib/yard/server/doc_server_serializer.rb, .../default/fulldoc/html/js/autocomplete.js, .../templates/doc_server/search/html/search.erb, .../templates/doc_server/search/html/setup.rb: Add search support to doc server
2010-06-17 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup_helper.rb, spec/templates/helpers/markup_helper_spec.rb, templates/default/layout/html/setup.rb: Better support for file shebangs and better markup support in general. Adds two new markup types "text" and "html" which can be used in shebangs as well as a markup type (-m switch to yardoc). Can now implement htmlify for custom markup types by implementing YARD::Templates::Helpers::HtmlHelper#html_markup_MARKUPTYPE Where MARKUPTYPE is the markup type name. A provider must also be added to MarkupHelper::MARKUP_PROVIDERS, though it can be a blank list of libraries. * lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/help.rb, spec/cli/help_spec.rb: Add 'yard help' command for help on commands * lib/yard/cli/gems.rb, lib/yard/cli/yardoc.rb: Refactor yardoc --build-gems into `yard gems` command * lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/gems.rb: Add gems command * lib/yard/cli/command_parser.rb, spec/cli/command_parser_spec.rb: Parse default command if no command is passed or first argument is option, add specs * lib/yard/cli/yardoc.rb: Remove unnecessary code from old merge * lib/yard/tags/library.rb: Add @group and @endgroup as reserved tags * lib/yard/cli/yardoc.rb, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/setup.rb, templates/default/onefile/html/files.erb, templates/default/onefile/html/layout.erb, templates/default/onefile/html/readme.erb, templates/default/onefile/html/setup.rb, templates/default/root/html/setup.rb: Add support for --one-file in Yardoc command * bin/yard, lib/yard/autoload.rb, lib/yard/cli/base.rb, lib/yard/cli/command.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/graph.rb, lib/yard/cli/server.rb, lib/yard/cli/yard_graph.rb, lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb: Refactor into new command scheme Conflicts: lib/yard/autoload.rb lib/yard/cli/command.rb lib/yard/cli/graph.rb lib/yard/cli/server.rb
2010-06-03 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yard_graph.rb: Fix typo in yard graph command
2010-06-17 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/base.rb, spec/parser/source_parser_spec.rb, templates/default/module/setup.rb: Remove group as tag and make it standard object property (so templates don't get confused about tags) * lib/yard/parser/ruby/legacy/statement_list.rb: Fix @group parsing in 1.8 * templates/default/module/setup.rb: Add groups ordering to class * lib/yard/handlers/base.rb, spec/parser/source_parser_spec.rb: Add groups tag to namespace to maintain ordering * .../default/module/html/attribute_summary.erb, templates/default/module/html/method_summary.erb, templates/default/module/setup.rb: Add template support for @groups * lib/yard/handlers/base.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Add support for @group and @endgroup Comments must be in the form # @group NAME To end a group use "# @endgroup". A group does not need to be ended for another to begin. If you want to start a new group, simply call a new @group. Note that these tags are not treated as classical "tags" and cannot be overridden. * lib/yard/cli/yardoc.rb, lib/yard/serializers/file_system_serializer.rb, spec/cli/yardoc_spec.rb: Clean up parsing of yardoc options and handle .document files more effectively * README.md: Add special installation instructions for some Ubuntu/Debian installations. It is impossible to add rdoc as a dependency, since this will force the RDoc gem to be installed rather than the Ruby stdlib package. It is therefore preferable to install rdoc locally with apt-get on such an OS. Closes gh-109
2010-06-16 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb: Don't undef 'on_bodystmt' * lib/yard/cli/yardoc.rb: Add Yardoc#parse_arguments method to perform all argument parsing (from CLI,.yardopts,.document) at once * lib/yard/registry_store.rb, lib/yard/serializers/yardoc_serializer.rb: Improve StubProxy to implement #hash which removes need for TemporaryObject hack * spec/verifier_spec.rb: Add spec for Verifier * lib/yard/verifier.rb: Force updating of Verifier * templates/default/module/html/item_summary.erb: Show full method name with "=" suffix in method summary listing * lib/yard/parser/source_parser.rb: Add documentation for SourceParser.parser_types * docs/Parser.md, docs/images/parser-class-diagram.png: Update Parser Architecture documentation Closes gh-137 * lib/yard/registry.rb: Update Registry documentation Closes gh-136 * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Support list of regex in registered file extensions for parser type (instead of a single Regexp) * lib/yard/parser/source_parser.rb: Document parser_type_extensions as @private attr
2010-06-15 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Hide methods inside a @private class if --no-private is used. * templates/default/tags/text/example.erb: Don't wrap example code in yri. Wrapping would just cause confusion. Closes gh-71 * lib/yard/cli/yardoc.rb, lib/yard/verifier.rb, spec/cli/yardoc_spec.rb, spec/verifier_spec.rb: Fix --private and other visibility flags when specified in .yardopts file. The following changes were made to make this possible: - Generate verifier for visibilities after option parsing is finished. - Add Verifier#add_expressions and Verifier#expressions to allow manipulation of Verifier expressions after it is created. Modifying expressions will recompile the verifier object. Closes gh-142 * lib/yard/cli/yard_graph.rb: Update default options documentation for YardGraph * lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, lib/yard/code_objects/root_object.rb, lib/yard/registry_store.rb, spec/registry_spec.rb, spec/serializers/data/serialized_yardoc/checksums, .../data/serialized_yardoc/objects/Foo.dat, .../data/serialized_yardoc/objects/Foo/bar_i.dat, .../data/serialized_yardoc/objects/Foo/baz_i.dat, .../data/serialized_yardoc/objects/root.dat, .../serializers/data/serialized_yardoc/proxy_types, spec/serializers/yardoc_serializer_spec.rb: Improve equality checking on CodeObjects and add #hash/#equal? methods Closes gh-119 * lib/yard/registry.rb, spec/registry_spec.rb: Fix "cannot resolve link" warnings for --incremental Closes gh-70
2010-06-13 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/overload_tag.rb: Only override #to_a in 1.9.x * lib/yard/tags/overload_tag.rb: 1.9.2 compatibility fix: add #to_ary and #to_a implementations for splatting a delegate class * lib/yard/code_objects/proxy.rb: 1.9.2 compatibility fix: re-implement fix for #to_ary in Proxy in a cleaner way * spec/parser/c_parser_spec.rb: 1.9.2 compatibility fix: require 'continuation' for CParser spec, since it is not required anywhere else * spec/handlers/ruby/legacy/base_spec.rb: 1.9.2 compatibility fix: workaround for RSpec not removing metaprogrammed class after test * lib/yard/code_objects/proxy.rb: 1.9.2 compatibility fix: add #to_str as alias for #path * lib/yard/code_objects/proxy.rb: 1.9.2 compatibility fix: handle #to_ary calls on Proxy class for #flatten in 1.9.2 * spec/handlers/ruby/base_spec.rb: 1.9.2 compatibility fix: name resolution behaves differently * lib/yard/templates/helpers/html_helper.rb: Fix handling of "!!!lang" code block prefix for RDoc markup * lib/yard/parser/c_parser.rb: Fix parsing of call-seq in .c files Closes gh-135
2010-06-12 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, docs/WhatsNew.md, lib/yard.rb, yard.gemspec: Release 0.5.6 * lib/rubygems_plugin.rb: Don't generate yri index if has_rdoc == false * lib/yard/handlers/ruby/class_condition_handler.rb, spec/handlers/class_condition_handler_spec.rb: Fix failing class condition handling case in 1.9 * lib/rubygems_plugin.rb, lib/yard/cli/yardoc.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/constant_object.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/docstring.rb, lib/yard/handlers/base.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/serializers/file_system_serializer.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/library.rb, lib/yard/templates/template.rb, templates/default/tags/html/option.erb: Fix a boatload of Ruby warnings * lib/rubygems_plugin.rb: Fix warnings in RubyGems plugin Closes gh-108 * spec/cli/yardoc_spec.rb: Fix Yardoc CLI specs for new read_binary encoding fixes * lib/yard/autoload.rb, lib/yard/parser/base.rb, lib/yard/parser/c_parser.rb, lib/yard/parser/ruby/legacy/ruby_parser.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, spec/parser/base_spec.rb, spec/parser/source_parser_spec.rb: Refactor SourceParser and create API to extend YARD with custom source parsers using YARD::Parser::SourceParser.register_parser_type Closes gh-101
2010-06-11 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb: Add .cc as C source filename extension * .../ruby/legacy/class_condition_handler.rb, spec/handlers/class_condition_handler_spec.rb: Fixes handling of class conditionals in the form "defined?(A) && defined?(B)"
2010-06-05 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/templates/erb_cache.rb, lib/yard/templates/helpers/html_helper.rb, templates/default/layout/html/setup.rb: Various encoding related template fixes. Closes gh-131
2010-06-04 Loren Segal <lsegal@soen.ca>
* lib/yard/server/doc_server.rb: Add redirect method * lib/yard/server/doc_server.rb: Only load yardopts once per project change * lib/yard/server/doc_server.rb: Add search command stub * lib/yard/server/doc_server.rb, .../doc_server/project_list/html/project_list.erb, .../doc_server/project_list/html/setup.rb: Add project listing * lib/yard/server/doc_server.rb: Add render method, factor out caching
2010-06-02 Loren Segal <lsegal@soen.ca>
* lib/yard/server/doc_server.rb, lib/yard/server/doc_server_url_helper.rb, .../templates/default/fulldoc/html/css/custom.css, .../templates/default/fulldoc/html/js/live.js, .../templates/default/layout/html/breadcrumb.erb, .../templates/default/layout/html/headers.erb: Add support for modified templates
2010-05-26 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yri.rb: Don't use less on Windows (non-cygwin) * lib/yard/cli/yri.rb: yri should fail gracefully when no arguments are supplied * Rakefile: Better rake support for windows * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Fix handling of docstrings in 1.9 parser when there are comments before and on the same line of a code object * README.md, docs/GettingStarted.md, docs/Tags.md: Move tag list from GettingStarted to Tags and document syntax * README.md: Update README formatting
2010-05-25 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, lib/yard/handlers/ruby/struct_handler_methods.rb: Various documentation and style refactorings
2010-05-22 Loren Segal <lsegal@soen.ca>
* README.md: Fix release date/version in readme * README.md: Fix contributors formatting in readme for github * ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump version to 0.5.5
2010-05-21 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Clean path names when parsing source files Closes gh-129
2010-05-10 Michael Edgar <michael.j.edgar@dartmouth.edu>
* lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Auto-generate parameters referred to by @option tags. Closes gh-16 * lib/yard/docstring.rb, spec/docstring_spec.rb: Resolve reftags the same way as normal references Closes gh-14
2010-05-21 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb: Remove #hash implementation due to weird Registry reloading side effects * lib/yard/tags/default_factory.rb, spec/tags/default_factory_spec.rb: Type list in tag text should only be listed at the beginning or after first token. Closes gh-120 * templates/default/module/html/box_info.erb, templates/default/module/text/extends.erb: Rename "Extends" to "Extended by" for class mixins in templates. Closes gh-110 * lib/yard/templates/helpers/html_helper.rb: Revert automatic typewriter textifying of links * lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/html_helper.rb, spec/templates/examples/class001.html, spec/templates/helpers/base_helper_spec.rb, spec/templates/helpers/html_helper_spec.rb, templates/default/tags/html/see.erb: Refactor #resolve_links into #linkify to handle 'file:' and URL links more consistently across templates. Closes gh-121 * lib/yard/code_objects/module_object.rb, spec/code_objects/module_object_spec.rb: Fix mixins listing twice for #inheritance_tree on module objects
2010-05-21 wycats <wycats@gmail.com>
* lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/proxy.rb, spec/code_objects/class_object_spec.rb: Fixes an issue where mixins could appear twice in the class hierarchy
2010-05-18 Michael Edgar <michael.j.edgar@dartmouth.edu>
* lib/yard/handlers/ruby/struct_handler_methods.rb: Made struct handler directly add tags. Technical faux pas.
2010-05-15 postmodern <postmodern.mod3@gmail.com>
* lib/yard.rb: Only glob .rb files from yard/core_ext and do not strip the .rb file extension. * By globbing all files within yard/core_ext, this was triggering a bug on Rubinius 1.0. Rubinius likes to store compiled Ruby files (.rbc) along with the Ruby source files (.rb). http://github.com/evanphx/rubinius/issues/#issue/305
2010-05-15 Loren Segal <lsegal@soen.ca>
* .../ruby/legacy/class_condition_handler.rb, spec/handlers/class_condition_handler_spec.rb: Implement ClassConditionHandler for legacy parser. Closes gh-114 * lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/ruby/legacy/statement_list_spec.rb: Fill .block for 'else' and 'elsif' statements in legacy parser.
2010-05-09 Michael Edgar <michael.j.edgar@dartmouth.edu>
* lib/yard/handlers/ruby/legacy/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Added more specs for attr_reader and attr_writer combinations. * lib/yard/handlers/ruby/struct_handler_methods.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Added some specs for the use of attr_reader and attr_writer. Made them pass. * lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/tags/library.rb: Added basic logic for the separation of reader/writer attributes. Specs pass, but no new specs have been added. * lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb: Added support on the handler side for defining constants for non-anonymous structs * spec/handlers/class_handler_spec.rb: Added a spec to ensure that when a non-anonymous struct is used, the appropriate constant is defined in Struct::. * lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb: Added Ruby 1.8.x compatibility, and fixed an error caused by OStruct.new (without parens). * lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/tags/library.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Specifications added for the @attr tag. * lib/yard/handlers/ruby/class_handler.rb: Added basic support for subclass-syntax with Structs. The newly-added specs pass. * lib/yard/autoload.rb, lib/yard/handlers/ruby/struct_handler_methods.rb: Added my struct_handler_methods.rb file from yard-struct, which will provide shortcuts for adding attributes. This is a module (and not dropped into the ClassHandler) because I want to reuse this code for the Constant-assignment syntax as well. * spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Added specs for the superclass syntax for Struct usage.
2010-05-04 Denis Defreyne <denis.defreyne@stoneship.org>
* templates/default/docstring/html/private.erb, templates/default/docstring/setup.rb, templates/default/docstring/text/private.erb, templates/default/fulldoc/html/css/style.css, templates/default/module/html/header.erb, templates/default/module/html/item_summary.erb: Show notification for "@api private" usage in HTML/text templates. Closes gh-123
2010-04-21 Loren Segal <lsegal@soen.ca>
* LEGAL: Update LEGAL * .yardopts, LEGAL, LICENSE, README.md, yard.gemspec: Add Ruby/RDoc license information to YARD and update copyright years. Closes gh-122
2010-04-20 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/cli/yard_graph.rb, lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/module_helper.rb, spec/templates/module_spec.rb: Replace the :visibilities option with compilation to a query. This allows the visibility flags to be used with --list. * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Parse yardopts and manual args at the same time. This means that e.g. --query arguments are merged, rather than clobbered.
2010-04-19 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/cli/yardoc.rb: Add a --list option for listing all objects matching the query.
2010-04-20 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/helpers/method_helper.rb: Don't assume that method parameter names will be strings. In the case of some overloads with default values, at least, they'll be symbols.
2010-04-19 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb: Register MethodObjects defined for structs. Otherwise, they don't get their file/line number set.
2010-04-01 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/module001.html, templates/default/docstring/html/abstract.erb, templates/default/docstring/html/deprecated.erb, templates/default/docstring/html/note.erb, templates/default/docstring/html/todo.erb, templates/default/fulldoc/html/css/style.css: Fix templates to not wrap htmlify_line inside a <p> tag, since it itself is a <div>
2010-03-27 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/class001.html, spec/templates/examples/module001.html: Fix specs for summary toggle button * templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/js/app.js, .../default/module/html/attribute_summary.erb, templates/default/module/html/method_summary.erb: Add method/attribute summary collapse/expand
2010-03-24 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/js/app.js: Don't enable keyboard shortcuts in frames mode. * templates/default/fulldoc/html/css/style.css: Move shadow over so it does not force horizontal scrollbars to appear. * templates/default/fulldoc/html/js/app.js: Ignore shortcut keypresses inside form input fields * templates/default/fulldoc/html/setup.rb: Make sure there are no nil children
2010-03-22 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, docs/WhatsNew.md, lib/yard.rb, yard.gemspec: Bump version 0.5.4 * templates/default/fulldoc/html/setup.rb: Fix hiding of @private classes in unresolved namespaces to use @items instead of objects directly * spec/templates/module_spec.rb: Fix failing spec in 1.8.6 * spec/templates/module_spec.rb, templates/default/module/setup.rb: Fix testability of mixin list * spec/templates/examples/module001.html, spec/templates/module_spec.rb, templates/default/module/html/box_info.erb, templates/default/module/setup.rb: Simplify listing of class/modules used by a module
2010-03-21 Benjamin Bock <bb–github.com@bock.be>
* templates/default/module/html/box_info.erb, templates/default/module/setup.rb: add sections "Included in" and "Extending" for Modules
2010-03-21 Loren Segal <lsegal@soen.ca>
* templates/default/layout/html/setup.rb: Add .mkd file extension for Markdown * lib/yard/core_ext/file.rb, spec/core_ext/file_spec.rb: Fix handling of relative paths that go outside the "initial" directory * lib/yard.rb: YARD::ROOT should be absolute in 1.8 * templates/default/fulldoc/html/css/style.css: Inline only the first paragraph of inlined docstrings. * lib/yard/code_objects/module_object.rb: Avoid listing self as mixin in inheritance tree * templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js: Make keyboard shortcuts more reliable * templates/default/fulldoc/html/setup.rb: Ignore @private classes defined in unresolved namespaces in class list. Closes gh-103 * templates/default/fulldoc/html/css/style.css: Fix breadcrumb link text size * spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/examples/method004.html, spec/templates/examples/method005.html, spec/templates/examples/module001.html: Fix spec expectations for htmlify_line changes * lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/css/style.css: Change how #htmlify_inline does inlining * lib/yard/code_objects/class_object.rb: Ensure default "Object" superclass is "::Object" (same for BasicObject, Exception) Closes gh-72 * lib/yard/docstring.rb, spec/docstring_spec.rb: Remove only original indentation from indented @tag text * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/module_object.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/module_object_spec.rb, .../default/module/html/inherited_methods.erb: Show extended modules in inherited methods list as class methods Closes gh-88
2010-03-20 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/js/app.js: Don't activate shortcuts if a modifier key is down * lib/yard/docstring.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/library.rb, lib/yard/tags/overload_tag.rb, spec/docstring_spec.rb, spec/tags/overload_tag_spec.rb: Remove distinction between regular and "raw" tag text in the tags API. All tag text is now delivered as a raw buffer with newlines intact. The API for creating factory methods is now just `def parse_tag_NAME(tag_name, text)`. This change might break existing plugins/extensions that add custom tags. * spec/templates/class_spec.rb, spec/templates/examples/class002.html, templates/default/class/setup.rb, .../default/module/html/inherited_methods.erb, templates/default/module/html/method_summary.erb: Respect @private for constructors Closes gh-81 * lib/yard/parser/ruby/legacy/ruby_lex.rb: Graceful failure when multibyte chars are tokenized Closes gh-94 * lib/yard/templates/helpers/method_helper.rb, spec/templates/helpers/method_helper_spec.rb: Hide &block from argument list for methods that yield. If a @param tag is specified for the block argument, the argument will show. Closes gh-77 * spec/templates/examples/module001.html, spec/templates/module_spec.rb, templates/default/fulldoc/html/css/style.css, templates/default/module/html/constant_summary.erb, templates/default/module/setup.rb: Show full docstrings for constants. Closes gh-89 Closes gh-90 * lib/yard/docstring.rb, spec/docstring_spec.rb: Finish parsing @tag when next line is de-dented. Closes gh-78 * spec/docstring_spec.rb: Refactor docstring specs
2010-03-16 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb: Escape HTML inside <tt>/++ typewriter blocks * lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/source_parser_spec.rb: Fix parsing of =begin/=end comments with multiple consecutive newlines in 1.8
2010-03-14 Loren Segal <lsegal@soen.ca>
* lib/yard.rb: Don't treat 1.9.0 as a true "1.9" Closes gh-97 * templates/default/class/setup.rb: Show child namespaces in class documentation. Closes gh-98 * templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js: Add "C", "M" and "F" keyboard shorcuts to bring up class/method/file menus in non-frame mode. Also can press escape to close menu. Closes gh-69 * lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb, templates/default/fulldoc/html/frames.erb, templates/default/fulldoc/html/full_list.erb, templates/default/layout/html/headers.erb: Add --charset commandline option for yardoc to generate HTML docs for a specific charset Closes gh-96 * lib/yard/code_objects/base.rb: Fix documentation for CodeObjects::Base#method_missing * lib/yard/templates/helpers/html_helper.rb: Fix method summary listing for methods ending in = * templates/default/module/html/method_summary.erb: Show method summary heading when methods are inherited but none are defined in the class * lib/yard/autoload.rb, lib/yard/handlers/ruby/legacy/process_handler.rb, lib/yard/handlers/ruby/process_handler.rb, spec/handlers/examples/process_handler_001.rb.txt, spec/handlers/process_handler_spec.rb: Add handler for YARD process blocks * lib/yard/autoload.rb, .../ruby/legacy/class_condition_handler.rb, spec/handlers/class_condition_handler_spec.rb: Add class condition handler for Ruby 1.8 * lib/yard/handlers/base.rb, lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/class_condition_handler.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/class_variable_handler.rb, lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/exception_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, .../handlers/ruby/legacy/class_variable_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, lib/yard/handlers/ruby/legacy/exception_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/legacy/module_handler.rb, .../handlers/ruby/legacy/visibility_handler.rb, lib/yard/handlers/ruby/legacy/yield_handler.rb, lib/yard/handlers/ruby/method_condition_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, lib/yard/handlers/ruby/module_handler.rb, lib/yard/handlers/ruby/visibility_handler.rb, lib/yard/handlers/ruby/yield_handler.rb: Add `process` directive to handlers which defines the `process` method on the class inside an anonymous module to make it easier to extend an existing handler with mixins. * lib/yard/parser/ruby/legacy/statement.rb: Add line_range method
2010-01-29 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/base.rb, lib/yard/cli/yard_graph.rb, lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb: Gracefully handle invalid CLI options passed to yardoc/yri/yard-graph Closes gh-74 * lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Add support for =begin/=end comment strings
2010-01-25 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/template.rb: When dealing with many overloaded templates, include them in reverse order. This is necessary due to the way Ruby's module inclusion works with inheritance. Including a module puts it at the base of the inheritance chain. For example, if a class hierarchy looks like A->B->C, and C includes D, then it looks like A->B->D->C. This means that the base template, which is last in the full_paths list, should actually be included first, so that it ends up farthest back in the inheritance chain.
2010-01-18 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/autoload.rb, lib/yard/templates/erb_cache.rb, lib/yard/templates/template.rb, spec/templates/template_spec.rb: Cache the compiled ERB methods to speed up rendering time.
2010-01-22 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/helpers/html_helper.rb: Allow a broader variety of names for syntax highlighting. This is necessary to support some names for Pygments.
2010-01-18 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/helpers/html_helper.rb: HTML-escape text that isn't syntax highlighted due to --no-highlight.
2010-01-24 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/template.rb: When dealing with many overloaded templates, include them in reverse order. This is necessary due to the way Ruby's module inclusion works with inheritance. Including a module puts it at the base of the inheritance chain. For example, if a class hierarchy looks like A->B->C, and C includes D, then it looks like A->B->D->C. This means that the base template, which is last in the full_paths list, should actually be included first, so that it ends up farthest back in the inheritance chain.
2010-01-21 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/helpers/html_helper.rb: Allow a broader variety of names for syntax highlighting. This is necessary to support some names for Pygments.
2010-01-17 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/templates/helpers/html_helper.rb: HTML-escape text that isn't syntax highlighted due to --no-highlight. * lib/yard/autoload.rb, lib/yard/templates/erb_cache.rb, lib/yard/templates/template.rb, spec/templates/template_spec.rb: Cache the compiled ERB methods to speed up rendering time.
2010-01-11 Loren Segal <lsegal@soen.ca>
* README.md: Fix links in README * templates/default/layout/html/setup.rb: Fix encoding issues when reading extra files * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix typewrite issues * README.md: Add info to changelog * docs/WhatsNew.md: Update what's new * README.md, lib/yard.rb, yard.gemspec: Bump version to 0.5.3
2010-01-07 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb: Fix typewriter text after RDoc markup is generated * .gitignore, Rakefile: Remove gem package Rake tasks and use simplified gem build functionality * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix <tt>text</tt> RDoc markup showing \004 characters inside code blocks
2010-01-05 Loren Segal <lsegal@soen.ca>
* templates/default/layout/html/setup.rb: Use default markup provider for extra files. Also add ability to override markup provider for files with no extension. Add #!MARKUP shebang to first line of file. Closes gh-64 * templates/default/layout/html/setup.rb: Use raw HTML for .html extra files * lib/yard/core_ext/string.rb: Fix camelcase bug Closes gh-65
2009-12-31 Loren Segal <lsegal@soen.ca>
* lib/rubygems_plugin.rb: Fix yard gem plugin in 1.8.x with multiple versions of yard installed Closes gh-62 * lib/rubygems_plugin.rb: Fix has_yardoc accessor * lib/rubygems_plugin.rb: Don't build yard index if yardoc will run
2009-12-29 Loren Segal <lsegal@soen.ca>
* lib/yard/core_ext/hash.rb, spec/core_ext/hash_spec.rb: Fix another Hash.[] related issue to make sure array can be passed in as a key * lib/yard/core_ext/hash.rb: Fix improper Hash.[] implementation Closes gh-61
2009-12-28 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/template.rb: Remove unused private method call * lib/yard/templates/template.rb, spec/templates/engine_spec.rb, spec/templates/template_spec.rb: Fix inclusion of overridden template paths above format directory. Closes gh-60 * templates/default/fulldoc/html/setup.rb: Remove unecessary line
2009-12-25 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/full_list.css: Fix css for arrows * lib/yard/parser/c_parser.rb: Fix showing entire source file as comment for class/module * lib/yard/parser/c_parser.rb: Better linking of variable names to class/modules * templates/default/layout/html/breadcrumb.erb: Show proxies namespaces in small in breadcrumb * templates/default/fulldoc/html/setup.rb: Show objects from proxies namespaces * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add --incremental to generate only new objects parsed in changed files. Using yardoc -c alone will now use the cached yardoc but will generate all objects * yard.gemspec: Fix reloading of yard in Rakefile (1.8)
2009-12-24 Loren Segal <lsegal@soen.ca>
* lib/rubygems_plugin.rb: Improve Rubygems plugin behaviour and generate .yardoc db for yri * lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Unify comment parsing behaviour between 1.8/1.9 * templates/default/fulldoc/html/js/full_list.js: Make any click to the left of an arrow expand the tree rather than select the item * templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/full_list.erb, templates/default/fulldoc/html/full_list_class.erb, templates/default/fulldoc/html/full_list_files.erb, .../default/fulldoc/html/full_list_methods.erb, templates/default/fulldoc/html/js/full_list.js, templates/default/fulldoc/html/setup.rb: Add tree view implementation for class list * spec/code_objects/base_spec.rb, spec/templates/helpers/html_helper_spec.rb: Fix specs (disable a broken one temporarily) * templates/default/class/setup.rb: Don't show subclasses for Object * lib/yard/templates/helpers/html_helper.rb: Use relative path for link title. Also add more appropriate title tag * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Update #resolve_links to work with ({Name}) syntax. Add specs * lib/yard/code_objects/class_object.rb: Fix behaviour of ClassObject#superclass= * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Add Base#relative_path to return relative namespace path of two objects * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Add check for creating objects with empty name * lib/yard/parser/source_parser.rb: Force encoding to source file's encoding (using # coding shebang line) to properly parse source * benchmarks/parsing.rb, lib/yard/cli/yardoc.rb, lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb, spec/spec_helper.rb: Add --exclude REGEXP to yardoc to ignore paths with a regexp match. yardoc --exclude '_spec\.rb$' will ignore any file ending in _spec.rb
2009-12-23 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/module001.html, spec/templates/module_spec.rb, templates/default/module/html/constant_summary.erb: Fix anchor for constants * spec/templates/examples/class001.html, spec/templates/examples/class001.txt, templates/default/class/html/subclasses.erb, templates/default/class/setup.rb, templates/default/class/text/subclasses.erb: Fix subclasses not showing in documentation
2009-12-22 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/full_list.erb: Move links below header * templates/default/fulldoc/html/js/app.js: Make summary links work within frames * templates/default/fulldoc/html/full_list.erb, templates/default/layout/html/layout.erb: Add frames class name immediately (improves UI responsiveness) * templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/frames.erb, templates/default/fulldoc/html/full_list.erb, templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/search.erb: Add classical frameset view to docs as frames.html
2009-12-20 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/legacy/method_handler.rb: Fix bug in 1.8 handler * lib/yard/core_ext/file.rb, lib/yard/parser/source_parser.rb, spec/code_objects/base_spec.rb, spec/parser/source_parser_spec.rb: Add File.read_binary to fix specs * lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/templates/helpers/html_helper.rb, spec/handlers/attribute_handler_spec.rb, .../handlers/examples/attribute_handler_001.rb.txt, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb, spec/templates/examples/module001.html, templates/default/module/html/item_summary.erb: When a reader/writer method is defined alongside an attribute, mark it as part of attribute * lib/yard/cli/base.rb, lib/yard/cli/yard_graph.rb, lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb, lib/yard/logging.rb: Show backtraces by default outside of CLI classes * lib/yard/code_objects/method_object.rb, lib/yard/templates/helpers/html_helper.rb, spec/code_objects/method_object_spec.rb, spec/templates/examples/module001.dot, spec/templates/examples/module001.html, spec/templates/module_spec.rb, templates/default/module/dot/info.erb, .../default/module/html/attribute_details.erb, templates/default/module/html/item_summary.erb: Add MethodObject#attr_info and do not show '=' in attribute's method summary signature
2009-12-17 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb: Read source in binary mode to be encoding safe
2009-12-16 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Fix behaviour for --build-gems Closes gh-56 * lib/yard/cli/yardoc.rb: Don't build a gem if there is no yardoc path for gem * ChangeLog, lib/yard.rb, yard.gemspec: Bump version to 0.5.2 * lib/yard/cli/yri.rb, lib/yard/core_ext/file.rb, lib/yard/registry_store.rb, lib/yard/serializers/file_system_serializer.rb, spec/core_ext/file_spec.rb: Ensure '~/.yard' path is created before writing certain config files. - Adds File.open! to ensure path exists before writing file Closes gh-57 * lib/yard/registry_store.rb: Return true/false in RegistryStore#load!
2009-12-15 Loren Segal <lsegal@soen.ca>
* docs/WhatsNew.md: Forgot to add version number for changes * ChangeLog, README.md, lib/yard.rb, yard.gemspec: Bump version to 0.5.1 * docs/WhatsNew.md: Update What's New document * lib/yard/cli/yri.rb, spec/cli/yri_spec.rb: Always put local directory's .yardoc ahead of cache * lib/yard/cli/yri.rb, spec/cli/yri_spec.rb: Allow user to specify ~/.yard/yri_search_paths file listing extra yardoc dbs to search. File format should just be newline separated .yardoc files/directories: /path/to/.yardoc /path/to/other.yardoc ... * lib/yard/cli/yardoc.rb: Improve behaviour of re-generating changed objects during incremental parsing * lib/yard/registry.rb, lib/yard/registry_store.rb, spec/registry_store_spec.rb: Change behaviour of RegistryStore loading cache. Does not load cache on #keys/#values by default. Instead use #load! or #load_all to load all contents explicitly * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Change behaviour of SourceParser logging * lib/yard/registry_store.rb: Add cache for failed lookups * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix RubyParser in 1.9.1p376 (ripper lib was changed) * lib/yard/registry.rb, spec/registry_spec.rb: Add specs for Registry.yardoc_file_for_gem * lib/yard.rb, lib/yard/cli/yri.rb, lib/yard/registry.rb, spec/yard_spec.rb: Add support for packages named yard-doc-* to be loaded by yri * Rakefile: Should use RUBY_PLATFORM
2009-12-14 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.md, docs/WhatsNew.md, lib/yard.rb, yard.gemspec: Bump version to 0.5.0 * lib/yard/parser/c_parser.rb: Add auto-type support for Class in native code
2009-12-13 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/logging.rb, lib/yard/registry.rb: When yardoc --use-cache is specified, generate only the objects parsed from changed files * lib/yard/cli/yardoc.rb, lib/yard/registry.rb: Update behaviour for --build-gems, Registry.yardoc_file_for_gem, add --re-build-gems to force building of all gems * lib/yard/registry_store.rb: Document RegistryStore * lib/yard/cli/base.rb: Document CLI::Base * lib/rubygems_plugin.rb, lib/yard/core_ext/file.rb, lib/yard/handlers/base.rb, lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/parser/source_parser.rb: Fix various warnings in ruby -w Closes gh-55 * lib/yard/core_ext/hash.rb, spec/core_ext/hash_spec.rb: Backport Hash[arr] 1.8.7+ behaviour to 1.8.6 * lib/yard/registry_store.rb, spec/registry_store_spec.rb: Add more specs to RegistryStore * lib/yard/parser/source_parser.rb, lib/yard/registry.rb, spec/parser/source_parser_spec.rb: Move checksum code into Registry#checksum_for * lib/yard/cli/yri.rb, spec/cli/yri_spec.rb: Don't cache Registry.yardoc_file in yri lookups * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Add checking of checksum cache when parsing files * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Streamline merge/cache options into -c (--use-cache) to reload existing yardoc db and merge the results. Adding -c will also do incremental parsing on files using against a SHA1 checksum of the file contents to speed up parse time. TODO: incremental generation of HTML files. * lib/yard/registry.rb, lib/yard/registry_store.rb, lib/yard/serializers/yardoc_serializer.rb, spec/registry_store_spec.rb: Add loading/saving of RegistryStore#checksums * lib/yard/parser/c_parser.rb: Add extra types recognition for Array * lib/yard/parser/c_parser.rb: Improve types recognition for C call-seqs * spec/templates/examples/method003.html, spec/templates/examples/method005.html, spec/templates/examples/module001.html, templates/default/method_details/setup.rb: Fix source not showing for overloaded methods * lib/yard/templates/helpers/html_helper.rb: Fix linking of default return type in signature * lib/yard/templates/helpers/html_helper.rb: Properly linkify default return type * lib/yard/tags/overload_tag.rb, spec/tags/overload_tag_spec.rb: Fix OverloadTag when parsing signature starting with 'def' * lib/yard/parser/c_parser.rb: Improve parsing of native call-seq
2009-12-12 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/examples/method004.html, spec/templates/examples/method005.html, templates/default/method/html/header.erb: Fix view source link not showing for individual method page * lib/yard/code_objects/class_object.rb, lib/yard/parser/c_parser.rb, spec/code_objects/class_object_spec.rb, templates/default/module/html/box_info.erb: Add support for BasicObject class as parent of Object * lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/index.erb, templates/default/layout/html/setup.rb: Fix displaying of README filenames in the form README.lang.ext * lib/yard/serializers/yardoc_serializer.rb: Remove unique object serialization tricks in YardocSerializer (marshal handles this) * lib/yard/registry_store.rb, spec/registry_store_spec.rb: Add specs for RegistryStore#load returning true/false * lib/yard/registry_store.rb: Registry.load_yardoc should return true if .yardoc loads * lib/yard/registry_store.rb, spec/registry_store_spec.rb: Always load root object first when loading .yardoc * lib/yard/registry_store.rb: Treat :root and empty string as equivalent in RegistryStore#get * lib/yard/handlers/processor.rb, lib/yard/logging.rb, templates/default/fulldoc/html/setup.rb: Add Logger#backtrace to show backtraces only if Logger#show_backtraces is set. Enables --backtrace in CLI classes. * lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, lib/yard/code_objects/root_object.rb, lib/yard/handlers/base.rb, lib/yard/parser/c_parser.rb, lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/full_list.erb, templates/default/layout/dot/setup.rb, templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/index.erb, templates/default/layout/html/setup.rb, templates/default/method_details/text/setup.rb, templates/default/module/html/box_info.erb: Don't test against actual Registry.root, instead check if object is a RootObject (through #root?) * lib/yard/code_objects/method_object.rb: Make sure parent of method is a namespace * lib/yard/cli/yri.rb: Current path's .yardoc should be first in the search path for yri * lib/yard/autoload.rb, lib/yard/cli/base.rb, lib/yard/cli/yard_graph.rb, lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb: Refactor CLI classes into subclass of CLI::Base to get common options
2009-12-11 Loren Segal <lsegal@soen.ca>
* lib/yard/docstring.rb, lib/yard/tags/library.rb: Docstring object should not keep tag factory instance in an instance variable * lib/yard/serializers/yardoc_serializer.rb: Better dumping on a StubProxy/CodeObject * lib/yard/registry_store.rb, lib/yard/serializers/yardoc_serializer.rb: Load entire yardoc db before calling keys/values * lib/yard/registry.rb, lib/yard/registry_store.rb: get('') and get(:root) should both get root object * lib/yard/serializers/yardoc_serializer.rb: Cache object that StubProxy is pointing to (saves a lookup) but don't serialize cached object. * lib/yard/serializers/yardoc_serializer.rb: Minor refactoring * benchmarks/yri_cache.rb, lib/yard/cli/yri.rb: Add caching to yri with a benchmark to illustrate speedup results * lib/yard/registry.rb, spec/registry_spec.rb, spec/registry_store_spec.rb: Add specs for RegistryStore * spec/registry_spec.rb: Refactor Registry specs * lib/yard/templates/helpers/html_helper.rb, .../helpers/html_syntax_highlight_helper.rb, .../helpers/html_syntax_highlight_helper18.rb, spec/templates/helpers/html_helper_spec.rb: Can now opt out of syntax highlighting on an indented block by putting "!!!plain" alone on the first line of the block. For example: !!!plain non-ruby code here Also allows adding support for highlighting multiple languages. The prefix !!!NAME will call the method "html_syntax_highlight_NAME" with the source. This is how "!!!ruby" works, for instance. Thanks lriesterer for the initial patch.
2009-12-10 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/attribute_handler.rb, spec/handlers/attribute_handler_spec.rb: Handle attr* call with no arguments * lib/yard/code_objects/class_object.rb: Fix handling of ClassObject#superclass * lib/yard/code_objects/class_object.rb: Fix handling of ClassObject#superclass * lib/yard/handlers/ruby/attribute_handler.rb, spec/handlers/attribute_handler_spec.rb: Handle attr* call with no arguments * lib/yard/cli/yardoc.rb: Change message for --build-gems * lib/yard/cli/yri.rb: yri can now use the new .yardoc format for index * lib/yard/cli/yardoc.rb, lib/yard/registry.rb: Fix --build-gem to use new .yardoc format for index
2009-12-09 Loren Segal <lsegal@soen.ca>
* spec/parser/source_parser_spec.rb: Fix specs for YARD.parse and directories * spec/parser/source_parser_spec.rb: Fix specs for YARD.parse and directories
2009-12-08 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb, lib/yard/registry.rb: Add implementation to write index for YRI. Should be merged into .yardoc / Registry * lib/yard.rb, spec/yard_spec.rb: Only load latest version of any Gem plugin * lib/yard/cli/yri.rb: Add debugging messages to YRI * lib/yard/cli/yardoc.rb: Add --merge to merge parsed data into existing .yardoc file (specified with -b) * lib/yard/cli/yardoc.rb: Add --build-gems to build .yardoc file for gems * lib/yard/cli/yri.rb, lib/yard/registry.rb: Add Registry.yardoc_file_for_gem * bin/yri, lib/yard/autoload.rb, lib/yard/cli/yri.rb: Refactor yri bin into CLI::YRI * templates/default/fulldoc/html/setup.rb: Handle errors during HTML generation * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Fix call-seq handling * lib/yard/code_objects/base.rb: Fix exception being thrown for source with no spaces * lib/yard/cli/yardoc.rb: Ignore comments in .document file * lib/yard/code_objects/base.rb, lib/yard/parser/c_parser.rb, .../helpers/html_syntax_highlight_helper.rb, .../helpers/html_syntax_highlight_helper18.rb, spec/code_objects/base_spec.rb, templates/default/method_details/html/source.erb: Add CodeObjects::Base#source_type to set source type (:ruby or :c), only highlight for Ruby code
2009-12-07 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/c_parser.rb: Add support for one-line call-seq: * lib/yard/cli/yardoc.rb, lib/yard/parser/source_parser.rb, spec/cli/yardoc_spec.rb: Add ext/**/*.c to default parse glob * spec/parser/source_parser_spec.rb: Remove warning spec for C/C++ files * lib/yard/autoload.rb, lib/yard/parser/c_parser.rb, lib/yard/parser/source_parser.rb, spec/parser/c_parser_spec.rb, spec/parser/examples/array.c.txt, spec/spec_helper.rb: Initial C parser implementation
2009-12-08 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/cli/yri.rb, lib/yard/registry.rb: Add implementation to write index for YRI. Should be merged into .yardoc / Registry * lib/yard.rb, spec/yard_spec.rb: Only load latest version of any Gem plugin * lib/yard/cli/yri.rb: Add debugging messages to YRI * lib/yard/cli/yardoc.rb: Add --merge to merge parsed data into existing .yardoc file (specified with -b) * lib/yard/cli/yardoc.rb: Add --build-gems to build .yardoc file for gems * lib/yard/cli/yri.rb, lib/yard/registry.rb: Add Registry.yardoc_file_for_gem * bin/yri, lib/yard/autoload.rb, lib/yard/cli/yri.rb: Refactor yri bin into CLI::YRI * templates/default/fulldoc/html/setup.rb: Handle errors during HTML generation * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Fix call-seq handling * lib/yard/code_objects/base.rb: Fix exception being thrown for source with no spaces * lib/yard/cli/yardoc.rb: Ignore comments in .document file * lib/yard/code_objects/base.rb, lib/yard/parser/c_parser.rb, .../helpers/html_syntax_highlight_helper.rb, .../helpers/html_syntax_highlight_helper18.rb, spec/code_objects/base_spec.rb, templates/default/method_details/html/source.erb: Add CodeObjects::Base#source_type to set source type (:ruby or :c), only highlight for Ruby code
2009-12-07 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/c_parser.rb: Add support for one-line call-seq: * lib/yard/cli/yardoc.rb, lib/yard/parser/source_parser.rb, spec/cli/yardoc_spec.rb: Add ext/**/*.c to default parse glob * spec/parser/source_parser_spec.rb: Remove warning spec for C/C++ files * lib/yard/autoload.rb, lib/yard/parser/c_parser.rb, lib/yard/parser/source_parser.rb, spec/parser/c_parser_spec.rb, spec/parser/examples/array.c.txt, spec/spec_helper.rb: Initial C parser implementation
2009-12-08 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/source_parser.rb: If a directory is given to YARD.parse, make it a file glob instead. * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add better tokenization support in .yardoc file (support quoted multi-space tokens) You should now be able to set a long title with: --title "Foo Bar" * lib/yard/core_ext/string.rb, spec/core_ext/string_spec.rb: Add String#shell_split to split text into tokens like a shell does (respecting quoted tokens) * spec/core_ext/string_spec.rb: Refactor string specifications
2009-12-07 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/class001.html, spec/templates/examples/method004.html, spec/templates/examples/method004.txt, spec/templates/examples/method005.html, spec/templates/examples/method005.txt, spec/templates/examples/module001.dot, spec/templates/examples/module001.html, spec/templates/examples/module001.txt, spec/templates/module_spec.rb: Correct all template specs * lib/yard/templates/helpers/html_helper.rb: Only show overload as signature if there is one overload * lib/yard/tags/overload_tag.rb: Improve robustness of OverloadTag signature parsing * templates/default/tags/html/overload.erb: Don't show empty overload sections * lib/yard/templates/helpers/method_helper.rb, spec/templates/helpers/method_helper_spec.rb: Show yield block in signature for method with no params * lib/yard/templates/helpers/method_helper.rb, templates/default/method_details/setup.rb: Add extra robustness for method with no source attached * lib/yard/templates/helpers/html_helper.rb: htmlify method names in signature * lib/yard/templates/helpers/html_helper.rb: Fix typewriter text for unmatched ++ * lib/yard/cli/yardoc.rb, lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/text_helper.rb, spec/cli/yardoc_spec.rb, spec/templates/helpers/html_helper_spec.rb, .../templates/helpers/shared_signature_examples.rb, spec/templates/helpers/text_helper_spec.rb: Revert hiding of (Object) and (void) return types in signature by default, but add switches to re-enable the behaviour. New switches are --default-return and --hide-void-return. --default-return can take the empty string to show no return type. Also port behaviour over to text_helper.rb and refactor specs to test both helpers at the same time. * lib/yard/code_objects/method_object.rb: Better handling of methods in proxy namespaces. * lib/yard/code_objects/base.rb: Fix method match for #<=>
2009-12-06 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/overload_tag.rb: Fix OverloadTag#name for instance methods * lib/yard/tags/overload_tag.rb, spec/serializers/file_system_serializer_spec.rb, spec/tags/overload_tag_spec.rb, spec/templates/examples/module001.html, spec/templates/helpers/html_helper_spec.rb: Fix the way object lookups are done inside overload tags. Closes gh-51 * lib/yard/code_objects/base.rb, spec/templates/helpers/base_helper_spec.rb: Change the way Base#=== tests equality (call #is_a? on other) * spec/serializers/file_system_serializer_spec.rb: Refactor FileSystemSerializer specs
2009-12-05 Loren Segal <lsegal@soen.ca>
* templates/default/module/setup.rb: Fix sort_listing for Ruby1.8 * templates/default/module/setup.rb: Refactor method listing behaviour for special methods * templates/default/module/html/item_summary.erb: Only show constructor note inside a class * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: Only show #initialize as constructor if defined in a class * templates/default/module/setup.rb: Only sort method summary by scope/name, not visibility * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: Add MethodObject#constructor? to return if method is #initialize * lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/method_helper.rb, spec/templates/helpers/html_helper_spec.rb, spec/templates/helpers/method_helper_spec.rb: Show multiple types in signature return types and add heuristics for nullable/splat returns Summary of the new heuristics are as follows: * Single return type: (Type) * Two return types: (TypeA, TypeB) * More than two: (TypeA, ...) * @return [Type, nil]: (Type?) [? is superscripted] * @return [Type, Array<Type>]: (Type+) [+ is superscripted] * @return [void]: no return type shown Closes gh-49 * spec/templates/examples/method003.html, templates/default/tags/html/overload.erb: Don't show extra text in overload signatures * templates/default/fulldoc/html/css/style.css: Display paragraphs as block elements in overload tags Closes gh-50
2009-12-04 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/tags/tag.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add @return [Boolean] to methods ending in '?' unless they have a return type set * spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method002.txt, spec/templates/examples/method003.html, spec/templates/examples/method003.txt, spec/templates/examples/method004.html, spec/templates/examples/method004.txt, spec/templates/examples/method005.html, spec/templates/examples/method005.txt, spec/templates/examples/module001.dot, spec/templates/examples/module001.html, spec/templates/examples/module001.txt, spec/templates/method_spec.rb, spec/templates/module_spec.rb, spec/templates/spec_helper.rb: Add tests for void return types and overloaded attributes * lib/yard/templates/helpers/text_helper.rb: Fix signature for text helper (don't show return for void/undocumented meths) * templates/default/fulldoc/html/css/style.css, templates/default/module/html/item_summary.erb: Add constructor button next to #initialize method in summary * templates/default/docstring/html/returns_void.erb, templates/default/docstring/setup.rb, templates/default/docstring/text/returns_void.erb, templates/default/fulldoc/html/css/style.css, templates/default/tags/setup.rb: Don't show @return for void, but show note in a void method * lib/yard/cli/yardoc.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/core_ext/symbol_hash.rb, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/source_parser.rb, lib/yard/rake/yardoc_task.rb, lib/yard/registry.rb, lib/yard/serializers/base.rb, lib/yard/templates/engine.rb, lib/yard/verifier.rb: Documentation: change to @return [void] instead of [nil] * lib/yard/templates/helpers/html_helper.rb: Don't show return type if none specified or void * lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/method_handler_spec.rb: #initialize should return [void] * lib/yard/templates/helpers/html_helper.rb: Use first @overload tag for return type in signature if no other return tag is present * templates/default/fulldoc/html/setup.rb: Add attributes to method listing * lib/yard/tags/overload_tag.rb, spec/handlers/method_handler_spec.rb: Allow @overload to change name in signature * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: Fix MethodObject#is_attribute? when attr exists but not for both read/write Closes gh-48 * spec/templates/examples/class001.html, spec/templates/examples/module001.html, .../default/class/html/constructor_details.erb, templates/default/fulldoc/html/js/app.js, .../default/module/html/attribute_details.erb, .../default/module/html/attribute_summary.erb, .../default/module/html/method_details_list.erb, templates/default/module/html/method_summary.erb, templates/default/module/html/methodmissing.erb, templates/default/module/setup.rb: Split attr/method summary/details by into separate class/instance sections
2009-12-01 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb: Sort tag attributes so tests can pass across 1.8/1.9 without modification * lib/yard.rb: Remove Encoding declaration (breaks in 1.9 and isn't necessary) * lib/yard/tags/overload_tag.rb, spec/templates/examples/module001.dot, spec/templates/examples/module001.html, spec/templates/examples/module001.txt, spec/templates/module_spec.rb, templates/default/docstring/setup.rb, templates/default/module/html/item_summary.erb: Fix duplicate docstring for single @overload tag. Also add overloaded signature to method summary listing in this case. Closes gh-39
2009-12-01 postmodern <postmodern.mod3@gmail.com>
* templates/default/fulldoc/html/css/style.css: Used a unicode hex-escape sequence in the CSS instead.
2009-12-01 Loren Segal <lsegal@soen.ca>
* lib/yard.rb: Force UTF-8 encoding for templates and files. Closes gh-47 * templates/default/method/html/header.erb, templates/default/module/html/defines.erb: Fix 1.8.6 incompatibility issue (missing Symbol#to_proc) * spec/templates/examples/method001.html, spec/templates/examples/module001.html, .../method_details/html/method_signature.erb: Permalink aliases Closes gh-44 * spec/templates/examples/module001.html, spec/templates/module_spec.rb, .../default/module/html/inherited_constants.erb, .../default/module/html/inherited_methods.erb: Hide private inherited methods/constants. Closes gh-43 * lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/method_handler_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/module001.html: Remove RDoc specific markup for auto-generated meta-tags. Closes gh-45
2009-11-29 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/setup.rb, templates/default/module/setup.rb: Ignore @private classes/modules. Closes gh-46
2009-11-26 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb: Add no-continuation warning for Rubinius and only warn once
2009-11-21 Loren Segal <lsegal@soen.ca>
* lib/yard/core_ext/module.rb, spec/core_ext/module_spec.rb: Resolve collision with Module#namespace and Rake, renamed to #namespace_name Closes gh-42
2009-11-17 Loren Segal <lsegal@soen.ca>
* templates/default/layout/html/index.erb: Sort index listing in 1.8
2009-11-16 Loren Segal <lsegal@soen.ca>
* templates/default/module/dot/info.erb: Fix broken dot template in Ruby1.8 (due to hash ordering) * lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/source_parser_spec.rb: Legacy parser should prioritize prepended comments over appended ones. Closes gh-38
2009-11-15 Loren Segal <lsegal@soen.ca>
* .../helpers/html_syntax_highlight_helper.rb, .../helpers/html_syntax_highlight_helper18.rb: Add sanity checks for methods with no source * lib/yard/templates/helpers/method_helper.rb: Sanity check for methods with no source * ChangeLog, lib/yard.rb, yard.gemspec: Bump version to 0.4.0 * ChangeLog: Update changelog * lib/yard/handlers/ruby/legacy/constant_handler.rb: Fix constant missing error * lib/yard/templates/helpers/module_helper.rb: Fix prune_method_listing to work more gracefully with methods in proxy namespaces * spec/templates/helpers/base_helper_spec.rb, templates/default/layout/html/footer.erb, yard.gemspec: Change URL to yardoc.org
2009-11-14 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/template.rb: Allow superb to specify a section name
2009-11-13 Loren Segal <lsegal@soen.ca>
* Rakefile: Only build .gem for install * Rakefile: Allow rake to function without RSpec * spec/templates/examples/class001.html, spec/templates/examples/class001.txt, spec/templates/examples/module001.dot, spec/templates/examples/module001.html: Update template specs
2009-11-12 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/constant_handler.rb: Remove unneeded Registry check in constant handler * README.md: Document new features in changelog section * lib/yard.rb, spec/yard_spec.rb: Use Gem.source_index.entries instead of all_gems (Rails compatibility) Closes gh-36 * lib/yard/core_ext/string.rb, spec/core_ext/string_spec.rb: Make String#underscore behave like activesupport's (Rails compatibility) Closes gh-35
2009-11-11 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, lib/yard/parser/ruby/ast_node.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt, spec/handlers/examples/constant_handler_001.rb.txt, spec/parser/ruby/ruby_parser_spec.rb: Add support for X = Struct.new(:attrname, ...) class declaration syntax
2009-11-07 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/css/style.css: IE7 compatibility fixes * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix AstNode handling for source of array references and if/unless/while statements * bin/view_generator: Remove old view_generator test binary
2009-11-06 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/ruby/legacy/statement_list_spec.rb: Another fix for comments not registering as docstrings in 1.8 parser * lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/ruby/legacy/statement_list_spec.rb: Fix behaviour in legacy parser for which comments should be associated with a statement * lib/yard/handlers/ruby/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Fix docstring being destroyed in 1.9 parser when a class is redefined without comments
2009-11-05 Loren Segal <lsegal@soen.ca>
* docs/GettingStarted.md: Add plugin info to getting started guide * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb, templates/default/fulldoc/html/full_list.erb, templates/default/layout/html/breadcrumb.erb, templates/default/module/setup.rb: Add name(prefix=false) to CodeObjects::Base to simplify API for calling methobj.name(true) * lib/yard/templates/helpers/html_helper.rb: Add special title for link in signature * yard.gemspec: Add changelog to gemspec * lib/yard/code_objects/class_variable_object.rb, lib/yard/handlers/ruby/class_variable_handler.rb, .../handlers/ruby/legacy/class_variable_handler.rb, lib/yard/templates/helpers/html_helper.rb, spec/handlers/class_variable_handler_spec.rb, spec/templates/module_spec.rb, templates/default/module/setup.rb: Add class variables to templates along with constants * lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Try to parse toplevel files first * templates/default/fulldoc/html/setup.rb: Make title more obvious that it's YARD parsing the docs, not YARD's docs. * .../handlers/ruby/legacy/class_variable_handler.rb, .../examples/class_variable_handler_001.rb.txt: Parse class variable name properly in 1.8 parser * lib/yard/handlers/ruby/exception_handler.rb, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Ignore 'raise' called on target receivers in 1.9 parser
2009-11-04 Loren Segal <lsegal@soen.ca>
* templates/default/class/setup.rb, templates/default/module/html/box_info.erb, .../default/module/html/inherited_constants.erb, .../default/module/html/inherited_methods.erb, templates/default/module/setup.rb: Sort various method/child/subclass lists * .yardopts, ChangeLog: Update changelog, put it in docs * docs/GettingStarted.md, docs/WhatsNew.md: Fix some broken links to old README.markdown
2009-11-03 Loren Segal <lsegal@soen.ca>
* benchmarks/template_profile.rb: Don't use perftools * lib/yard/templates/template.rb: Make example more realistic * benchmarks/concat_vs_join.rb, benchmarks/erb_vs_erubis.rb, benchmarks/pathname_vs_string.rb, benchmarks/template_erb.rb, benchmarks/template_format.rb, benchmarks/template_profile.rb: Add/update benchmarks for templates * lib/yard/core_ext/file.rb, lib/yard/templates/engine.rb, lib/yard/templates/template.rb, spec/core_ext/file_spec.rb, spec/templates/engine_spec.rb, spec/templates/template_spec.rb: Remove Pathname from code, it is too slow. * lib/yard/templates/template.rb: Refactor erb to use erb_with and only trim newlines if format == text (performance) * templates/default/fulldoc/html/css/style.css: Fix constant colour in syntax highlighting * templates/default/fulldoc/html/css/full_list.css: Make search box in namespace list rounded, collapse border * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: format_types should work for composite paths (A::B)
2009-11-02 Loren Segal <lsegal@soen.ca>
* README.md: Update readme * lib/yard/code_objects/class_object.rb: Fix broken @see reference * docs/WhatsNew.md: Add more info on updated templates * lib/yard/tags/library.rb, templates/default/docstring/html/note.erb, templates/default/docstring/html/todo.erb, templates/default/docstring/setup.rb, templates/default/docstring/text/note.erb, templates/default/docstring/text/todo.erb, templates/default/fulldoc/html/css/style.css: Add @note, add @note and @todo into templates * lib/yard/code_objects/base.rb: Explain how to modify CodeObjects::Base#files * lib/yard/docstring.rb, spec/docstring_spec.rb: Don't end summary in the middle of a decimal (like 1.5) * templates/default/layout/html/footer.erb, templates/default/layout/html/header.erb, templates/default/layout/html/headers.erb, templates/default/layout/html/layout.erb, templates/default/layout/html/search.erb, templates/default/layout/html/setup.rb: Split layout template into sections * lib/yard.rb: Remove modification * docs/WhatsNew.md: Document new plugin ignore behaviour * lib/yard.rb, spec/yard_spec.rb: Add mechanism to ignore plugins by name (add names to ~/.yard/ignored_plugins) * lib/yard.rb: Debug needs to be modified or debugging message does not show * lib/yard.rb: Documentation for a few helper methods * lib/yard.rb, spec/yard_spec.rb: Add plugin support. Name your gems 'yard-myplugin' or 'yard_myplugin'. Plugins are loaded automatically when YARD loads. The '-' separator is the recommended naming scheme. * docs/WhatsNew.md: Document the plugin behaviour * lib/yard.rb, spec/yard_spec.rb: Add plugin support. Name your gems 'yard-myplugin' or 'yard_myplugin'. Plugins are loaded automatically when YARD loads. The '-' separator is the recommended naming scheme. * lib/yard/handlers/base.rb, lib/yard/templates/template.rb: Remove a few debugging messages (too much info) * lib/yard/code_objects/constant_object.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/examples/constant_handler_001.rb.txt: Fix constants removing newlines from value in 1.8
2009-11-01 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix format_types to link all words * templates/default/class/setup.rb: Improve rendering speed of subclasses section * lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add Class.inherited to privatized method list * templates/default/fulldoc/html/setup.rb: Refactor logic to generate index.html file, do so for readme or table of contents * lib/yard/code_objects/base.rb: Document CodeObjects::Base as abstract * docs/GettingStarted.md, docs/Templates.md, docs/WhatsNew.md, templates/default/fulldoc/html/css/style.css: Update documentation, discuss new features * templates/default/fulldoc/html/css/style.css: Use the same font family as signature * templates/default/fulldoc/html/css/style.css: Alias name should be smaller in signature * lib/yard/templates/engine.rb, lib/yard/templates/template.rb, spec/templates/engine_spec.rb: Fix inclusion order of overriden templates * spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/examples/module001.html, spec/templates/examples/tag001.txt, spec/templates/helpers/html_helper_spec.rb: Update specs * spec/cli/yardoc_spec.rb: Fix broken spec due to README being renamed * lib/yard/handlers/ruby/legacy/yield_handler.rb, lib/yard/handlers/ruby/yield_handler.rb, spec/handlers/yield_handler_spec.rb, templates/default/tags/html/tag.erb, templates/default/tags/setup.rb: Show yield types iff there are types present * templates/default/fulldoc/html/css/style.css: Update css * lib/yard/code_objects/base.rb, lib/yard/docstring.rb, lib/yard/handlers/ruby/legacy/base.rb: Fix broken reference links * lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/css/style.css, templates/default/module/html/item_summary.erb: Add info bubbles to summaries * .yardopts, Rakefile: Move some options to yardopts * templates/default/fulldoc/html/css/style.css, templates/default/layout/html/header.erb, .../default/module/html/attribute_summary.erb, templates/default/module/html/header.erb, templates/default/module/html/item_summary.erb, templates/default/module/html/method_summary.erb, templates/default/module/setup.rb: Add abstract/deprecated info bubbles * templates/default/fulldoc/html/css/style.css: Links in summary descriptions should be smaller * templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/js/app.js, .../default/module/html/attribute_summary.erb, templates/default/module/html/method_summary.erb: Update css, make method/attr summaries more apparent * templates/default/docstring/html/abstract.erb, templates/default/docstring/html/deprecated.erb, templates/default/fulldoc/html/css/style.css, templates/default/method_details/html/header.erb: Prettify method headers * templates/default/fulldoc/html/css/style.css: h3,h4 font sizes are too small for dotted border. Use whitespace instead * templates/default/fulldoc/html/css/style.css: Update css for page title / index page * templates/default/fulldoc/html/setup.rb, templates/default/layout/html/index.erb, templates/default/layout/html/setup.rb: Update page title and index page behaviour * Rakefile: Add title to rake yard * Rakefile, lib/yard/autoload.rb: Add @private tags and use --no-private * yard.gemspec: Update gemspec (renamed readme) * templates/default/fulldoc/html/css/style.css: Align source code line numbers to right * templates/default/fulldoc/html/css/style.css, templates/default/module/html/box_info.erb, templates/default/module/html/constant_summary.erb: Make HTML valid, update css * templates/default/layout/html/header.erb, templates/default/module/html/defines.erb: Fix html errors * templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js, templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/header.erb, templates/default/layout/html/index.erb: Update css, js
2009-10-31 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/glossary.erb, templates/default/layout/html/index.erb, templates/default/layout/html/setup.rb: Rename glossary as Alphabetic Index page * lib/yard/templates/helpers/html_helper.rb: Fix broken formatting * docs/Templates.md: Fix code block * .yardopts, README.markdown, README.md, docs/FAQ.md: Rename README, remove FAQ * docs/WhatsNew.md: Update what's new for next release * README.markdown: Document new --query parameter * lib/yard/templates/helpers/html_helper.rb: Fix problem with fix_typewriter and document some methods * lib/yard/templates/template.rb: Fix invalid reference * README.markdown, docs/GettingStarted.md: Update docs to reflect new YARD behaviours * lib/yard/templates/template.rb: Update documentation * spec/templates/template_spec.rb: Test superb from erb
2009-10-30 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/setup.rb: Allow overriding of assets with {{{__super__}}} inside subclassed template assets * lib/yard/templates/template.rb, spec/templates/template_spec.rb: Add Template#superb and modify Template#file to allow insertion of inherited template/files * templates/default/class/setup.rb: Make sure superclass exists
2009-10-25 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/css/style.css: Update style.css * templates/default/fulldoc/html/css/style.css: Update style.css * README.markdown, docs/GettingStarted.md, docs/Handlers.md, docs/Overview.md, docs/Parser.md, docs/Tags.md: Fix file: links * lib/yard/parser/source_parser.rb, lib/yard/templates/engine.rb, lib/yard/templates/template.rb: Fix broken links * .yardopts, docs/Generators.md, docs/Templates.md: Rewrite generators doc as Template arch
2009-10-24 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add @private tags to builtin Ruby callback methods if no docstring is specified * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add --no-private to ignore @private tags * lib/yard/autoload.rb, lib/yard/cli/yardoc.rb, lib/yard/rake/yardoc_task.rb, lib/yard/verifier.rb, spec/cli/yardoc_spec.rb, spec/rake/yardoc_task_spec.rb, spec/verifier_spec.rb: Add Verifier class * lib/yard/templates/template.rb: Extra documentation for Template * lib/yard/templates/template.rb: Documentation for Template * lib/yard/templates/engine.rb: Add examples for Engine docs * lib/yard/templates/engine.rb: Documentation for Templates::Engine * templates/default/module/setup.rb: Should be a summary
2009-10-23 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/engine.rb, spec/templates/engine_spec.rb: template paths should be pushed, not unshifted * lib/yard/handlers/processor.rb: Documentation for Handlers::Processor * lib/yard/handlers/base.rb: Documentation for Handlers::Base * spec/templates/examples/class001.html, spec/templates/examples/module001.html, templates/default/docstring/html/text.erb, templates/default/docstring/setup.rb, templates/default/docstring/text/text.erb, .../default/module/html/attribute_summary.erb, templates/default/module/html/constant_summary.erb, .../default/module/html/inherited_constants.erb, templates/default/module/html/method_summary.erb, templates/default/module/setup.rb: Use @return tag as docstring and summary if no docstring is provided but there is 1 return tag * lib/yard/parser/ruby/ast_node.rb: Basic documentation for AstNode * lib/yard/parser/source_parser.rb: Documentation for SourceParser * templates/default/module/html/constant_summary.erb, templates/default/module/setup.rb: Show inherited constants in summary
2009-10-22 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/method_object.rb: Update MethodObject documentation * spec/templates/class_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/class001.txt, templates/default/class/html/subclasses.erb, templates/default/class/setup.rb, templates/default/class/text/setup.rb, templates/default/class/text/subclasses.erb: Add subclasses to templates * lib/yard/code_objects/namespace_object.rb, lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/registry.rb: Fix invalid object references * .yardopts, docs/CODE_OBJECTS.markdown, docs/CodeObjects.md, docs/FAQ.markdown, docs/FAQ.md, docs/GENERATORS.markdown, docs/GETTING_STARTED.markdown, docs/GLOSSARY.markdown, docs/Generators.md, docs/GettingStarted.md, docs/Glossary.md, docs/HANDLERS.markdown, docs/Handlers.md, docs/OVERVIEW.markdown, docs/Overview.md, docs/PARSER.markdown, docs/Parser.md, docs/TAGS.markdown, docs/Tags.md, docs/WHATSNEW.markdown, docs/WhatsNew.md: Rename extra files * lib/yard/serializers/stdout_serializer.rb: Documentation for StdoutSerializer * lib/yard/serializers/process_serializer.rb: Documentation for ProcessSerializer * lib/yard/serializers/file_system_serializer.rb: Documentation for FileSystemSerializer * lib/yard/serializers/base.rb: Documentation for Serializers::Base * templates/default/docstring/html/abstract.erb, templates/default/docstring/html/deprecated.erb: Make sure abstract/deprecated templates are htmlified * lib/yard/tags/library.rb, spec/templates/class_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/class001.txt, spec/templates/examples/tag001.txt, spec/templates/tag_spec.rb, templates/default/docstring/html/abstract.erb, templates/default/docstring/setup.rb, templates/default/docstring/text/abstract.erb, templates/default/docstring/text/deprecated.erb: Add @abstract tag * lib/yard/rake/yardoc_task.rb: Documentation for YardocTask * spec/templates/examples/class001.html, spec/templates/examples/tag001.txt: Fix template specs * templates/default/tags/setup.rb: Fix showing of yieldparam type/name info * templates/default/tags/html/tag.erb: Fix showing of default arguments for param tag * lib/yard/cli/yardoc.rb: Documentation for Yardoc * templates/default/fulldoc/html/css/style.css: Update highlight style * templates/default/fulldoc/html/css/style.css, templates/default/module/html/methodmissing.erb: Update style for method missing notification * lib/yard/code_objects/method_object.rb: Documentation for MethodObject * lib/yard/code_objects/extended_method_object.rb: Documentation for ExtendedMethodObject * lib/yard/code_objects/namespace_object.rb: Documentation for NamespaceObject * lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add return tag for #initialize if not specified * templates/default/module/setup.rb: Move method missing section above attribute details * lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb: Fix @option tags in various files * lib/yard/code_objects/class_object.rb: Documentation for ClassObject * lib/yard/code_objects/proxy.rb: Documentation for Proxy * spec/templates/examples/tag001.txt: Correct tag spec * templates/default/tags/setup.rb: Reorder tags * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix parsing bug where 'def class' would screw up parsing of class
2009-10-21 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/root_object.rb: Documentation for RootObject * lib/yard/code_objects/module_object.rb: Documentation for ModuleObject * lib/yard/code_objects/constant_object.rb: Documentation for ConstantObject * lib/yard/code_objects/class_variable_object.rb: Documentation for ClassVariableObject * lib/yard/code_objects/base.rb: Improve CodeObjects::Base documentation * lib/yard/code_objects/base.rb: Documentation for CodeObjects::Base * spec/templates/examples/tag001.txt: Fix broken tag test * lib/yard/registry.rb: Documentation for Registry * lib/yard/logging.rb: Documentation for Logger * Rakefile: Don't generate rdocs for rake install * templates/default/tags/setup.rb: @yield tag shouldn't show types or names
2009-10-20 Loren Segal <lsegal@soen.ca>
* spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/examples/module001.html: Fix specs * lib/yard/templates/helpers/html_helper.rb: Change signature to properly encode type value inside a link * lib/yard/core_ext/file.rb: Documentation for File * templates/default/tags/html/overload.erb, templates/default/tags/text/overload.erb: One overload should not show overloads header * templates/default/tags/html/example.erb: Multiple examples should look the same as one * lib/yard/core_ext/symbol_hash.rb: Documentation for SymbolHash * lib/yard/core_ext/string.rb: Document String class * lib/yard/core_ext/module.rb: Documentation for Module * lib/yard/core_ext/array.rb: Documentation for Array * lib/yard/globals.rb: Documentation for globals * lib/yard/docstring.rb: Documentation for Docstring * lib/yard/cli/yard_graph.rb: Documentation for YardGraph * lib/yard/autoload.rb: Basic documentation for modules * lib/yard/rake/yardoc_task.rb: Change default task name to yard. You know, "rake the yard" * .gitignore, spec/templates/examples/module001.dot, spec/templates/module_spec.rb: Add dot format template spec * templates/default/method/text/header.erb, templates/default/method/text/method_signature.erb, templates/default/method/text/setup.rb, templates/default/method_details/text/header.erb, .../method_details/text/method_signature.erb, templates/default/method_details/text/setup.rb: Move text method templates to method_details
2009-10-19 Loren Segal <lsegal@soen.ca>
* lib/yard/templates/helpers/base_helper.rb: Add format_source to base helper * templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/setup.rb, templates/default/layout/setup.rb, templates/default/tags/text/setup.rb: Ruby18 compatibility * lib/yard/templates/helpers/markup_helper.rb: 1.8 requires rubygems require * spec/templates/class_spec.rb, spec/templates/engine_spec.rb, spec/templates/module_spec.rb, spec/templates/tag_spec.rb: Add full path to spec names (documentability) * lib/yard/templates/engine.rb, lib/yard/templates/template.rb, spec/templates/engine_spec.rb, spec/templates/method_spec.rb, spec/templates/template_spec.rb, templates/default/class/dot/setup.rb, templates/default/class/html/setup.rb, templates/default/class/setup.rb, templates/default/class/text/setup.rb, templates/default/docstring/setup.rb, templates/default/fulldoc/html/setup.rb, templates/default/layout/dot/setup.rb, templates/default/layout/html/setup.rb, templates/default/layout/setup.rb, templates/default/method/setup.rb, templates/default/method/text/setup.rb, templates/default/method_details/setup.rb, templates/default/module/dot/setup.rb, templates/default/module/setup.rb, templates/default/module/text/setup.rb, templates/default/root/dot/setup.rb, templates/default/tags/setup.rb: Disable relative template path inclusion via T() (relative paths don't work well with overriden template paths) * lib/yard/cli/yardoc.rb: Fix -p switch * lib/yard/cli/yard_graph.rb, lib/yard/templates/helpers/uml_helper.rb, lib/yard/templates/template.rb, spec/templates/module_spec.rb, templates/default/class/dot/setup.rb, templates/default/class/dot/superklass.erb, templates/default/layout/dot/header.erb, templates/default/layout/dot/setup.rb, templates/default/module/dot/child.erb, templates/default/module/dot/dependencies.erb, templates/default/module/dot/header.erb, templates/default/module/dot/info.erb, templates/default/module/dot/setup.rb, templates/default/root/dot/child.erb, templates/default/root/dot/setup.rb: Add yard-graph templates
2009-10-18 Loren Segal <lsegal@soen.ca>
* lib/rubygems_plugin.rb: Safely load gem plugin. Avoid stackoverflow if other versions of YARD are present. * lib/yard/templates/template.rb: Fix nil exception * lib/rubygems_plugin.rb: Fix error handling for gem plugin * spec/templates/examples/tag001.txt, templates/default/tags/text/option.erb: Add option tag to text format template * spec/templates/examples/tag001.txt, spec/templates/tag_spec.rb, templates/default/docstring/text/text.erb, templates/default/tags/text/example.erb, templates/default/tags/text/setup.rb: Fix example tags for text format templates * lib/yard/templates/helpers/text_helper.rb, spec/templates/examples/class001.txt, spec/templates/examples/method001.txt, spec/templates/examples/method002.txt, spec/templates/examples/method003.txt, spec/templates/examples/tag001.txt, spec/templates/tag_spec.rb, templates/default/docstring/text/index.erb, templates/default/method/text/setup.rb, templates/default/tags/setup.rb, templates/default/tags/text/overload.erb, templates/default/tags/text/see.erb, templates/default/tags/text/tag.erb: Add text templates for tags * bin/yri, lib/yard/templates/helpers/text_helper.rb, spec/templates/examples/class001.txt, spec/templates/examples/method001.txt, spec/templates/examples/method002.txt, spec/templates/examples/method003.txt, spec/templates/examples/module001.txt, templates/default/class/text/setup.rb, templates/default/docstring/text/deprecated.erb, templates/default/docstring/text/text.erb, templates/default/layout/html/setup.rb, templates/default/method/text/header.erb, templates/default/method/text/method_signature.erb, templates/default/method/text/setup.rb, templates/default/module/text/children.erb, templates/default/module/text/header.erb, templates/default/module/text/setup.rb, templates/default/tags/text/example.erb, templates/default/tags/text/tag.erb: Finalize first version of templates in text format * lib/yard/autoload.rb, lib/yard/templates/helpers/text_helper.rb, lib/yard/templates/template.rb, spec/templates/class_spec.rb, spec/templates/method_spec.rb, spec/templates/module_spec.rb, spec/templates/spec_helper.rb, templates/default/class/text/setup.rb, templates/default/docstring/text/deprecated.erb, templates/default/docstring/text/index.erb, templates/default/docstring/text/text.erb, templates/default/method/text/header.erb, templates/default/module/text/class_meths_list.erb, templates/default/module/text/extends.erb, templates/default/module/text/header.erb, templates/default/module/text/includes.erb, .../default/module/text/instance_meths_list.erb, templates/default/module/text/setup.rb, templates/default/tags/text/example.erb, templates/default/tags/text/index.erb, templates/default/tags/text/tag.erb: Add text templates * lib/yard/templates/engine.rb, lib/yard/templates/template.rb, spec/templates/engine_spec.rb, spec/templates/template_spec.rb, .../default/class/constructor_details.html.erb, .../default/class/html/constructor_details.erb, templates/default/class/html/setup.rb, templates/default/docstring/deprecated.html.erb, templates/default/docstring/html/deprecated.erb, templates/default/docstring/html/index.erb, templates/default/docstring/html/text.erb, templates/default/docstring/index.html.erb, templates/default/docstring/text.html.erb, templates/default/fulldoc/css/common.css, templates/default/fulldoc/css/full_list.css, templates/default/fulldoc/css/style.css, templates/default/fulldoc/full_list.html.erb, templates/default/fulldoc/html/css/common.css, templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/full_list.erb, templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js, templates/default/fulldoc/html/js/jquery.js, templates/default/fulldoc/html/setup.rb, templates/default/fulldoc/js/app.js, templates/default/fulldoc/js/full_list.js, templates/default/fulldoc/js/jquery.js, templates/default/fulldoc/setup.rb, templates/default/layout/breadcrumb.html.erb, templates/default/layout/glossary.html.erb, templates/default/layout/header.html.erb, templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/glossary.erb, templates/default/layout/html/header.erb, templates/default/method/header.html.erb, templates/default/method/html/header.erb, templates/default/method_details/header.html.erb, templates/default/method_details/html/header.erb, .../method_details/html/method_signature.erb, templates/default/method_details/html/source.erb, .../method_details/method_signature.html.erb, templates/default/method_details/source.html.erb, .../default/module/attribute_details.html.erb, .../default/module/attribute_summary.html.erb, templates/default/module/box_info.html.erb, templates/default/module/children.html.erb, templates/default/module/constant_summary.html.erb, templates/default/module/defines.html.erb, templates/default/module/header.html.erb, .../default/module/html/attribute_details.erb, .../default/module/html/attribute_summary.erb, templates/default/module/html/box_info.erb, templates/default/module/html/children.erb, templates/default/module/html/constant_summary.erb, templates/default/module/html/defines.erb, templates/default/module/html/header.erb, .../default/module/html/inherited_methods.erb, .../default/module/html/method_details_list.erb, templates/default/module/html/method_summary.erb, templates/default/module/html/methodmissing.erb, templates/default/module/html/pre_docstring.erb, .../default/module/inherited_methods.html.erb, .../default/module/method_details_list.html.erb, templates/default/module/method_summary.html.erb, templates/default/module/methodmissing.html.erb, templates/default/module/pre_docstring.html.erb, templates/default/tags/example.html.erb, templates/default/tags/html/example.erb, templates/default/tags/html/index.erb, templates/default/tags/html/option.erb, templates/default/tags/html/overload.erb, templates/default/tags/html/see.erb, templates/default/tags/html/tag.erb, templates/default/tags/index.html.erb, templates/default/tags/option.html.erb, templates/default/tags/overload.html.erb, templates/default/tags/see.html.erb, templates/default/tags/tag.html.erb: Move files into subdirectory using format as overridable template * lib/yard/templates/template.rb, spec/templates/template_spec.rb: Always include parent directory as template
2009-10-17 Loren Segal <lsegal@soen.ca>
* spec/parser/ruby/ast_node_spec.rb: Update pretty print to test docstring * spec/parser/ruby/ast_node_spec.rb: Test pretty print * Rakefile, lib/yard/autoload.rb, .../helpers/html_syntax_highlight_helper.rb, .../helpers/html_syntax_highlight_helper18.rb, .../helpers/html_syntax_highlight_helper_spec.rb: Separate Ruby1.8 HtmlSyntaxHighlightHelper from 1.9 and add specs * spec/templates/examples/module001.html, templates/default/module/box_info.html.erb, templates/default/module/setup.rb: Convert hashes to associative arrays (1.8 does not support ordered hashes) * .../helpers/html_syntax_highlight_helper.rb, spec/templates/class_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/module001.html, spec/templates/method_spec.rb, spec/templates/module_spec.rb: Add no-highlight option to highlight helper and disable highlighting in specs (implementation differs per ruby version, too hard to test in templates) * templates/default/module/children.html.erb, .../default/module/inherited_methods.html.erb, templates/default/module/setup.rb: Backport some code for Ruby 1.8 support * spec/templates/examples/method002.html, spec/templates/examples/method003.html, templates/default/tags/setup.rb: Fix method overloads to show docstring (use proper subsection yielding) * lib/yard/templates/template.rb, spec/templates/template_spec.rb: Add support for arbitrary subsection yielding * templates/default/tags/setup.rb: Move overloads below examples * spec/templates/template_spec.rb: Add specs for subsection * spec/templates/template_spec.rb: Add specs for #yield, #yieldall * templates/default/layout/setup.rb: Use rdoc if no extension is specified * lib/yard/templates/helpers/base_helper.rb: Remove unused methods from BaseHelper * lib/yard/templates/template.rb: Make sure run never appends nil value * spec/core_ext/array_spec.rb: Add Array specs * spec/templates/helpers/base_helper_spec.rb: Add specs for BaseHelper * lib/yard/templates/helpers/base_helper.rb: Remove unused methods * spec/core_ext/module_spec.rb: Add module specs * spec/templates/template_spec.rb: Tests for .is_a?, #add_options, #render_section, #run * spec/templates/template_spec.rb: Add tests for extra_includes, #T and #init * lib/yard/templates/template.rb: Move render_section to private * spec/templates/template_spec.rb: Add tests for Template#file * spec/templates/template_spec.rb: Add tests for Template.find_file * spec/templates/template_spec.rb: Add test for Template.T * spec/templates/template_spec.rb: Add test for Template.load_setup_rb * spec/templates/template_spec.rb: Add tests for YARD::Templates::Template.full_paths * spec/templates/helpers/base_helper_spec.rb, spec/templates/helpers/html_helper_spec.rb, spec/templates/helpers/markup_helper_spec.rb: Re-add removed generator helper specs as template helpers
2009-10-16 Loren Segal <lsegal@soen.ca>
* templates/default/layout/setup.rb: If string is passed to layout template, just yield that * lib/yard/templates/template.rb: Add extension point to include extra modules for each new template * lib/yard/templates/helpers/module_helper.rb: Add module helper file * spec/templates/class_spec.rb: Fix verbose test * lib/yard/templates/engine.rb, lib/yard/templates/template.rb, spec/templates/engine_spec.rb, spec/templates/spec_helper.rb: Add full_paths to Template and rename find_template_path to find_template_paths * lib/yard/autoload.rb, templates/default/fulldoc/setup.rb, templates/default/module/setup.rb: Move prune_listing to MethodHelper as prune_method_listing * templates/default/fulldoc/js/autocomplete.js, templates/default/fulldoc/setup.rb, templates/default/layout/header.html.erb: Remove autocomplete.js * lib/yard/templates/engine.rb: Add serialize to options so it can be called from object.format * lib/yard/templates/engine.rb: Only serialize if serialize is marked true * templates/default/tags/tag.html.erb: Don't show dash in tags if there's no text * templates/default/module/box_info.html.erb: Don't show inheritance box if there is no superclass, also link Object * lib/yard/templates/helpers/html_helper.rb: Don't link nil objects * lib/yard/templates/helpers/html_helper.rb: Support RDoc's link markup * lib/yard/templates/helpers/html_helper.rb: Don't htmlify nil data * .../default/module/attribute_details.html.erb: Fix issue with writeonly attributes * templates/default/fulldoc/setup.rb: Allow options[:readme] to be nil * templates/default/fulldoc/css/common.css, templates/default/fulldoc/full_list.html.erb, templates/default/fulldoc/setup.rb, templates/default/layout/header.html.erb: Re-add common.css * templates/default/fulldoc/css/style.css, templates/default/layout/setup.rb: Update ruby code css * templates/default/fulldoc/css/full_list.css, templates/default/fulldoc/css/style.css: Fix deprecated css * spec/templates/class_spec.rb, spec/templates/examples/class001.html, templates/default/fulldoc/css/style.css, .../default/module/attribute_summary.html.erb, templates/default/module/method_summary.html.erb: Show deprecated message in summary list * templates/default/layout/index.html.erb: Remove index template * spec/templates/class_spec.rb, spec/templates/examples/method001.html, spec/templates/method_spec.rb, templates/default/tags/setup.rb: Add missing raise tag info * spec/templates/class_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/module001.html, templates/default/fulldoc/css/full_list.css, templates/default/fulldoc/css/style.css, templates/default/fulldoc/full_list.html.erb, templates/default/fulldoc/js/app.js, templates/default/fulldoc/js/full_list.js, .../default/module/attribute_summary.html.erb, templates/default/module/constant_summary.html.erb, templates/default/module/method_summary.html.erb: Add css for deprecated methods in method listings * spec/cli/yardoc_spec.rb: Fix broken spec due to api change * templates/default/fulldoc/css/full_list.css, templates/default/fulldoc/js/full_list.js: Inform user if no results were found in list search, and gain focus immediately when search frame loads * templates/default/layout/breadcrumb.html.erb, templates/default/layout/glossary.html.erb: Rename index to glossary in templates * templates/default/fulldoc/css/full_list.css, templates/default/fulldoc/css/style.css, templates/default/fulldoc/full_list.html.erb, templates/default/fulldoc/js/app.js, templates/default/fulldoc/js/full_list.js, templates/default/fulldoc/setup.rb, templates/default/layout/breadcrumb.html.erb, templates/default/layout/glossary.html.erb, templates/default/layout/header.html.erb, templates/default/layout/setup.rb: Add method/namespace listing, files and move index to glossary * templates/default/module/setup.rb: Use run_verifier helper in template * lib/yard/templates/helpers/html_helper.rb: Change file links to prefix name with file. * lib/yard/templates/helpers/base_helper.rb: Add helper to prune list using verifier query * lib/yard/cli/yardoc.rb: Add README.* as readme if not specified and it exists * lib/yard/templates/helpers/html_helper.rb: Registry.root should use 'Top Level Namespace' as default linkify title * Rakefile: Ignore files from RCov stats
2009-10-15 Loren Segal <lsegal@soen.ca>
* spec/templates/class_spec.rb, spec/templates/examples/class001.html, .../default/class/constructor_details.html.erb: Fix missing constructor section * templates/default/layout/header.html.erb: Fix erb formatting issue * spec/templates/class_spec.rb, spec/templates/engine_spec.rb, spec/templates/examples/module001.html, spec/templates/method_spec.rb, spec/templates/module_spec.rb: Add specs for module template * lib/yard/templates/template.rb, spec/code_objects/base_spec.rb, spec/templates/engine_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/spec_helper.rb, templates/default/module/box_info.html.erb, templates/default/module/setup.rb, templates/default/tags/see.html.erb, templates/default/tags/tag.html.erb: Fix broken tests * lib/yard/templates/engine.rb, spec/templates/engine_spec.rb: Add specs for Templates::Engine.generate * lib/yard/templates/engine.rb, spec/templates/class_spec.rb, spec/templates/engine_spec.rb, spec/templates/method_spec.rb: Add specs for Templates::Engine * templates/default/tags/setup.rb: Add other tags * lib/yard/tags/library.rb: Add @private tag to ignore objects via queries * lib/yard/cli/yardoc.rb, templates/default/layout/setup.rb, templates/default/module/setup.rb: Add --query option to narrow down objects by custom Ruby based queries * lib/yard/autoload.rb, lib/yard/cli/yardoc.rb, lib/yard/code_objects/base.rb, lib/yard/core_ext/array.rb, lib/yard/generators/attributes_generator.rb, lib/yard/generators/base.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/constants_generator.rb, lib/yard/generators/constructor_generator.rb, lib/yard/generators/deprecated_generator.rb, lib/yard/generators/docstring_generator.rb, lib/yard/generators/full_doc_generator.rb, lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/filter_helper.rb, lib/yard/generators/helpers/html_helper.rb, .../helpers/html_syntax_highlight_helper.rb, lib/yard/generators/helpers/markup_helper.rb, lib/yard/generators/helpers/method_helper.rb, lib/yard/generators/helpers/uml_helper.rb, lib/yard/generators/inheritance_generator.rb, lib/yard/generators/method_details_generator.rb, lib/yard/generators/method_generator.rb, lib/yard/generators/method_listing_generator.rb, lib/yard/generators/method_missing_generator.rb, lib/yard/generators/method_signature_generator.rb, lib/yard/generators/method_summary_generator.rb, lib/yard/generators/mixins_generator.rb, lib/yard/generators/module_generator.rb, lib/yard/generators/overloads_generator.rb, lib/yard/generators/quick_doc_generator.rb, lib/yard/generators/root_generator.rb, lib/yard/generators/source_generator.rb, lib/yard/generators/tags_generator.rb, lib/yard/generators/uml_generator.rb, lib/yard/generators/visibility_group_generator.rb, lib/yard/tags/overload_tag.rb, lib/yard/templates/engine.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/filter_helper.rb, lib/yard/templates/helpers/html_helper.rb, .../helpers/html_syntax_highlight_helper.rb, lib/yard/templates/helpers/markup_helper.rb, lib/yard/templates/helpers/method_helper.rb, lib/yard/templates/helpers/uml_helper.rb, lib/yard/templates/template.rb, lib/yard/templating.rb, spec/generators/base_spec.rb, spec/generators/full_doc_generator_spec.rb, spec/generators/helpers/base_helper_spec.rb, spec/generators/helpers/html_helper_spec.rb, spec/generators/helpers/markup_helper_spec.rb, spec/generators/quick_doc_generator_spec.rb, spec/templates/class_spec.rb, spec/templates/engine_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/method001.html, spec/templates/examples/method002.html, spec/templates/examples/method003.html, spec/templates/method_spec.rb, spec/templates/spec_helper.rb, spec/templating/class_spec.rb, spec/templating/examples/class001.html, spec/templating/examples/method001.html, spec/templating/examples/method002.html, spec/templating/examples/method003.html, spec/templating/method_spec.rb, spec/templating/spec_helper.rb, spec/templating/templates_spec.rb, templates/default/class/constructor.html.erb, .../default/class/constructor_details.html.erb, templates/default/class/inheritance.html.erb, templates/default/class/methodmissing.html.erb, templates/default/class/setup.rb, templates/default/docstring/deprecated.html.erb, templates/default/docstring/index.html.erb, templates/default/docstring/setup.rb, templates/default/docstring/text.html.erb, templates/default/fulldoc/css/style.css, templates/default/fulldoc/js/app.js, templates/default/fulldoc/js/autocomplete.js, templates/default/fulldoc/js/jquery.js, templates/default/fulldoc/setup.rb, templates/default/layout/breadcrumb.html.erb, templates/default/layout/header.html.erb, templates/default/layout/index.html.erb, templates/default/layout/setup.rb, templates/default/method/aliases.html.erb, templates/default/method/header.html.erb, templates/default/method/overload/header.html.erb, templates/default/method/overload/setup.rb, .../default/method/overload/signature.html.erb, templates/default/method/setup.rb, templates/default/method/signature.html.erb, templates/default/method/source.html.erb, templates/default/method/title.html.erb, templates/default/method_details/details.html.erb, templates/default/method_details/header.html.erb, .../method_details/method_signature.html.erb, templates/default/method_details/setup.rb, templates/default/method_details/source.html.erb, templates/default/method_summary/header.html.erb, templates/default/method_summary/setup.rb, templates/default/method_summary/summary.html.erb, .../default/module/attribute_details.html.erb, .../default/module/attribute_summary.html.erb, templates/default/module/box_info.html.erb, templates/default/module/children.html.erb, templates/default/module/constant_summary.html.erb, templates/default/module/defines.html.erb, templates/default/module/files.html.erb, templates/default/module/header.html.erb, .../default/module/inherited_methods.html.erb, .../default/module/method_details_list.html.erb, templates/default/module/method_summary.html.erb, templates/default/module/methodmissing.html.erb, templates/default/module/mixins.html.erb, templates/default/module/pre_docstring.html.erb, templates/default/module/setup.rb, templates/default/module/title.html.erb, templates/default/setup.rb, templates/default/tags/_tags.html.erb, templates/default/tags/example.html.erb, templates/default/tags/header.html.erb, templates/default/tags/index.html.erb, templates/default/tags/option.html.erb, templates/default/tags/overload.html.erb, templates/default/tags/param.html.erb, templates/default/tags/see.html.erb, templates/default/tags/setup.rb, templates/default/tags/tag.html.erb, templates/default/tags/todo.html.erb, templates2/default/attributes/html/header.erb, templates2/default/attributes/text/header.erb, templates2/default/class/html/header.erb, templates2/default/constants/html/constants.erb, templates2/default/constants/html/header.erb, templates2/default/constants/html/included.erb, templates2/default/constants/html/inherited.erb, templates2/default/constructor/html/header.erb, templates2/default/deprecated/html/main.erb, templates2/default/deprecated/text/main.erb, templates2/default/docstring/html/main.erb, templates2/default/docstring/text/main.erb, templates2/default/fulldoc/html/all_files.erb, templates2/default/fulldoc/html/all_methods.erb, templates2/default/fulldoc/html/all_namespaces.erb, templates2/default/fulldoc/html/app.js, templates2/default/fulldoc/html/custom.css, templates2/default/fulldoc/html/file.erb, templates2/default/fulldoc/html/footer.erb, templates2/default/fulldoc/html/header.erb, templates2/default/fulldoc/html/html_head.erb, templates2/default/fulldoc/html/index.erb, templates2/default/fulldoc/html/jquery.js, templates2/default/fulldoc/html/style.css, .../default/fulldoc/html/syntax_highlight.css, templates2/default/inheritance/html/header.erb, templates2/default/inheritance/text/header.erb, templates2/default/method/html/aliases.erb, templates2/default/method/html/header.erb, templates2/default/method/html/title.erb, templates2/default/method/text/header.erb, templates2/default/method/text/title.erb, templates2/default/methoddetails/html/header.erb, .../default/methoddetails/html/method_header.erb, templates2/default/methodmissing/html/header.erb, templates2/default/methodsignature/html/main.erb, templates2/default/methodsignature/text/main.erb, templates2/default/methodsummary/html/header.erb, templates2/default/methodsummary/html/included.erb, .../default/methodsummary/html/inherited.erb, templates2/default/methodsummary/html/summary.erb, templates2/default/methodsummary/text/header.erb, templates2/default/methodsummary/text/summary.erb, templates2/default/mixins/html/header.erb, templates2/default/module/html/header.erb, templates2/default/overloads/html/header.erb, templates2/default/overloads/text/header.erb, templates2/default/quickdoc/html/header.erb, templates2/default/quickdoc/text/header.erb, templates2/default/root/html/header.erb, templates2/default/source/html/main.erb, templates2/default/source/text/main.erb, templates2/default/tags/html/example.erb, templates2/default/tags/html/header.erb, templates2/default/tags/html/option.erb, templates2/default/tags/html/param.erb, templates2/default/tags/html/see.erb, templates2/default/tags/html/tags.erb, templates2/default/tags/html/todo.erb, templates2/default/tags/text/example.erb, templates2/default/tags/text/header.erb, templates2/default/tags/text/option.erb, templates2/default/tags/text/param.erb, templates2/default/tags/text/see.erb, templates2/default/tags/text/tags.erb, templates2/default/uml/dot/child.erb, templates2/default/uml/dot/dependencies.erb, templates2/default/uml/dot/header.erb, templates2/default/uml/dot/info.erb, templates2/default/uml/dot/subgraph.erb, templates2/default/uml/dot/superclasses.erb, templates2/default/uml/dot/unknown.erb, templates2/default/uml/dot/unknown_child.erb, templates2/default/visibilitygroup/html/header.erb, templates2/javadoc/attributes/html/header.erb, templates2/javadoc/class/html/header.erb, templates2/javadoc/constants/html/constants.erb, templates2/javadoc/constants/html/header.erb, templates2/javadoc/constants/html/included.erb, templates2/javadoc/constants/html/inherited.erb, templates2/javadoc/constructor/html/header.erb, templates2/javadoc/docstring/html/main.erb, templates2/javadoc/fulldoc/html/all_methods.erb, templates2/javadoc/fulldoc/html/all_namespaces.erb, templates2/javadoc/fulldoc/html/app.js, templates2/javadoc/fulldoc/html/header.erb, templates2/javadoc/fulldoc/html/html_head.erb, templates2/javadoc/fulldoc/html/index.erb, templates2/javadoc/fulldoc/html/jquery.js, templates2/javadoc/fulldoc/html/readme.erb, templates2/javadoc/fulldoc/html/style.css, .../javadoc/fulldoc/html/syntax_highlight.css, templates2/javadoc/inheritance/html/header.erb, templates2/javadoc/method/html/aliases.erb, templates2/javadoc/method/html/header.erb, templates2/javadoc/method/html/title.erb, templates2/javadoc/methoddetails/html/header.erb, templates2/javadoc/methodmissing/html/header.erb, templates2/javadoc/methodsignature/html/main.erb, templates2/javadoc/methodsummary/html/header.erb, templates2/javadoc/methodsummary/html/included.erb, .../javadoc/methodsummary/html/inherited.erb, templates2/javadoc/methodsummary/html/summary.erb, templates2/javadoc/mixins/html/header.erb, templates2/javadoc/module/html/header.erb, templates2/javadoc/source/html/main.erb, templates2/javadoc/tags/html/header.erb, templates2/javadoc/tags/html/see.erb, templates2/javadoc/tags/html/tags.erb, templates2/javadoc/visibilitygroup/html/header.erb: Update tadpole templates
2009-10-09 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/generators/allocator_generator.rb, lib/yard/generators/class_generator.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb, templates/default/allocator/html/header.erb: Add templates for Klass.new method
2009-09-08 Loren Segal <lsegal@soen.ca>
* benchmarks/marshal_vs_dbm.rb, lib/yard/registry.rb, lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Write binary files in a Windows friendly way
2009-09-07 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb: Fix AST for methods without rescue block * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix support for rescue blocks in Ruby 1.9
2009-08-24 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/helpers/markup_helper.rb: Better compatibility support for various version of RDoc and Ruby environments.
2009-08-22 Loren Segal <lsegal@soen.ca>
* templates/default/tags/html/example.erb: Oops, markup titles for multiple examples as well. * templates/default/tags/html/example.erb: Markup example titles * .../helpers/html_syntax_highlight_helper.rb: Syntax highlighting should escape raw source if highlighting fails.
2009-08-20 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb: Fix documentation for CodeObjects::Base#add_file
2009-08-19 Loren Segal <lsegal@soen.ca>
* spec/code_objects/class_object_spec.rb: Refactor class_object_spec.rb * lib/yard/code_objects/class_object.rb, spec/code_objects/class_object_spec.rb: Fix bug in ClassObject#inheritance_tree where calling with include_mods=true would destructively modify mixin list * spec/code_objects/module_object_spec.rb: Refactor module_object_spec.rb * lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb, spec/handlers/examples/mixin_handler_001.rb.txt, spec/handlers/mixin_handler_spec.rb: Reset parent (@namespace) value on Proxy if it resolves to an object successfully. Closes gh-29
2009-08-18 James Rosen <jrosen@mitre.org>
* lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: added support for mailto: links
2009-08-14 Loren Segal <lsegal@soen.ca>
* spec/templating/class_spec.rb, spec/templating/examples/class001.html, templates/default/class/constructor.html.erb, templates/default/class/methodmissing.html.erb, templates/default/class/setup.rb, templates/default/method/overload/setup.rb, templates/default/method/setup.rb, templates/default/method_summary/setup.rb: Update class templates and fix up specs * lib/yard/parser/ruby/legacy/statement_list.rb: Legacy parser: remove \r in less destructive manner. * lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/ruby/legacy/statement_list_spec.rb: Ignore Windows newlines (CRLF) in legacy parser * lib/yard/docstring.rb, spec/docstring_spec.rb: Docstring#summary should only stop at the first period outside of any parentheses or braces. * spec/docstring_spec.rb: Refactor Docstring specs * spec/templating/examples/method001.html, spec/templating/examples/method002.html, spec/templating/examples/method003.html, spec/templating/method_spec.rb, spec/templating/spec_helper.rb: Refactor specs into separate example files
2009-08-13 Loren Segal <lsegal@soen.ca>
* ChangeLog, lib/yard.rb, yard.gemspec: Bump version to 0.2.3.5 * spec/handlers/examples/extend_handler_001.rb.txt, spec/handlers/extend_handler_spec.rb: Add specs for extends across namespaces
2009-08-12 postmodern <postmodern.mod3@gmail.com>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Added a yardoc option alias from --main to --readme. * This is for compatibility with Hoe and how Hoe invokes documentation generation.
2009-08-12 Loren Segal <lsegal@soen.ca>
* lib/yard/registry.rb, spec/registry_spec.rb: Explicitly define all of Registry's instance methods as singleton methods delegated to instance. Closes gh-26
2009-08-11 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Handle empty hash * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix AstNode#source for hash syntax * .../helpers/html_syntax_highlight_helper.rb: Rename Ruby::ParserSyntaxError to ParserSyntaxError (missed during refactoring)
2009-08-07 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.markdown, lib/yard.rb, yard.gemspec: Bump version to 0.2.3.4 * lib/rubygems_plugin.rb: Undefine RubyGems methods before redefining to avoid 'ruby -w' warnings
2009-08-05 Loren Segal <lsegal@soen.ca>
* spec/code_objects/class_object_spec.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/method_handler_spec.rb: Refactoring and optimizations * spec/handlers/alias_handler_spec.rb, spec/handlers/attribute_handler_spec.rb, spec/handlers/class_condition_handler_spec.rb, spec/handlers/class_variable_handler_spec.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/exception_handler_spec.rb, spec/handlers/extend_handler_spec.rb, spec/handlers/method_condition_handler_spec.rb, spec/handlers/method_handler_spec.rb, spec/handlers/mixin_handler_spec.rb, spec/handlers/module_handler_spec.rb, spec/handlers/visibility_handler_spec.rb, spec/handlers/yield_handler_spec.rb: Only parse once for each spec file (to improve test running time) * lib/yard/autoload.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, spec/handlers/class_handler_spec.rb, spec/handlers/spec_helper.rb, spec/parser/ruby/ruby_parser_spec.rb, spec/parser/source_parser_spec.rb: Move ParserSyntaxError into Parser namespace and display a warning for a syntax error with 1.9 parser * spec/parser/ruby/ruby_parser_spec.rb: Test for raising of ParserSyntaxError * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix support for new 1.9 lambda syntax ->() { } * lib/yard/handlers/ruby/legacy/base.rb: 1.9.2 cannot send() to protected methods, make tokval_list private * Rakefile, lib/yard.rb: Temporary fixes for LOAD_PATH changes in 1.9.2
2009-07-26 Loren Segal <lsegal@soen.ca>
* ChangeLog, README.markdown, lib/yard.rb, yard.gemspec: Bump version to 0.2.3.3 * lib/rubygems_plugin.rb: Fix bug in RubyGems plugin where 'gem install' would cause a stackoverflow in 1.9 for other gems
2009-07-23 Loren Segal <lsegal@soen.ca>
* benchmarks/marshal_vs_dbm.rb: Update dbm benchmarks to reflect how data would be stored in YARD * benchmarks/marshal_vs_dbm.rb, benchmarks/ri_vs_yri.rb: Add benchmarks for ri/yri and marshal/dbm * bin/yri: Add -T/--no-pager option to yri * lib/yard/docstring.rb, spec/docstring_spec.rb: Fix bug where extra '.'s were appended to Docstring#summary
2009-07-21 Loren Segal <lsegal@soen.ca>
* spec/templating/class_spec.rb, spec/templating/method_spec.rb, templates/default/class/constructor.html.erb, templates/default/class/inheritance.html.erb, templates/default/class/methodmissing.html.erb, templates/default/class/setup.rb, templates/default/docstring/setup.rb, templates/default/method/header.html.erb, templates/default/method/setup.rb, templates/default/method/source.html.erb, templates/default/method_details/details.html.erb, templates/default/method_details/header.html.erb, templates/default/method_details/setup.rb, templates/default/method_summary/header.html.erb, templates/default/method_summary/setup.rb, templates/default/method_summary/summary.html.erb, templates/default/module/files.html.erb, templates/default/module/header.html.erb, templates/default/module/mixins.html.erb, templates/default/module/setup.rb, templates/default/module/title.html.erb, templates/default/object/header.html.erb, templates/default/object/setup.rb, templates/default/setup.rb: Add templates and update specs * lib/yard/templating.rb: Include generator helpers properly * lib/yard/templating.rb: Don't override existing serializer
2009-07-13 Loren Segal <lsegal@soen.ca>
* spec/code_objects/base_spec.rb: Fix broken spec in CodeObjects::Base#format * lib/yard/generators/helpers/base_helper.rb, lib/yard/tags/overload_tag.rb, spec/templating/method_spec.rb, templates/default/docstring/deprecated.html.erb, templates/default/docstring/setup.rb, templates/default/docstring/text.html.erb, templates/default/method/overload/header.html.erb, templates/default/method/overload/setup.rb, .../default/method/overload/signature.html.erb, templates/default/method/setup.rb, templates/default/method/signature.html.erb, templates/default/tags/_tags.html.erb, templates/default/tags/example.html.erb, templates/default/tags/param.html.erb, templates/default/tags/see.html.erb, templates/default/tags/setup.rb, templates/default/tags/todo.html.erb: Spec method template with 1 and 2 overloads, get overloads working * lib/yard/code_objects/base.rb, lib/yard/templating.rb, spec/templating/class_spec.rb, spec/templating/method_spec.rb, spec/templating/spec_helper.rb, spec/templating/templates_spec.rb, templates/default/class/setup.rb, templates/default/docstring/deprecated.html.erb, templates/default/docstring/setup.rb, templates/default/docstring/text.html.erb, templates/default/html/method/aliases.erb, templates/default/html/method/header.erb, templates/default/html/method/setup.rb, templates/default/html/method/signature.erb, templates/default/html/method/title.erb, templates/default/html/object/deprecated.erb, templates/default/html/object/docstring.erb, templates/default/html/object/setup.rb, templates/default/method/aliases.html.erb, templates/default/method/setup.rb, templates/default/method/signature.html.erb, templates/default/method/source.html.erb, templates/default/method/title.html.erb, templates/default/object/header.html.erb, templates/default/object/setup.rb, templates/default/tags/_tags.html.erb, templates/default/tags/example.html.erb, templates/default/tags/header.html.erb, templates/default/tags/param.html.erb, templates/default/tags/see.html.erb, templates/default/tags/setup.rb, templates/default/tags/todo.html.erb: Spec class and method templates
2009-07-10 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/templating.rb, spec/code_objects/base_spec.rb, spec/templating/method_spec.rb, spec/templating/templates_spec.rb, templates/default/html/setup.rb, templates2/default/setup.rb: Add Templates module and move CodeObjects::Base#format logic to Templates.render, which auto includes common helpers * templates/default/attributes/html/header.erb, templates/default/attributes/text/header.erb, templates/default/class/html/header.erb, templates/default/constants/html/constants.erb, templates/default/constants/html/header.erb, templates/default/constants/html/included.erb, templates/default/constants/html/inherited.erb, templates/default/constructor/html/header.erb, templates/default/deprecated/html/main.erb, templates/default/deprecated/text/main.erb, templates/default/docstring/html/main.erb, templates/default/docstring/text/main.erb, templates/default/fulldoc/html/all_files.erb, templates/default/fulldoc/html/all_methods.erb, templates/default/fulldoc/html/all_namespaces.erb, templates/default/fulldoc/html/app.js, templates/default/fulldoc/html/custom.css, templates/default/fulldoc/html/file.erb, templates/default/fulldoc/html/footer.erb, templates/default/fulldoc/html/header.erb, templates/default/fulldoc/html/html_head.erb, templates/default/fulldoc/html/index.erb, templates/default/fulldoc/html/jquery.js, templates/default/fulldoc/html/style.css, .../default/fulldoc/html/syntax_highlight.css, templates/default/inheritance/html/header.erb, templates/default/inheritance/text/header.erb, templates/default/method/html/aliases.erb, templates/default/method/html/header.erb, templates/default/method/html/title.erb, templates/default/method/text/header.erb, templates/default/method/text/title.erb, templates/default/methoddetails/html/header.erb, .../default/methoddetails/html/method_header.erb, templates/default/methodmissing/html/header.erb, templates/default/methodsignature/html/main.erb, templates/default/methodsignature/text/main.erb, templates/default/methodsummary/html/header.erb, templates/default/methodsummary/html/included.erb, templates/default/methodsummary/html/inherited.erb, templates/default/methodsummary/html/summary.erb, templates/default/methodsummary/text/header.erb, templates/default/methodsummary/text/summary.erb, templates/default/mixins/html/header.erb, templates/default/module/html/header.erb, templates/default/overloads/html/header.erb, templates/default/overloads/text/header.erb, templates/default/quickdoc/html/header.erb, templates/default/quickdoc/text/header.erb, templates/default/root/html/header.erb, templates/default/setup.rb, templates/default/source/html/main.erb, templates/default/source/text/main.erb, templates/default/tags/html/example.erb, templates/default/tags/html/header.erb, templates/default/tags/html/option.erb, templates/default/tags/html/param.erb, templates/default/tags/html/see.erb, templates/default/tags/html/tags.erb, templates/default/tags/html/todo.erb, templates/default/tags/text/example.erb, templates/default/tags/text/header.erb, templates/default/tags/text/option.erb, templates/default/tags/text/param.erb, templates/default/tags/text/see.erb, templates/default/tags/text/tags.erb, templates/default/uml/dot/child.erb, templates/default/uml/dot/dependencies.erb, templates/default/uml/dot/header.erb, templates/default/uml/dot/info.erb, templates/default/uml/dot/subgraph.erb, templates/default/uml/dot/superclasses.erb, templates/default/uml/dot/unknown.erb, templates/default/uml/dot/unknown_child.erb, templates/default/visibilitygroup/html/header.erb, templates/javadoc/attributes/html/header.erb, templates/javadoc/class/html/header.erb, templates/javadoc/constants/html/constants.erb, templates/javadoc/constants/html/header.erb, templates/javadoc/constants/html/included.erb, templates/javadoc/constants/html/inherited.erb, templates/javadoc/constructor/html/header.erb, templates/javadoc/docstring/html/main.erb, templates/javadoc/fulldoc/html/all_methods.erb, templates/javadoc/fulldoc/html/all_namespaces.erb, templates/javadoc/fulldoc/html/app.js, templates/javadoc/fulldoc/html/header.erb, templates/javadoc/fulldoc/html/html_head.erb, templates/javadoc/fulldoc/html/index.erb, templates/javadoc/fulldoc/html/jquery.js, templates/javadoc/fulldoc/html/readme.erb, templates/javadoc/fulldoc/html/style.css, .../javadoc/fulldoc/html/syntax_highlight.css, templates/javadoc/inheritance/html/header.erb, templates/javadoc/method/html/aliases.erb, templates/javadoc/method/html/header.erb, templates/javadoc/method/html/title.erb, templates/javadoc/methoddetails/html/header.erb, templates/javadoc/methodmissing/html/header.erb, templates/javadoc/methodsignature/html/main.erb, templates/javadoc/methodsummary/html/header.erb, templates/javadoc/methodsummary/html/included.erb, templates/javadoc/methodsummary/html/inherited.erb, templates/javadoc/methodsummary/html/summary.erb, templates/javadoc/mixins/html/header.erb, templates/javadoc/module/html/header.erb, templates/javadoc/source/html/main.erb, templates/javadoc/tags/html/header.erb, templates/javadoc/tags/html/see.erb, templates/javadoc/tags/html/tags.erb, templates/javadoc/visibilitygroup/html/header.erb, templates2/default/attributes/html/header.erb, templates2/default/attributes/text/header.erb, templates2/default/class/html/header.erb, templates2/default/constants/html/constants.erb, templates2/default/constants/html/header.erb, templates2/default/constants/html/included.erb, templates2/default/constants/html/inherited.erb, templates2/default/constructor/html/header.erb, templates2/default/deprecated/html/main.erb, templates2/default/deprecated/text/main.erb, templates2/default/docstring/html/main.erb, templates2/default/docstring/text/main.erb, templates2/default/fulldoc/html/all_files.erb, templates2/default/fulldoc/html/all_methods.erb, templates2/default/fulldoc/html/all_namespaces.erb, templates2/default/fulldoc/html/app.js, templates2/default/fulldoc/html/custom.css, templates2/default/fulldoc/html/file.erb, templates2/default/fulldoc/html/footer.erb, templates2/default/fulldoc/html/header.erb, templates2/default/fulldoc/html/html_head.erb, templates2/default/fulldoc/html/index.erb, templates2/default/fulldoc/html/jquery.js, templates2/default/fulldoc/html/style.css, .../default/fulldoc/html/syntax_highlight.css, templates2/default/inheritance/html/header.erb, templates2/default/inheritance/text/header.erb, templates2/default/method/html/aliases.erb, templates2/default/method/html/header.erb, templates2/default/method/html/title.erb, templates2/default/method/text/header.erb, templates2/default/method/text/title.erb, templates2/default/methoddetails/html/header.erb, .../default/methoddetails/html/method_header.erb, templates2/default/methodmissing/html/header.erb, templates2/default/methodsignature/html/main.erb, templates2/default/methodsignature/text/main.erb, templates2/default/methodsummary/html/header.erb, templates2/default/methodsummary/html/included.erb, .../default/methodsummary/html/inherited.erb, templates2/default/methodsummary/html/summary.erb, templates2/default/methodsummary/text/header.erb, templates2/default/methodsummary/text/summary.erb, templates2/default/mixins/html/header.erb, templates2/default/module/html/header.erb, templates2/default/overloads/html/header.erb, templates2/default/overloads/text/header.erb, templates2/default/quickdoc/html/header.erb, templates2/default/quickdoc/text/header.erb, templates2/default/root/html/header.erb, templates2/default/setup.rb, templates2/default/source/html/main.erb, templates2/default/source/text/main.erb, templates2/default/tags/html/example.erb, templates2/default/tags/html/header.erb, templates2/default/tags/html/option.erb, templates2/default/tags/html/param.erb, templates2/default/tags/html/see.erb, templates2/default/tags/html/tags.erb, templates2/default/tags/html/todo.erb, templates2/default/tags/text/example.erb, templates2/default/tags/text/header.erb, templates2/default/tags/text/option.erb, templates2/default/tags/text/param.erb, templates2/default/tags/text/see.erb, templates2/default/tags/text/tags.erb, templates2/default/uml/dot/child.erb, templates2/default/uml/dot/dependencies.erb, templates2/default/uml/dot/header.erb, templates2/default/uml/dot/info.erb, templates2/default/uml/dot/subgraph.erb, templates2/default/uml/dot/superclasses.erb, templates2/default/uml/dot/unknown.erb, templates2/default/uml/dot/unknown_child.erb, templates2/default/visibilitygroup/html/header.erb, templates2/javadoc/attributes/html/header.erb, templates2/javadoc/class/html/header.erb, templates2/javadoc/constants/html/constants.erb, templates2/javadoc/constants/html/header.erb, templates2/javadoc/constants/html/included.erb, templates2/javadoc/constants/html/inherited.erb, templates2/javadoc/constructor/html/header.erb, templates2/javadoc/docstring/html/main.erb, templates2/javadoc/fulldoc/html/all_methods.erb, templates2/javadoc/fulldoc/html/all_namespaces.erb, templates2/javadoc/fulldoc/html/app.js, templates2/javadoc/fulldoc/html/header.erb, templates2/javadoc/fulldoc/html/html_head.erb, templates2/javadoc/fulldoc/html/index.erb, templates2/javadoc/fulldoc/html/jquery.js, templates2/javadoc/fulldoc/html/readme.erb, templates2/javadoc/fulldoc/html/style.css, .../javadoc/fulldoc/html/syntax_highlight.css, templates2/javadoc/inheritance/html/header.erb, templates2/javadoc/method/html/aliases.erb, templates2/javadoc/method/html/header.erb, templates2/javadoc/method/html/title.erb, templates2/javadoc/methoddetails/html/header.erb, templates2/javadoc/methodmissing/html/header.erb, templates2/javadoc/methodsignature/html/main.erb, templates2/javadoc/methodsummary/html/header.erb, templates2/javadoc/methodsummary/html/included.erb, .../javadoc/methodsummary/html/inherited.erb, templates2/javadoc/methodsummary/html/summary.erb, templates2/javadoc/mixins/html/header.erb, templates2/javadoc/module/html/header.erb, templates2/javadoc/source/html/main.erb, templates2/javadoc/tags/html/header.erb, templates2/javadoc/tags/html/see.erb, templates2/javadoc/tags/html/tags.erb, templates2/javadoc/visibilitygroup/html/header.erb: Move generator templates to temporary directory * spec/code_objects/base_spec.rb, spec/templating/method_spec.rb: Fix some specs * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: Remove occurrences of from helpers * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Add template option to CodeObjects::Base#format (rename old 'template' option to 'type') * lib/yard/autoload.rb, lib/yard/templating.rb, spec/templating/method_spec.rb, templates/default/html/method/aliases.erb, templates/default/html/method/header.erb, templates/default/html/method/setup.rb, templates/default/html/method/signature.erb, templates/default/html/method/title.erb, templates/default/html/object/deprecated.erb, templates/default/html/object/docstring.erb, templates/default/html/object/setup.rb, templates/default/html/setup.rb, templates/default/setup.rb: Add initial method templates
2009-07-09 Loren Segal <lsegal@soen.ca>
* lib/yard.rb, lib/yard/autoload.rb, lib/yard/code_objects/proxy.rb, lib/yard/globals.rb, lib/yard/logging.rb: Add globals.rb for global methods and clean up autoload to load as little of the codebase as possible when YARD is required * lib/yard/logging.rb: Move YARD.logger into Logger class (make it a proper Singleton) * lib/yard.rb, lib/yard/autoload.rb: No longer modify $LOAD_PATH * lib/yard/core_ext/logger.rb, lib/yard/logging.rb: Remove Logger changes from core_ext (so that logging format is not modified globally) * lib/yard/autoload.rb, lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Add #format method to use tadpole templates
2009-07-08 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Fix yardoc source file parsing bug when no arguments are specified
2009-07-06 Loren Segal <lsegal@soen.ca>
* README.markdown, lib/yard.rb, yard.gemspec: Bump version to 0.2.3.2 * templates/default/fulldoc/html/file.erb, templates/default/fulldoc/html/footer.erb, templates/default/fulldoc/html/header.erb, templates/default/fulldoc/html/style.css: Add footer file to show when documentation was generated and with which version of Ruby/YARD * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb, templates/default/fulldoc/html/index.erb: Add --title option to set HTML document titles * lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/custom.css, templates/default/fulldoc/html/html_head.erb: Add overridable custom.css for extra stylesheet declarations * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: Don't use hard line-breaks with Textile markup (RedCloth specific) * spec/generators/helpers/html_helper_spec.rb: Refactor tests in html_helper_spec.rb * .yardopts, lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Update yardoc CLI to accept extra files after source files with '-' separator Example: yardoc lib/**/*.rb - FAQ LICENSE
2009-07-04 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/library.rb, spec/tags/library_spec.rb, templates/default/tags/html/see.erb: Add support for optional description text in @see tag (use desc. for link name in HTML docs) * lib/yard/generators/tags_generator.rb, lib/yard/tags/overload_tag.rb: If there's only one overload, try to merge tags with regular object tags * lib/yard/docstring.rb, spec/docstring_spec.rb: Only parse @tags that match the correct charset ([A-Za-z_]) * lib/yard/docstring.rb, spec/docstring_spec.rb: Accept docstrings with empty newlines * templates/default/fulldoc/html/style.css: Hide view source link for overloads * lib/yard/tags/overload_tag.rb: Treat OverloadTag more like MethodObject * lib/yard/generators/tags_generator.rb: Allow overloads to render param/option tags
2009-06-19 Loren Segal <lsegal@soen.ca>
* Rakefile: Perform RCov coverage if RCOV is set (rake specs) * lib/yard/handlers/base.rb, spec/parser/examples/parse_in_order_001.rb.txt, spec/parser/examples/parse_in_order_002.rb.txt, spec/parser/source_parser_spec.rb, spec/spec_helper.rb: Add specs for in order parsing * lib/yard.rb, lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Only glob files if they have '*' in the path name
2009-06-18 Loren Segal <lsegal@soen.ca>
* lib/yard/docstring.rb, lib/yard/handlers/base.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ast_node_spec.rb, spec/parser/ruby/legacy/statement_list_spec.rb, spec/parser/ruby/ruby_parser_spec.rb, spec/parser/source_parser_spec.rb: Add Docstring#line_range to get/set the position of the docstring in a file. Also add #all to get/set full raw comments data
2009-06-16 Loren Segal <lsegal@soen.ca>
* templates/default/deprecated/html/main.erb, templates/default/fulldoc/html/all_methods.erb, templates/default/fulldoc/html/all_namespaces.erb, templates/default/fulldoc/html/style.css: Make deprecated formatting a little nicer and strikeout any deprecated methods/classes in the method/class list
2009-06-15 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/tags_generator.rb: Don't generate todo items if there are none * spec/handlers/ruby/legacy/base_spec.rb: Fix handler tests in Ruby1.9 * lib/yard/parser/ruby/legacy/statement_list.rb, spec/handlers/ruby/legacy/base_spec.rb, spec/parser/ruby/legacy/statement_list_spec.rb: Update parser to show beginning and end of a block in the statement part of a statement object rather than inside the block. This fixes a bug where do/end blocks cannot be parsed with the #parse_block handler (specs added) * lib/yard/code_objects/base.rb, lib/yard/parser/ruby/legacy/statement.rb: Update Statement#to_s and to behave more like AstNode class and refactor behaviour in CodeObjects::Base#source= * lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/parser/ruby/legacy/token_list.rb, spec/parser/ruby/legacy/token_list_spec.rb: TokenList#to_s can now return the beginning and end of a block with the addition of a TkBlockContents token to represent the inner block itself in the token list
2009-06-14 Loren Segal <lsegal@soen.ca>
* lib/rubygems_plugin.rb: Don't immediately load all of YARD when RubyGems requires the plugin.
2009-06-13 Loren Segal <lsegal@soen.ca>
* README.markdown: Update changelog * README.markdown, lib/rubygems_plugin.rb, yard.gemspec: Add a RubyGems 1.3.2+ plugin to generate YARD documentation instead of RDoc. Also re-enable support for `has_rdoc = false` in a gemspec. To use YARD instead of RDoc, set `has_rdoc = 'yard'` in the gemspec
2009-06-07 Nathan Weizenbaum <nex342@gmail.com>
* Rakefile: Add spec as an alias for the specs Rake task. spec is the standard name for RSpec Rake tasks, so this will eliminate some confusion.
2009-06-07 Loren Segal <lsegal@soen.ca>
* templates/default/attributes/html/header.erb: Use Array#length instead of Array#count (Ruby 1.8.6 compatibility) * yard.gemspec: Update gemspec for 0.2.3 release * lib/yard/generators/tags_generator.rb, templates/default/tags/html/todo.erb: Add @todo to output generation * lib/yard/generators/tags_generator.rb: Add @yield to output generation. Closes gh-15 * lib/yard/generators/class_generator.rb, lib/yard/generators/tags_generator.rb: Generate tags for classes/modules * spec/handlers/legacy_base_spec.rb: No longer show opts={} spec failure, the current behaviour should be expected using the legacy parser * Rakefile: Don't automatically use RCov in specs * lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Acknowledge reopening of Ruby core classes with 'class << X' * README.markdown: Update README for release * docs/GETTING_STARTED.markdown, docs/OVERVIEW.markdown, docs/TAGS.markdown: Fix link location markup * docs/OVERVIEW.markdown: Add section links to OVERVIEW * docs/CODE_OBJECTS.markdown, docs/GETTING_STARTED.markdown: Fix link typos
2009-06-06 Loren Segal <lsegal@soen.ca>
* .yardopts, README.markdown, docs/CODE_OBJECTS.markdown, docs/GETTING_STARTED.markdown, docs/TAGS.markdown: Add getting started guide
2009-06-05 Nathan Weizenbaum <nex342@gmail.com>
* docs/TAGS.markdown: Fix a few grammatical errors and typos in the reference tag docs.
2009-06-05 Loren Segal <lsegal@soen.ca>
* .yardopts, docs/GENERATORS.markdown, docs/HANDLERS.markdown: Add Generators Architecture documentation * .yardopts, docs/HANDLERS.markdown, docs/images/handlers-class-diagram.png: Add Handlers architecture documentation
2009-06-04 Loren Segal <lsegal@soen.ca>
* docs/TAGS.markdown, docs/images/tags-class-diagram.png: Add docs about RefTag and update class diagram for Tags * .yardopts, Rakefile: Move files option out of Rakefile to .yardopts file * docs/GLOSSARY.markdown, docs/TAGS.markdown, docs/images/tags-class-diagram.png: Add Tags Architecture and update glossary
2009-06-04 Nathan Weizenbaum <nex342@gmail.com>
* .gitignore: Add /coverage to .gitignore.
2009-06-04 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yard_graph.rb: Allow yard-graph to document only certain namespaces * yard.gemspec: Fix broken file link in yard.gemspec * docs/FAQ.markdown: Update FAQ (mostly formatting) * docs/WHATSNEW.markdown: Fix typo in WHATSNEW * docs/PARSER.markdown: Fix class reference warnings * Rakefile, docs/PARSER.markdown, docs/images/parser-class-diagram.png: Add parser architecture docs
2009-06-03 Loren Segal <lsegal@soen.ca>
* Rakefile, docs/OVERVIEW.markdown: Add Architecture Overview document * .gitignore, docs/images/code-objects-class-diagram.png, docs/images/overview-class-diagram.png: Add class diagrams * docs/CODE_OBJECTS.markdown: Fix image typo * FAQ.markdown, Rakefile, docs/CODE_OBJECTS.markdown, docs/FAQ.markdown, docs/GLOSSARY.markdown, docs/WHATSNEW.markdown: Add some overview docs * lib/yard/rake/yardoc_task.rb, spec/rake/yardoc_task_spec.rb: Add before/after filters for Yardoc Rake task (and specs) * lib/yard/generators/uml_generator.rb, templates/default/uml/dot/info.erb: Fix generation of attributes in Graphviz template and hide overridden methods and aliases
2009-06-02 Loren Segal <lsegal@soen.ca>
* spec/handlers/method_handler_spec.rb: Fix incorrect spec, OverloadTag should ignore the method name used in the tag and use the owner object's method name instead * lib/yard/tags/overload_tag.rb, spec/code_objects/method_object_spec.rb: OverloadTag#name should delegate to MethodObject and add specs to ensure class method name never shows prefix
2009-06-01 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/autoload.rb, lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/filter_helper.rb, lib/yard/generators/method_generator.rb, lib/yard/generators/overloads_generator.rb, lib/yard/generators/quick_doc_generator.rb, lib/yard/tags/overload_tag.rb, templates/default/fulldoc/html/style.css, templates/default/method/text/header.erb, templates/default/method/text/title.erb, templates/default/methodsignature/html/main.erb, templates/default/methodsignature/text/main.erb, templates/default/methodsummary/html/summary.erb, templates/default/methodsummary/text/summary.erb, templates/default/overloads/html/header.erb, templates/default/overloads/text/header.erb: Overhaul the overload documentation generation.
2009-05-31 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/tags/overload_tag.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: OverloadTag shouldn't choke on an empty docstring. * lib/yard/parser/source_parser.rb: Don't choke when trying to parse files without extensions.
2009-05-30 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/app.js, templates/default/fulldoc/html/style.css: Make some minor css and js modifications for better template support * lib/yard/generators/helpers/method_helper.rb, lib/yard/generators/method_generator.rb, lib/yard/generators/source_generator.rb: Move #format_code and #format_lines into MethodHelper for other generators to use * lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb: Redo LoadOrderError semantics and clean up logic issues. ensure_loaded! should run on object, not namespace * lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Fix broken serializer spec and add one for new root serialization behaviour
2009-05-29 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/full_doc_generator.rb: Don't show aliases or non-explicit methods in method list * lib/yard/generators/full_doc_generator.rb, lib/yard/generators/helpers/html_helper.rb: Add support for .html extra files (--readme or --files) and bypass markup in #htmlify helper when markup=nil * lib/yard/autoload.rb, lib/yard/cli/yardoc.rb, lib/yard/generators/full_doc_generator.rb, lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/root_generator.rb, templates/default/fulldoc/html/all_methods.erb, templates/default/fulldoc/html/all_namespaces.erb, templates/default/fulldoc/html/header.erb, templates/default/root/html/header.erb: Add documentation output (generator/templates) for global methods * lib/yard/serializers/file_system_serializer.rb: FileSystemSerializer: Serialize root object to top-level-namespace.html * lib/yard/generators/helpers/html_helper.rb: Allow #link_object helper to turn off relative path linking * lib/yard/registry.rb: Add support for YARD::Registry.all(:root)
2009-05-28 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/ruby_parser.rb: Add missing float token to AST * lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Allow Constants to be used in alias keyword * lib/yard/parser/ruby/ruby_parser.rb: Another RubyParser optimization to avoid creation of tokens that don't get added to the AST
2009-05-27 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ruby/legacy/statement_list.rb: StatementList: Fix bug in parser where keywords are not properly parsed as arguments to alias. When a block opener keyword is passed as the first parameter to 'alias', it should be treated as an identifier instead of a block. The following syntax is valid: alias for bar But not: alias bar for * lib/yard/parser/ruby/ast_node.rb: YARD::Parser::Ruby::AstNode: Cache results of #kw? and #literal? * lib/yard/handlers/ruby/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add specs to make sure parameters are parsed correctly in MethodHandler * lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Add better handler support for aliases/attributes on keywords/operator names * lib/yard/parser/ruby/ruby_parser.rb: Minor Parser::RubyParser refactoring that improves tokenization performance by 25% * lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb: Add new RubyParser implementation to properly handle source ranges for nodes
2009-05-26 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: If a cached object is not of the same class as a new CodeObject, return the new object instead of the cache * spec/code_objects/module_object_spec.rb: Add spec for Proxy objects in ModuleObject#inheritance_tree * lib/yard/code_objects/module_object.rb, lib/yard/registry.rb: Never send #inheritance_tree to Proxy objects * lib/yard/generators/base.rb: Always ignore Proxy objects from generation * lib/yard/handlers/ruby/class_condition_handler.rb, spec/handlers/class_condition_handler_spec.rb, .../examples/class_condition_handler_001.rb.txt: Add support for if true/false/0 conditionals in class scope, also if defined? CONST, which Rails uses a lot * yard.gemspec: Add FAQ to gem package * lib/yard/handlers/ruby/alias_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Fix issue where an alias to a method name that is also a keyword name did not get recognized
2009-05-25 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb: Fix some warnings in documentation markup for Handlers::Base * lib/yard/parser/ruby/ast_node.rb: Add defs as keyword and clean up Parser::AstNode::KEYWORDS to use new hash syntax * lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb: Refactor AstNode subclass selection to AstNode.node_class_for(type) so that the sexp s() syntax can make use of the logic * lib/yard/parser/ruby/ruby_parser.rb: Make syntax error exception message a little more obvious * lib/yard/parser/ruby/ruby_parser.rb: Optimize insertion of comments into nodes using hash instead of array * spec/handlers/class_condition_handler_spec.rb: ClassConditionHandler is currently only implemented for Ruby 1.9, ignore specs under 1.8 * lib/yard/handlers/ruby/base.rb, lib/yard/parser/source_parser.rb: Make sure new-style parser is never set globally under Ruby 1.8. Fixes specs * spec/handlers/legacy_base_spec.rb, spec/handlers/ruby/legacy/base_spec.rb, spec/parser/ruby/legacy/statement_list_spec.rb, spec/parser/ruby/legacy/token_list_spec.rb, spec/parser/source_parser_spec.rb: Remove unneeded require's and fix some name resolution issues in specs * lib/yard/autoload.rb, lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/class_condition_handler.rb, lib/yard/handlers/ruby/class_variable_handler.rb, lib/yard/handlers/ruby/constant_handler.rb, lib/yard/handlers/ruby/exception_handler.rb, lib/yard/handlers/ruby/extend_handler.rb, lib/yard/handlers/ruby/method_condition_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb, lib/yard/handlers/ruby/yield_handler.rb, spec/handlers/class_condition_handler_spec.rb, .../examples/class_condition_handler_001.rb.txt, .../examples/method_condition_handler_001.rb.txt, spec/handlers/method_condition_handler_spec.rb: Add implementation of new handlers using the Ripper AST parser * spec/handlers/spec_helper.rb: Make undoc_error work with new SourceParser * lib/yard/handlers/ruby/class_handler.rb: Various fixes to new ClassHandler to get old specs passing * lib/yard/handlers/ruby/legacy/exception_handler.rb: Minor aesthetic formatting change * lib/yard/handlers/ruby/legacy/extend_handler.rb, spec/handlers/extend_handler_spec.rb: Fix bug in ExtendHandler; extend self behaviour was always being applied * spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Class handler tests code that would not be legal in a valid Ruby file, the new parser can't support syntax errors as nicely, so drop support for this. Also add a minor spec regarding superclasses referenced by the ::TopLevelClassName * spec/handlers/examples/alias_handler_001.rb.txt, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Fix technical syntax error in alias_handler_001.rb.txt and make some minor formatting adjustments in other example files * lib/yard/handlers/processor.rb: Show statement line with #show instead of #inspect when a warning is emitted * lib/yard/cli/yardoc.rb: Add --legacy command line option to force Legacy handlers under Ruby1.9 * lib/yard/autoload.rb, lib/yard/handlers/processor.rb: Load handlers during post processing instead of in autoload so that both legacy and new handlers can be loaded side by side and/or legacy handlers can be swapped in via command line (after loading of YARD) * lib/yard/code_objects/base.rb: Add support for setting CodeObjects::Base#source to an AstNode object instead of Statement * lib/yard/handlers/base.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/legacy/base.rb: Refactor #parse_block code to use #push_state in order to lower code duplication across handlers * lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/base.rb: Add in_namespace to verify that the owner is a namespace object and meta_type to test things like node.condition? (meta_type :condition). Refactor MethodCallWrapper into HandlerExtension which meta_type uses too. * lib/yard/autoload.rb, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb: Move UndocumentableError into Parser namespace and make ParserSyntaxError a subclass (for error reporting) * lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb: Add SourceParser.parser_type attribute to set parser type globally (for legacy support) * lib/yard/parser/ruby/ast_node.rb: Fix bug where pp would destructively modify the AST * lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb: Optimizations of the parser and add some extra node classes for convenience * benchmarks/rdoc_vs_yardoc.rb, benchmarks/ripper_parser.rb: Fix up benchmarks
2009-05-23 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add reading of .yardopts file when using yardoc CLI/Rake task to specify batch options in a file rather than on the command line. Also support RDoc .document file to load globs of files. In each case the options/files should be separated by whitespace (newlines are permitted). An example .yardopts file would be: -c -fhtml --markup maruku --private lib/**/*.rb spec/**/*.rb * templates/default/attributes/html/header.erb, templates/default/fulldoc/html/style.css: Show the attribute aliases more compact on one line
2009-05-16 Nathan Weizenbaum <nex342@gmail.com>
* templates/default/attributes/html/header.erb, templates/default/fulldoc/html/style.css: Display aliases of attributes. Closes gh-2
2009-05-23 Loren Segal <lsegal@soen.ca>
* FAQ.markdown: Update formatting in FAQ * lib/yard/generators/base.rb: Document YARD::Generators::Base#before_section with new @overload tag * lib/yard/generators/base.rb, lib/yard/generators/tags_generator.rb, templates/default/fulldoc/html/style.css, templates/default/methodsignature/html/main.erb, templates/default/methodsignature/text/main.erb, templates/default/tags/html/overload.erb, templates/default/tags/text/overload.erb: Add support for overloads in generated documentation, based on nex3's implementation (51a5ce76c) * lib/yard/tags/overload_tag.rb: Delegate all other methods in an overload tag to its owning object so we can pass it around as a proper method during output generation (an itty bitty hack for #linkify to work) * templates/default/tags/text/header.erb: Remove 'Meta Tags' header in yri docs * lib/yard/generators/helpers/method_helper.rb, spec/generators/helpers/method_helper_spec.rb: Add #format_overload to properly format an overload method signature * lib/yard/tags/library.rb: Fix typewriter text formatting in YARD::Tags::Library documentation * lib/yard/docstring.rb: Make sure all tags go through #add_tag to set their <tt>object</tt> properties * templates/default/tags/text/example.erb, templates/default/tags/text/option.erb, templates/default/tags/text/param.erb: Add missing @example and @param/@option templates from yri * lib/yard/docstring.rb, lib/yard/tags/overload_tag.rb, spec/tags/overload_tag_spec.rb: Overload tag should set docstring object immediately and add object later * lib/yard/code_objects/method_object.rb, lib/yard/generators/tags_generator.rb: Don't show parameters section if there are no @param or @option tags Closes gh-12 * lib/yard/autoload.rb, lib/yard/docstring.rb, lib/yard/tags/library.rb, lib/yard/tags/overload_tag.rb, lib/yard/tags/tag.rb, spec/tags/overload_tag_spec.rb: Add @overload tag based on nex3's original implementation (09d1be25) but without modifying code object or handler code * lib/yard/tags/library.rb: Allow Tag class as parameter to to bypass tag factory and directly instantiate tag
2009-05-11 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/tags/library.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Some specs and basic definition of @overload tag for defining method overloads.
2009-05-23 Loren Segal <lsegal@soen.ca>
* lib/yard/core_ext/file.rb, lib/yard/handlers/base.rb, lib/yard/tags/library.rb: Update documentation and remove all link resolution warnings * lib/yard/registry.rb: YARD::Registry#resolve: Make sure namespace is a NamespaceObject before performing lookup. * lib/yard/code_objects/method_object.rb: Fix minor NameError in MethodObject * lib/yard/code_objects/proxy.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/registry.rb, spec/registry_spec.rb: Add inherited=true optional argument in YARD::Registry#resolve to search inherited and included methods when resolving a path in a namespace * lib/yard/code_objects/proxy.rb: Fix Proxy#path behaviour to print proper paths and more intelligently detect class methods * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: A class method in the root namespace should be defined by '::methname' so as to differentiate from a constant in the root namespace with the same name
2009-05-22 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Add #all_objects to return the objects to document. This allows easy overriding if a non-standard set of code objects need to be documented * spec/docstring_spec.rb: Add spec for reftags on invalid objects * lib/yard/code_objects/base.rb, spec/handlers/method_handler_spec.rb: Fix lookups on methods and fix an invalid spec * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/registry.rb, spec/code_objects/method_object_spec.rb: Allow MethodObject#scope to be modified after creation
2009-05-03 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/handlers/method_handler.rb, lib/yard/registry.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/method_object_spec.rb, spec/code_objects/module_object_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/method_handler_spec.rb: Add a CSEP separator for class methods (Foo.meth instead of Foo::meth). * lib/yard/code_objects/base.rb: Parse setter methods (e.g. #foo=).
2009-05-21 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: Properly encode URLs for methods with punctuation. Based on nex3's patch but modified slightly and specs added. Closes gh-4 * lib/yard/code_objects/namespace_object.rb, lib/yard/generators/constants_generator.rb, lib/yard/generators/uml_generator.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb, spec/code_objects/proxy_spec.rb, spec/handlers/extend_handler_spec.rb, spec/handlers/mixin_handler_spec.rb, templates/default/uml/dot/dependencies.erb: Add #class_mixins and #instance_mixins attributes and make #mixins return both class and instance mixins by default * lib/yard/parser/statement_list.rb: Parser::StatementList: Fix @return tag typo
2009-04-02 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/parser/statement_list.rb: Parser::StatementList: Get rid of unused COLON_TOKENS. * lib/yard/parser/statement_list.rb: Parser::StatementList: Parse hashes as hashes.
2009-04-03 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/parser/statement_list.rb: Parser::StatementList: Properly parse dangling expressions. * lib/yard/parser/statement_list.rb: Parser::StatementList: Major refactoring.
2009-04-01 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/parser/statement_list.rb: Parser::StatementList: Add explanatory comments about #process_new_statement.
2009-03-31 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/parser/statement_list.rb: Parser::StatementList: Get rid of the big, scary needs-refactoring warning. * lib/yard/parser/statement_list.rb: Parser::StatementList: Encapsulate new-statement declaration in a method. * lib/yard/parser/statement_list.rb: Parser::StatementList: @stmt_number doesn't need to be a number. * lib/yard/parser/statement_list.rb: Parser::StatementList: Get rid of a bunch of debugging/leftover comments. * lib/yard/parser/statement_list.rb: Parser::StatementList: Factor out block-statement processing. * lib/yard/parser/statement_list.rb: Parser::StatementList: Factor out a method for processing new statements. * lib/yard/parser/statement_list.rb: Parser::StatementList: Flatten out #process_token a little more. * lib/yard/parser/statement_list.rb: Parser::StatementList: Factor out a bunch of methods. * lib/yard/parser/statement_list.rb: Parser::StatementList: Factor out initial-comment processing. * lib/yard/parser/statement_list.rb: Parser::StatementList: Move some code to a method. * lib/yard/parser/statement_list.rb: Parser::StatementList: Convert to instance vars.
2009-04-02 Nathan Weizenbaum <nex342@gmail.com>
* spec/parser/statement_list_spec.rb: Add a bunch of mostly-failing tests for Parser::StatementList.
2009-05-14 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/generators/tags_generator.rb, lib/yard/tags/library.rb: Add a @yieldreturn tag for documenting the return values of blocks.
2009-05-16 Nathan Weizenbaum <nex342@gmail.com>
* templates/default/fulldoc/html/all_methods.erb: Get rid of a non-XHTML-compliant standalone attribute. * lib/yard/generators/tags_generator.rb: Allow parameters like &block and *args do be documented as block and args. Closes gh-9
2009-05-14 Nathan Weizenbaum <nex342@gmail.com>
* templates/default/attributes/html/header.erb, templates/default/attributes/text/header.erb: Bring the html and text templates' renderings of attributes more in line with one another. Closes gh-1
2009-05-10 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/cli/yardoc.rb, lib/yard/generators/helpers/html_helper.rb: Add a --no-highlight option to work around issues with the Ruby highlighter.
2009-05-02 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/handlers/extend_handler.rb, lib/yard/handlers/mixin_handler.rb, spec/handlers/examples/extend_handler_001.rb.txt, spec/handlers/extend_handler_spec.rb: Handle "extend self" properly.
2009-05-21 Loren Segal <lsegal@soen.ca>
* spec/handlers/ruby/base_spec.rb: Only load Handlers::Ruby::Base spec under Ruby1.9
2009-05-03 Nathan Weizenbaum <nex342@gmail.com>
* spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Fix an invalid method name in alias_handler_spec.
2009-05-02 Nathan Weizenbaum <nex342@gmail.com>
* templates/default/mixins/html/header.erb, templates/javadoc/mixins/html/header.erb: Call "Included Singleton Class Modules" "Extended Modules" instead.
2009-03-30 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/generators/uml_generator.rb: Fix one last Namespace#mixins call. * spec/code_objects/class_object_spec.rb, spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb, spec/handlers/examples/mixin_handler_001.rb.txt, spec/handlers/mixin_handler_spec.rb: Add further specs for the mixin class/instance distinction.
2009-03-29 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/code_objects/class_object.rb, lib/yard/code_objects/module_object.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/module_object_spec.rb: Class inheritance trees should include modules included in superclasses. * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/constants_generator.rb, lib/yard/generators/method_listing_generator.rb, lib/yard/generators/mixins_generator.rb, lib/yard/generators/module_generator.rb, lib/yard/handlers/mixin_handler.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb, spec/code_objects/proxy_spec.rb, spec/handlers/mixin_handler_spec.rb, templates/default/mixins/html/header.erb, templates/default/uml/dot/dependencies.erb, templates/javadoc/mixins/html/header.erb: Keep track of singleton-class mixins separately from normal mixins. This needs some specs. All I've done so far is update existing specs so they don't break.
2009-03-30 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/core_ext/symbol_hash.rb, spec/core_ext/symbol_hash_spec.rb: Make SymbolHash#merge nondestructive. #update and #merge! are still destructive.
2009-03-29 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/code_objects/namespace_object.rb: Fix the failing spec mentioned in 0bb4363 * spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb: Add a failing spec for modules not listing class methods of included modules. Also fix another that assumes they are listed. For example, with module Foo def self.baz; end end module Bar include Foo end Bar::baz is invalid.
2009-05-02 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/autoload.rb, lib/yard/handlers/extend_handler.rb, spec/handlers/examples/extend_handler_001.rb.txt, spec/handlers/extend_handler_spec.rb: Add a handler for extend.
2009-05-20 Loren Segal <lsegal@soen.ca>
* spec/handlers/base_spec.rb, spec/handlers/ruby/base_spec.rb, spec/handlers/ruby/legacy/base_spec.rb: Add new handler specs (also tests behaviour from Processor) * lib/yard/autoload.rb, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/legacy/base.rb, lib/yard/handlers/ruby/legacy/processor.rb, lib/yard/handlers/ruby/processor.rb, lib/yard/parser/source_parser.rb: Remove unneeded Processor subclasses and re-add Handlers::Base#handles? implementation instead * lib/yard/autoload.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/processor.rb, lib/yard/handlers/ruby/visibility_handler.rb: Add method_call() convenience method to match an sexp denoting a method call on a specific method * lib/yard/autoload.rb, lib/yard/handlers/ruby/visibility_handler.rb, .../examples/visibility_handler_001.rb.txt, spec/handlers/visibility_handler_spec.rb: Add new-style visibility handler * lib/yard/handlers/ruby/legacy/method_handler.rb, spec/handlers/method_handler_spec.rb: Change legacy method handler behaviour to keep parameters as Strings, otherwise it would not be possible to specify *splat or &block args (conveniently) * spec/handlers/alias_handler_spec.rb, spec/handlers/attribute_handler_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/class_variable_handler_spec.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/exception_handler_spec.rb, spec/handlers/method_handler_spec.rb, spec/handlers/mixin_handler_spec.rb, spec/handlers/module_handler_spec.rb, spec/handlers/visibility_handler_spec.rb, spec/handlers/yield_handler_spec.rb, spec/parser/ruby/ast_node_spec.rb: Fix namespace changes in remaining handler specs to at least run the specs if not pass them * lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/processor.rb, lib/yard/parser/ruby/ast_node.rb: Add handler support for full sexp in Handler::Base.handles method * lib/yard/parser/ruby/ast_node.rb: Add code to adjust source ranges of certain nodes * spec/handlers/base_spec.rb, spec/handlers/legacy_base_spec.rb: Move legacy Handlers::Base tests into new file * lib/yard/autoload.rb, lib/yard/handlers/ruby/class_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/handlers/ruby/module_handler.rb: Add new-style Ruby class, module and method handlers * spec/parser/source_parser_spec.rb, spec/parser/statement_list_spec.rb, spec/parser/token_list_spec.rb: Fix references to RubyToken in Legacy parser specs * lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/base.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ast_node_spec.rb, spec/parser/ruby/legacy/statement_list_spec.rb, spec/parser/ruby/legacy/token_list_spec.rb: Update parser and handler code for new RubyParser and handlers and add specs for AstNode * README.markdown, lib/yard/autoload.rb, lib/yard/generators/helpers/html_helper.rb, .../helpers/html_syntax_highlight_helper.rb, lib/yard/parser/ruby/ruby_parser.rb, .../default/fulldoc/html/syntax_highlight.css: Add support for syntax highlighting with new RubyParser AST
2009-05-19 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/handlers/alias_handler.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/exception_handler.rb, lib/yard/handlers/method_handler.rb, lib/yard/handlers/mixin_handler.rb, lib/yard/handlers/module_handler.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/class_handler.rb, .../handlers/ruby/legacy/class_variable_handler.rb, lib/yard/handlers/ruby/legacy/constant_handler.rb, lib/yard/handlers/ruby/legacy/exception_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/legacy/module_handler.rb, .../handlers/ruby/legacy/visibility_handler.rb, lib/yard/handlers/ruby/legacy/yield_handler.rb, lib/yard/handlers/visibility_handler.rb, lib/yard/handlers/yield_handler.rb: Move Legacy handlers into Legacy namespace * benchmarks/ripper_parser.rb, lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/handlers/alias_handler.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/base.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/exception_handler.rb, lib/yard/handlers/method_handler.rb, lib/yard/handlers/mixin_handler.rb, lib/yard/handlers/module_handler.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/legacy/base.rb, lib/yard/handlers/ruby/legacy/processor.rb, lib/yard/handlers/ruby/processor.rb, lib/yard/handlers/visibility_handler.rb, lib/yard/handlers/yield_handler.rb, lib/yard/parser/ripper/parser.rb, lib/yard/parser/ripper/ripper_parser.rb, lib/yard/parser/ripper/tokens.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/ruby_lex.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/legacy/token_list.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/ruby_lex.rb, lib/yard/parser/source_parser.rb, lib/yard/parser/statement.rb, lib/yard/parser/statement_list.rb, lib/yard/parser/token_list.rb: Move Ripper parser code into SourceParser and hook up handlers. Move old parser into Legacy namespace. Still need to move handlers and rewrite handlers for new ripper AST
2009-02-11 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ripper/parser.rb: Start #to_s implementation for Node
2009-02-10 Loren Segal <lsegal@soen.ca>
* lib/yard/parser/ripper/parser.rb, lib/yard/parser/ripper/ripper_parser.rb, lib/yard/parser/ripper/tokens.rb: Add initial ripper parser code
2009-05-18 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/index.erb: Remove path component from initially loaded readme/extra file in the index page * lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/all_files.erb: Remove path components from README and extra --files when displaying and linking their filenames * templates/default/attributes/html/header.erb: Fix Ruby1.8 regression in attributes template (symbols cannot be capitalized) * templates/default/attributes/html/header.erb: Fix issue #1: Template no longer shows non-writable/non-readable attributes as RW * lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/all_methods.erb: Fix issue #10: Methods only show up in method list if they show up in generated documentation
2009-05-16 Loren Segal <lsegal@soen.ca>
* spec/code_objects/constants_spec.rb: Fix failing specs under Ruby1.9 due to missing (removed) constants * lib/yard/docstring.rb, spec/docstring_spec.rb: YARD::Docstring: fix broken #blank? implementation and failing specs * lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/html_helper.rb: Move inclusion of MarkupHelper into HtmlHelper (fixes specs and generally makes more sense) * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: Add support to for file links (e.g. linking to README) in markup processing. Syntax is {file:FILENAME TITLE} where TITLE is optional. * README.markdown: Fix broken formatting in README.markdown * lib/yard/docstring.rb: YARD::Docstring: rename #empty? to #blank?
2009-05-10 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/generators/helpers/html_helper.rb: Ignore things that look like links if they're within <pre> or <code>.
2009-05-15 Loren Segal <lsegal@soen.ca>
* spec/generators/full_doc_generator_spec.rb: Fix broken spec in YARD::Generators::FullDocGenerator * lib/yard/autoload.rb, lib/yard/cli/yardoc.rb, lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/helpers/markup_helper.rb, spec/cli/yardoc_spec.rb, spec/generators/helpers/markup_helper_spec.rb: Add --markup-provider option to override library used for markup formatting
2009-05-14 Loren Segal <lsegal@soen.ca>
* benchmarks/parsing.rb: Fix broken in order parsing benchmark due to removed PATH_ORDER constant
2009-05-03 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/parser/ruby_lex.rb: Fix a Ruby lexing bug where symbol-beginning colons were sometimes read as statement-delimiting colons. For example: def foo if :/ return 12 end end * README.markdown: Make README Maruku-compatible.
2009-04-26 Nathan Weizenbaum <nex342@gmail.com>
* lib/yard/docstring.rb, spec/docstring_spec.rb: Add a method to Docstring for determining if it's empty. * lib/yard/handlers/base.rb, lib/yard/handlers/mixin_handler.rb: Fix some minor grammar errors.
2009-05-09 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb: Specify MatchData in BUILTIN_CLASSES in addition to MatchingData for Ruby 1.9.1 comptibility. (original author: postmodern)
2009-04-01 postmodern <postmodern.mod3@gmail.com>
* lib/yard/serializers/file_system_serializer.rb: Refactored serialize_path to be Ruby 1.9.1 compatible.
2009-05-07 jeffrafter <jeff@baobabhealth.org>
* lib/yard/cli/yardoc.rb: Cli options for alternate template paths had a typo; corrected
2009-05-03 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/full_doc_generator.rb: Remove unneeded method: file_list_file * templates/default/tags/html/example.erb: Fix bug when only one @example is specified * Rakefile, lib/yard/cli/yardoc.rb, lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/all_files.erb, templates/default/fulldoc/html/file.erb, templates/default/fulldoc/html/index.erb, templates/default/fulldoc/html/readme.erb: Add support for --files switch to specify extra static files to include in documentation
2009-05-02 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/tags_generator.rb, templates/default/tags/html/example.erb: Add template for @example tag
2009-02-17 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/proxy.rb, lib/yard/handlers/class_handler.rb, lib/yard/registry.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/proxy_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Fix Registry#resolve lookup on proxy namespaces
2009-02-03 Loren Segal <lsegal@soen.ca>
* lib/yard.rb: Little more accurate Ruby 1.9 checking * LICENSE: Update copyright year
2009-01-31 Loren Segal <lsegal@soen.ca>
* benchmarks/rdoc_vs_yardoc.rb: Add RDoc vs YARD benchmark * lib/yard.rb, lib/yard/code_objects/proxy.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/parser/source_parser.rb: Various fixes for 1.9 compatibility * lib/yard/code_objects/base.rb: Don't use splat on assignment (not compat with 1.9)
2009-01-26 Loren Segal <lsegal@soen.ca>
* README.markdown: Update copyright * lib/yard/code_objects/base.rb, lib/yard/handlers/alias_handler.rb, lib/yard/handlers/base.rb, spec/code_objects/base_spec.rb: Maintain list of all files/lines a code object was defined in * lib/yard/code_objects/class_object.rb, spec/handlers/class_handler_spec.rb: Fix bug when redeclaring Exception class * Rakefile: Don't leave ruby files hanging around in the pkg directory
2008-06-22 elliottcable <git@elliottcable.name>
* lib/yard/generators/full_doc_generator.rb: Added .mkdn support
2008-08-29 lsegal <lsegal@soen.ca>
* yard.gemspec: Spam protection.
2008-08-26 Loren Segal <lsegal@soen.ca>
* spec/handlers/examples/class_handler_001.rb.txt, spec/tags/default_factory_spec.rb: Change ArgumentError to TagFormatError and silence warning about missing String class in specs * lib/yard/generators/helpers/html_helper.rb: Limit how much text the typewriter fix regex can grab, stops stackoverflow error * lib/yard/handlers/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Add support for class << CONST where CONST is a reference to a real class object * lib/yard/autoload.rb, lib/yard/docstring.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/tag_format_error.rb: Add TagFormatError to improve log warnings * lib/yard/code_objects/base.rb, lib/yard/code_objects/constant_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/generators/constants_generator.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/mixin_handler.rb, spec/handlers/examples/mixin_handler_001.rb.txt, spec/handlers/mixin_handler_spec.rb: Add support for mixing in constants pointing to modules * lib/yard/handlers/class_handler.rb: Verify that ClassName in 'class << ClassName' has been loaded before parsing * lib/yard/code_objects/base.rb, lib/yard/docstring.rb: Add object reference to Docstring for error reporting * lib/yard.rb: Update yard version number to match gemspec * lib/yard/handlers/class_handler.rb, spec/handlers/base_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt, spec/handlers/spec_helper.rb: Don't document class << Constant
2008-07-03 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/generators/base.rb, lib/yard/generators/tags_generator.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/library.rb, lib/yard/tags/merbdoc_factory.rb, lib/yard/tags/option_tag.rb, spec/tags/default_factory_spec.rb, templates/default/tags/html/option.erb, templates/default/tags/html/param.erb: Change new @option tag formatting
2008-08-09 Duane Johnson <duane.johnson@gmail.com>
* spec/spec_helper.rb: Added File.expand_path around spec_helper's 'require'. - relative files map to the same absolute file - constants are not reloaded during execution of autotest * lib/yard/parser/ruby_lex.rb: Corrected spacing in ruby lex code * lib/yard/parser/ruby_lex.rb: Converted tabs to spaces in ruby lex code * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: Fixed regexp for fix_typewriter and added unit test.
2008-08-08 Duane Johnson <duane.johnson@gmail.com>
* lib/yard/generators/helpers/html_helper.rb: Fix that 'fix_typewriter' regexp could go on indefinitely in the case of a string such as "+abcdef abcdabcdabcdabcdabcdabcdabcdabcdabcd\n".
2008-07-02 Loren Segal <lsegal@soen.ca>
* lib/yard/docstring.rb, spec/docstring_spec.rb: Add more specs for reftags * lib/yard/docstring.rb, spec/docstring_spec.rb: Add @tag (see PATH) and @tag name (see PATH) reftag syntax * lib/yard/autoload.rb, lib/yard/tags/ref_tag.rb, lib/yard/tags/ref_tag_list.rb, spec/docstring_spec.rb, spec/tags/ref_tag_list_spec.rb, spec/tags/ref_tag_spec.rb: Move RefTag into RefTagList and add Docstring specs * lib/yard/autoload.rb, lib/yard/docstring.rb, lib/yard/tags/ref_tag.rb, spec/tags/ref_tag_spec.rb: Add RefTag object * lib/yard/docstring.rb, lib/yard/handlers/exception_handler.rb, lib/yard/handlers/yield_handler.rb: Add ref_tags attribute to docstring * lib/yard/docstring.rb: Refactor create_tag out of parse_comments
2008-06-30 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/docstring.rb, spec/code_objects/base_spec.rb, spec/docstring_spec.rb, templates/default/attributes/html/header.erb, templates/default/methodsummary/html/summary.erb, templates/javadoc/methodsummary/html/summary.erb: Move .docstring and .tags from CodeObject into new YARD::Docstring class * lib/yard/parser/statement_list.rb, spec/parser/statement_list_spec.rb: Block parsing bug fixes and specs based on patch by Aman Gupta
2008-06-29 Aman Gupta <aman@tmm1.net>
* lib/yard/generators/uml_generator.rb, templates/default/uml/dot/superclasses.erb: Fix minor parsing bugs in yard-graph
2008-06-23 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/helpers/method_helper.rb: Update format_args to use object.parameters instead of object.signature parsing * benchmarks/format_args.rb: Log results * benchmarks/format_args.rb: Add benchmark for argument formatting * lib/yard/generators/helpers/html_helper.rb: RedCloth and BlueCloth have to be required as lowercase * lib/yard/generators/helpers/method_helper.rb: Fix NoMethodError exception when method has no @return tags
2008-06-23 Duane Johnson <duane.johnson@gmail.com>
* FAQ.markdown: Added FAQ from conversation with argv
2008-06-22 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/tags_generator.rb, templates/default/fulldoc/html/style.css, templates/default/tags/html/option.erb: Add option info to template * lib/yard/tags/default_tag.rb, spec/tags/default_tag_spec.rb: Fix typo in DefaultTag with spec * spec/tags/default_factory_spec.rb: More specs * lib/yard/autoload.rb, lib/yard/generators/base.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/default_tag.rb, lib/yard/tags/library.rb, spec/tags/default_factory_spec.rb: Add @option tag with format @option key [Types] (default) description * lib/yard/code_objects/base.rb: DTrace is not part of core/stdlib * lib/yard/tags/default_factory.rb, spec/tags/default_factory_spec.rb: Allow name to be specified before type list: b[String] or b<String>
2008-06-21 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Make sure a specified readme file exists. * README.markdown: Update formatting * .../default/fulldoc/html/syntax_highlight.css: Fix padding in code blocks * README, README.markdown, lib/yard/cli/yardoc.rb, lib/yard/generators/full_doc_generator.rb, lib/yard/generators/helpers/html_helper.rb, yard.gemspec: Fix recognition of markdown in readme's, move default :readme option out of CLI into FullDocGenerator and convert README to markdown. * yard.gemspec: Make new changes part of 0.2.3 release * lib/yard/generators/full_doc_generator.rb: Add support for multiple markdown file extension types. * lib/yard/code_objects/base.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt, spec/handlers/examples/module_handler_001.rb.txt, spec/handlers/module_handler_spec.rb: Fix parsing/handling of ::Modname or ::ClassName
2008-06-20 Leonid Borisenko <leo.borisenko@gmail.com>
* spec/code_objects/proxy_spec.rb: Refine spec of Proxy#respond_to? * lib/yard/generators/full_doc_generator.rb, spec/generators/full_doc_generator_spec.rb: Fix checking for existence of 'readme' file
2008-06-19 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/method_object.rb, lib/yard/core_ext/string.rb, lib/yard/handlers/base.rb, lib/yard/handlers/method_handler.rb, spec/core_ext/string_spec.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb, templates/default/tags/html/tags.erb: Add method parameter retrieval from signature with default value info * spec/tags/default_factory_spec.rb: Add spec for => behaviour * lib/yard/generators/helpers/html_helper.rb, templates/default/fulldoc/html/readme.erb, templates/default/tags/html/tags.erb: Various fixes for type formatting and readme markup * spec/tags/default_factory_spec.rb: Add specs for parse_types * lib/yard/tags/default_factory.rb: Hook in support for tag parsing * lib/yard/tags/default_factory.rb: Add parse_types, currently unused by code * lib/yard/tags/library.rb: Add raw title / text for todo items
2008-06-19 Leonid Borisenko <leo.borisenko@gmail.com>
* lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb: Add handling of second parameter in Proxy#respond_to? (like in Object#respond_to?)
2008-06-17 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb, lib/yard/generators/base.rb, lib/yard/generators/full_doc_generator.rb, lib/yard/generators/helpers/html_helper.rb: Add support for different markup styles via --markup as well as #!shebang line for readme file * lib/yard/cli/yardoc.rb: Change -d to -o * README: Revert <tt></tt> back to new improved ++ syntax * lib/yard/generators/helpers/html_helper.rb: Fix {} support for urls * lib/yard/generators/helpers/html_helper.rb: Add better support for ++ formatting in RDoc. (Don't stop at non-alpha char) * lib/yard/generators/helpers/html_helper.rb: Add link_url for {} syntax * lib/yard/generators/base.rb: Remove empty method * lib/yard/generators/base.rb: Show filename in erb eval'ing for backtraces * README: More minor formatting * README: Minor formatting changes in README
2008-06-16 Loren Segal <lsegal@soen.ca>
* templates/default/docstring/text/main.erb, templates/default/methodsignature/text/main.erb, templates/default/methodsummary/text/summary.erb, templates/default/quickdoc/text/header.erb: Minor yri formatting issues * bin/yri: No more PATH_ORDER * README: Remove newline * README: Various editing changes for RDco formatting compatibility * README: Remove newline * help.pdf, yard.gemspec: Remove pdf help, add Rakefile to gem package * README, README.rdoc: Github doesnt care about .rdoc ext * README: Delete readme * README.rdoc, Rakefile, lib/yard/cli/yard_graph.rb, lib/yard/rake/yardoc_task.rb, yard.gemspec: Make documentation changes in preparation for gem * quarantine/code_object.rb, quarantine/formatter.rb, quarantine/handlers/all_handlers.rb, quarantine/handlers/attribute_handler.rb, quarantine/handlers/class_handler.rb, quarantine/handlers/class_variable_handler.rb, quarantine/handlers/code_object_handler.rb, quarantine/handlers/constant_handler.rb, quarantine/handlers/exception_handler.rb, quarantine/handlers/method_handler.rb, quarantine/handlers/mixin_handler.rb, quarantine/handlers/module_handler.rb, quarantine/handlers/visibility_handler.rb, quarantine/handlers/yield_handler.rb, quarantine/logger.rb, quarantine/namespace.rb, quarantine/quick_doc.rb, quarantine/source_parser.rb, quarantine/templates/html/_fulldoc.erb, quarantine/templates/html/class.erb, quarantine/templates/html/method.erb, quarantine/templates/html/module.erb: Remove quarantine * lib/yard/handlers/mixin_handler.rb: mixins should be added as proxies * templates/javadoc/attributes/html/header.erb, templates/javadoc/class/html/header.erb, templates/javadoc/constants/html/constants.erb, templates/javadoc/constants/html/header.erb, templates/javadoc/constants/html/included.erb, templates/javadoc/constants/html/inherited.erb, templates/javadoc/constructor/html/header.erb, templates/javadoc/docstring/html/main.erb, templates/javadoc/fulldoc/html/all_methods.erb, templates/javadoc/fulldoc/html/all_namespaces.erb, templates/javadoc/fulldoc/html/app.js, templates/javadoc/fulldoc/html/header.erb, templates/javadoc/fulldoc/html/html_head.erb, templates/javadoc/fulldoc/html/index.erb, templates/javadoc/fulldoc/html/jquery.js, templates/javadoc/fulldoc/html/readme.erb, templates/javadoc/fulldoc/html/style.css, .../javadoc/fulldoc/html/syntax_highlight.css, templates/javadoc/inheritance/html/header.erb, templates/javadoc/method/html/aliases.erb, templates/javadoc/method/html/header.erb, templates/javadoc/method/html/title.erb, templates/javadoc/methoddetails/html/header.erb, templates/javadoc/methodmissing/html/header.erb, templates/javadoc/methodsignature/html/main.erb, templates/javadoc/methodsummary/html/header.erb, templates/javadoc/methodsummary/html/included.erb, templates/javadoc/methodsummary/html/inherited.erb, templates/javadoc/methodsummary/html/summary.erb, templates/javadoc/mixins/html/header.erb, templates/javadoc/module/html/header.erb, templates/javadoc/source/html/main.erb, templates/javadoc/tags/html/header.erb, templates/javadoc/tags/html/see.erb, templates/javadoc/tags/html/tags.erb, templates/javadoc/visibilitygroup/html/header.erb: Add javadoc template
2008-06-15 Loren Segal <lsegal@soen.ca>
* Rakefile, bin/view_generator, lib/yard/autoload.rb: Remove LOAD_PATH load order const
2008-06-13 Loren Segal <lsegal@soen.ca>
* benchmarks/erb_vs_erubis.rb: Bench tiny and fast erubis as well * LICENSE, LICENSE.txt, README, README.txt, benchmarks/builtins_vs_eval.rb, benchmarks/erb_vs_erubis.rb, benchmarks/generation.rb, benchmarks/parsing.rb, simple_benches/builtins_vs_eval.rb, simple_benches/erb_vs_erubis.rb, simple_benches/generation.rb, simple_benches/parsing.rb, yard.gemspec: Clean up path names * lib/yard/generators/base.rb, lib/yard/generators/constants_generator.rb, lib/yard/generators/full_doc_generator.rb, simple_benches/erb_vs_erubis.rb, simple_benches/generation.rb, templates/default/attributes/html/header.erb, templates/default/attributes/text/header.erb, templates/default/constants/html/constants.erb, templates/default/constants/html/included.erb, templates/default/constants/html/inherited.erb, templates/default/constructor/html/header.erb, templates/default/fulldoc/html/all_methods.erb, templates/default/fulldoc/html/all_namespaces.erb, templates/default/inheritance/html/header.erb, templates/default/inheritance/text/header.erb, templates/default/method/html/aliases.erb, templates/default/methoddetails/html/header.erb, templates/default/methodmissing/html/header.erb, templates/default/methodsummary/html/header.erb, templates/default/methodsummary/html/included.erb, templates/default/methodsummary/html/inherited.erb, templates/default/methodsummary/html/summary.erb, templates/default/methodsummary/text/summary.erb, templates/default/quickdoc/html/header.erb, templates/default/quickdoc/text/header.erb, templates/default/tags/html/see.erb, templates/default/tags/html/tags.erb, templates/default/tags/text/see.erb, templates/default/tags/text/tags.erb, templates/default/uml/dot/dependencies.erb, templates/default/uml/dot/info.erb, templates/default/uml/dot/subgraph.erb, templates/default/uml/dot/superclasses.erb, templates/default/visibilitygroup/html/header.erb, yard.gemspec: Revert back to ERB.
2008-06-07 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/proxy.rb, simple_benches/generation.rb: Optimization: Lock down proxies to object when they resolve. Benchmarks show 20% speed gain. * lib/yard/registry.rb: Update proxy types in registry, don't replace * simple_benches/parsing.rb: Update details * lib/yard/tags/library.rb: Switch back to class_eval (faster) * simple_benches/parsing.rb: Log results from load_order changes * lib/yard/handlers/base.rb: Remove debugging message * lib/yard/handlers/base.rb, lib/yard/parser/source_parser.rb: Fix load order handling * lib/yard/code_objects/class_object.rb: Force superclasses to be proxies * spec/code_objects/proxy_spec.rb, spec/handlers/method_handler_spec.rb: Add specs for proxy behaviour * lib/yard/code_objects/proxy.rb: Improve Proxy behaviour * lib/yard/logging.rb: Default logging level should be current level * lib/yard.rb, lib/yard/autoload.rb: Move YARD::ROOT to 'lib' not 'lib/yard' * lib/yard/registry.rb: Refactor #load into #load and #load_yardoc
2008-06-06 Loren Segal <lsegal@soen.ca>
* simple_benches/parsing.rb: Add parsing benchmark * lib/yard/code_objects/class_object.rb, lib/yard/handlers/base.rb, spec/handlers/spec_helper.rb: Fix load_order! raising bug * lib/yard/handlers/base.rb, lib/yard/parser/source_parser.rb: Merge master with load_order * lib/yard/code_objects/base.rb: Add BUILTIN_EXCEPTIONS_HASH * simple_benches/builtins_vs_eval.rb: Add some benchmarks * lib/yard/code_objects/class_object.rb, lib/yard/handlers/class_handler.rb: Fix superclass handling in class object * lib/yard/handlers/class_handler.rb, lib/yard/handlers/exception_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Add support for multiple superclass notations (DelegateClass(...), Struct.new(..), R /regex/) and support for ExceptionClass.new() style exception raising * lib/yard/handlers/base.rb: Move methods to protected visibility * lib/yard.rb, lib/yard/parser/source_parser.rb: Move YARD.parse into source_parser.rb * lib/yard/logging.rb: Update log to default to info log level * bin/view_generator, lib/yard/core_ext/logger.rb, lib/yard/logging.rb: Move logger * lib/yard/code_objects/class_object.rb: Update class object to use builtins * lib/yard/autoload.rb, lib/yard/code_objects/base.rb, spec/code_objects/constants_spec.rb: Add BUILTIN_* constants and autoload constant names in CodeObjects * lib/yard/parser/ruby_lex.rb: Try to gracefully parse bad content * lib/yard/code_objects/proxy.rb: Alias to_s to path in Proxy * lib/yard/generators/helpers/method_helper.rb: Handle missing signature
2008-06-05 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Add support for different yardoc files * lib/yard/parser/ruby_lex.rb: Do not error out on invalid string, just eat it up * lib/yard/generators/source_generator.rb, templates/default/source/text/main.erb: Fix format_code for text views * lib/yard/handlers/method_handler.rb: Improve error handling / message for invalid methods * lib/yard/code_objects/class_object.rb, lib/yard/handlers/class_handler.rb: Better handling of superclass * lib/yard/code_objects/class_object.rb, lib/yard/handlers/class_handler.rb, lib/yard/parser/ruby_lex.rb, spec/code_objects/class_object_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Various class fixes with superclass handling and exception class checking * spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: More method name specs * lib/yard/handlers/alias_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Fix handling of aliases with non identifier method names * lib/yard/parser/statement_list.rb: Typo * lib/yard/parser/ruby_lex.rb, lib/yard/parser/statement_list.rb: Remove RDCOMMENT token * lib/yard/handlers/alias_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Support use of identifiers in 'alias' * lib/yard/parser/statement_list.rb: Fix invalid handling of a comment line with a comment inside it * lib/yard/generators/base.rb: template paths should be class variable otherwise each generator would forget the paths * .../default/fulldoc/html/syntax_highlight.css: Fix scrollbar issue in safari * lib/yard/cli/yardoc.rb: Fix typo * lib/yard/rake/yardoc_task.rb: Remove default files from rake task because they're specified in the CLI * lib/yard/cli/yardoc.rb: Add template path, load file options for yardoc cli and default file loading to lib/**/*.rb * lib/yard/parser/statement_list.rb, spec/code_objects/base_spec.rb: Fix parsing bug that added extra newlines to deep blocks * .../default/fulldoc/html/syntax_highlight.css, templates/default/source/html/main.erb: More source highlighting changes * lib/yard/generators/helpers/html_helper.rb, templates/default/fulldoc/html/style.css, .../default/fulldoc/html/syntax_highlight.css, templates/default/source/html/main.erb: Update code stylesheets and add styling for <pre> tags in docstrings * lib/yard/generators/full_doc_generator.rb: Remove dup definition * lib/yard/code_objects/class_object.rb, lib/yard/generators/full_doc_generator.rb, lib/yard/generators/helpers/base_helper.rb, spec/code_objects/class_object_spec.rb, templates/default/class/html/header.erb, templates/default/fulldoc/html/header.erb: Add #is_exception? to denote if class derives from an exception class and show this in the page title of generated docs * lib/yard/handlers/exception_handler.rb, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Adjust regex for matching the class name of a raised exception * lib/yard/handlers/exception_handler.rb, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Fix handling of complex namespaces in exception handler * lib/yard/generators/tags_generator.rb: @raise tag should list type in generated output * lib/yard/handlers/mixin_handler.rb, lib/yard/handlers/visibility_handler.rb, lib/yard/handlers/yield_handler.rb: Better support for various handlers * lib/yard/handlers/alias_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Add 'alias' keyword support for alias handler * lib/yard/autoload.rb, lib/yard/handlers/exception_handler.rb, .../handlers/examples/exception_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb: Add exception handler * lib/yard/parser/ruby_lex.rb, lib/yard/parser/statement_list.rb: Fix bug in RubyLex that incorrectly identifies the COLON token * lib/yard/tags/library.rb: @raise tag should take [types] instead of name * spec/handlers/base_spec.rb: Don't use the docspec method for now (it's slow) * lib/yard/handlers/alias_handler.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/base.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/method_handler.rb, lib/yard/handlers/module_handler.rb, lib/yard/handlers/visibility_handler.rb: Update handlers to use explicit #register and add Yield handler * lib/yard/code_objects/base.rb: Docstring should be reset during parse_comments * lib/yard/parser/source_parser.rb: Don't store results from process * spec/parser/source_parser_spec.rb: Remove debugging message in spec * Rakefile, lib/yard/logging.rb: Allow proper debugging if * lib/yard/logging.rb: Debug logging on if $DEBUG
2008-06-04 Loren Segal <lsegal@soen.ca>
* lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/method_handler.rb, lib/yard/handlers/module_handler.rb, lib/yard/handlers/yield_handler.rb, lib/yard/parser/source_parser.rb, lib/yard/tags/tag.rb, spec/handlers/examples/yield_handler_001.rb.txt, spec/handlers/yield_handler_spec.rb: Various changes needed to add yield handler * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb: Handle certain keyword values * lib/yard/tags/library.rb: Refactor factory methods and add @default tag * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb: Fix handling of ending parenthesis * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb: Handle tokens beginning with [] * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb: Fix parsing of list_tokval with parentheses * spec/handlers/base_spec.rb: Make sure TkId will ignore anything but an exact Id match * lib/yard/tags/library.rb: Add TODO tag * templates/default/constants/html/included.erb, templates/default/constants/html/inherited.erb, templates/default/fulldoc/html/style.css, templates/default/methodsummary/html/included.erb, templates/default/methodsummary/html/inherited.erb: Minor table styling changes * templates/default/attributes/html/header.erb: Fix invalid ending tag * lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/html_head.erb, .../default/fulldoc/html/syntax_highlight.css: Update syntax highlighting * lib/yard/parser/ruby_lex.rb: Create Whitespace token type for grouping * spec/handlers/base_spec.rb, spec/parser/source_parser_spec.rb, spec/parser/tag_parsing_spec.rb: Update specs * templates/default/source/html/main.erb, templates/default/source/text/main.erb: Update source code templates * lib/yard/handlers/alias_handler.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/base.rb, lib/yard/handlers/visibility_handler.rb: Use new tokval in list handling * lib/yard/generators/base.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/source_generator.rb: Add syntax highlighting for source code * lib/yard/code_objects/base.rb: Fix bug where raw_text was ignoring duplicating description text in title line * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb: Add #tokval and #tokval_list for better list parsing in handlers * spec/spec_helper.rb: Add some @tag based rspec helpers to test code in documentation * lib/yard.rb, lib/yard/core_ext/file.rb, lib/yard/core_ext/module.rb, lib/yard/core_ext/string.rb, lib/yard/core_ext/symbol_hash.rb, lib/yard/extra.rb, lib/yard/symbol_hash.rb, spec/core_ext/file_spec.rb, spec/core_ext/string_spec.rb, spec/core_ext/symbol_hash_spec.rb, spec/extra/file_spec.rb, spec/extra/symbol_hash_spec.rb: Move extra into core_ext and add module/string override methods * lib/yard/parser/token_list.rb: Use sym ending's lex state for symbol token * lib/yard/parser/source_parser.rb: log an error for stacktrace (because it doesn't show up in logs with warn?) * lib/yard/parser/ruby_lex.rb, lib/yard/parser/statement_list.rb: Remove unneeded TkfLBRACE/TkfLBRACKET/TkfLPAREN * lib/yard/tags/default_factory.rb, lib/yard/tags/library.rb: Add raw_text factory parser methods * lib/yard/code_objects/base.rb: Fix tag handling and parsing of raw text
2008-06-03 Loren Segal <lsegal@soen.ca>
* spec/parser/token_list_spec.rb: Update token list spec * spec/parser/source_parser_spec.rb: Hack no longer used * spec/parser/token_list_spec.rb: Make sure string data is not parsed out * lib/yard/parser/ruby_lex.rb, lib/yard/parser/token_list.rb, spec/parser/token_list_spec.rb: Fix #parse_content bug * lib/yard/parser/statement.rb, lib/yard/parser/statement_list.rb, lib/yard/parser/token_list.rb: Move parsing of tokens into tokenlist class
2008-06-02 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/class_handler.rb: Don't need //m * templates/default/fulldoc/html/app.js: Change index frame title to main page frame's title. Doesn't work in FF2 * lib/yard/code_objects/base.rb, lib/yard/parser/statement_list.rb, spec/code_objects/base_spec.rb: Fix formatting of source lines * lib/yard/generators/base.rb, templates/default/fulldoc/html/app.js, templates/default/fulldoc/html/style.css, templates/default/source/html/main.erb: Add source code view toggling * lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/all_methods.erb, templates/default/fulldoc/html/all_namespaces.erb, templates/default/fulldoc/html/app.js, templates/default/fulldoc/html/header.erb, templates/default/fulldoc/html/html_head.erb, templates/default/fulldoc/html/jquery.js, templates/default/fulldoc/html/readme.erb, templates/default/fulldoc/html/style.css, templates/default/source/html/main.erb, templates/default/visibilitygroup/html/header.erb: Update stylesheet, add JS assets and change doctypes * lib/yard/generators/method_listing_generator.rb: Always remove explicit attrs from included/inherited class method lists * lib/yard/handlers/class_handler.rb: Fix typo in name * lib/yard/handlers/class_handler.rb: Fix whitespace matching issue, clean up error message. * lib/yard/handlers/class_handler.rb: Fix whitespace issue * lib/yard/handlers/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/spec_helper.rb: Add class even if superclass is undocumentable * lib/yard/code_objects/base.rb, lib/yard/handlers/method_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Improve specs for special methods * lib/yard/parser/statement_list.rb: Add RDoc comment support and improve def handling * lib/yard/parser/statement_list.rb: Better def x; end handling * lib/yard/code_objects/base.rb: Add method names * lib/yard/handlers/mixin_handler.rb, spec/handlers/examples/mixin_handler_001.rb.txt, spec/handlers/mixin_handler_spec.rb: Fix handling of mixins with complex statements * templates/default/class/html/header.erb, templates/default/fulldoc/html/style.css, templates/default/module/html/header.erb, templates/default/visibilitygroup/html/header.erb: Update templates to show better class inheritance * templates/default/fulldoc/html/style.css: Make header sizes smaller * lib/yard/generators/method_listing_generator.rb: has_*_methods should use same method call that the templates use * templates/default/uml/dot/dependencies.erb, templates/default/uml/dot/superclasses.erb: Allow any non namespace object to be listed as a node * spec/code_objects/class_object_spec.rb, spec/code_objects/proxy_spec.rb: Beef up specs for Object superclass handling * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/proxy.rb: Don't set Object's superclass to itself * lib/yard/registry.rb, spec/code_objects/proxy_spec.rb: Move Registry::resolve to instance scope * spec/code_objects/proxy_spec.rb: Add specs for #respond_to? in proxy * lib/yard/code_objects/proxy.rb: Respond to respond_to? * lib/yard/cli/yard_graph.rb, lib/yard/generators/uml_generator.rb: --empty-nodes switch no longer used (the behaviour is required). * templates/default/fulldoc/html/readme.erb, templates/default/fulldoc/html/style.css: Add styling for README page * templates/default/uml/dot/dependencies.erb, templates/default/uml/dot/superclasses.erb: Update graphviz templates to link up any missing paths * lib/yard/logging.rb: Log to stderr! * README.txt: Use RDoc formatting in README
2008-06-01 Loren Segal <lsegal@soen.ca>
* templates/default/fulldoc/html/style.css, templates/default/methodsummary/html/summary.erb: Update summary styling * templates/default/methodsummary/html/summary.erb: Correct template typo * lib/yard/generators/helpers/method_helper.rb, templates/default/methodsummary/html/summary.erb: Remove format_method_name in favour of o.name(true) * templates/default/methodsummary/html/summary.erb: Show aliases on next line * templates/default/attributes/html/header.erb: Don't anchor link the attribute if it isn't explicitly defined (a detailed method description will follow) * lib/yard/generators/attributes_generator.rb, templates/default/attributes/text/header.erb: Update attributes generator to use uml in text mode * templates/default/attributes/text/header.erb, templates/default/methodsignature/text/main.erb, templates/default/methodsummary/text/summary.erb: Update text templates to use format_args instead of old format_def * templates/default/uml/dot/info.erb: Update graphviz templates to use proper UML2 notation * lib/yard/generators/helpers/method_helper.rb: Move methods to public visibility and use new prefix-name methodobject helper * lib/yard/autoload.rb, lib/yard/generators/helpers/uml_helper.rb, lib/yard/generators/uml_generator.rb: Add UMLHelper for certain class notation items (visibility marker) * lib/yard/cli/yard_graph.rb: Add visibility selection options to YardGraph CLI * lib/yard/code_objects/method_object.rb: Add name method to show # prefix on instance methods * templates/default/fulldoc/html/style.css: Update stylesheet * lib/yard/generators/method_listing_generator.rb, templates/default/methodsummary/html/summary.erb: Method summary layout should be table based * lib/yard/generators/attributes_generator.rb, templates/default/attributes/html/header.erb: Move to table layout for attributes * spec/code_objects/base_spec.rb: Add even more short_docstring tests * spec/code_objects/base_spec.rb: Add more short_docstring specs * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Correct short_docstring bug * lib/yard/code_objects/method_object.rb, lib/yard/handlers/method_handler.rb, spec/handlers/attribute_handler_spec.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add #explicit and #is_explicit? methods to document if an object has been explicitly overridden by an implicit definition (attr_accessor :x followed by def x; end is an attribute but is explicitly defined) * spec/code_objects/base_spec.rb: Add specs for short_docstring * lib/yard/code_objects/base.rb: Add short_docstring to show first line/paragraph of docstring * lib/yard/code_objects/root_object.rb: Add inspect for root object to not show path (since it's empty) * lib/yard/generators/base.rb, lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/all_methods.erb, templates/default/fulldoc/html/all_namespaces.erb, templates/default/fulldoc/html/header.erb, templates/default/fulldoc/html/index.erb, templates/default/fulldoc/html/readme.erb, templates/default/fulldoc/html/style.css: Change index to frameset version * lib/yard/cli/yard_graph.rb, lib/yard/cli/yardoc.rb: Add readme option to yardoc CLI and --verbose and --quiet to both CLI's * lib/yard/generators/full_doc_generator.rb, templates/default/fulldoc/html/header.erb, templates/default/fulldoc/html/index.erb, templates/default/fulldoc/html/style.css: Attempt index * lib/yard/generators/helpers/html_helper.rb, templates/default/constants/html/included.erb, templates/default/constants/html/inherited.erb, templates/default/fulldoc/html/style.css, templates/default/methodsummary/html/included.erb, templates/default/methodsummary/html/inherited.erb: Update templates #2 * lib/yard/generators/method_generator.rb, templates/default/class/html/header.erb, templates/default/fulldoc/html/style.css, templates/default/method/html/aliases.erb, templates/default/method/html/title.erb, .../default/methoddetails/html/method_header.erb, templates/default/module/html/header.erb, templates/default/source/html/main.erb: Update templates, stylesheets * lib/yard/handlers/module_handler.rb: Parse modules using NAMESPACEMATCH * lib/yard/code_objects/base.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/mixin_handler.rb: Streamline matching of classes/modules * lib/yard/cli/yardoc.rb, lib/yard/code_objects/base.rb, lib/yard/handlers/method_handler.rb, lib/yard/serializers/file_system_serializer.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb, spec/serializers/file_system_serializer_spec.rb: Streamline handling of special method characters * lib/yard/generators/helpers/method_helper.rb, lib/yard/generators/method_listing_generator.rb, templates/default/methodsignature/html/main.erb, templates/default/methodsummary/html/summary.erb: Update method signature templates * lib/yard/autoload.rb: Move comments so it isn't confused as a docstring
2008-05-31 Loren Segal <lsegal@soen.ca>
* lib/yard/cli/yardoc.rb: Fix visibility options being treated backwards (--no-public shows public) * bin/yard-graph, lib/yard/autoload.rb, lib/yard/generators/uml_generator.rb, templates/default/uml/dot/child.erb, templates/default/uml/dot/dependencies.erb, templates/default/uml/dot/header.erb, templates/default/uml/dot/info.erb, templates/default/uml/dot/subgraph.erb, templates/default/uml/dot/superclasses.erb, templates/default/uml/dot/unknown.erb, templates/default/uml/dot/unknown_child.erb: Add GraphViz generator, YardGraph CLI and update ./bin/yard-graph to use it * lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, lib/yard/registry.rb: Update Proxy object to treat ::Proxyname as root namespace * lib/yard/cli/yard_graph.rb: Remove unneeded instance variables * lib/yard/cli/yard_graph.rb: Typo in CLI * lib/yard/cli/yard_graph.rb: Add YardGraph client interface * lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Allow fs serializer to have no file extension * lib/yard/rake/yardoc_task.rb: Sensible default glob of files to parse * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/handlers/base.rb, lib/yard/handlers/method_handler.rb: Remove some things that Handler::Base#register does because it potentially disables handlers from doing their job
2008-05-30 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/mixin_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/mixin_handler_spec.rb: Set #type on proxies when it is known they are a class (superclass) or a module (mixin) * lib/yard/code_objects/proxy.rb: Symbolize type * lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb: Persist proxy type changes between proxy instances of same object * lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb: Allow type to be set on a proxy object * lib/yard/code_objects/class_object.rb: P(:Object) is P("::Object") * lib/yard/handlers/class_handler.rb: Only set superclass when there is one. * lib/yard/handlers/method_handler.rb, lib/yard/serializers/file_system_serializer.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb, spec/serializers/file_system_serializer_spec.rb: Add backtick as valid method character * lib/yard/generators/base.rb: Don't need to re-extend at each section as it has no effect. * lib/yard/cli/yardoc.rb: Add --no-output switch to bypass output generation * lib/yard/rake/yardoc_task.rb: Allow comma delimitation in OPTS and space delimitation in FILES * lib/yard/rake/yardoc_task.rb: Allow command line parameters to extend rake task * lib/yard/generators/quick_doc_generator.rb, templates/default/quickdoc/text/header.erb, templates/default/tags/text/params.erb, templates/default/tags/text/returns.erb: Update QuickDocGenerator to show method and attribute list at bottom * templates/default/methodsummary/text/header.erb, templates/default/methodsummary/text/summary.erb: Update method summary templates and add text version * templates/default/attributes/html/header.erb, templates/default/attributes/text/header.erb: Update Attributes templates * lib/yard/handlers/base.rb: Fix nil bug * lib/yard/generators/tags_generator.rb, templates/default/tags/text/header.erb, templates/default/tags/text/see.erb, templates/default/tags/text/tags.erb: Update TagsGenerator templates * lib/yard/code_objects/method_object.rb, spec/handlers/attribute_handler_spec.rb: Fix is_attribute for methods ending in = * lib/yard/handlers/base.rb: Always overwrite file/source line and docstring to last parsed data (since ruby overwrites this in the same manner) * lib/yard/generators/method_listing_generator.rb: Use objects scope to test if should be ignored, not generator scope * Rakefile, lib/yard/autoload.rb, lib/yard/rake/yardoc_task.rb: Add YardocTask Rake task * lib/yard/cli/yardoc.rb: Use cache if no files are specified * lib/yard/code_objects/method_object.rb, spec/handlers/attribute_handler_spec.rb: Add is_attribute? method * bin/yardoc, lib/yard/autoload.rb, lib/yard/cli/yardoc.rb: Add CLI module for Yardoc CLI frontend. Add option parsing for various switches
2008-05-29 Loren Segal <lsegal@soen.ca>
* bin/view_generator: Show debugging info for view_generator binary * bin/yardoc: Update yardoc binary to generate docs using FullDocGenerator * bin/yri, lib/yard/generators/quick_doc_generator.rb: Update yri binary to use QuickDocGenerator * lib/yard/generators/helpers/base_helper.rb: Add formatting helpers from HtmlHelper * lib/yard/autoload.rb, lib/yard/serializers/process_serializer.rb: Add ProcessSerializer to open a pipe to a commandline and write outputs there (like 'less') * lib/yard/registry.rb: Update Registry.load method to take in a list of files to parse * lib/yard/generators/base.rb: Fix typo in variable name * templates/default/methodsummary/text/header.erb, templates/default/methodsummary/text/summary.erb, templates/default/quickdoc/text/header.erb: Add text versions of various templates for quickdoc * bin/view_generator: Update file list to correct load order issues. * lib/yard.rb: Make sure the file list has no redundant files. * bin/view_generator, lib/yard/generators/base.rb: Pass generator object to verifier and show example of verifier in action * templates/default/fulldoc/html/style.css: Update fulldoc stylesheet to hide some unnecessary information * templates/default/tags/html/see.erb: Update @see links to use title as described in docs * lib/yard/generators/helpers/html_helper.rb: Wrap type list inside <tt>'s * lib/yard/tags/tag.rb: Update yardoc formatting * lib/yard/autoload.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/method_missing_generator.rb, templates/default/methodmissing/html/header.erb: Add MethodMissingGenerator * templates/default/methodsignature/html/main.erb: Fix class name typo * lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/helpers/method_helper.rb, lib/yard/generators/tags_generator.rb, lib/yard/handlers/base.rb, templates/default/tags/html/tags.erb: Merge format_return_types and format_tag_types into one method and fix parsing of <> * lib/yard/handlers/base.rb: Update rdoc formatting * lib/yard/handlers/alias_handler.rb: Be a little more lenient about alias_method handling * lib/yard/handlers/alias_handler.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/base.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/method_handler.rb, lib/yard/handlers/module_handler.rb, lib/yard/handlers/visibility_handler.rb, lib/yard/parser/source_parser.rb, lib/yard/parser/statement_list.rb: Add #register method and update handlers to use the method to add simple attributes and simplify handler processing * lib/yard/handlers/base.rb: Lots of docs for Handlers::Base * lib/yard/handlers/alias_handler.rb: Only handle the alias if it has 2 valid parameters * spec/handlers/spec_helper.rb: Mock the parser * spec/handlers/alias_handler_spec.rb, spec/handlers/class_handler_spec.rb, spec/handlers/spec_helper.rb: Add undoc_error helper and alias specs (failing) * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/proxy.rb: Turning P() into Proxy.new seems to be bad Karma in certain cases. Seems Proxy has some underlying issues. Take care of these later. * lib/yard/generators/helpers/html_helper.rb: Tweak resolve_links to only match {object} links if they're surrounded by spaces (or ended with punctuation). * lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb: Try not to use P() inside code_objects/ because it attempts to hard-link to an object. We generally don't want to do during code generation this because it will make documentation more order-dependent (an object will resolve to the closest namespace match regardless if a better one is parsed later down the line). * lib/yard/generators/helpers/html_helper.rb: Update resolve_links to ignore { } inside code blocks. Will need improving when rdoc formatting changes. Should probably write specs for this. * lib/yard/handlers/class_handler.rb, spec/handlers/class_handler_spec.rb: Add first of many parsability/robustness specs for handlers * lib/yard/handlers/alias_handler.rb, lib/yard/handlers/visibility_handler.rb: Update alias/visibility handlers * spec/handlers/base_spec.rb: Update handler specs * spec/handlers/base_spec.rb: Stub handler tests instead of actually registering classes * lib/yard/handlers/base.rb: Raise an error if process is not defined in the class * lib/yard/handlers/alias_handler.rb, lib/yard/handlers/visibility_handler.rb, spec/handlers/examples/alias_handler_001.rb.txt, .../examples/visibility_handler_001.rb.txt, spec/handlers/visibility_handler_spec.rb: Fix parsing routine for visibility and alias handlers * lib/yard/code_objects/base.rb: Only allow meta tags from the beginning of the line (to avoid confusion with @instance_variables) * lib/yard/handlers/attribute_handler.rb: raise UndocumentableError instead of logging it manually * lib/yard/handlers/constant_handler.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/examples/constant_handler_001.rb.txt: Don't make regular variable assignment into constants.
2008-05-28 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/helpers/html_helper.rb: Make sure relative link starts from a namespace object * spec/extra/file_spec.rb: More File.relative_path specs * lib/yard/extra.rb: Update relative_path and add documentation * lib/yard/generators/helpers/html_helper.rb: Use title when resolving "{object}" links * lib/yard/code_objects/method_object.rb, lib/yard/registry.rb, spec/code_objects/base_spec.rb, spec/code_objects/method_object_spec.rb, spec/code_objects/proxy_spec.rb, spec/registry_spec.rb: Fix registry resolving of methods when prefixed with # * lib/yard/generators/helpers/html_helper.rb: Only show warnings in resolve_links for now * lib/yard/autoload.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/module_generator.rb, templates/default/methodsummary/html/header.erb, templates/default/visibilitygroup/html/header.erb: Add VisibilityGroupGenerator for public/protected/private views * lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/method_listing_generator.rb, lib/yard/tags/library.rb, templates/default/attributes/html/header.erb, templates/default/constants/html/constants.erb, templates/default/constants/html/included.erb, templates/default/constants/html/inherited.erb, templates/default/fulldoc/html/style.css, templates/default/methodsummary/html/included.erb, templates/default/methodsummary/html/inherited.erb: When using sort_by on method names make sure it does a case insensitive sort * templates/default/methodsummary/html/summary.erb: Short docstring should end at first paragraph or first period. * templates/default/methodsummary/html/summary.erb: Move h1 outside ul * templates/default/fulldoc/html/style.css: Hide source by default * lib/yard/generators/method_details_generator.rb, templates/default/methodsummary/html/header.erb, templates/default/methodsummary/html/summary.erb: Hide sections if no data is present for them * templates/default/fulldoc/html/header.erb: Add fulldoc templates and stylesheet * lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Allow serialization on strings as file paths * lib/yard/generators/class_generator.rb, lib/yard/generators/constructor_generator.rb, lib/yard/generators/full_doc_generator.rb, lib/yard/generators/method_details_generator.rb, lib/yard/generators/method_generator.rb, lib/yard/generators/module_generator.rb, lib/yard/generators/quick_doc_generator.rb: Optimization: initialize instances of generators only once instead of for each object. * lib/yard/generators/base.rb: Don't allow locals to override __f * lib/yard/serializers/file_system_serializer.rb: Use #log shorthand * bin/view_generator: Update bin/view_generator to generate code for CodeObjects and Generators classes to show off FullDocGenerator. Use with ./bin/view_generator FullDocGenerator FileSystemSerializer all html * lib/yard/generators/class_generator.rb: Add visibility grouping generators to class generator * lib/yard/generators/method_generator.rb: Remove is_method? filter definition in favour of FilterHelper is_method? filter * templates/default/methodsummary/html/header.erb: Add scope and visibility to method summary's div class name for better styling * templates/default/methodsignature/html/main.erb: Remove Method Signature heading * templates/default/class/html/header.erb: Add 'Class' to heading * templates/default/source/html/main.erb: Make View Source into a link so it can be hidden/shown for later. This may change * lib/yard/generators/base.rb, lib/yard/generators/helpers/filter_helper.rb: Add G() convenience method to create a new generator instance with extra opts, add some basic filter helpers like #is_method? #is_namespace? #is_class? for basic before_* checks * lib/yard/generators/full_doc_generator.rb: Add FullDocGenerator * lib/yard/generators/module_generator.rb, templates/default/module/html/header.erb: Add ModuleGenerator * lib/yard/generators/visibility_group_generator.rb, templates/default/visibilitygroup/html/header.erb: Add VisibilityGroupGenerator * lib/yard/generators/method_details_generator.rb, templates/default/methoddetails/html/header.erb, .../default/methoddetails/html/method_header.erb: Add MethodDetailsGenerator and templates * lib/yard/generators/method_listing_generator.rb, lib/yard/generators/method_summary_generator.rb: Move method summary methods to MethodListingGenerator to be shared by MethodDetailsGeneraor * lib/yard/autoload.rb: Add various classes to autoload
2008-05-27 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/constants_generator.rb: Don't try to print constants from Proxy class * lib/yard/generators/class_generator.rb: Add public instance method summary view to class generator * lib/yard/generators/method_signature_generator.rb: Move method formatting helpers into MethodHelper * lib/yard/generators/helpers/html_helper.rb: Run #to_s on escaped HTML input and urlencoded input. * lib/yard/generators/helpers/method_helper.rb: Create MethodHelper for specific method formatting helper methods * lib/yard/handlers/attribute_handler.rb: Add signature to attributes as well * templates/default/attributes/html/header.erb, templates/default/class/html/header.erb, templates/default/constants/html/constants.erb, templates/default/inheritance/html/header.erb, templates/default/quickdoc/html/header.erb, templates/default/source/html/main.erb, templates/default/tags/html/tags.erb: run escapeHTML routine on various outputted strings * templates/default/methodsignature/html/main.erb: Add 'section' to div class name * lib/yard/generators/base.rb: Update debug logging format * lib/yard/autoload.rb, lib/yard/generators/method_summary_generator.rb, templates/default/methodsummary/html/header.erb, templates/default/methodsummary/html/included.erb, templates/default/methodsummary/html/inherited.erb, templates/default/methodsummary/html/summary.erb: Add MethodSummaryGenerator * lib/yard.rb: Allow multiple path globs for YARD.parse * lib/yard/code_objects/method_object.rb: Add #aliases which returns all aliases for the method object * lib/yard/generators/base.rb: Add extra_opts to initialize so generators can be initialized without updating the options hash that's passed in: MethodGenerator.new(options, :other => :options) * lib/yard/generators/constants_generator.rb: Update documentation * lib/yard/generators/constants_generator.rb, templates/default/constants/html/included.erb: Rename #included_constants_by_class to #included_constants_by_module
2008-05-26 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/constants_generator.rb, lib/yard/generators/inheritance_generator.rb: Make sure object is a class before using this generator/section * lib/yard/generators/tags_generator.rb: Only render tag templates if object has tags * lib/yard/generators/constants_generator.rb, templates/default/constants/html/constants.erb, templates/default/constants/html/included.erb, templates/default/constructor/html/header.erb: Update constants generator for included constants * templates/default/method/html/header.erb: Add id to MethodGenerator div so anchor links work on methods * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/base_helper_spec.rb, spec/generators/helpers/html_helper_spec.rb: Add specs for linkify/link_object * spec/code_objects/class_object_spec.rb: Change spec names in class_object_spec.rb * spec/code_objects/namespace_object_spec.rb: Add specs for #constants / #included_constants * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb: Add included_constants and rename the mixin_meths to included_meths. :mixins and :inheritance options are now renamed to :included and :inherited respectively. * Rakefile, yard.gemspec: Add yard.gemspec and move Gem specific stuff out of Rakefile * Rakefile: Change default rake task to run specs * spec/code_objects/class_object_spec.rb: Add specs to test inherited meths/constants behaviour when methods/constants are overridden by a superclass in the inheritance tree * templates/default/constants/html/inherited.erb: Sort inherited constants list by alphabetical order * lib/yard/autoload.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/constants_generator.rb, templates/default/constants/html/constants.erb, templates/default/constants/html/header.erb, templates/default/constants/html/inherited.erb: Add ConstantsGenerator. Missing constants included from mixins, depending on a new #constants method in NamespaceObject which would include mixed in constants by using #mixin_constants * lib/yard/generators/helpers/base_helper.rb: Return title if there is one in BaseHelper's #link_object * lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/html_helper.rb: Move #linkify to BaseHelper and modify #link_object to only make file links out of namespace objects, every other object will be an anchor. * lib/yard/generators/method_generator.rb, lib/yard/generators/method_signature_generator.rb, templates/default/method/html/header.erb, templates/default/methodsignature/html/main.erb: Update and refactor method/method_signature generator / templates * lib/yard/generators/helpers/html_helper.rb: Convert a bunch of the parameters to strings because symbols will often be passed in. * lib/yard/generators/base.rb: Run main #before_section (method) filter before class defined pluggable filters so they can include extra modules. * lib/yard/code_objects/class_object.rb: Fix inherited_meths and inherited_consts to also ignore methods/constants overriden by superclasses * spec/serializers/file_system_serializer_spec.rb: Add another serialization test for special chars * lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Treat <> as special chars in serialization as well * lib/yard/code_objects/namespace_object.rb, spec/code_objects/namespace_object_spec.rb: If a mixin overrides a method from another mixin, only return one method in #mixin_meths
2008-05-25 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/tags_generator.rb, templates/default/tags/html/see.erb, templates/default/tags/html/tags.erb: Complete tags generator to show most known tags * templates/default/deprecated/html/main.erb: Use old javadoc style deprecated message * templates/default/attributes/html/header.erb: Change [read][write] output to [R, W] style * lib/yard/generators/base.rb: If generator method does not have object argument, don't send object to it. Add locals hash to #render. Also remove all custom stacktrace printing because it was messy * lib/yard/tags/library.rb: Rename Block Parameters tag library label to Yield Parameters * lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/html_helper.rb: Refactor #linkify into #link_url and #link_object. #linkify decides which one to use by analyzing the input (and data if input is a string) * lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Remove special chars from serialized paths and make sure instance and class methods serialize to different paths * lib/yard/generators/attributes_generator.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/constructor_generator.rb, lib/yard/generators/deprecated_generator.rb, lib/yard/generators/docstring_generator.rb, lib/yard/generators/inheritance_generator.rb, lib/yard/generators/method_generator.rb, lib/yard/generators/mixins_generator.rb, templates/default/class/html/header.erb: Add ClassGeneator header. Setup before_generate filters for various classes * lib/yard/generators/base.rb: Add #before_section and #before_generate class methods to filter generator/section calling without having to override the before_section method
2008-05-24 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/method_signature_generator.rb, templates/default/methodsignature/html/main.erb, templates/default/methodsignature/text/main.erb: Show yield block in method signature * lib/yard/generators/helpers/base_helper.rb: Handle #linkify() on string or symbol (Proxy object) * lib/yard/generators/attributes_generator.rb: Only show attributes section if there are attributes in the class * lib/yard/generators/constructor_generator.rb: Only show constructor section if #initialize method exists * lib/yard/generators/class_generator.rb: Add attributes view to class generator * lib/yard/autoload.rb, lib/yard/generators/attributes_generator.rb, lib/yard/generators/class_generator.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/inheritance_generator.rb, lib/yard/generators/mixins_generator.rb, templates/default/attributes/html/header.erb, templates/default/constructor/html/header.erb, templates/default/deprecated/html/main.erb, templates/default/docstring/html/main.erb, templates/default/inheritance/html/header.erb, templates/default/inheritance/text/header.erb, templates/default/mixins/html/header.erb, templates/default/source/html/main.erb, templates/default/tags/html/header.erb: Add Attributes, Class, Mixins, Inheritance, Method generators. Make minor template adjustments * lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/attribute_handler.rb, spec/code_objects/namespace_object_spec.rb, spec/handlers/attribute_handler_spec.rb, .../handlers/examples/attribute_handler_001.rb.txt: Change organization of attributes method to separate class from instance attributes * lib/yard/code_objects/base.rb: Change CodeObjects::Base#inspect again. * quarantine/templates/html/_fulldoc.erb, quarantine/templates/html/class.erb, quarantine/templates/html/method.erb, quarantine/templates/html/module.erb, templates/default/html/_fulldoc.erb, templates/default/html/class.erb, templates/default/html/method.erb, templates/default/html/module.erb: Move old HTML templates into quarantine * lib/yard/code_objects/base.rb: Override #to_s (as #path) and make #inspect a little more inspect-y * lib/yard/autoload.rb, lib/yard/generators/base.rb, lib/yard/generators/constructor_generator.rb, lib/yard/generators/method_generator.rb, templates/default/constructor/html/header.erb, templates/default/method/html/header.erb: Get basic constructor generator working * bin/view_generator: Allow 'all' parameter in view_generator to export all docs * lib/yard/generators/tags_generator.rb, templates/default/tags/html/footer.erb, templates/default/tags/html/header.erb: Update tags generator to use new sub-generator yield functionality * lib/yard/generators/base.rb, spec/generators/base_spec.rb: Set current_object in yield block and make sure block is passed to #render() * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: Add basic specs and error checking for #url_for HTML helper
2008-05-23 Loren Segal <lsegal@soen.ca>
* spec/generators/base_spec.rb: Expand specs on section handling * lib/yard/generators/base.rb, spec/generators/base_spec.rb: Add specs for sections handling in generators
2008-05-22 Loren Segal <lsegal@soen.ca>
* spec/generators/base_spec.rb: More specs for rendering * lib/yard/generators/base.rb, spec/generators/base_spec.rb: Add specs to test basic template handling * lib/yard/generators/base.rb, spec/generators/base_spec.rb: Add render_sections method to support upcoming [section, [subsection, ...]] section listing format to allow encapsulation of sub-generators * spec/generators/helpers/html_helper_spec.rb: Pend the failing urlencode spec until a better urlencode is made * lib/yard/generators/base.rb: Allow before_section() to stop section from executing * lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/registry.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/code_object_list_spec.rb, spec/code_objects/namespace_object_spec.rb: Beef up #meths/#constants. Introduce #mixin_meths, #inherited_meths, #inherited_constants. * lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/alias_handler.rb, spec/code_objects/base_spec.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/namespace_object_spec.rb: Fix #meths behaviour with inheritance, same for #inheritance_tree
2008-05-20 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/handlers/alias_handler.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, lib/yard/handlers/method_handler.rb, lib/yard/handlers/mixin_handler.rb, lib/yard/handlers/module_handler.rb, lib/yard/handlers/visibility_handler.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add #dynamic attribute which returns true if an object was defined inside a method (or potentially some other dynamic fashion in the future) * lib/yard/code_objects/method_object.rb, spec/handlers/alias_handler_spec.rb: Add #is_alias? method to tell if a method is an alias * lib/yard/code_objects/proxy.rb: Add warning message if ProxMethodError is raised-- usually caused by out of order parsing * lib/yard/autoload.rb, lib/yard/generators/base.rb, lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/html_helper.rb, lib/yard/generators/method_signature_generator.rb, lib/yard/generators/tags_generator.rb, spec/generators/helpers/html_helper_spec.rb, templates/default/docstring/html/main.erb, templates/default/tags/html/footer.erb, templates/default/tags/html/header.erb, templates/default/tags/html/tags.erb: Add HtmlHelper and update templates to use htmlify/linkify methods (to be refactored) * lib/yard/generators/helpers/html_helper.rb, lib/yard/tags/library.rb: Fix yardoc formatting
2008-05-19 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/base.rb: Add :ignore_serializer option so that serializer is not deleted and helpers that rely on serialization data can still work * lib/yard/code_objects/base.rb: Refactor format_source * lib/yard/serializers/file_system_serializer.rb: Refactor FS serializer code * lib/yard.rb, lib/yard/extra.rb, spec/extra/file_spec.rb: Add File.relative_path for relative pathname resolution * lib/yard/tags/library.rb: #default_factory setter should know to instantiate Factory object * lib/yard/generators/base.rb, lib/yard/generators/helpers/base_helper.rb, lib/yard/generators/helpers/html_helper.rb: Fix serialization output for #generate and add basic helpers * lib/yard/autoload.rb, lib/yard/code_objects/base.rb, lib/yard/tags/default_factory.rb, lib/yard/tags/library.rb, lib/yard/tags/merbdoc_factory.rb, lib/yard/tags/tag.rb: Revamp tags by adding TagFactory concept so that yardoc style formatting can be re-added and merbdoc moved to its own class * lib/yard/serializers/base.rb, lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb: Change fs serializer to default in doc/. Add consistent #serialized_path api for returning the serialize location of the object. Will be used by Helpers to do things like resolve inter-file links (for FS Serialization) * lib/yard/symbol_hash.rb, spec/extra/symbol_hash_spec.rb: Update SymbolHash to support non symbolized values
2008-05-18 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/base.rb, lib/yard/generators/method_signature_generator.rb, lib/yard/generators/source_generator.rb, lib/yard/generators/tags_generator.rb, lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb, templates/default/deprecated/html/main.erb, templates/default/docstring/html/main.erb, templates/default/methodsignature/html/main.erb, templates/default/methodsignature/text/main.erb, templates/default/quickdoc/html/header.erb, templates/default/source/html/main.erb, templates/default/tags/html/header.erb, templates/default/tags/html/tags.erb: Add HTML templates for (most) existing generators * lib/yard/tags/library.rb: Use symbol hash for labels * lib/yard/code_objects/namespace_object.rb, spec/code_objects/namespace_object_spec.rb: Fix bug for #meths called above a Proxy parent * lib/yard/logging.rb, lib/yard/parser/source_parser.rb: Fix log formatting * lib/yard/autoload.rb: Load P() right away * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Fix source formatting for statements parsed by SourceParser * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Format source code upon setting * lib/yard/autoload.rb: Autoload P() method * lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/alias_handler.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: the key for NamespaceObject#aliases should be the new object, not the old one, to support multiple aliases from an old object * lib/yard/autoload.rb: Load handlers automatically
2008-05-18 Yehuda Katz <wycats@gmail.com>
* lib/yard.rb, lib/yard/tags/library.rb: Add YARD.parse and @example
2008-05-18 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/class_handler.rb, lib/yard/handlers/mixin_handler.rb, .../examples/visibility_handler_001.rb.txt: Add UndocumentableError exception to simplify error reporting * lib/yard/handlers/visibility_handler.rb, spec/handlers/visibility_handler_spec.rb: Add support for private :methname to visibility handler * lib/yard/autoload.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/alias_handler.rb, lib/yard/handlers/base.rb, lib/yard/parser/source_parser.rb, lib/yard/parser/statement.rb, lib/yard/parser/token_list.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/examples/alias_handler_001.rb.txt: Add alias_method handler * lib/yard/serializers/file_system_serializer.rb, spec/serializers/file_system_serializer_spec.rb, spec/serializers/spec_helper.rb: Add specs for file system serializer * lib/yard/generators/base.rb: Update new naming of YARD_TEMPLATE_ROOT to YARD::TEMPLATE_ROOT * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: A new codeobject should still yield the object in a block if it returns the existing object from the registry. Ideally this should allow the object to be overridden * lib/yard/handlers/method_handler.rb: Use P() instead of Registry.resolve * lib/yard/handlers/class_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Allow class << ClassName * spec/extra/spec_helper.rb, spec/extra/symbol_hash_spec.rb, spec/handlers/base_spec.rb: Fix up spec file structure * lib/yard/registry.rb, spec/registry_spec.rb: Make paths strings and add [] alias to #at method * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/attribute_handler.rb, spec/handlers/attribute_handler_spec.rb, .../handlers/examples/attribute_handler_001.rb.txt: Move attribute support to NamespaceObject because modules *CAN* use attr's * lib/yard/logging.rb, lib/yard/yard_logger.rb: Rename yard_logger.rb to logging.rb * lib/yard.rb, lib/yard/autoload.rb: Add autoloading code, finally * bin/view_generator, lib/yard/serializers/base.rb, lib/yard/serializers/file_system_serializer.rb: Allow options hash in serializer initialization * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb, spec/handlers/examples/tag_handler_001.rb.txt, spec/handlers/tag_handler_spec.rb, spec/parser/examples/tag_handler_001.rb.txt, spec/parser/tag_parsing_spec.rb: Update tag parser to allow \n\n in indented tag blocks and optionally provide the raw data format to a tag parser * lib/yard/parser/source_parser.rb: Require 'stringio' for parse_string * lib/yard/parser/statement_list.rb: Add first newline to source of method definitions
2008-05-17 Loren Segal <lsegal@soen.ca>
* templates/default/methodsignature/text/main.erb: Update method signature template * lib/yard/parser/statement_list.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Fix parser bug that throws off bracket count on method definitions, write specs for method_handler to test this new behaviour * lib/yard/code_objects/proxy.rb: Add #inspect view of proxy class
2008-05-16 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/method_signature_generator.rb, lib/yard/generators/quick_doc_generator.rb: Add method signature generator to quickdoc * lib/yard/parser/source_parser.rb: Update docs to reflect accepted types for parameter * bin/view_generator, lib/yard/code_objects/base.rb, lib/yard/generators/base.rb, lib/yard/generators/deprecated_generator.rb, lib/yard/generators/docstring_generator.rb, lib/yard/generators/method_signature_generator.rb, lib/yard/generators/quick_doc_generator.rb, lib/yard/generators/source_generator.rb, lib/yard/generators/tags_generator.rb, lib/yard/serializers/stdout_serializer.rb, templates/default/deprecated/text/main.erb, templates/default/docstring/text/main.erb, templates/default/methodsignature/text/main.erb, templates/default/quickdoc/text/header.erb, templates/default/source/text/main.erb, templates/default/tags/text/params.erb, templates/default/tags/text/returns.erb: Add a multitude of base generators, make QuickdocGenerator work for methods
2008-05-15 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/namespace_object.rb: Use CodeObjectList again for @children and @mixins (specs work again) * lib/yard/code_objects/base.rb: Revert back to Array code object list because of 'no block error' RSpec exceptions * lib/yard/code_objects/namespace_object.rb, spec/code_objects/namespace_object_spec.rb, spec/registry_spec.rb: Fix spec errors * lib/yard/code_objects/namespace_object.rb: Add #child() to get child object by name * lib/yard/handlers/mixin_handler.rb: Mixins should only be added if they follow valid Constant Case Naming * lib/yard/registry.rb, spec/registry_spec.rb: Add support for resolving objects paths with :: prefix * bin/view_generator, lib/yard/generators/base.rb: Show debugging warnings in view_generator * bin/view_generator, lib/yard/code_objects/namespace_object.rb, lib/yard/generators/base.rb: Add view_generator example binary to test generators * spec/code_objects/module_object_spec.rb: Add specs to test in-class method priority against included methods via mixin * lib/yard/code_objects/class_object.rb, spec/code_objects/class_object_spec.rb: Subclass #meths to look at inheritance tree for a class object * lib/yard/code_objects/class_variable_object.rb, lib/yard/code_objects/constant_object.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/namespace_object.rb, spec/code_objects/module_object_spec.rb: No longer add child objects to #meths, #constants and #cvars lists. Instead dynamically select objects from children list. Add specs for #meths * lib/yard/registry.rb: Don't #save during marshal #load * lib/yard/symbol_hash.rb, spec/extra/symbol_hash_spec.rb: Add SymbolHash[] syntax and fix reverse merge behaviour * lib/yard/symbol_hash.rb, spec/extra/symbol_hash_spec.rb: Add support for SymbolHash#merge * lib/yard/parser/statement_list.rb: Fix parsing bug that threw off bracket count for expressions that used calls to the #[] method * lib/yard/code_objects/method_object.rb, lib/yard/handlers/method_handler.rb: #initialize method should hook up object in the parent's method list * lib/yard/code_objects/class_variable_object.rb, lib/yard/code_objects/constant_object.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb: #initialize method should hook up the object in the parent's attributes, not the handler * lib/yard/code_objects/base.rb, lib/yard/registry.rb: Fix marshalling * lib/yard/generators/base.rb, lib/yard/generators/deprecated_generator.rb, lib/yard/generators/quick_doc_generator.rb, lib/yard/generators/tags_generator.rb, lib/yard/serializers/stdout_serializer.rb, templates/default/deprecated/text/main.erb, templates/default/tags/text/header.erb, templates/default/tags/text/params.erb: Add some tag generators * lib/yard.rb, lib/yard/yard_logger.rb, spec/spec_helper.rb: Set default log level to INFO
2008-05-14 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/handlers/method_handler.rb, spec/code_objects/base_spec.rb, spec/generators/quick_doc_generator_spec.rb, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb: Add method handler specs * lib/yard/parser/source_parser.rb, lib/yard/yard_logger.rb: Update logger to ignore timestamp * lib/yard.rb: Update load paths
2008-05-14 Yehuda Katz <wycats@gmail.com>
* lib/yard/code_objects/base.rb: Delegate to a singleton Array
2008-05-14 Loren Segal <lsegal@soen.ca>
* lib/yard/generators/base.rb, lib/yard/generators/quick_doc_generator.rb, spec/generators/quick_doc_generator_spec.rb: Generator class starting to take shape, add basic spec skeleton
2008-05-14 Yehuda Katz <wycats@gmail.com>
* lib/yard/code_objects/base.rb: Specs pass again * lib/yard.rb, lib/yard/generators/base.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/class_handler.rb, lib/yard/logger.rb, lib/yard/parser/source_parser.rb, lib/yard/yard_logger.rb, spec/handlers/examples/tag_handler_001.rb.txt, spec/handlers/spec_helper.rb, spec/handlers/tag_handler_spec.rb, spec/spec_helper.rb: Updated YARD logger to be namespaced and know how to handle different level requirements; Added tag specs.
2008-05-14 Loren Segal <lsegal@soen.ca>
* .gitignore: Ignore new yardoc file (.yardoc) * lib/yard/handlers/attribute_handler.rb: Add line number for attributes * lib/yard/code_objects/root_object.rb, lib/yard/registry.rb: Add RootObject for Registry.root so that we don't need to create an anonymous class for @namespace[:root] * lib/yard/code_objects/base.rb: #inspect should not return whole object, otherwise it goes into a recursive loop * lib/yard/generators/base.rb, lib/yard/generators/quick_doc_generator.rb, lib/yard/serializers/base.rb, lib/yard/serializers/stdout_serializer.rb: First round of the generators/serializer api * lib/yard/registry.rb, spec/registry_spec.rb: Add temporary #load/#save marshalling (will be moved later) and #paths for namespace keys * lib/yard/handlers/method_handler.rb: Fix NameError resolution * lib/yard/handlers/method_handler.rb: Add extra punctuation chars to method name * lib/yard/code_objects/proxy.rb: Fixed NameError in P() * spec/registry_spec.rb: Fix registry spec, cannot use should == [array] * spec/registry_spec.rb: More specs for Registry.all * lib/yard/registry.rb, spec/registry_spec.rb: Registry.all should only return values, not keys * lib/yard.rb: Add YARD_ROOT and YARD_TEMPLATE_ROOT constants for later * lib/yard/registry.rb, spec/registry_spec.rb: Rewrite #all method to support a list of object types that all should return (convenience for #select'ing the resulting set)
2008-05-13 Loren Segal <lsegal@soen.ca>
* lib/yard/tags/library.rb: Add @api tag for API visibility when generating docs * lib/yard.rb, lib/yard/code_objects/base.rb, lib/yard/tag_library.rb, lib/yard/tags/library.rb, lib/yard/tags/tag.rb: Move tag library and tag class into Tags namespace * lib/logger.rb, quarantine/logger.rb: Move pre-api_changes files into quarantine to keep a clean slate for generators (forgot logger) * lib/code_object.rb, lib/formatter.rb, lib/handlers/all_handlers.rb, lib/handlers/attribute_handler.rb, lib/handlers/class_handler.rb, lib/handlers/class_variable_handler.rb, lib/handlers/code_object_handler.rb, lib/handlers/constant_handler.rb, lib/handlers/exception_handler.rb, lib/handlers/method_handler.rb, lib/handlers/mixin_handler.rb, lib/handlers/module_handler.rb, lib/handlers/visibility_handler.rb, lib/handlers/yield_handler.rb, lib/namespace.rb, lib/quick_doc.rb, lib/source_parser.rb, quarantine/code_object.rb, quarantine/formatter.rb, quarantine/handlers/all_handlers.rb, quarantine/handlers/attribute_handler.rb, quarantine/handlers/class_handler.rb, quarantine/handlers/class_variable_handler.rb, quarantine/handlers/code_object_handler.rb, quarantine/handlers/constant_handler.rb, quarantine/handlers/exception_handler.rb, quarantine/handlers/method_handler.rb, quarantine/handlers/mixin_handler.rb, quarantine/handlers/module_handler.rb, quarantine/handlers/visibility_handler.rb, quarantine/handlers/yield_handler.rb, quarantine/namespace.rb, quarantine/quick_doc.rb, quarantine/source_parser.rb: Move pre-api_changes files into quarantine to keep a clean slate for generators * test/fixtures/docstring.txt, test/fixtures/docstring2.txt, test/test_code_object.rb, test/test_namespace.rb: Remove test/ from api_changes branch since we use specs only * lib/yard/code_objects/base.rb, lib/yard/handlers/mixin_handler.rb, spec/handlers/examples/mixin_handler_001.rb.txt, spec/handlers/mixin_handler_spec.rb: Add mixin handler and specs * lib/yard/handlers/method_handler.rb: Add support for non-alphanum methods.. specs to come * lib/yard/handlers/attribute_handler.rb, spec/handlers/attribute_handler_spec.rb, .../handlers/examples/attribute_handler_001.rb.txt: Add attribute handler and specs * lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/handlers/constant_handler.rb, spec/spec_helper.rb: Fix up some existing code
2008-05-12 Loren Segal <lsegal@soen.ca>
* lib/yard/symbol_hash.rb, spec/extra/symbol_hash_spec.rb: Fix symbol hash to only convert a String (not subclasses) value to_sym * lib/yard/logger.rb, lib/yard/parser/source_parser.rb: Fix exception raised when 'log.X' is called without paparameters * lib/yard/code_objects/proxy.rb, lib/yard/registry.rb: Change P() behaviour to do Registry.resolve and bind directly to object if it exists * lib/yard/symbol_hash.rb, spec/extra/symbol_hash_spec.rb: Add support for #update * lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/constant_handler.rb, spec/handlers/constant_handler_spec.rb, spec/handlers/examples/constant_handler_001.rb.txt: Add constant handler * lib/yard/code_objects/proxy.rb: Proxy no longer removes all methods, hopefully no secret methods were forgotten that give away the object's identity * lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/handlers/class_variable_handler.rb, lib/yard/parser/source_parser.rb, spec/handlers/class_variable_handler_spec.rb, .../examples/class_variable_handler_001.rb.txt: Add class variable handler * lib/yard/handlers/class_handler.rb, lib/yard/handlers/module_handler.rb, spec/handlers/class_handler_spec.rb, spec/handlers/examples/class_handler_001.rb.txt: Add class handler specs * spec/handlers/visibility_handler_spec.rb: Implement visibility specs * lib/yard/code_objects/method_object.rb, lib/yard/handlers/method_handler.rb, lib/yard/parser/source_parser.rb, spec/code_objects/method_object_spec.rb, spec/parser/examples/example1.rb.txt: Update source parser and add method handler * lib/yard/code_objects/base.rb: Add *args to initialize method for subclasses * lib/yard/handlers/base.rb, spec/handlers/base_spec.rb, spec/parser/source_parser_spec.rb: Add #owner method to source parser and base handler * lib/yard/handlers/base.rb, lib/yard/registry.rb, spec/registry_spec.rb: Add spec for #resolve
2008-05-11 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/handlers/class_handler.rb, lib/yard/handlers/module_handler.rb: Add class handler (no specs) * lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/handlers/module_handler.rb, lib/yard/registry.rb, spec/code_objects/base_spec.rb, spec/code_objects/proxy_spec.rb, spec/handlers/examples/module_handler_001.rb.txt, spec/handlers/module_handler_spec.rb, spec/parser/source_parser_spec.rb, spec/registry_spec.rb: Rewrite proxy/base namespace/name splitter to add namespace part of a complex name to the original namespace
2008-05-10 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/class_variable_object.rb, lib/yard/code_objects/constant_object.rb, lib/yard/handlers/module_handler.rb, spec/code_objects/method_object_spec.rb, spec/handlers/base_spec.rb, spec/handlers/examples/module_handler_001.rb.txt, spec/handlers/module_handler_spec.rb, spec/handlers/spec_helper.rb, spec/parser/source_parser_spec.rb: Add some empty handlers, module handler and specs * lib/yard/handlers/base.rb: Add #parse_block to parse the sub block of a statement. Guarantees visibility/scope return to old value * lib/yard/registry.rb: If #at() receives empty string, it belongs to root * lib/yard/code_objects/proxy.rb, spec/code_objects/proxy_spec.rb: Add #path method as a way to compare two proxies * lib/yard/parser/ruby_lex.rb, lib/yard/parser/statement.rb, lib/yard/parser/token_list.rb: Move Parser classes into the YARD::Parser namespace * lib/yard/code_objects/base.rb: Replace '::' with NAMESPACE_SEPARATOR * lib/yard/code_objects/base.rb: Change #path to return string, #type to return symbol * lib/yard.rb, spec/code_objects/namespace_object_spec.rb, .../examples/visibility_handler.001.rb.txt, .../examples/visibility_handler_001.rb.txt, spec/parser/spec_helper.rb, spec/spec_helper.rb: Clean up files/spec helpers * lib/yard/code_objects/base.rb: Add tag and docstring methods to CodeObjects::Base for later * lib/yard/handlers/visibility_handler.rb, .../examples/visibility_handler.001.rb.txt, spec/handlers/spec_helper.rb, spec/handlers/visibility_handler_spec.rb, spec/parser/source_parser_spec.rb, spec/parser/spec_helper.rb: Add more specs for source parser and others. Add visibility handler * lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/registry.rb, spec/code_objects/code_object_list_spec.rb, spec/registry_spec.rb: Make CodeObjectList a unique list of objects (required fixes to proxy). Add registry specs and basic handler * lib/yard.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/attribute_handler.rb, lib/yard/handlers/base.rb, spec/code_objects/code_object_list_spec.rb, spec/code_objects/proxy_spec.rb: Add CodeObjectList class to obsolete the add_ATTRNAME api calls and allow #<< to be called directly instead * spec/parser/examples/example1.rb.txt, spec/parser/source_parser_spec.rb: Add file parsing spec
2008-05-09 Loren Segal <lsegal@soen.ca>
* lib/yard/handlers/base.rb, lib/yard/parser/source_parser.rb, spec/parser/source_parser_spec.rb: Hook up source parser and add basic spec * lib/yard.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/handlers/base.rb, lib/yard/parser/source_parser.rb, spec/code_objects/base_spec.rb, spec/handlers/base_spec.rb, spec/handlers/spec_helper.rb: Add Base handler and some specs, clean up ambiguity in specs for 'Base' classes * LICENSE.txt, README.txt: Update copyright year (I was bored) * lib/code_object.rb, lib/ruby_lex.rb, lib/tag_library.rb, lib/yard.rb, lib/yard/code_objects/base.rb, lib/yard/parser/ruby_lex.rb, lib/yard/parser/source_parser.rb, lib/yard/parser/statement.rb, lib/yard/parser/statement_list.rb, lib/yard/parser/token_list.rb, lib/yard/tag_library.rb, spec/code_objects/base_spec.rb: Move some parser objects into new directory and add some accessor specs to Base code object * lib/yard/code_objects/namespace_object.rb, spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb: Add NamespaceObject specs for #add_mixin * spec/code_objects/proxy_spec.rb: Add proxy specs for complex proxy namespaces * spec/extra/spec_helper.rb: Remove unneeded YARD include
2008-05-08 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/base.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/registry.rb, spec/code_objects/base_spec.rb, spec/code_objects/proxy_spec.rb: Add proxy and namespace specs
2008-03-04 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/method_object.rb: Symbolize scope and visibility * lib/yard/code_objects/base.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/module_object.rb, spec/code_objects/base_spec.rb, spec/code_objects/method_object_spec.rb: Refactor initialization by moving type to class implementation and making visibility/scope specific to MethodObject * lib/yard/symbol_hash.rb, spec/extra/spec_helper.rb, spec/extra/symbol_hash_spec.rb: Symbolize value if string and add SymbolHash specs * lib/yard/symbol_hash.rb: Symbolize any strings as well
2008-03-03 Loren Segal <lsegal@soen.ca>
* spec/code_objects/base_spec.rb: Add more spec implementations * spec/code_objects/proxy_spec.rb: Modify proxy spec * lib/yard.rb, lib/yard/code_objects/class_object.rb, lib/yard/code_objects/module_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/registry.rb, spec/code_objects/base_spec.rb, spec/code_objects/method_object_spec.rb, spec/code_objects/proxy_spec.rb, spec/code_objects/spec_helper.rb: Add module/class objects, add proxy/base specs
2008-03-02 Loren Segal <lsegal@soen.ca>
* lib/yard/code_objects/method_object.rb, lib/yard/code_objects/proxy.rb, spec/code_objects/method_object_spec.rb: Add method object specs * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/path.rb, lib/yard/registry.rb, spec/code_objects/proxy_spec.rb, spec/path_spec.rb, spec/spec_helper.rb: Remove horrible path idea, replace with proxy & working proxy spec * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, lib/yard/code_objects/namespace_object.rb, lib/yard/code_objects/proxy.rb, lib/yard/namespace.rb, lib/yard/path.rb, lib/yard/registry.rb, lib/yard/symbol_hash.rb, spec/code_objects/proxy_spec.rb, spec/path_spec.rb: Initial API changes and specs
2008-03-01 Loren Segal <lsegal@soen.ca>
* lib/yard.rb, lib/yard/code_objects/base.rb, lib/yard/code_objects/proxy.rb, lib/yard/logger.rb, lib/yard/namespace.rb, lib/yard/symbol_hash.rb, spec/code_objects/proxy_spec.rb, spec/code_objects/spec_helper.rb, spec/spec_helper.rb: Reorganize YARD loading and write basic specs * Rakefile, yard.gemspec: Consolidate gemspec into Rakefile and add specs task
2008-02-29 Loren Segal <lsegal@soen.ca>
* .gitignore: Ignore generates images/dot files because they're probably graphs we don't care about * bin/yard-graph: Show modules as modules if they're unresolved but have been included * bin/yard-graph: Parenthesize is_a? call * bin/yard-graph: Formatting fix * bin/yard-graph: Only show public methods in diagram
2008-02-27 Loren Segal <lsegal@soen.ca>
* bin/yard-graph: Add options for dependencies (--dependencies), empty modules (--empty-mixins), full class info (--full) * bin/yard-graph: Polish look * bin/yard-graph: Merge master * bin/yard-graph: Merge master
2008-02-26 Loren Segal <lsegal@soen.ca>
* bin/yard-graph: Fix a few namespace resolving issues * yard.gemspec: Add yard-graph as gem binary * bin/yard-graph: Add Graphviz diagram tool for visualization
2008-02-27 Loren Segal <lsegal@soen.ca>
* lib/handlers/mixin_handler.rb: Deal with a list of includes in one line * bin/yard-graph: Generate full class diagram with methods
2008-02-26 Loren Segal <lsegal@soen.ca>
* bin/yard-graph: Fix a few namespace resolving issues * yard.gemspec: Add yard-graph as gem binary * bin/yard-graph: Add Graphviz diagram tool for visualization * lib/handlers/mixin_handler.rb: Gracefully handle invalid dynamic includes * lib/handlers/class_handler.rb: Handle class << format better
2008-02-26 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* .gitignore: Add pkg/ to gitignore
2008-02-26 Loren Segal <lsegal@soen.ca>
* bin/yard-graph: Fix a few namespace resolving issues * yard.gemspec: Add yard-graph as gem binary * bin/yard-graph: Add Graphviz diagram tool for visualization * bin/yardoc, lib/handlers/class_handler.rb, lib/namespace.rb: Do not render root node and add warning messages for undocumentable classes * bin/yardoc: Update dependency * .gitignore: Add pkg/ to gitignore
2008-02-26 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* .gitignore: Add DS_Store to gitignore * yard.gemspec: Update gemspec to deal with new README files
2008-02-26 Loren Segal <lsegal@soen.ca>
* .gitignore: Add DS_Store to gitignore * yard.gemspec: Update gemspec to deal with new README files
2008-02-26 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* README.txt: Missed tab
2008-02-26 Loren Segal <lsegal@soen.ca>
* lib/handlers/exception_handler.rb, lib/namespace.rb, lib/source_parser.rb, lib/yard.rb: Improve parser and namespace identitymap issues * .gitignore: Ignore Yardoc file * .gitignore: Add gitignore file * bin/yardoc, lib/code_object.rb, lib/handlers/attribute_handler.rb, lib/handlers/class_handler.rb, lib/handlers/class_variable_handler.rb, lib/handlers/constant_handler.rb, lib/handlers/method_handler.rb, lib/handlers/module_handler.rb, lib/namespace.rb, test/test_code_object.rb: Try to keep unique copies of every code object in the namespace
2008-02-25 Loren Segal <lsegal@soen.ca>
* lib/code_object.rb: Add child node to parent when setting new parent * README.txt: Missed tab
2008-02-26 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* README.pdf, help.pdf: Rename README so it doesn't break github
2008-02-25 Loren Segal <lsegal@soen.ca>
* README.pdf, help.pdf: Rename README so it doesn't break github
2008-02-26 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* README.txt: Add text version of old reamde just for github
2008-02-25 Loren Segal <lsegal@soen.ca>
* README.txt: Add text version of old reamde just for github
2008-02-25 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/handlers/attribute_handler.rb, lib/logger.rb, lib/source_parser.rb, lib/tag_library.rb, templates/default/html/_fulldoc.erb, templates/default/html/class.erb: Added wycats' formatting changes for future Merb support. Yard can now run through activerecord,activesupport,actionpack with minimal errors * lib/tag_type.rb: Removing obsolete class
2008-02-24 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/ruby_lex.rb: Oops, turns out I can't remove those dependencies from RubyLex
2008-02-23 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/ruby_lex.rb: Remove some lame dependencies from RubyLex * bin/yardoc, doc/Logger.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_RubyLex.html, doc/YARD_RubyLex_BufferedReader.html, doc/YARD_RubyToken_TkError.html, doc/YARD_RubyToken_TkId.html, doc/YARD_RubyToken_TkKW.html, doc/YARD_RubyToken_TkNode.html, doc/YARD_RubyToken_TkOPASGN.html, doc/YARD_RubyToken_TkOp.html, doc/YARD_RubyToken_TkUnknownChar.html, doc/YARD_RubyToken_TkVal.html, doc/YARD_RubyToken_Token.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/all-methods.html, doc/index.html, lib/code_object.rb, lib/formatter.rb, lib/handlers/constant_handler.rb, lib/handlers/mixin_handler.rb, lib/source_parser.rb, lib/yard.rb, templates/default/html/class.erb, templates/default/html/module.erb: No more need for docs in project - update to 0.2.1
2008-02-21 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* yard.gemspec: Add erubis as gem dep * doc/Logger.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_RubyLex.html, doc/YARD_RubyLex_BufferedReader.html, doc/YARD_RubyToken_TkError.html, doc/YARD_RubyToken_TkId.html, doc/YARD_RubyToken_TkKW.html, doc/YARD_RubyToken_TkNode.html, doc/YARD_RubyToken_TkOPASGN.html, doc/YARD_RubyToken_TkOp.html, doc/YARD_RubyToken_TkUnknownChar.html, doc/YARD_RubyToken_TkVal.html, doc/YARD_RubyToken_Token.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html: New docs * lib/code_object.rb, lib/formatter.rb: Do not list superclasses if object doest not respond to the method * bin/yardoc, lib/code_object.rb, lib/formatter.rb, templates/default/html/class.erb: Fix formatting for Erubius, print basic output info for yardoc file generation * Rakefile: Print rake install message before doing task * doc/Logger.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_RubyLex.html, doc/YARD_RubyLex_BufferedReader.html, doc/YARD_RubyToken_TkError.html, doc/YARD_RubyToken_TkId.html, doc/YARD_RubyToken_TkKW.html, doc/YARD_RubyToken_TkNode.html, doc/YARD_RubyToken_TkOPASGN.html, doc/YARD_RubyToken_TkOp.html, doc/YARD_RubyToken_TkUnknownChar.html, doc/YARD_RubyToken_TkVal.html, doc/YARD_RubyToken_Token.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, lib/formatter.rb: Use Erubis from now on * Rakefile, bin/yardoc, doc/YARD_RubyLex_BufferedReader.html, lib/handlers/attribute_handler.rb, lib/handlers/exception_handler.rb, yard.gemspec: Add better exception handling, add 'rake install' task
2007-04-28 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* doc/Logger.html, doc/YARD_RubyLex.html, doc/YARD_RubyLex_BufferedReader.html, doc/YARD_RubyToken_TkError.html, doc/YARD_RubyToken_TkId.html, doc/YARD_RubyToken_TkKW.html, doc/YARD_RubyToken_TkNode.html, doc/YARD_RubyToken_TkOPASGN.html, doc/YARD_RubyToken_TkOp.html, doc/YARD_RubyToken_TkUnknownChar.html, doc/YARD_RubyToken_TkVal.html, doc/YARD_RubyToken_Token.html, doc/all-classes.html, doc/all-methods.html, doc/index.html, lib/handlers/attribute_handler.rb, lib/handlers/method_handler.rb, lib/handlers/mixin_handler.rb, lib/logger.rb, lib/ruby_lex.rb, lib/source_parser.rb, lib/yard.rb: Better source error handling. Parser displays warnings when code is undocumentable (for attributes). This revision can parse activerecord-1.15.3
2007-03-08 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* bin/yardoc, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/all-methods.html, doc/index.html, lib/code_object.rb, lib/formatter.rb, lib/handlers/attribute_handler.rb, lib/handlers/class_handler.rb, lib/handlers/method_handler.rb, lib/handlers/module_handler.rb, lib/handlers/yield_handler.rb, lib/ruby_lex.rb, lib/tag_library.rb, lib/yard.rb, templates/default/html/_fulldoc.erb, templates/default/html/class.erb, templates/default/html/method.erb, templates/html_formatter.erb: Refactored templates, added support for attr_* in a (class of) a module
2007-03-02 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/namespace.rb: Fixed default yardoc raw output filename * doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/all-methods.html, doc/index.html: Added documentation * doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/all-methods.html, doc/index.html: Removing documentation * bin/yardoc, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/all-methods.html, doc/index.html, lib/namespace.rb, lib/yard.rb: Added documentation, fixed links for scripts * bin/yardoc, bin/yri, lib/yard.rb, yard.gemspec: Corrected gemspec * Rakefile, bin/yardoc, bin/yri, doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/WikiHtml.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/all-methods.html, doc/domain_model.jpg, doc/index.html, lib/formatter.rb, lib/handlers/class_variable_handler.rb, lib/quick_doc.rb, lib/yard.rb, templates/html_formatter.erb, test_generate_html.rb, yard.gemspec, yard.rb, yri: Added gemspec
2007-03-01 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/YARD_AuthorTag.html, doc/YARD_DeprecatedTag.html, doc/YARD_ReturnTag.html, doc/YARD_StatementList.html, lib/code_object.rb, lib/handlers/constant_handler.rb, lib/source_parser.rb, templates/html_formatter.erb: Fixed parsing of end statements * doc/RubyLex.html, doc/RubyToken_Token.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ConstantHandler.html, doc/YARD_Formatter.html, doc/YARD_StatementList.html, doc/YARD_TokenList.html, doc/all-methods.html, doc/index.html, lib/code_object.rb, lib/handlers/constant_handler.rb, templates/html_formatter.erb, test_generate_html.rb, yard.rb: Fixed constant listing and definitions of global variables * doc/all-methods.html: All methods index * doc/all-classes.html, doc/index.html, test_generate_html.rb: List all methods * doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_ClassVariableObject.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, lib/code_object.rb, lib/formatter.rb, lib/handlers/class_variable_handler.rb, templates/html_formatter.erb: Added class variables * doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, lib/code_object.rb, lib/handlers/attribute_handler.rb, lib/handlers/class_handler.rb, lib/handlers/code_object_handler.rb, lib/handlers/constant_handler.rb, lib/handlers/method_handler.rb, lib/namespace.rb, templates/html_formatter.erb: Added dynamic method summary and better inheritance chain information
2007-02-28 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/index.html, lib/formatter.rb, lib/handlers/attribute_handler.rb, lib/namespace.rb, templates/html_formatter.erb: Added documentation of dynamic method handling, fixed link resolution for methods, added docstring to class and constructor * doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, lib/formatter.rb, lib/handlers/method_handler.rb, templates/html_formatter.erb: Updated formatting, fixed method handler bug with Constant as method name * doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, templates/html_formatter.erb: Updated formatting * doc/NilClass.html, doc/RubyLex.html, doc/RubyLex_BufferedReader.html, doc/RubyToken_TkError.html, doc/RubyToken_TkId.html, doc/RubyToken_TkKW.html, doc/RubyToken_TkNode.html, doc/RubyToken_TkOPASGN.html, doc/RubyToken_TkOp.html, doc/RubyToken_TkUnknownChar.html, doc/RubyToken_TkVal.html, doc/RubyToken_Token.html, doc/String.html, doc/TestCodeObject.html, doc/TestNamespace.html, doc/WikiHtml.html, doc/YARD_AttributeHandler.html, doc/YARD_AuthorTag.html, doc/YARD_BaseTag.html, doc/YARD_BaseTypeTag.html, doc/YARD_ClassHandler.html, doc/YARD_ClassObject.html, doc/YARD_ClassVariableHandler.html, doc/YARD_CodeObject.html, doc/YARD_CodeObjectHandler.html, doc/YARD_CodeObjectWithMethods.html, doc/YARD_ConstantHandler.html, doc/YARD_ConstantObject.html, doc/YARD_DeprecatedTag.html, doc/YARD_ExceptionHandler.html, doc/YARD_Formatter.html, doc/YARD_MethodHandler.html, doc/YARD_MethodObject.html, doc/YARD_MixinHandler.html, doc/YARD_ModuleHandler.html, doc/YARD_ModuleObject.html, doc/YARD_NameStruct.html, doc/YARD_Namespace.html, doc/YARD_ParamTag.html, doc/YARD_QuickDoc.html, doc/YARD_ReturnTag.html, doc/YARD_SourceParser.html, doc/YARD_Statement.html, doc/YARD_StatementList.html, doc/YARD_Tag.html, doc/YARD_TokenList.html, doc/YARD_VisibilityHandler.html, doc/YARD_YieldHandler.html, doc/all-classes.html, doc/index.html, lib/code_object.rb, lib/formatter.rb, lib/handlers/attribute_handler.rb, lib/handlers/constant_handler.rb, lib/hash_struct.rb, lib/namespace.rb, templates/html_formatter.erb, test_generate_html.rb, yard.rb: Added prototype of html generation, use test_generate_html.rb to test. Template uses javadoc style for now, just as a base
2007-02-27 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/code_object.rb, lib/formatter.rb, lib/source_parser.rb, yard.rb: Add basic output formatter class * lib/source_parser.rb: Comments on end of a line are now ignored from an ongoing statement
2007-02-26 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/handlers/method_handler.rb, lib/namespace.rb, lib/source_parser.rb, yard.rb: Added support for 'def Class.method_name' and a relative name resolution method for the Namespace
2007-02-25 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* lib/code_object.rb, lib/handlers/attribute_handler.rb, lib/handlers/mixin_handler.rb, lib/ruby_lex.rb, lib/source_parser.rb: Added support for include statements at class or module level
2007-02-24 loren <loren@a99b2113-df67-db11-8bcc-000c76553aea>
* README.pdf: Updated PDF formatting * LICENSE.txt, README.pdf, lib/code_object.rb, yri, yri.rb: Added readme and license information, renamed yri.rb to yri for convenience * doc/domain_model.jpg, lib/code_object.rb, lib/handlers/all_handlers.rb, lib/handlers/attribute_handler.rb, lib/handlers/class_handler.rb, lib/handlers/class_variable_handler.rb, lib/handlers/code_object_handler.rb, lib/handlers/constant_handler.rb, lib/handlers/exception_handler.rb, lib/handlers/method_handler.rb, lib/handlers/module_handler.rb, lib/handlers/visibility_handler.rb, lib/handlers/yield_handler.rb, lib/hash_struct.rb, lib/namespace.rb, lib/quick_doc.rb, lib/ruby_lex.rb, lib/source_parser.rb, lib/tag_library.rb, lib/tag_type.rb, test/fixtures/docstring.txt, test/fixtures/docstring2.txt, test/test_code_object.rb, test/test_namespace.rb, yri.rb: Creating trunk/branches/tags