rdoc 3.12

drbrain | Thu, 15 Dec 2011 21:58:05 GMT

home

github.com/rdoc/rdoc

rdoc

docs.seattlerb.org/rdoc

bugs

github.com/rdoc/rdoc/issues

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

3.12 / 2011-12-15

  • Minor enhancements

    • Added DEVELOPERS document which contains an overview of how RDoc works and how to add new features to RDoc.

    • Improved title for HTML output to include --title in the title element.

    • rdoc --pipe now understands --markup.

    • RDoc now supports irc-scheme hyperlinks. Issue #83 by trans.

  • Bug fixes

    • Fix title on HTML output for pages.

    • Fixed parsing of non-indented HEREDOC.

    • Fixed parsing of %w[] and other % literals. Issue #84 by Erik Hollensbe

    • Fixed arrow replacement in HTML output munging the spaceship operator. Issue #85 by eclectic923.

    • Verbatim sections with ERB that match the ruby code whitelist are no longer syntax-highlighted. Issue #86 by eclectic923

    • Line endings on windows are normalized immediately after reading with binmode. Issue #87 by Usa Nakamura

    • RDoc better understands directives for comments. Comment directives can now be found anywhere in multi-line comments. Issue #90 by Ryan Davis

    • Tidy links to methods show the label again. Issue #88 by Simon Chiang

    • RDoc::Parser::C can now find comments directly above rb_define_class_under. Issue #89 by Enrico

    • In rdoc, backspace and ansi formatters, labels and notes without bodies are now shown.

    • In rdoc, backspace and ansi formatters, whitespace between label or note and the colon is now stripped.

Posted in ,  | no comments | no trackbacks

RDoc 3.10

drbrain | Sat, 08 Oct 2011 23:18:00 GMT

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

Changes:

3.10 / 2011-10-08

  • Major enhancements

    • RDoc HTML output has been improved:

      • The search from Володя Колесников‘s (Vladimir Kolesnikov) Sdoc has been integrated.

        The search index generation is a reusable component through RDoc::Generator::JsonIndex

      • The table of contents is now a separate page and now shows links to headings and sections inside a page or class.

      • Class pages no longer show the namespace and no longer have file info pages.

      • HTML output is HTML 5.

      • Static files can be copied into RDoc using –copy-files

    • RDoc supports additional documentation formats:

      • TomDoc 1.0.0-rc1

      • RD format

      The default markup can be set via the --markup option.

      The format of documentation in a particular file can be specified by the :markup: directive. If the :markup: directive is in the first comment it is used as the default for the entire file. For other comments it overrides the default markup format.

      The markup format can be set for rake tasks using RDoc::Task#markup

    • RDoc can save and load an options file.

      To create an options file that defaults to using TomDoc markup run:

      rdoc --markup tomdoc --write-options

      This will create a .rdoc_options file. Check it in to your VCS and package it with your gem. RDoc will automatically load this file and combine it with the user’s options.

      Some options are not saved. See RDoc::Options@Saved+Options for full details.

  • Minor enhancements

    • RDoc autoloads everything. You only need to require ‘rdoc’ now.

    • HTML headings now have ids matching their titles.

      = Hello!

      Is rendered as

      <h1 id="label-Hello%21">Hello!</h1>
    • Labels for classes or methods can be linked-to by adding an @ following the class or method reference. For example, RDoc::Markup@Links

      See RDoc::Markup@Links for further details.

    • For HTML output RDoc uses SomeClass.method_name and SomeClass#method_name for remote methods and attributes and ::method_name and #method_name for local methods.

    • RDoc makes an effort to syntax-highlight ruby code in verbatim sections. See RDoc::Markup@Paragraphs+and+Verbatim

    • Added RDoc::TopLevel#text? and RDoc::Parser::Text to indicate a parsed file contains no ruby constructs.

    • Added rdoc-label link scheme which allows bidirectional links. See RDoc::Markup for details.

    • Image paths at HTTPS URLs will now be turned into +<img>+ tags. Pull Request #60 by James Mead

    • Added RDoc::Comment which encapsulates comment-handling functionality.

    • Added RDoc::Markup::PreProcess::post_process to allow arbitrary comment munging.

    • RDoc::RDoc::current is set for the entire RDoc run.

    • Split rdoc/markup/inline into individual files for its component classes.

    • Moved token stream HTML markup out of RDoc::AnyMethod#markup_code into RDoc::TokenStream::to_html

    • “Top” link in section headers is no longer inside the heading element.

    • RDoc avoids printing some warnings unless run with `rdoc –verbose`. For Rails issue #1646.

    • Finishing a paragraph with two or more spaces will result in a line break. This feature is experimental and may be modified or removed.

  • Bug fixes

    • Markup defined by RDoc::Markup#add_special inside a <tt> is no longer converted.

    • Performance of RDoc::RubyLex has been improved. Ruby Bug #5202 by Ryan Melton.

    • Add US-ASCII magic comments to work with ruby -Ku. Issue #63 by Travis D. Warlick, Jr.

    • Clicking a link in the method description now works. Issue #61 by Alan Hogan.

    • Fixed RDoc::Markup::Parser for CRLF line endings. Issue #67 by Marvin Gülker.

    • Fixed lexing of percent strings like %r{#}. Issue #68 by eclectic923.

    • The C parser now understands classes defined with rb_struct_define_without_accessor (like Range). Pull Request #73 by Dan Bernier

    • Fixed lexing of a b <<-HEREDOC. Issue #75 by John Mair.

    • Added LEGAL.rdoc with references to licenses in other files. Issue #78 by Dmitry Jemerov.

    • Block parameters are displayed in Darkfish output again. Issue #76 by Andrea Singh.

    • The method parameter coverage report no longer includes parameter default values. Issue #77 by Jake Goulding.

    • The module for an include is not looked up until parsed all the files are parsed. Unless your project includes nonexistent modules this avoids worst-case behavior (O(n!)) of RDoc::Include#module.

Posted in ,  | no comments | no trackbacks

Ruby 1.9.3 preview 1

drbrain | Mon, 01 Aug 2011 19:28:36 GMT

Ruby 1.9.3 preview 1 has been released! Please install it and report bugs! The NEWS file contains the changes since Ruby 1.9.2 and the ChangeLog contains all the gory details.

If you're using RVM you can follow these instructions to install preview 1. If not, you can download the tarball, unpack it, then run configure; make; make install as you like.

Bug Reports

Ruby 1.9.3 preview 1 ships with RDoc, RubyGems and Rake. I can fix critical bugs in all of these before the final release. Please file bug reports for Ruby via redmine for any issue you find. You can also search for existing issues to avoid duplicate reports.

RDoc

The preview 1 release contains RDoc 3.8, but I've released RDoc 3.9.1 to fix a few additional bugs. Please install RDoc 3.9.1 atop the preview 1 release, or standalone on your main ruby. I prefer reports of RDoc issues via github.

RubyGems

The preview 1 release contains RubyGems 1.8.6.1 which is slightly newer than RubyGems 1.8.6. RubyGems 1.8.7 will be released shortly with the combined changes. I prefer reports of RubyGems issues via github.

Rake

The preview 1 release contains Rake 0.9.2.1 which is slightly newer than Rake 0.9.2. I prefer reports of Rake issues via github.

Posted in , ,  | no comments | no trackbacks

RDoc 3.9.1

drbrain | Mon, 01 Aug 2011 19:02:36 GMT

RDoc 3.9.1 will be included with Ruby 1.9.3 provided no show-stopping bugs are found. Please install RDoc and report any bugs you've found.

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

3.9.1

  • Bug fixes

    • Fix RDoc::Markup parser for a header followed by a non-text token. Issue #56 by Adam Tait

    • Fix RDoc::Markup::ToHtmlCrossref#gen_url for non-rdoc-ref links.

    • Fix bug report URL when rdoc crashes.

3.9

  • Minor enhancements

    • RDoc::Parser::C now supports :doc: and :nodoc: for class comments

    • Added the rdoc-ref: link scheme which links to a named reference. rdoc-ref: can resolve references to classes, modules, methods, files, etc. This can be used to create cross-generator named links unlike the link: scheme which is dependent upon the exact file name. Issue #53 by Simon Chiang

    • Pulled RDoc::CrossReference out of RDoc::Markup::ToHtmlCrossref. Cross-references can now be created easily for non-HTML formatters.

  • Bug fixes

    • `ri []` and other special methods now work properly. Issue #52 by ddebernardy.

    • `ri` now has space between class comments from multiple files.

    • :stopdoc: no longer creates Object references. Issue #55 by Simon Chiang

    • :nodoc: works on class aliases now. Issue #51 by Steven G. Harms

    • Remove tokenizer restriction on header lengths for verbatim sections. Issue #49 by trans

Posted in ,  | no comments | 1 trackback

RDoc 3.7

drbrain | Mon, 27 Jun 2011 23:20:01 GMT

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

Changes:

### 3.7 / 2011-06-27

  • Minor enhancements

    • New directive :category: which allows methods to be grouped into sections more cleanly. See RDoc::Markup for details.

    • Document-class for RDoc::Parser::C now supports Foo::CONST as well as CONST.

    • ri method output is now a comma-separated list when displayed interactively. Pull Request #39 by Benoit Daloze.

    • RDoc::ClassModule#merge now prefers the argument’s information over the receiver’s (it now behaves like Hash#merge! instead of a backwards Hash#merge!).

    • RDoc::Markup#convert now accepts an RDoc::Markup::Document instance

    • RDoc now owns the code for generating RDoc and ri data when gems install

    • Added RDoc::RDoc::reset

    • Added RDoc::CodeObject#file_name

  • Bug fixes

    • ri no longer crashes when attempting to complete a plain [.

    • ri data now tracks which file information came from so it can process removals and changes to:

      • Classes and Modules

      • Methods

      • Attributes

      • Includes

      • Constants

      You will need to rebuild your ri data for it to update properly. Issue #21 by Sven Riedel

    • Signal and SignalException no longer clobber each other

    • RDoc::Parser::C no longer creates classes when processing aliases.

    • RDoc::Text#strip_stars handles Document-method for methods with =, ! and ? now.

    • RDoc::Parser::C now allows .cpp files to be used with the “in” comment on rb_define_method. Bug #35 by Hanmac.

    • RDoc::Parser::Ruby no longer eats content when =begin/=end documentation blocks are followed by a documentable item. Issue #41 by mfn.

    • RDoc::Markup::Formatter and subclasses now allow an optional markup parameter for adding custom markup. The example in RDoc::Markup::Formatter will now work. Issue #38 by tsilen.

    • RDoc::Parser::C can now distinguish between class methods and instance methods in Document-method. Issue #36 by Vincent Batts.

    • RDoc now encodes file names in the output encoding. Issue #33 by Perry Smith.

    • ri data generation for method aliases no longer duplicates the class in #full_name

Posted in ,  | no comments | no trackbacks

RDoc 3.6

drbrain | Sat, 14 May 2011 00:29:28 GMT

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

Changes:

3.6 / 2011-05-13

  • Major Enhancements

    • Interactive ri is now the default when no names are given.

  • Minor Enhancements

    • RDoc::RDoc#generate was added to allow multiple generators to be used with a set of parsed file info.

    • RDoc::Options#finish can be called multiple times now.

    • ri -i only shows one level of namespace when completing class names.

    • Added ri --list for explicit listing. ri -l F G will list all classes or modules starting with F or G

  • Bug fixes

    • Remove windows-specific test for test_check_files, it is too hard to do. Ruby commit r30811 by Usaku Nakamura.

    • Remove unnecessary (and wrong) platform-dependent hacks. Ruby commit r30829 by Usaku Nakamura.

    • Completing via Array#[ in ri -i no longer crashes. Ruby Bug #3167

    • Completing IO::o in ri -i now returns results. Ruby Bug #3167

    • RDoc::Parser::C ignores prototypes better. Pull Request #34 by Pete Higgins.

    • private_class_method and public_class_method are now parsed correctly for inherited methods. Issue #16 by gitsucks.

    • The doc directive now forces documentation even when the method is marked private or protected.

Posted in ,  | 3 comments | no trackbacks

RDoc 3.5.2

drbrain | Sat, 05 Feb 2011 05:31:31 GMT

rdoc version 3.5.2 has been released!

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

Changes since 3.5:

3.5.2 / 2010-02-04

  • Deprecations

    • RDoc::Context::Section#sequence is now deprecated. Use RDoc::Context::Section#aref instead.

  • Bug fixes

    • Fixed syntax highlighting CSS class generation. Reported by Daniel Bretoi.

    • Fixed ri for methods with aliases. Pull Request #15 by Sven Riedel.

    • Added windows-specific test for test_check_files.

    • Darkfish now supports sections. Template and generator author see RDoc::Context#each_section to add section support. RubyForge Bug #26883 by Jeff Hodges.

    • Fixed post-install message for Ruby 1.9.2 users.

    • Set required ruby version to >= 1.8.7.

3.5.1 / 2010-01-30

  • Bug fixes

    • Fixed some typos. Pull request #13 by R.T. Lechow.

    • Ensure an RDoc::Stats is created in #parse_files. Fixes documentation for railties which has no files. Reported by Aaron Patterson

Posted in ,  | no comments | no trackbacks

RDoc 3.5

drbrain | Sat, 29 Jan 2011 21:52:00 GMT

rdoc version 3.5 has been released!

RDoc produces HTML and command-line documentation for Ruby projects. RDoc includes the rdoc and ri tools for generating and displaying online documentation.

See RDoc for a description of RDoc’s markup and basic use.

3.5 / 2010-01-29

  • Minor enhancements

    • RDoc::Parser::C looks for rb_scan_args and fills in RDoc::AnyMethod#params appropriately. This may provide useful information if the author did not provide a call-seq.

    • RDoc::Parser::C now records the function name for methods implemented in C.

    • RDoc now records file and byte offset information for methods.

  • Bug fixes

    • Locations of module aliases are now recorded.

    • RDoc::Parser::C finds method bodies better now.

    • Fixed further locations where output encoding was not preserved. Bug #11 by Vít Ondruch, RubyForge bug #28791 by Dzmitry Prakapenka.

    • Fixed display of numeric lists on the index page and file pages. Bug #12 by tobijk.

    • Skip TestRDocOptions#test_check_files on windows until a windows-specific test can be created. RubyForge bug #28821 by Usaku Nakamura.

    • Fixed line-height of headings in method and alias descriptions. RubyForge Bug #2770 by Adam Avilla

    • Relaxed RDoc::Parser::Ruby#remove_private_comments to consume more dashes as older versions once did. Bug #7 by Claus Folke Brobak.

Posted in ,  | no comments | no trackbacks

History of RDoc and RubyGems

drbrain | Mon, 17 Jan 2011 22:42:00 GMT

The video of my talk, History of RDoc and RubyGems has been posted at Confreaks!

You can also download my slides for History of RubyGems and RDoc and my lightning talk How to Name Gems

Posted in , ,

rdoc-tags 1.2

drbrain | Fri, 07 Jan 2011 00:06:46 GMT

A TAGS file generator based on ctags.sourceforge.net/FORMAT. rdoc-tags handles namespaced classes and modules, ! and ? methods, constants and attributes better than Exuberant Ctags.

rdoc-tags includes a Hoe plugin :rdoc_tags making it easy to add tag support to your ruby project. If you don’t use Hoe you can instead use RDoc::TagsTask to add rake tasks for building TAGS to your ruby project.

Changes:

  • Minor enhancements

    • rdoc-tags can now merge with Exuberant Ctags for projects with extensions or other languages. Use --ctags-merge to enable merging. rdoc-tags will discover Exuberant Ctags in your PATH by checking the output of ctags --version.

  • Bug Fixes

    • Fixed Hoe plugin to match RDoc::TagsTask arguments.

    • Require rdoc/generator/tags first for RDoc::TagsTask.

    • The tags generator no longer creates a create.rid file.

Posted in ,  | no comments