2012-06-10 Loren Segal * ChangeLog, README.md, lib/yard.rb: Bump to 0.8.2.1 2012-06-09 Loren Segal * lib/yard/options.rb, spec/options_spec.rb: Ensure that defaults are inherited from parent class 2012-06-08 Loren Segal * lib/yard/server/commands/base.rb, lib/yard/server/commands/library_command.rb: Ensure that output is not serialized in server templates * README.md: Add changelog information that was omitted from release 2012-06-07 Loren Segal * ChangeLog, README.md, lib/yard.rb: Bump to version 0.8.2 2012-06-06 Loren Segal * spec/i18n/locale_spec.rb: Fix Locale spec to not use disk * lib/yard/i18n/locale.rb: Update Locale documentation * lib/yard/i18n/locale.rb: Fix documentation typo 2012-06-05 Loren Segal * lib/yard/server/doc_server_serializer.rb, .../templates/default/fulldoc/html/js/live.js, .../default/method_details/html/permalink.erb, .../templates/default/method_details/html/setup.rb, spec/templates/examples/module001.html, spec/templates/examples/module002.html, spec/templates/examples/module003.html, spec/templates/examples/module004.html, spec/templates/module_spec.rb, .../default/module/html/attribute_details.erb: Make permalinks work for embedded mixins Fixes #540 * lib/yard/server/commands/base.rb: Ensure that server does not serialize output to disk by default 2012-05-30 Loren Segal * spec/cli/yri_spec.rb: Add test to yri to ensure serialization occurs * lib/yard/cli/graph.rb, lib/yard/templates/engine.rb, lib/yard/templates/template_options.rb: Change TemplateOptions#serialize default to true Only serializer option is required to produce output. This is pre-0.8.0 behaviour and is needed for backward compatibility. References #548 * lib/yard/cli/graph.rb, lib/yard/templates/template_options.rb: Move verifier to TemplateOptions * lib/yard/handlers/base.rb, lib/yard/handlers/ruby/class_condition_handler.rb, .../ruby/legacy/class_condition_handler.rb, lib/yard/handlers/ruby/visibility_handler.rb, spec/handlers/class_condition_handler_spec.rb, .../examples/class_condition_handler_001.rb.txt: Accept visibility in push_state and push visibility state in class condition handlers Fixes #551 2012-05-28 Loren Segal * Rakefile: Remove sudo from install task * lib/yard/handlers/c/handler_methods.rb, lib/yard/parser/c/c_parser.rb, spec/parser/c_parser_spec.rb: Fix issue with C parser not properly parsing macros with arg## syntax 2012-05-22 Loren Segal * lib/yard/handlers/ruby/legacy/mixin_handler.rb, lib/yard/handlers/ruby/mixin_handler.rb: Ensure that Registry resolution picks a module when parsing a mixin. Fixes #545 * lib/yard/code_objects/proxy.rb, lib/yard/globals.rb, lib/yard/registry.rb, lib/yard/registry_store.rb, lib/yard/serializers/yardoc_serializer.rb, spec/code_objects/proxy_spec.rb, spec/handlers/c/class_handler_spec.rb, spec/handlers/mixin_handler_spec.rb: Add type initializer to Proxy and P() to constrain Proxy type Also disconnects Registry.proxy_types from Proxy class, since nothing was using this besides the Proxy#type attribute itself. This change modifies a test and no longer allows two separate Proxy objects to maintain the same type information. Proxy type information is stored locally to the proxy object, and no longer tracked in the Registry. Deprecates proxy_types method and tracking in Registry and RegistryStore * lib/yard/registry.rb, spec/registry_spec.rb: Ensure that resolve returns proxy fallback with supplied type set * lib/yard/registry.rb, spec/registry_spec.rb: Add type verification to Registry.resolve to ensure resolve returns object of intended type 2012-05-21 Loren Segal * lib/yard/cli/graph.rb, spec/cli/graph_spec.rb: Refactor yard graph and fix regression that broke output Fixes #548 2012-05-20 Kouhei Sutou * lib/yard/i18n/text.rb, spec/i18n/text_spec.rb: i18n: add YARD::I18n::Text#translate * spec/i18n/text_spec.rb: i18n: group existing specs for YARD::I18n::Text#extract_messages * lib/yard/i18n/text.rb: i18n: extract text parse code * Gemfile, lib/yard/autoload.rb, lib/yard/i18n/locale.rb, spec/i18n/locale_spec.rb: i18n: add YARD::I18n::Locale 2012-05-19 Loren Segal * lib/yard/handlers/c/init_handler.rb, spec/handlers/c/init_handler_spec.rb: Check non-Init methods for object declarations in CRuby code Closes #543 * templates/default/fulldoc/html/js/app.js: Collapse/expand all summary lists when button on any list is clicked * lib/yard/tags/directives.rb, spec/handlers/dsl_handler_spec.rb, spec/tags/directives_spec.rb: Parse parameters from signature in method directive 2012-05-13 Loren Segal * lib/yard/docstring_parser.rb: Make DocstringParser attributes writable 2012-05-11 Loren Segal * lib/yard/handlers/c/override_comment_handler.rb, spec/handlers/c/override_comment_handler_spec.rb: Add proper file info to CRuby override comments 2012-05-10 Loren Segal * lib/yard/templates/template_options.rb: --embed-mixins should ignore methods defined directly on a module * lib/yard/registry.rb: Fix registry doc examples * lib/yard/docstring_parser.rb: Fix doc references * Rakefile: Remove manual loading of .travis.yml in suite task, rvm-tester does this for us, now. 2012-05-09 Loren Segal * Gemfile, Rakefile: Use rvm-tester for suite task * lib/yard/logging.rb: Only clear progress in show_progress mode * lib/yard/cli/yardoc.rb, lib/yard/logging.rb, lib/yard/parser/source_parser.rb, lib/yard/templates/engine.rb, spec/parser/source_parser_spec.rb, templates/default/fulldoc/html/setup.rb: Add log#progress and log#capture to log output using new progress indicator in 1.9.x. Captures are not fully implemented, but will allow benchmarking of data through a --time-report option in yardoc. * lib/yard/templates/template_options.rb: Add #owner to template options * Rakefile: No more sudo. * lib/yard/logging.rb: Logging should be sent to STDOUT not STDERR * lib/yard/cli/yardoc.rb: Re-generating message should be debug, not info * Gemfile: Remove RSpec version lock in Gemfile again 2012-05-08 Loren Segal * spec/rubygems/doc_manager_spec.rb: Don't stub all FileUtils methods, just important ones * lib/yard/rubygems/doc_manager.rb: Require user_interaction since RubyGems no longer does * Gemfile: Re-lock Gemfile due to travis errors * spec/rubygems/doc_manager_spec.rb: Require fileutils for specs * Gemfile: Unlock rspec in Gemfile * lib/yard/logging.rb, lib/yard/parser/source_parser.rb, spec/logging_spec.rb: Parser backtraces should be logged in warn level Closes #541 * spec/rubygems/doc_manager_spec.rb: Add specs for yard doc installation * lib/yard/rubygems/doc_manager.rb, spec/rubygems/doc_manager_spec.rb: Add specs for rubygems plugin code and handle --backtrace and .yardopts files 2012-05-04 Loren Segal * spec/parser/source_parser_spec.rb: Remove and_return on should_not_receive() to fix spec * Gemfile: Update Gemfile to deal with RSpec regression rspec/rspec-mocks#132 * lib/yard/tags/default_factory.rb, spec/tags/default_factory_spec.rb: Fix broken specs, references #535 * lib/yard/tags/default_factory.rb, spec/tags/default_factory_spec.rb: Fix type parser to properly handle Ruby's operator and special method names Closes #535 2012-05-02 Loren Segal * ChangeLog, README.md, docs/WhatsNew.md, lib/yard.rb: Bump to 0.8.1, update README, WhatsNew * lib/yard/tags/library.rb: Update note about transitive tags to include info about overriding * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add --no-api to allow including of objects with undefined API * lib/yard/i18n/message.rb: Fix typo, references #534 * lib/yard/i18n/message.rb, lib/yard/i18n/messages.rb: Various minor documentation formatting and text fixes References #534 * spec/i18n/messages_spec.rb: Sort results in I18n::Messages#each spec to fix compare for 1.8.6 * spec/cli/yardoc_spec.rb: Fix spec errors in 1.8.x * spec/cli/stats_spec.rb, spec/cli/yardoc_spec.rb: Allow verifier to treat all objects as having visibility, so --no-public should hide constants too, now * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add `--api` switch to yardoc in order to generate docs for API tags without needing `--query` syntax. Multiple `--api` switches can be used to generate docs for multiple APIs at once (they are logically OR'd together). Closes #532 * lib/yard/verifier.rb, spec/verifier_spec.rb: Fix verifier supporting namespaced tags with special @{tag} syntax * lib/yard/cli/stats.rb: Show 0% documented if total == 0 * lib/yard/cli/list.rb, spec/cli/list_spec.rb: yard list command should use cache by default Closes #533 * lib/yard/verifier.rb, spec/verifier_spec.rb: Allow namespaced tags 2012-05-01 Loren Segal * lib/yard/code_objects/macro_object.rb, lib/yard/docstring.rb, lib/yard/docstring_parser.rb, lib/yard/handlers/base.rb, lib/yard/tags/directives.rb: Add Docstring.default_parser and Docstring.parser Plugin developers can now specify custom parser classes to be used when parsing docstrings. These classes must inherit from DocstringParser. This changeset also exposes public methods to DocstringParser for better use with subclasses. References #529 * lib/yard/tags/library.rb: Update documentation for `@private` tag * lib/yard/tags/library.rb: Update Tags::Library documentation * lib/yard/docstring_parser.rb, spec/docstring_parser_spec.rb: Add specs for after_parse parameter checking and fix broken duplicate param tag functionality * templates/default/tags/html/option.erb: Remove trailing mdash from options listing if no description is present Closes #522 * .../default/fulldoc/html/full_list_method.erb, .../default/fulldoc/html/full_list_methods.erb, templates/default/fulldoc/html/setup.rb: Serialize method_list with proper filename Closes #528 2012-04-30 Loren Segal * ChangeLog, lib/yard.rb: Bump version to 0.8.0 * README.md, docs/WhatsNew.md: Update README/WhatsNew * lib/yard/tags/library.rb: Update docs for option tag * lib/yard/tags/library.rb: Update Library class docs * lib/yard/autoload.rb, lib/yard/i18n/pot_generator.rb, lib/yard/i18n/text.rb: Some minor documentation formatting fixes for I18n module * templates/default/module/html/item_summary.erb: private badge should be lowercase in item summary * lib/yard/tags/library.rb: Add note about transitive tags 2012-04-30 Kouhei Sutou * lib/yard/i18n/text.rb: i18n: document YARD::I18n::Text * lib/yard/i18n/pot_generator.rb: i18n: document YARD::I18n::PotGenerator 2012-04-30 Loren Segal * lib/yard/code_objects/base.rb, lib/yard/docstring.rb, lib/yard/docstring_parser.rb, lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/registry_store.rb, lib/yard/tags/directives.rb, lib/yard/templates/engine.rb, lib/yard/templates/helpers/markup_helper.rb: Add after_parse callback to check that @param tag names match method parameters Closes #526 * lib/yard/docstring_parser.rb, spec/docstring_parser_spec.rb: Add Docstring.after_parse callback to perform sanity checks and last minute modifications on a docstring after it is parsed * README.md: Add note about 0.7.5 release * lib/yard/tags/default_factory.rb, spec/tags/default_factory_spec.rb: Fix bug in types list parser with certain duck-type method names * lib/yard/registry_store.rb, lib/yard/tags/directives.rb: Add since tags and document some methods * lib/yard/autoload.rb, lib/yard/docstring.rb, lib/yard/docstring_parser.rb: Document Docstring/DocstringParser classes, and add 0.8.0 since tags * LICENSE, README.md: Change copyright year and version * lib/yard/server/commands/library_command.rb: Dup lists when storing old template paths and includes * lib/yard/server/commands/library_command.rb: Force serializing to be false (without this, rubydoc.info breaks for some weird reason) * lib/yard/server/commands/library_command.rb, .../doc_server/processing/html/processing.erb: Don't need extra option to show processing page * lib/yard/registry_store.rb, spec/registry_store_spec.rb: RegistryStore should update types_for_object list when object key is modified * lib/yard/cli/command.rb: load() instead of require() when using --load * lib/yard/cli/yardoc.rb: Expand path when registering template path * .yardopts_i18n: Update .yardopts_i18n to include template paths and other options 2012-04-29 Loren Segal * lib/yard/server/commands/library_command.rb: Push/pop template paths and extra include info between requests * spec/config_spec.rb: Put ARGV back after test * LEGAL, README.md, Rakefile, benchmarks/builtins_vs_eval.rb, benchmarks/erb_vs_erubis.rb, benchmarks/generation.rb, benchmarks/parsing.rb, benchmarks/registry_store_types.rb, docs/CodeObjects.md, docs/Handlers.md, docs/Overview.md, docs/Parser.md, docs/Tags.md, docs/Templates.md, docs/WhatsNew.md, docs/templates/default/yard_tags/html/list.erb, lib/yard/cli/diff.rb, lib/yard/cli/list.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/extra_file_object.rb, lib/yard/code_objects/macro_object.rb, lib/yard/code_objects/method_object.rb, lib/yard/config.rb, lib/yard/docstring.rb, lib/yard/docstring_parser.rb, lib/yard/handlers/base.rb, lib/yard/handlers/c/alias_handler.rb, lib/yard/handlers/c/attribute_handler.rb, lib/yard/handlers/c/base.rb, lib/yard/handlers/c/class_handler.rb, lib/yard/handlers/c/constant_handler.rb, lib/yard/handlers/c/handler_methods.rb, lib/yard/handlers/c/init_handler.rb, lib/yard/handlers/c/method_handler.rb, lib/yard/handlers/c/mixin_handler.rb, lib/yard/handlers/c/module_handler.rb, lib/yard/handlers/c/override_comment_handler.rb, lib/yard/handlers/c/path_handler.rb, lib/yard/handlers/c/struct_handler.rb, lib/yard/handlers/processor.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/base.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/base.rb, lib/yard/logging.rb, lib/yard/options.rb, lib/yard/parser/c/c_parser.rb, lib/yard/parser/c/comment_parser.rb, lib/yard/parser/c/statement.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/statement_list.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/parser/source_parser.rb, lib/yard/rake/yardoc_task.rb, lib/yard/serializers/file_system_serializer.rb, lib/yard/server/commands/search_command.rb, lib/yard/server/rack_adapter.rb, .../templates/default/fulldoc/html/css/custom.css, lib/yard/tags/default_factory.rb, lib/yard/tags/directives.rb, lib/yard/tags/library.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/helpers/html_helper.rb, lib/yard/templates/helpers/markup/rdoc_markup.rb, lib/yard/templates/template.rb, lib/yard/templates/template_options.rb, spec/cli/command_parser_spec.rb, spec/cli/command_spec.rb, spec/cli/config_spec.rb, spec/cli/diff_spec.rb, spec/cli/gems_spec.rb, spec/cli/help_spec.rb, spec/cli/server_spec.rb, spec/cli/stats_spec.rb, spec/cli/yardoc_spec.rb, spec/cli/yri_spec.rb, spec/code_objects/base_spec.rb, spec/code_objects/class_object_spec.rb, spec/code_objects/code_object_list_spec.rb, spec/code_objects/constants_spec.rb, spec/code_objects/extra_file_object_spec.rb, spec/code_objects/macro_object_spec.rb, spec/code_objects/method_object_spec.rb, spec/code_objects/module_object_spec.rb, spec/code_objects/namespace_object_spec.rb, spec/code_objects/proxy_spec.rb, spec/config_spec.rb, spec/core_ext/array_spec.rb, spec/core_ext/file_spec.rb, spec/core_ext/hash_spec.rb, spec/core_ext/insertion_spec.rb, spec/core_ext/module_spec.rb, spec/core_ext/string_spec.rb, spec/core_ext/symbol_hash_spec.rb, spec/docstring_spec.rb, spec/handlers/alias_handler_spec.rb, spec/handlers/attribute_handler_spec.rb, spec/handlers/base_spec.rb, spec/handlers/c/alias_handler_spec.rb, spec/handlers/c/attribute_handler_spec.rb, spec/handlers/c/class_handler_spec.rb, spec/handlers/c/constant_handler_spec.rb, spec/handlers/c/init_handler_spec.rb, spec/handlers/c/method_handler_spec.rb, spec/handlers/c/mixin_handler_spec.rb, spec/handlers/c/module_handler_spec.rb, spec/handlers/c/override_comment_handler_spec.rb, spec/handlers/c/struct_handler_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/examples/alias_handler_001.rb.txt, .../examples/class_condition_handler_001.rb.txt, spec/handlers/examples/class_handler_001.rb.txt, spec/handlers/examples/dsl_handler_001.rb.txt, .../handlers/examples/exception_handler_001.rb.txt, .../examples/method_condition_handler_001.rb.txt, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/examples/mixin_handler_001.rb.txt, .../examples/private_constant_handler_001.rb.txt, .../examples/visibility_handler_001.rb.txt, spec/handlers/examples/yield_handler_001.rb.txt, spec/handlers/exception_handler_spec.rb, spec/handlers/extend_handler_spec.rb, spec/handlers/legacy_base_spec.rb, spec/handlers/method_condition_handler_spec.rb, spec/handlers/method_handler_spec.rb, spec/handlers/mixin_handler_spec.rb, spec/handlers/module_function_handler_spec.rb, spec/handlers/module_handler_spec.rb, spec/handlers/private_constant_handler_spec.rb, spec/handlers/processor_spec.rb, spec/handlers/spec_helper.rb, spec/handlers/visibility_handler_spec.rb, spec/handlers/yield_handler_spec.rb, spec/options_spec.rb, spec/parser/base_spec.rb, spec/parser/c_parser_spec.rb, spec/parser/examples/array.c.txt, spec/parser/examples/extrafile.c.txt, spec/parser/examples/override.c.txt, spec/parser/ruby/ast_node_spec.rb, spec/parser/ruby/legacy/statement_list_spec.rb, spec/parser/ruby/legacy/token_list_spec.rb, spec/parser/ruby/ruby_parser_spec.rb, spec/parser/source_parser_spec.rb, spec/parser/tag_parsing_spec.rb, spec/rake/yardoc_task_spec.rb, spec/registry_spec.rb, spec/registry_store_spec.rb, spec/serializers/file_system_serializer_spec.rb, spec/serializers/yardoc_serializer_spec.rb, spec/server/adapter_spec.rb, spec/server/commands/base_spec.rb, spec/server/commands/library_command_spec.rb, spec/server/commands/static_file_command_spec.rb, spec/server/doc_server_helper_spec.rb, spec/server/doc_server_serializer_spec.rb, spec/server/rack_adapter_spec.rb, spec/server/router_spec.rb, spec/server/static_caching_spec.rb, spec/spec_helper.rb, spec/tags/default_factory_spec.rb, spec/tags/directives_spec.rb, spec/tags/library_spec.rb, spec/tags/overload_tag_spec.rb, spec/tags/ref_tag_list_spec.rb, spec/templates/class_spec.rb, spec/templates/constant_spec.rb, spec/templates/engine_spec.rb, spec/templates/examples/class001.html, spec/templates/examples/class002.html, spec/templates/examples/constant001.txt, 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, spec/templates/examples/module002.html, spec/templates/examples/module003.html, spec/templates/examples/module004.html, spec/templates/helpers/base_helper_spec.rb, spec/templates/helpers/html_helper_spec.rb, .../helpers/html_syntax_highlight_helper_spec.rb, spec/templates/helpers/markup/rdoc_markup_spec.rb, spec/templates/helpers/markup_helper_spec.rb, spec/templates/helpers/method_helper_spec.rb, .../templates/helpers/shared_signature_examples.rb, spec/templates/helpers/text_helper_spec.rb, spec/templates/method_spec.rb, spec/templates/module_spec.rb, spec/templates/onefile_spec.rb, spec/templates/section_spec.rb, spec/templates/spec_helper.rb, spec/templates/tag_spec.rb, spec/templates/template_spec.rb, spec/verifier_spec.rb, templates/default/class/setup.rb, templates/default/docstring/html/abstract.erb, templates/default/docstring/html/note.erb, templates/default/docstring/html/private.erb, templates/default/docstring/html/todo.erb, templates/default/docstring/setup.rb, 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/setup.rb, templates/default/layout/dot/header.erb, templates/default/layout/html/breadcrumb.erb, templates/default/layout/html/footer.erb, templates/default/layout/html/layout.erb, templates/default/layout/html/objects.erb, templates/default/layout/html/search.erb, templates/default/layout/html/setup.rb, .../method_details/html/method_signature.erb, templates/default/module/dot/setup.rb, templates/default/module/html/children.erb, .../default/module/html/inherited_methods.erb, .../default/module/html/method_details_list.erb, templates/default/module/setup.rb, templates/default/module/text/setup.rb, templates/default/onefile/html/layout.erb, templates/default/onefile/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/setup.rb, yard.gemspec: The great whitespace fix of 2012 * spec/config_spec.rb: Fix broken specs * docs/Tags.md: Add missing period * templates/default/fulldoc/html/css/full_list.css, templates/default/fulldoc/html/full_list.erb: Ensure that pipes after nav links don't get linkified as well (css fix) * lib/yard/cli/command.rb, lib/yard/config.rb, spec/config_spec.rb: Add --safe commandline option in case you cannot provide it in ~/.yard/config * lib/yard/tags/directives.rb, lib/yard/tags/library.rb: Replace backticks in docs with ++ RDoc format * docs/Tags.md, docs/templates/default/layout/html/tag_list.erb: Update tags syntax documentation * templates/default/fulldoc/html/js/app.js: Ignore h1/2/3/4/5 tags inside of method details * .yardopts, .yardopts_guide, .yardopts_i18n, docs/Glossary.md, docs/Tags.md, docs/TagsArch.md: Reorganize tags docs and remove glossary * lib/yard/tags/directives.rb: Document attribute and method directives * lib/yard/tags/library.rb: Fix signatures in library * docs/Tags.md, lib/yard/code_objects/macro_object.rb, lib/yard/tags/directives.rb: Document macros 2012-04-28 Loren Segal * lib/yard/tags/directives.rb: Docs for scope and visibility directives * lib/yard/tags/directives.rb, lib/yard/tags/library.rb: Update tag/directive docstrings * docs/templates/default/yard_tags/html/setup.rb: Change signature to use yard.signature if found * docs/templates/default/yard_tags/html/list.erb, docs/templates/plugin.rb: Display documentation for Directive class as documentation for define_directive * .yardopts, docs/templates.rb, docs/templates/plugin.rb: Move templates.rb to plugin.rb and add yard.signature tag * lib/yard/tags/library.rb: Update docs for define_tag/define_directive * lib/yard/tags/directives.rb: Document Tags::Directive * docs/Tags.md, lib/yard/tags/library.rb: Remove manual tags list from Tags.md * lib/yard/tags/library.rb: Add more tag documentation * docs/templates/default/yard_tags/html/list.erb: Add 'first' class to first tag in list * docs/templates.rb: Update url_for to link from relative root when listing a tag/directive object 2012-04-27 Loren Segal * docs/templates/default/layout/html/tag_list.erb: Add note about tag listing on index page * docs/Templates.md: Remove documentation about adding custom JS when generating custom menus * lib/yard/tags/library.rb: Document tags in Library * lib/yard/tags/library.rb: Fix the way yard.directive macro is declared * docs/templates/default/yard_tags/html/list.erb, docs/templates/default/yard_tags/html/setup.rb: Refactor yard_tags listing * docs/templates/default/fulldoc/html/js/tag_list.js, docs/templates/default/fulldoc/html/setup.rb, docs/templates/default/layout/html/setup.rb: Remove special JS and tag_page generation (using Tags.md file instead) * .../default/fulldoc/html/full_list_tag.erb: Refactoring fixes for tag_link * docs/Tags.md, docs/templates.rb: Add yard:include_tags and tag: linkify prefixes for tags documentation templates 2012-03-21 Loren Segal * docs/templates.rb: Add custom helpers definitions * .yardopts, .../default/fulldoc/html/full_list_tag.erb, docs/templates/default/fulldoc/html/setup.rb, docs/templates/default/layout/html/setup.rb, docs/templates/default/layout/html/tag_list.erb, docs/templates/default/yard_tags/html/list.erb, docs/templates/default/yard_tags/html/setup.rb, lib/yard/tags/library.rb: Update tag docs templates * lib/yard/tags/library.rb: Move attached macro to define_tag class method 2012-01-26 Loren Segal * .yardopts, .../default/fulldoc/html/full_list_tag.erb, docs/templates/default/fulldoc/html/js/tag_list.js, docs/templates/default/fulldoc/html/setup.rb, docs/templates/default/layout/html/setup.rb, docs/templates/default/layout/html/tag_list.erb, docs/templates/default/yard_tags/html/list.erb, docs/templates/default/yard_tags/html/setup.rb, lib/yard/tags/library.rb: Add initial custom templates for tags documentation 2012-04-29 Loren Segal * lib/yard/server/commands/display_object_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/router.rb, .../templates/default/layout/html/breadcrumb.erb: Server displays README on index route if available. Renames the index route to /docs/[library/]index. Closes #385 * 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, .../templates/doc_server/frames/html/frames.erb, .../templates/doc_server/frames/html/setup.rb, templates/default/fulldoc/html/frames.erb: Refactor frameset handling in server to behave like static template * templates/default/fulldoc/html/js/app.js: Properly set frames title page when nav links are clicked * templates/default/fulldoc/html/frames.erb: List title in frames.html * lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/frames.erb, templates/default/fulldoc/html/full_list_files.erb, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/breadcrumb.erb: Add url_for_main and url_for_index helpers and make use of them in frames/breadcrumbs sections * lib/yard/server/commands/list_command.rb: Fix file list when asset is not last command in generate_list by capturing output properly 2012-04-28 Loren Segal * templates/default/fulldoc/html/css/style.css, templates/guide/fulldoc/html/css/style.css: Update example title css 2012-04-27 Loren Segal * lib/yard/cli/command.rb: Documentation fix for tt text * templates/default/fulldoc/html/js/app.js: TOC generation can now support toc-id and toc-title attributes in header tags for use in generating ids/titles * lib/yard/server/doc_server_helper.rb, .../templates/default/layout/html/script_setup.erb: Add customized version of url_for_list and url_for_frameset helpers for server * lib/yard/autoload.rb, lib/yard/server/commands/list_command.rb, lib/yard/server/doc_server_helper.rb, lib/yard/server/router.rb, .../doc_server/full_list/html/full_list.erb, .../templates/doc_server/full_list/html/setup.rb, spec/server/router_spec.rb: Remove List*Command and refactor handling of /list in server to use menu definitions in fulldoc template * 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, spec/templates/examples/module002.html, spec/templates/examples/module003.html, spec/templates/examples/module004.html, templates/default/fulldoc/html/css/style.css, .../method_details/html/method_signature.erb, templates/default/tags/html/example.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: Use h3 for signature tags and move tag listing titles to p tags instead of headers * templates/default/fulldoc/html/js/app.js, templates/default/layout/html/script_setup.erb: Setup framesUrl using helper method * lib/yard/templates/helpers/html_helper.rb, templates/default/fulldoc/html/full_list.erb, templates/default/fulldoc/html/js/app.js, templates/default/layout/html/search.erb: Simplify menu JS generation and add url_for_list helper to abstract URL generation for lists 2012-04-26 Loren Segal * lib/yard/parser/ruby/legacy/ruby_parser.rb, lib/yard/tags/directives.rb: Fix @!parse directive with handlers in legacy parser * .yardopts, lib/yard/templates/template.rb: Embed ClassMethods mixin into Template module * templates/default/module/setup.rb: Fix bug in displaying of attr_listing with embedded mixins * lib/yard/autoload.rb, lib/yard/parser/source_parser.rb, lib/yard/tags/directives.rb, lib/yard/tags/library.rb, spec/tags/directives_spec.rb: Add @!parse directive to parse arbitrary code Blocks are parsed in the context of where they are called, and you can specify the code language using the type specifier: class A # @!parse # # A dynamic foo method # def foo; end # @!parse def foo2; end # @!parse [c] # void Init_Foo() { ... } end * lib/yard/templates/template.rb: Update example documentation for Template.extra_includes * lib/yard/templates/template.rb, spec/templates/template_spec.rb: Add tests to check for lambdas in extra_includes 2011-10-16 Loren Segal * lib/yard/templates/template.rb: Add support for pushing procs into the Template.extra_includes array 2012-04-26 Loren Segal * lib/yard/templates/template_options.rb, spec/templates/examples/module004.html, spec/templates/module_spec.rb: Anchor mixin name matches * spec/templates/examples/module004.html, spec/templates/module_spec.rb: Improve specs for matching --embed-mixin modules * lib/yard/cli/yardoc.rb, lib/yard/templates/template_options.rb, spec/cli/yardoc_spec.rb, spec/templates/module_spec.rb, .../default/module/html/inherited_methods.erb, templates/default/module/setup.rb: Fix all specs * templates/default/fulldoc/html/css/full_list.css: Separate nav links in left frame by pipes * .../templates/default/fulldoc/html/css/custom.css: Fix link to loading.gif (now processing.gif) Closes #509 2012-04-25 Loren Segal * lib/yard/docstring.rb, lib/yard/parser/source_parser.rb: Documentation fixes * lib/yard/cli/yri.rb, spec/cli/yardoc_spec.rb, spec/cli/yri_spec.rb, spec/rake/yardoc_task_spec.rb: Stop creating .yardoc directories during tests and fix YRI spec to perform lookup in memory first. Closes #513 * lib/yard/cli/stats.rb: Use cache if stats is called with -c * lib/yard/cli/stats.rb, spec/cli/stats_spec.rb: Add line numbers to `yard stats --list-undoc --compact` Closes #438 * spec/cli/server_spec.rb: Require bundler for lockfile test Closes #512 * spec/cli/yri_spec.rb: Fix YRI spec name 2012-04-25 Sung Pae * lib/yard/server/rack_adapter.rb: Return exception messages body as Array in RackAdapter 2012-04-25 Loren Segal * lib/yard/handlers/ruby/legacy/mixin_handler.rb: Make fix for issue #505 work in legacy mode 2012-04-12 Kouhei Sutou * .yardopts_i18n, lib/yard/autoload.rb, lib/yard/cli/command_parser.rb, lib/yard/cli/i18n.rb, spec/cli/i18n_spec.rb: pot: add "yard i18n" command that generates .pot YARD::CLI::I18n inherits YARD::CLI::Yardoc because "i18n" command use the same options in "doc" command. But it will be better that we share the same options in another way because "i18n" command doesn't need all options in "doc" command. We need to discuss how to implement it. So I use inheritance for now. 2012-04-05 Loren Segal * lib/yard/registry.rb, spec/registry_spec.rb: Fix resolve on Object (look past superclass) * lib/yard/registry.rb, spec/registry_spec.rb: Registry.resolve() should check inherited methods from Object/BasicObject * lib/yard/parser/ruby/ast_node.rb: MethodCallNode#block should not return last if it's not a block param 2012-04-04 Loren Segal * lib/yard/parser/ruby/ast_node.rb: MethodCallNode#block should return block, not block param 2012-04-01 Nikolai Weibull * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Fix linking to method names that have been escaped 2012-03-30 Nikolai Weibull * lib/yard/handlers/ruby/mixin_handler.rb, spec/handlers/examples/mixin_handler_001.rb.txt, spec/handlers/mixin_handler_spec.rb, spec/templates/examples/module001.txt: Fix mixin order of multiple arguments to include 2012-03-28 Loren Segal * lib/yard/parser/ruby/ast_node.rb: Add ClassNode, ModuleNode and LoopNode AST nodes 2012-03-25 Loren Segal * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Workaround to bug in ripper encoding of heredoc strings Ruby tracker issue: http://bugs.ruby-lang.org/issues/6200 * .../templates/default/layout/html/script_setup.erb, templates/default/layout/html/script_setup.erb: Add missing script_setup.erb files 2012-03-23 Loren Segal * lib/yard/server/commands/search_command.rb: Fix search results to point to the right object * lib/yard/server/rack_adapter.rb: Show backtrace in rack adapter if error is raised * lib/yard/server/commands/library_command.rb, lib/yard/templates/template_options.rb: Use TemplateOptions (subclass) in server handling * .../templates/default/fulldoc/html/js/live.js, .../templates/default/layout/html/breadcrumb.erb, .../templates/default/layout/html/headers.erb, templates/default/fulldoc/html/css/style.css, templates/default/fulldoc/html/frames.erb, templates/default/fulldoc/html/js/app.js, templates/default/layout/html/headers.erb, templates/default/layout/html/layout.erb: Add frames link to complement no frames links Refactor layout headers JS setup and generate base variables to use for URL mapping. Closes #444 2012-03-22 Loren Segal * spec/templates/template_spec.rb, templates/default/fulldoc/html/frames.erb, templates/default/fulldoc/html/setup.rb, templates/default/layout/html/headers.erb, templates/default/layout/html/index.erb, templates/default/layout/html/setup.rb, templates/default/module/dot/info.erb, templates/default/module/dot/setup.rb, templates/guide/fulldoc/html/setup.rb, templates/guide/layout/html/layout.erb, templates/guide/layout/html/setup.rb, templates/guide/method/html/header.erb: Use dot syntax for TemplateOptions options data member access instead of options[:field] syntax * lib/yard/registry.rb, lib/yard/registry_store.rb, lib/yard/serializers/yardoc_serializer.rb, spec/registry_spec.rb, spec/registry_store_spec.rb: Add Registry/RegistryStore optimization to make lookuped by type (Registry.all(type)) much faster * benchmarks/registry_store_types.rb: Add benchmark to show lookup speed between normal registry and one separated into type buckets. 2012-03-21 Loren Segal * templates/default/module/setup.rb: Don't use Hash#values due to 1.8.x hashes not being ordered * templates/default/module/html/item_summary.erb, templates/default/module/setup.rb: Run verifier on read/write attribute values to make sure they are not supposed to be filtered out. Closes #394 * lib/yard/autoload.rb, lib/yard/code_objects/method_object.rb, lib/yard/handlers/base.rb, lib/yard/handlers/c/base.rb, lib/yard/handlers/c/handler_methods.rb, lib/yard/handlers/ruby/alias_handler.rb, lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/dsl_handler_methods.rb, lib/yard/handlers/ruby/legacy/alias_handler.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb, lib/yard/handlers/ruby/legacy/method_handler.rb, .../ruby/legacy/module_function_handler.rb, lib/yard/handlers/ruby/method_handler.rb, lib/yard/handlers/ruby/module_function_handler.rb, lib/yard/tags/directives.rb, spec/code_objects/macro_object_spec.rb, spec/handlers/c/method_handler_spec.rb, spec/handlers/dsl_handler_spec.rb, spec/handlers/examples/dsl_handler_001.rb.txt, spec/handlers/module_function_handler_spec.rb, spec/tags/directives_spec.rb: Add support for module_function calls in Ruby. Also supports rb_define_module_function() in CRuby. Allows instantiation of MethodObjects using :module scope. This creates the method object in the class scope but also creates a blank instance method of the same name and makes it private. Allows @!scope directive to specify module scope for creation of module functions using directive syntax. Some refactoring was done to `register_` methods in Handlers::Base to more easily set object visibility. Closes #378 * lib/yard/tags/directives.rb, spec/tags/directives_spec.rb: Don't expand new unattached macros * lib/yard/code_objects/base.rb, lib/yard/code_objects/method_object.rb, spec/code_objects/base_spec.rb: Add #copyable_attributes to allow subclasses to define which attributes can be copied * lib/yard/code_objects/method_object.rb, spec/code_objects/method_object_spec.rb: Allow creation of method with :module as scope (convenience for creating public :class and private :instance methods) * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: Add CodeObjects::Base#copy_to to copy object data to a new object * lib/yard/handlers/ruby/dsl_handler_methods.rb: Whitespace fix * lib/yard/handlers/ruby/dsl_handler_methods.rb, spec/handlers/dsl_handler_spec.rb, spec/handlers/examples/dsl_handler_001.rb.txt: Update/add DSL handler tests * lib/yard/tags/directives.rb, spec/tags/directives_spec.rb: Don't expand macros attached directly to class method declarations * lib/yard/handlers/ruby/dsl_handler_methods.rb, spec/handlers/dsl_handler_spec.rb, spec/handlers/examples/dsl_handler_001.rb.txt: Properly append docstring on attached macros * spec/handlers/dsl_handler_spec.rb: Fix whitespace/directive names 2012-03-20 Loren Segal * docs/GettingStarted.md, docs/Tags.md, lib/yard/code_objects/macro_object.rb, lib/yard/handlers/base.rb, lib/yard/handlers/ruby/struct_handler_methods.rb, lib/yard/options.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/code_objects/macro_object_spec.rb, spec/handlers/dsl_handler_spec.rb, spec/handlers/examples/dsl_handler_001.rb.txt, spec/handlers/examples/method_handler_001.rb.txt, spec/handlers/method_handler_spec.rb, spec/parser/source_parser_spec.rb, spec/tags/directives_spec.rb: Rename @macro/@method/@attribute tags to @! directive syntax and drop use of @attr in favour of new @!attribute directive * lib/yard/autoload.rb, lib/yard/code_objects/macro_object.rb, lib/yard/docstring.rb, lib/yard/docstring_parser.rb, lib/yard/handlers/base.rb, lib/yard/tags/directives.rb, lib/yard/tags/library.rb, lib/yard/tags/tag_parser.rb, spec/docstring_parser_spec.rb, spec/tags/directives_spec.rb, spec/tags/tag_parser_spec.rb: Rename Tags::TagParser to DocstringParser * Rakefile: Use default progress output for rspec results instead of specdoc 2012-03-05 Dominik Honnef * docs/GettingStarted.md, docs/Tags.md, lib/yard/cli/yardoc.rb, lib/yard/server/commands/base.rb, lib/yard/server/rack_adapter.rb, lib/yard/server/router.rb, lib/yard/server/static_caching.rb: Fix whitespace and improve documentation 2012-03-19 Loren Segal * lib/yard/tags/directives.rb, spec/tags/directives_spec.rb: Allow @!method names to have self. prefix shorthand for class scope (instead of specifying @!scope class later) * lib/yard/tags/directives.rb, spec/tags/directives_spec.rb: Fix whitespace * spec/tags/directives_spec.rb: Add specs for handling method/attribute directives with no indented block * lib/yard/tags/directives.rb, spec/tags/directives_spec.rb: @!method/@!attribute directives now create methods within namespace if they are attached to a namespace object (module or class) * lib/yard/parser/c/statement.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/legacy/statement.rb, lib/yard/parser/ruby/legacy/statement_list.rb: Deprecate stmt.group across Ruby/C parsers. Group is now set in directive * lib/yard/handlers/base.rb, lib/yard/tags/directives.rb, lib/yard/tags/tag_parser.rb, spec/docstring_spec.rb, spec/tags/directives_spec.rb, spec/tags/tag_parser_spec.rb: Add specs for TagParser and Directive 2012-03-18 Loren Segal * lib/yard/tags/default_factory.rb, lib/yard/tags/directives.rb, lib/yard/tags/library.rb: Allow indented @!attribute text * lib/yard/tags/directives.rb, spec/tags/directives_spec.rb: Allow defining multiple @!method/@!attribute directives by using indented text * lib/yard/handlers/ruby/attribute_handler.rb, lib/yard/handlers/ruby/dsl_handler_methods.rb, lib/yard/handlers/ruby/legacy/attribute_handler.rb: Make legacy attribute handler work with new directives * lib/yard/autoload.rb, lib/yard/handlers/ruby/legacy/comment_handler.rb, lib/yard/parser/ruby/legacy/statement_list.rb, spec/parser/source_parser_spec.rb: Add CommentHandler and support lone comments in legacy parser 2012-03-17 Loren Segal * lib/yard/code_objects/base.rb, lib/yard/handlers/base.rb, lib/yard/parser/ruby/ruby_parser.rb, lib/yard/registry.rb: Fix some method redefinition warnings * lib/yard/handlers/base.rb: Avoid ruby warnings for @in_files * spec/parser/ruby/ruby_parser_spec.rb, spec/parser/source_parser_spec.rb: Move RubyParser spec to right place * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Handle lone comments at end of blocks * lib/yard/autoload.rb, lib/yard/handlers/ruby/comment_handler.rb, lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/source_parser_spec.rb: Add comment handler parsing of lone comments * lib/yard/handlers/base.rb: Remove macro specific implementation in Handlers::Base (incompatible API change) * lib/yard/autoload.rb, lib/yard/handlers/ruby/comment_handler.rb, lib/yard/handlers/ruby/dsl_handler.rb, lib/yard/handlers/ruby/dsl_handler_methods.rb, lib/yard/handlers/ruby/legacy/dsl_handler.rb, lib/yard/handlers/ruby/legacy/macro_handler.rb, lib/yard/handlers/ruby/macro_handler.rb, lib/yard/handlers/ruby/macro_handler_methods.rb, spec/handlers/dsl_handler_spec.rb, spec/handlers/examples/dsl_handler_001.rb.txt, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb, spec/handlers/method_handler_spec.rb: Update handlers and rename MacroHandler to DSLHandler (since it is not meant for macro expansion but DSL method detection * lib/yard/handlers/ruby/attribute_handler.rb: Refactor attribute handler to handle the fact that statement.comments might be filled with directives but no docstring data * lib/yard/handlers/base.rb, lib/yard/handlers/c/base.rb, lib/yard/handlers/ruby/legacy/base.rb: Remove protected visibility on Base handlers objects (needed for directives support) * lib/yard/code_objects/macro_object.rb, spec/code_objects/macro_object_spec.rb: Update MacroObject making some backward incompatible changes 1. MacroObject.find_or_create now takes 2 parameters: the name and the macro data. Previously it took a full docstring that was parsed out for macro tags. 2. All macro expansion text ($N) should be indented inside a macro tag. YARD no longer supports macro expansion across an entire docstring, as this is too difficult to maintain with the new directives syntax. You can still provide macro expansion within the indented @macro block, however. 3. Anonymous macros are now supported. A new macro does not need a name, but if one is not provided, it will not be defined in the Registry. * lib/yard/autoload.rb, lib/yard/docstring.rb, lib/yard/tags/directives.rb, lib/yard/tags/library.rb, lib/yard/tags/tag_parser.rb: Add directives and refactor Docstring to TagParser Creates a new TagParser class that handles parsing of tag/directive data. A new directive syntax is added using the @! prefix. Directives can be defined in the Library using Library.define_directive providing a subclass of the abstract Directive class. Directives can make modifications to the parse control flow by hooking into handlers. While tags only provide meta-data, directives can create or modify objects during parsing. Information that is only data-driven should remain as a tag, but if the operation modifies some state during parsing, it should be made a directive (using the @! syntax) Compatibility note: Macros and @method/@attribute have been ported over to the new directive syntax and are no longer "tags". Therefore, you should use @!macro or @!method when defining objects. YARD still supports @macro/@method for backward compatibility support, but this syntax should be considered deprecated. * lib/yard/tags/default_factory.rb: Add with_types_and_title tag factory method * lib/yard/parser/ruby/ast_node.rb, lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb, spec/parser/source_parser_spec.rb: Implement CommentNode for Ruby parser (no legacy support yet) 2012-03-18 Loren Segal * spec/cli/diff_spec.rb, spec/cli/yardoc_spec.rb: Fix broken RSpec tests using ordered (RSpec bug?) * lib/yard/handlers/processor.rb, spec/handlers/ruby/base_spec.rb, spec/handlers/ruby/legacy/base_spec.rb: Processor should re-add handlers when loading if they are not in Base.subclasses 2012-03-07 Loren Segal * lib/yard/cli/server.rb: Call super in CLI::Server initialization * lib/yard/cli/server.rb: Uniquely add library versions to Server libraries * lib/yard/cli/server.rb, spec/cli/server_spec.rb: Initialize default CLI::Server options in constructor, not #run 2012-03-06 Loren Segal * lib/yard/handlers/ruby/legacy/base.rb: Make expansion work in legacy mode * lib/yard/handlers/ruby/method_handler.rb, lib/yard/parser/ruby/ast_node.rb: Add MethodDefinitonNode#block and refactor method handler * lib/yard/handlers/ruby/base.rb, spec/handlers/examples/macro_handler_001.rb.txt, spec/handlers/macro_handler_spec.rb: Allow macro expansion on method definitions * spec/parser/source_parser_spec.rb: Silence stderr output in tests * lib/yard/handlers/ruby/method_handler.rb, lib/yard/parser/ruby/ast_node.rb: Add MethodDefinitionNode to abstract def/defs nodes. Can now call node.parameters to access the parameters list in a consistent fashion. Fixes #389 2012-03-06 Dominik Honnef * lib/yard/templates/helpers/html_helper.rb: generate more explicit title for links to class methods When having a link to a class method in the current class/module, like {foo}, generate CurrentClass.foo as the output instead of plain foo. 2012-03-05 Loren Segal * lib/yard/code_objects/macro_object.rb, lib/yard/code_objects/method_object.rb: Make MacroObject#sep and MethodObject#sep public too * lib/yard/code_objects/base.rb: Make CodeObjects::Base#sep public (and #format_source private instead of protected) 2012-02-20 Loren Segal * lib/yard/options.rb: Update Options#update documentation 2012-02-19 Loren Segal * lib/yard/cli/yardoc.rb: Register some one-off keys used in template generation * lib/yard/options.rb, .../templates/doc_server/search/html/setup.rb, lib/yard/templates/engine.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/helpers/text_helper.rb, lib/yard/templates/template.rb, spec/cli/yardoc_spec.rb, spec/templates/helpers/base_helper_spec.rb, spec/templates/helpers/html_helper_spec.rb, .../helpers/html_syntax_highlight_helper_spec.rb, spec/templates/helpers/markup_helper_spec.rb, .../templates/helpers/shared_signature_examples.rb: Replace all hash options hash syntax in templates with Options attribute accesosr syntax * lib/yard/options.rb: Make method_missing work in 1.8 * lib/yard/autoload.rb, lib/yard/cli/yardoc.rb, lib/yard/code_objects/base.rb, lib/yard/templates/engine.rb, lib/yard/templates/helpers/base_helper.rb, lib/yard/templates/template.rb, lib/yard/templates/template_options.rb, spec/templates/class_spec.rb, spec/templates/constant_spec.rb, spec/templates/engine_spec.rb, spec/templates/method_spec.rb, spec/templates/module_spec.rb, spec/templates/spec_helper.rb, spec/templates/tag_spec.rb: Refactor options hashes in template architecture to use TemplateOptions class, and add YardocOptions class for special 'yard doc' options * lib/yard/options.rb: Update documentation * lib/yard/options.rb: Update documentation in Options class * lib/yard/options.rb, spec/options_spec.rb: Add more implementation / tests for Options class * lib/yard/options.rb, spec/options_spec.rb: Add Options.default_attr as convenience to define default attribute values 2012-02-18 Loren Segal * lib/yard/autoload.rb, lib/yard/options.rb, spec/options_spec.rb: Add base Options class to be used by template/parser architecture in options refactor 2012-02-13 Sergey Avseyev * lib/yard/handlers/c/handler_methods.rb, spec/parser/c_parser_spec.rb: Allow multiline description for constants 2012-02-12 Loren Segal * lib/yard/handlers/c/override_comment_handler.rb, spec/handlers/c/override_comment_handler_spec.rb: Handle Document-class syntax with inheritance * templates/default/module/html/defines.erb: Show (unknown) defined file if no files exist * lib/yard/handlers/c/handler_methods.rb: Refactor namespace calls in handler_methods.rb * lib/yard/handlers/c/handler_methods.rb: Silently ignore invalid CRuby method declarations * lib/yard/handlers/c/handler_methods.rb, spec/handlers/c/class_handler_spec.rb: Properly handle Proxy superclasses in CRuby * lib/yard/parser/c/comment_parser.rb: Fix parsing of name in override comments * lib/yard/parser/c/statement.rb, lib/yard/parser/ruby/legacy/statement.rb: Fix how C::Statement#show displays first line of code * lib/yard/parser/c/c_parser.rb: Fix parsing of whitespace in CRuby files * lib/yard/autoload.rb, lib/yard/handlers/c/struct_handler.rb, spec/handlers/c/struct_handler_spec.rb: Support CRuby rb_struct_define_without_accessor() 2012-02-10 Loren Segal * templates/default/fulldoc/html/js/full_list.js: Don't use global window.event, Firefox does not support this 2012-02-07 Loren Segal * .travis.yml, Gemfile: Use stable test dependencies * Gemfile: Use redcarpet in tests * .travis.yml: Update Travis CI ruby versions 2012-02-01 Loren Segal * spec/templates/onefile_spec.rb: Make specs work in Ruby 1.8 * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb, spec/templates/onefile_spec.rb: Don't allow --one-file to be used with --charset us-ascii Closes #472 * lib/yard/serializers/file_system_serializer.rb: Refactor filesystem serialization 2012-01-31 Loren Segal * spec/templates/examples/module003.html, spec/templates/module_spec.rb, .../default/module/html/inherited_constants.erb, templates/default/module/setup.rb: Don't show inherited constants if overridden Closes #474 * lib/yard/server/commands/library_command.rb: Verify markup options when loading yard opts in server mode * lib/yard/templates/helpers/html_helper.rb: Refactor code block parsing out of htmlify 2012-01-30 Loren Segal * lib/yard/templates/helpers/html_helper.rb, spec/templates/helpers/html_helper_spec.rb: Update tests for html_syntax_highlight and minor refactor Closes #478, #479 2012-01-31 Dominik Honnef * lib/yard/templates/helpers/html_helper.rb: do not assume that html_syntax_highlight always gets called from htmlify By having moved up the language detection and removing of !!!LANG from the input source we broke html_syntax_highlight when it was being called independently, as it wouldn't sanitize input nor have a fallback language. We now have to detect the language twice, once for writing the correct
 tag and once to ensure
  that html_syntax_highlight is working with sane inputs.

