Problems moving from ri1.8 to ri1.9.1

Barrie Stott <[email protected]> Fri, 21 May 2010 19:44:26 +0100
Newsgroups gmane.comp.lang.ruby.documentation
Message-ID <20100521184426.GA5656@etch1>
I am running a Debian unstable GNU/Linux system and trying to move
from ruby1.8 to ruby1.9.1. As part of the exercise I wanted to be able
to use ri1.9.1 instead of ri1.8 but have had great trouble in trying
to create the .ri files for 1.9.1.

First I tried running the following to get 'system' .ri stuff:
	rdoc1.9.1 -Y --format='ri' -M -U 2>/tmp/res2 1>/tmp/res1

I have no real confidence in the above command line but the man page
for rdoc1.9.1 wasn't very good and erroneous in parts. If someone
knows what the command line should be I'd be pleased to hear.

The file /tmp/res2 is a file of 13500 lines similar to:
	Unrecognized directive 'body' in SystemExit/status-i.yaml

Apart from the last line that read, 'Generating RI...', every line was
of the form 'Unrecognized directive x in y'. This looks like a set of
error messages to me but I have no idea what to do about them. Help
would be appreciated.

An unrelated circumstance is an anomaly that I don't understand.
Running 'ri1.8 File::new' and 'ri1.9.1 File::new' gives different
results but I have only a single File/new-c.ri on the machine. Again,
if someone can shed light on this I'd be very grateful.

Here's my justification for my claim in the previous paragraph.
-	I ran 'updatedb' followed by 'locate /File/new'. This gave four
	files, all .yaml except for /usr/share/ri1.8/system/File/new-c.ri,
	saying that there is a single /File/new-c.ri on my system.
-	I ran 'ri1.8 File::new >/tmp/new1.8', 'ri1.9.1 File::new >/tmp/new1.9'
	and 'diff U 0 /tmp/new1.{8,9}'. This gave me the stuff below
	showing that ri1.8 and ri1.9.1 can give different results on the
	same file.

Barrie.
-------------------------------------------
--- /tmp/new1.8	2010-05-21 18:41:27.000000000 +0100
+++ /tmp/new1.9	2010-05-21 18:41:55.000000000 +0100
@@ -2,2 +2,4 @@
-     File.new(filename, mode="r")            => file
-     File.new(filename [, mode [, perm]])    => file
+     File.new(filename, mode="r" [, opt])            => file
+     File.new(filename [, mode [, perm]] [, opt])    => file
+
+     From Ruby 1.9.1
@@ -6,7 +8,15 @@
-     ``r'') and returns a new +File+ object. See the description of
-     class +IO+ for a description of _mode_. The file mode may
-     optionally be specified as a +Fixnum+ by _or_-ing together the
-     flags (O_RDONLY etc, again described under +IO+). Optional
-     permission bits may be given in _perm_. These mode and permission
-     bits are platform dependent; on Unix systems, see +open(2)+ for
-     details.
+     ``r'') and returns a new +File+ object.
+
+     Parameters
+
+     See the description of class +IO+ for a description of _mode_. The
+     file mode may optionally be specified as a +Fixnum+ by _or_-ing
+     together the flags (O_RDONLY etc, again described under +IO+).
+
+     Optional permission bits may be given in _perm_. These mode and
+     permission bits are platform dependent; on Unix systems, see
+     +open(2)+ for details.
+
+     Optional _opt_ parameter is same as in <code.IO.open</code>.
+
+     Examples
-------------------------------------------