2012-01-30  Dominik Honnef 

  * lib/yard/templates/helpers/html_helper.rb: make parse_lang_for_codeblock
  return the language as a symbol, not a string

  * lib/yard/templates/helpers/html_helper.rb: rename parse_lang to
  parse_lang_for_codeblock and mark private

  * lib/yard/templates/helpers/html_helper.rb: fix @return tag of
  HtmlHelper#parse_lang

  * lib/yard/templates/helpers/html_helper.rb: move parsing of !!!LANG up one
  level to add lang classes to 
 tags

2012-01-29  Loren Segal 

  * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Do not copy asset inside
  of to/ if to is directory  Closes #477

2012-01-26  Loren Segal 

  * lib/yard/handlers/ruby/legacy/method_handler.rb,
  lib/yard/handlers/ruby/method_handler.rb: Fix issue #458 for legacy handlers

  * templates/default/fulldoc/html/js/jquery.js: Update jQuery to v1.7.1

  * templates/default/layout/html/breadcrumb.erb: Prioritize contents/file for
  breadcrumb links

  * templates/default/fulldoc/html/css/style.css,
  templates/default/layout/html/files.erb: Generalize css for files list in
  index page

  * templates/default/layout/html/setup.rb: Check for :contents section before
  object in layout template

  * lib/yard/templates/engine.rb, spec/templates/engine_spec.rb:
  Engine.generate should pass :object=>Registry.root (so object is never nil)

  * lib/yard/handlers/ruby/base.rb: Fix call parameter source when symbol is a
  keyword in ripper

  * templates/default/tags/setup.rb: Make tags template more friendly for tags
  with '.' in them

  * lib/yard/handlers/ruby/legacy/macro_handler.rb,
  lib/yard/handlers/ruby/macro_handler.rb,
  lib/yard/handlers/ruby/macro_handler_methods.rb: Refactor macro handling into
  MacroHandlerMethods module

2012-01-25  Loren Segal 

  * lib/yard/handlers/ruby/macro_handler.rb,
  lib/yard/handlers/ruby/macro_handler_methods.rb,
  spec/handlers/examples/macro_handler_001.rb.txt,
  spec/handlers/macro_handler_spec.rb: Require special tags to create implicit
  DSL docstring  Special tags are:  method attribute overload visibility scope
  return

2012-01-23  Loren Segal 

  * spec/registry_spec.rb, spec/templates/class_spec.rb: Fix Debian test
  failures in 1.9.3  Partially fixes #397

2012-01-21  Kouhei Sutou 

  * lib/yard/code_objects/base.rb, spec/code_objects/base_spec.rb: don't
  discard tags by (see ...). fixes #457

  * lib/yard/handlers/ruby/method_handler.rb,
  spec/handlers/examples/method_handler_001.rb.txt,
  spec/handlers/method_handler_spec.rb: don't add default @return if a
  @overload has @return. fixes #458

  * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb:
  fix %w() source in []/[]= parsed context. fixes #461

2012-01-19  Loren Segal 

  * lib/yard/handlers/ruby/macro_handler_methods.rb,
  spec/handlers/macro_handler_spec.rb: Do not auto-detect DSL methods as method
  objects if parameter name is not a valid method name  Closes #464

  * lib/yard/registry_store.rb, spec/registry_store_spec.rb: Remove heuristics
  that disable single object db  Closes #466

  * lib/yard/handlers/ruby/macro_handler_methods.rb: Allow processing of macros
  attached to Object class (via inheritance)  Closes #465

2012-01-18  yuta yamada 

  * lib/yard/templates/engine.rb: fix typo (toe => to)

  * lib/yard/server/adapter.rb: fix typo

  * lib/yard/core_ext/symbol_hash.rb: fix typo (period)

2012-01-16  Loren Segal 

  * lib/yard/docstring.rb, lib/yard/tags/library.rb, spec/docstring_spec.rb,
  spec/tags/library_spec.rb: Allow '.' in tag names for namespacing.  Tags can
  now be registered as 'foo.bar' to namespace tags for a 'foo' library or
  plugin. Note that the registered tag methods in the Library will use
  underscores in place of the '.', so calling:  Tags::Library.define_tag
  'Description', 'foo.bar', :with_types  Will register the method: 
  Tags::Library#foo_bar_tag(text)  Closes #452

  * templates/default/module/html/item_summary.erb: Note titles should be
  lowercase in summary

  * spec/templates/examples/module003.html, spec/templates/module_spec.rb,
  .../default/module/html/inherited_attributes.erb,
  templates/default/module/setup.rb: Run verifier on inherited attributes list 
  Closes #432

2012-01-10  Loren Segal 

  * .../method_details/html/method_signature.erb,
  .../default/module/html/attribute_details.erb,
  .../default/module/html/inherited_attributes.erb,
  .../default/module/html/inherited_methods.erb,
  templates/default/module/html/item_summary.erb,
  .../default/module/html/method_details_list.erb,
  templates/default/module/setup.rb: Update templates to enable embed_mixins to
  embed mixins into current namespace's method list

  * templates/default/fulldoc/html/css/style.css: Update css styling for new
  embedded mixin method badges and info

  * spec/templates/examples/module004.html, spec/templates/module_spec.rb: Add
  template specs for embed_mixins

  * lib/yard/templates/helpers/base_helper.rb,
  lib/yard/templates/helpers/html_helper.rb,
  templates/default/method_details/setup.rb: Add BaseHelper#owner to represent
  the object generated for the overall page

  * lib/yard/cli/yardoc.rb, spec/cli/yardoc_spec.rb: Add --embed-mixins option
  to set :embed_mixins

  * bin/yard, bin/yardoc, bin/yri: Rewrite binaries so that they "require
  'yard'"

  * spec/templates/examples/class001.html,
  templates/default/fulldoc/html/css/style.css: No more lowercasing in css for
  note title badges

  * spec/templates/examples/module001.html,
  .../default/module/html/inherited_attributes.erb: Show proper inherited
  attribute names

2012-01-09  Loren Segal 

  * lib/yard.rb: Update version in 0.8.0-master branch to reflect 0.8.0 pre
  version

  * README.md: Update docs to reflect removed yard-graph

  * bin/yard-graph, bin/yard-server: Remove old binaries (yard-graph,
  yard-server)  Use `yard graph` and `yard server` instead.

2012-01-08  Loren Segal 

  * spec/handlers/c/mixin_handler_spec.rb: Add MixinHandler specs

  * lib/yard/handlers/c/constant_handler.rb,
  lib/yard/handlers/c/handler_methods.rb,
  spec/handlers/c/constant_handler_spec.rb: Add constant handler specs

  * lib/yard/handlers/c/handler_methods.rb: Fix typo in handle_alias

  * lib/yard/handlers/c/base.rb, spec/handlers/c/method_handler_spec.rb,
  spec/parser/c_parser_spec.rb: Move CParser specs to MethodHandler specs and
  add more tests

  * spec/handlers/c/module_handler_spec.rb: Add module specs

  * lib/yard/handlers/c/handler_methods.rb,
  spec/handlers/c/class_handler_spec.rb: Ensure class registers file/line info
  for declaration

  * spec/handlers/c/alias_handler_spec.rb,
  spec/handlers/c/attribute_handler_spec.rb,
  spec/handlers/c/class_handler_spec.rb, spec/handlers/c/path_handler_spec.rb,
  spec/handlers/c/spec_helper.rb, spec/parser/c_parser_spec.rb: Move handler
  tests from CParser and add extra tests for ClassHandler

  * spec/handlers/c/init_handler_spec.rb,
  spec/handlers/c/override_comment_handler_spec.rb,
  spec/handlers/c/spec_helper.rb: Rewrite handler specs

  * spec/parser/c_parser_spec.rb: Rewrite tests

  * lib/yard/parser/c/c_parser.rb, lib/yard/parser/c/statement.rb: Allow C
  parser to ignore bodies

  * lib/yard/handlers/c/handler_methods.rb,
  lib/yard/handlers/c/init_handler.rb,
  lib/yard/handlers/c/override_comment_handler.rb: Add fully qualified path
  names in handler code

  * lib/yard/handlers/c/base.rb: Fix lookups for non-capitalized variables

  * lib/yard/handlers/base.rb, lib/yard/handlers/c/base.rb,
  lib/yard/handlers/c/handler_methods.rb, lib/yard/handlers/c/init_handler.rb:
  Refactor Handlers::Base#register() to use multiple register_* methods so that
  subclasses can override specific registration behaviour

  * lib/yard/parser/c/statement.rb: Comment#comments should return self

  * lib/yard/handlers/c/init_handler.rb: Allow for init_Foo() syntax in C files

  * lib/yard/handlers/c/base.rb: Rewrite process_file() to no longer use
  ignored_files (not needed with new parser loop)

  * spec/code_objects/constants_spec.rb: Fix broken spec since Continuation is
  no longer loaded in runtime during tests

  * lib/yard/parser/source_parser.rb: Use new SourceParser.new arguments

  * lib/yard/autoload.rb, lib/yard/parser/c_parser.rb,
  spec/parser/c_parser_spec.rb: Move Parser::CParser to Parser::C::CParser (new
  implementation)

  * lib/yard.rb, lib/yard/handlers/base.rb, lib/yard/handlers/processor.rb,
  lib/yard/logging.rb, lib/yard/parser/c_parser.rb,
  lib/yard/parser/source_parser.rb, spec/handlers/processor_spec.rb,
  spec/handlers/ruby/base_spec.rb, spec/handlers/ruby/legacy/base_spec.rb,
  spec/handlers/spec_helper.rb, spec/parser/source_parser_spec.rb: Removes
  continuations from YARD  Replaces continuations with recursive parsing using
  a new OrderedParser class.  This comes with a number of API changes:  1.
  YARD::Parser::LoadOrderError is removed 2. SourceParser.new() no longer
  accepts load_order_errors argument 3. Processor.new(...) now takes 1 single
  argument `parser`. 4. Processor#load_order_errors is removed  Instead,
  Parser::OrderedParser is added and sent to the global state during parsing.
  `Processor#parse_remaining_files` replaces the raising of LoadOrderError,
  which performs the parsing recursively by calling `OrderedParser#parse`
  (which continues shifting the files queue) rather than with continuations.

  * lib/yard/handlers/c/constant_handler.rb,
  lib/yard/handlers/c/handler_methods.rb: Implement ConstantHandler

  * lib/yard/handlers/c/alias_handler.rb,
  lib/yard/handlers/c/handler_methods.rb: Move handle_alias into HandlerMethods

  * lib/yard/handlers/base.rb: Set source type when registering objects

  * lib/yard/handlers/c/attribute_handler.rb,
  lib/yard/handlers/c/handler_methods.rb, lib/yard/handlers/c/path_handler.rb:
  Fix EOLs

  * lib/yard/autoload.rb: Reorganize autoload for Handlers::C

  * lib/yard/autoload.rb, lib/yard/handlers/c/mixin_handler.rb: Add
  C::MixinHandler

  * lib/yard/autoload.rb, lib/yard/handlers/c/alias_handler.rb,
  lib/yard/handlers/c/attribute_handler.rb, lib/yard/handlers/c/base.rb,
  lib/yard/handlers/c/class_handler.rb,
  lib/yard/handlers/c/constant_handler.rb,
  lib/yard/handlers/c/handler_methods.rb, lib/yard/handlers/c/init_handler.rb,
  lib/yard/handlers/c/method_handler.rb, lib/yard/handlers/c/module_handler.rb,
  lib/yard/handlers/c/override_comment_handler.rb,
  lib/yard/handlers/c/path_handler.rb, lib/yard/handlers/c/symbol_handler.rb,
  lib/yard/handlers/processor.rb, spec/handlers/c/init_handler_spec.rb,
  spec/handlers/c/override_comment_handler_spec.rb,
  spec/handlers/c/spec_helper.rb: Add initial Handlers::C implementations and
  add handler specific tests

  * lib/yard/handlers/processor.rb: Update processor to allow for
  handles?(handler, processor) method declaration

  * lib/yard/handlers/base.rb: Change Base#register to only add docstring if
  statement.comments is a String or Array object

  * lib/yard/autoload.rb, lib/yard/parser/c/c_parser.rb,
  lib/yard/parser/c/comment_parser.rb, lib/yard/parser/c/statement.rb,
  lib/yard/parser/source_parser.rb, spec/parser/c_parser_spec.rb: Initial
  implementation of Parser::C::CParser

2012-01-07  Ankur Patel 

  * templates/default/fulldoc/html/js/full_list.js: Ignoring non-printable
  characters in search

2012-01-05  Sergey Avseyev 

  * lib/yard/templates/helpers/html_helper.rb,
  spec/templates/helpers/html_helper_spec.rb: Do not escape snippets twice 
  Markup helpers aleardy done escaping. This is actually partial revert of
  414e53424c28129625d743e41b15556f150fe083

2012-01-02  Loren Segal 

  * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Add support for
  rb_path2class() in CRuby

  * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Properly handle
  parsing of nested namespace definitions  Fixes #437

2012-01-01  Loren Segal 

  * spec/templates/examples/module003.html, spec/templates/module_spec.rb,
  .../default/module/html/inherited_attributes.erb: Ignore overwritten
  attributes from inherited list  Closes #442

  * spec/server/rack_adapter_spec.rb: Properly shutdown adapter after rack
  middleware specs

2011-12-26  Sergey Avseyev 

  * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Allow aliases
  for attributes

  * lib/yard/parser/c_parser.rb, spec/parser/c_parser_spec.rb: Fix attribute
  parsing  This is the real signature for rb_define_attr(). There is only four
  arguments.  void rb_define_attr(VALUE klass, const char *name, int read, int
  write)

2011-12-19  Loren Segal 

  * spec/templates/tag_spec.rb, templates/default/tags/setup.rb: Don't render
  param tags on non-method objects  Closes #429

2011-12-11  Loren Segal 

  * lib/yard/server/commands/library_command.rb,
  lib/yard/server/doc_server_helper.rb,
  lib/yard/server/doc_server_serializer.rb, lib/yard/server/rack_adapter.rb,
  lib/yard/server/router.rb, .../doc_server/library_list/html/contents.erb,
  .../templates/doc_server/search/html/search.erb,
  lib/yard/server/webrick_adapter.rb, spec/server/doc_server_helper_spec.rb,
  spec/server/doc_server_serializer_spec.rb, spec/server/router_spec.rb: Only
  add /version/ to URLs accessed with /version/  Adds request.version_supplied
  to detect whether the version was parsed out of the URL. Rewrote some of the
  URL helpers and serializers to respect this new behaviour.  The biggest
  change is that the DocServerSerializer will no longer add the /prefix to the
  serialized_path, and it will now ignore the command passed in to the
  constructor (which is now optional). Instead, DocServerHelper#url_for should
  be used to generate a URL with a prefix.  Closes #426

2011-12-06  yuta yamada 

  * docs/GettingStarted.md: fix piglatin description (parsed to be ruby syntax)

  * docs/Tags.md: fix tag description (parsed to be ruby syntax)

2011-12-04  Loren Segal 

  * lib/yard/templates/helpers/html_helper.rb,
  spec/templates/helpers/html_helper_spec.rb: Be more forgiving about generated
  HTML for code blocks

2011-12-05  yuta yamada 

  * docs/Glossary.md, docs/Overview.md: fix-typo

2011-12-03  Loren Segal 

  * 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 
 tags. text: No
  formatting except for replacing newlines with 
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 * 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 +typewritertext+ 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 * lib/yard/rake/yardoc_task.rb: Documentation improvements in YardocTask. Fixed attr :options to indicate that it should be an Array rather than Hash. Added an example for attr :files to show correct use of "-" for extra files. 2011-11-28 Loren Segal * 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 * 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 * spec/registry_store_spec.rb: ensure test directory nonexistent. 2011-11-09 yuta yamada * README.md: fix a typo. 2011-11-06 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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-14 Fabian Schwahn * lib/yard/cli/server.rb, spec/cli/server_spec.rb: removed rubygems requirement, added handling of load errors and added tests 2011-10-07 Loren Segal * 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 * 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 * docs/GettingStarted.md: Added information about escaping curly braces 2011-10-01 Loren Segal * 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 * 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 * lib/yard/parser/ruby/ruby_parser.rb, spec/parser/ruby/ruby_parser_spec.rb: Fix broken ruby parser specs 2011-09-17 Fabian Schwahn * lib/yard/cli/server.rb: add gemfile command to yard server 2011-09-07 Loren Segal * 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 * 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 >_Hello >_... ... We should escape ">", "<" and so on in text to output valid HTML. 2011-08-14 Loren Segal * spec/templates/examples/method001.html: Fix broken spec from incomplete merge on #372 2011-08-07 Kouhei Sutou * templates/default/tags/html/option.erb: fix wrong close tag. 2011-07-01 Rob Gleeson * lib/yard/templates/helpers/html_helper.rb: Add support for GitHub codeblocks when using RedCarpet. 2011-07-07 Kouhei Sutou * .../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 #& '>#&#& * 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 * .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 * lib/yard/rubygems/specification.rb: Support RubyGems 1.8.x in rubygems_plugin.rb 2011-06-15 Loren Segal * 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 * 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 * 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 * lib/yard/tags/library.rb: Fix typo in transitive_tags docs 2011-06-11 Michael S. Klishin * 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 * lib/yard/autoload.rb: __p method should not depend on / file path separator. Actually it has only one parameter. 2011-06-06 Loren Segal * 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 * 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 * 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 * 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 * 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 * README.md: Fix a type in the query documentation. 2011-05-23 Loren Segal * 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 * lib/yard/cli/server.rb, spec/cli/server_spec.rb: Fix failing specs. 2011-05-22 Rob Gleeson * lib/yard/cli/server.rb: Resolve relative links in daemon mode. 2011-05-22 Loren Segal * 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 * 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 * 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 * 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 * 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 * docs/GettingStarted.md: Fixed broken links. 2011-05-17 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * .yardopts: Ignore rubygems/ from docs (they're just backports) 2011-05-09 Loren Segal * 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 * templates/default/fulldoc/html/css/full_list.css: Remove '|' after content for menus; it is now generated statically. 2011-05-08 Franklin Webber * 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 * 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 * templates/default/fulldoc/html/setup.rb: Fulldoc Template Updated to contain information about the various helper methods specified. 2011-05-07 Loren Segal * 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 * 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 * 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 * 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 * 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 * lib/yard.rb: Catch all Exceptions raised by Rubinius or JRuby when testing callcc. 2011-04-26 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * ChangeLog, README.md, lib/yard.rb: 0.6.8 release 2011-04-13 Loren Segal * 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 * spec/cli/yardoc_spec.rb: Fix spec title 2011-04-12 Akzhan Abdulin * templates/default/fulldoc/html/js/app.js, templates/default/fulldoc/html/js/full_list.js: Fix JSLint issues 2011-04-11 Loren Segal * 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 * 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 * 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 * 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 * templates/default/fulldoc/html/js/jquery.js: Upgrade jQuery from 1.5.1 to 1.5.2 2011-04-06 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 #) ... 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 * ChangeLog, LICENSE, README.md, docs/WhatsNew.md, lib/yard.rb, yard.gemspec: Update to 0.6.5 2011-03-11 Loren Segal * 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 * 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 * lib/yard/templates/helpers/markup_helper.rb: Print markup provider in error message when it cannot be loaded. 2011-03-07 Loren Segal * 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 * templates/default/fulldoc/html/js/jquery.js: Upgrade jQuery from 1.4.2 to 1.5.1 2011-02-27 Loren Segal * 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 * templates/default/fulldoc/html/css/style.css: changes css style on list 2011-02-27 Guten * templates/default/fulldoc/html/css/style.css: add css style to list support
    2011-02-26 Loren Segal * 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 * 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 * 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 * lib/yard/templates/helpers/base_helper.rb, spec/templates/helpers/base_helper_spec.rb: Add {include:file:FILENAME} syntax 2011-02-25 Loren Segal * 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 * 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 * 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 * 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 * lib/yard/cli/graph.rb: Fixed a typo in yard-graph help messages: Direclty -> Directly 2011-01-26 Loren Segal * 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 * 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 * lib/yard/templates/helpers/markup_helper.rb: Prioritize the loading of kramdown before maruku. 2011-01-19 Loren Segal * templates/default/fulldoc/html/js/app.js: Generate better ids 2011-01-17 Akzhan Abdulin * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * spec/templates/spec_helper.rb: Can't use example() with rspec2 2010-12-12 Gioele Barabucci * Rakefile, spec/spec_helper.rb: Minimal update to RSpec 2 2010-12-15 Loren Segal * 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 * lib/yard/cli/yri.rb: prepend :: to adhere to rubys class lookup rules for Config::CONFIG 2010-11-24 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/parser/c_parser.rb: Fixed parsing of constants defined in c extensions. 2010-11-10 Loren Segal * 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 * 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 * 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 * lib/yard/templates/helpers/html_helper.rb: Don't perform syntax highlighting on plaintext extra files 2010-11-02 Mark Evans * 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 * lib/yard/server/commands/library_command.rb: we're already chrooted' 2010-10-29 freeformz * lib/yard/server/commands/library_command.rb: stop the threads from trying to chdir over each other 2010-10-22 David Turnbull * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * .../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 * 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 * 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 ' statement 2010-09-17 Loren Segal * 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 * 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 * 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 * templates/default/tags/setup.rb: Refactor tag method generation code for templates 2010-09-07 Loren Segal * README.md, docs/WhatsNew.md: Fix some markdown formatting errors 2010-09-06 Loren Segal * 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 * spec/templates/helpers/html_helper_spec.rb: Fix broken spec of #link_object 2010-09-03 Arthur Schreiber * spec/registry_store_spec.rb: Update specs to match reading marshal data as binary. 2010-09-02 Loren Segal * lib/yard/parser/source_parser.rb: Fix printing of debugging information when displaying parser paths in 1.8.x 2010-09-02 Arthur Schreiber * lib/yard/registry_store.rb: Fix remaining cases where Marshal data was not read as binary. 2010-09-02 Loren Segal * 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 * 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 * 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 * 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 * 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 * templates/default/fulldoc/html/css/style.css: Put class list above ToC (take 2) Closes gh-164 2010-08-29 Loren Segal * 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 * 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 * 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 * templates/default/fulldoc/html/css/style.css: Add margin around TOC 2010-08-25 Loren Segal * 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 * 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 * 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 * 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 * lib/yard/cli/diff.rb: Make sure rubygems/package is loaded before running Diff utility 2010-08-07 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * .../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 * .../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 * 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 * 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 * lib/yard/cli/yard_graph.rb: Fix typo in YardGraph 2010-07-05 Loren Segal * 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 * 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 * 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 * 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 * lib/yard/cli/yardoc.rb: Only print statistics if not listing objects 2010-06-27 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/cli/yardoc.rb: Fix verifier for --no-private 2010-06-22 Loren Segal * templates/default/fulldoc/html/js/app.js: Add localStorage support for remembering collapsed/expanded state of method summary listing. 2010-06-21 Loren Segal * 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 * 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 * 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 * 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 * lib/yard/cli/yard_graph.rb: Fix typo in yard graph command 2010-06-17 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/handlers/ruby/struct_handler_methods.rb: Made struct handler directly add tags. Technical faux pas. 2010-05-15 postmodern * 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 * .../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 * 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 * 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 * 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 * 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 * lib/yard/cli/yardoc.rb: Add a --list option for listing all objects matching the query. 2010-04-20 Nathan Weizenbaum * 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 * 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 * 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

    tag, since it itself is a

    2010-03-27 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/templates/helpers/html_helper.rb: Escape HTML inside /++ 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/templates/helpers/html_helper.rb: HTML-escape text that isn't syntax highlighted due to --no-highlight. 2010-01-24 Nathan Weizenbaum * 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 * 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 * 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 * 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 * 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 +text+ RDoc markup showing \004 characters inside code blocks 2010-01-05 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/parser/source_parser.rb: Read source in binary mode to be encoding safe 2009-12-16 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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+) [+ 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 * 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 * 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 * templates/default/fulldoc/html/css/style.css: Used a unicode hex-escape sequence in the CSS instead. 2009-12-01 Loren Segal * 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 * templates/default/fulldoc/html/setup.rb, templates/default/module/setup.rb: Ignore @private classes/modules. Closes gh-46 2009-11-26 Loren Segal * lib/yard/handlers/base.rb: Add no-continuation warning for Rubinius and only warn once 2009-11-21 Loren Segal * 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 * templates/default/layout/html/index.erb: Sort index listing in 1.8 2009-11-16 Loren Segal * 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 * .../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 * lib/yard/templates/template.rb: Allow superb to specify a section name 2009-11-13 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/code_objects/base.rb: Fix documentation for CodeObjects::Base#add_file 2009-08-19 Loren Segal * 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 * lib/yard/generators/helpers/html_helper.rb, spec/generators/helpers/html_helper_spec.rb: added support for mailto: links 2009-08-14 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/rubygems_plugin.rb: Don't immediately load all of YARD when RubyGems requires the plugin. 2009-06-13 Loren Segal * 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 * 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 * 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 * .yardopts, README.markdown, docs/CODE_OBJECTS.markdown, docs/GETTING_STARTED.markdown, docs/TAGS.markdown: Add getting started guide 2009-06-05 Nathan Weizenbaum * docs/TAGS.markdown: Fix a few grammatical errors and typos in the reference tag docs. 2009-06-05 Loren Segal * .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 * 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 * .gitignore: Add /coverage to .gitignore. 2009-06-04 Loren Segal * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * templates/default/attributes/html/header.erb, templates/default/fulldoc/html/style.css: Display aliases of attributes. Closes gh-2 2009-05-23 Loren Segal * 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 +object+ 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/parser/statement_list.rb: Parser::StatementList: Add explanatory comments about #process_new_statement. 2009-03-31 Nathan Weizenbaum * 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 * spec/parser/statement_list_spec.rb: Add a bunch of mostly-failing tests for Parser::StatementList. 2009-05-14 Nathan Weizenbaum * 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 * 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 * 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 * 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 * 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 * spec/handlers/ruby/base_spec.rb: Only load Handlers::Ruby::Base spec under Ruby1.9 2009-05-03 Nathan Weizenbaum * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * lib/yard/parser/ripper/parser.rb: Start #to_s implementation for Node 2009-02-10 Loren Segal * 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 * 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 * 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 * lib/yard/generators/helpers/html_helper.rb: Ignore things that look like links if they're within
     or .
    
    2009-05-15  Loren Segal 
    
      * 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 
    
      * benchmarks/parsing.rb: Fix broken in order parsing benchmark due to removed
      PATH_ORDER constant
    
    2009-05-03  Nathan Weizenbaum 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * lib/yard/serializers/file_system_serializer.rb: Refactored serialize_path
      to be Ruby 1.9.1 compatible. 
    
    2009-05-07  jeffrafter 
    
      * lib/yard/cli/yardoc.rb: Cli options for alternate template paths had a
      typo; corrected 
    
    2009-05-03  Loren Segal 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * lib/yard.rb: Little more accurate Ruby 1.9 checking
    
      * LICENSE: Update copyright year
    
    2009-01-31  Loren Segal 
    
      * 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 
    
      * 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 
    
      * lib/yard/generators/full_doc_generator.rb: Added .mkdn support 
    
    2008-08-29  lsegal 
    
      * yard.gemspec: Spam protection.
    
    2008-08-26  Loren Segal 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * lib/yard/generators/uml_generator.rb,
      templates/default/uml/dot/superclasses.erb: Fix minor parsing bugs in
      yard-graph
    
    2008-06-23  Loren Segal 
    
      * 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 
    
      * FAQ.markdown: Added FAQ from conversation with argv
    
    2008-06-22  Loren Segal 
    
      * 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
    
    2008-06-21  Loren Segal 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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  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 
    
      * 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 
    
      * Rakefile, bin/view_generator, lib/yard/autoload.rb: Remove LOAD_PATH load
      order const
    
    2008-06-13  Loren Segal 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
     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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 '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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * lib/yard.rb, lib/yard/tags/library.rb: Add YARD.parse and @example
    
    2008-05-18  Loren Segal 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * lib/yard/code_objects/base.rb: Delegate to a singleton Array
    
    2008-05-14  Loren Segal 
    
      * 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 
    
      * 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 
    
      * .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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * .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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * .gitignore: Add pkg/ to gitignore  
    
    2008-02-26  Loren Segal 
    
      * 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 
    
      * .gitignore: Add DS_Store to gitignore  
    
      * yard.gemspec: Update gemspec to deal with new README files  
    
    2008-02-26  Loren Segal 
    
      * .gitignore: Add DS_Store to gitignore
    
      * yard.gemspec: Update gemspec to deal with new README files
    
    2008-02-26  loren 
    
      * README.txt: Missed tab  
    
    2008-02-26  Loren Segal 
    
      * 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 
    
      * lib/code_object.rb: Add child node to parent when setting new parent
    
      * README.txt: Missed tab
    
    2008-02-26  loren 
    
      * README.pdf, help.pdf: Rename README so it doesn't break github  
    
    2008-02-25  Loren Segal 
    
      * README.pdf, help.pdf: Rename README so it doesn't break github
    
    2008-02-26  loren 
    
      * README.txt: Add text version of old reamde just for github  
    
    2008-02-25  Loren Segal 
    
      * README.txt: Add text version of old reamde just for github
    
    2008-02-25  loren 
    
      * 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 
    
      * lib/ruby_lex.rb: Oops, turns out I can't remove those dependencies from
      RubyLex 
    
    2008-02-23  loren 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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 
    
      * 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