Yay, test suite!

The test suite currently doesn't test any of the module options, =for,
=begin/=end, or some of the other odder edge conditions, but it does test
all of Pod::Man, Pod::Text, and the three Pod::Text::* sub-modules, as
well as testing Pod::ParseLink pretty thoroughly.  (It compares the
formatter output against saved output that's been hand-checked, which
isn't the most ideal testing approach but it's the best idea that we've
come up with for large-scale translator testing yet.)

Other translator authors may want to look at basic.pod; it's a pretty
decent torture test of weird things (and patches to make it more of a
torture test will be happily accepted).

This release also cleans up a bunch of minor bugs that were turned up by
the test suite, including fixing all the -w noise in Pod::Text and
Pod::ParseLink and fixing some major problems with formatting codes in
headings with Pod::Text::Overstrike.

Does anyone actually use pod2text --alt?  I'm really tempted to remove it;
it's a bit of a hassle to maintain.

The URL

    ftp://ftp.eyrie.org/pub/software/modules/podlators-1.14.tar.gz

has entered CPAN as

  file: $CPAN/authors/id/R/RR/RRA/podlators-1.14.tar.gz
  size: 61048 bytes
   md5: dd4fdfdcb714552c8bc08a4f8ff8f0c7

No action is required on your part
Request entered by: RRA (Russ Allbery)
Request entered on: Fri, 23 Nov 2001 10:18:49 GMT
Request completed:  Fri, 23 Nov 2001 10:19:42 GMT

Changes from previous release:

2001-11-23  Russ Allbery  <[EMAIL PROTECTED]>

        * VERSION: podlators 1.14 released.

        * t/parselink.t: New file.
        * t/basic.t: New file.
        * t/basic.cap: New file.
        * t/basic.clr: New file.
        * t/basic.ovr: New file.
        * t/basic.man: New file.
        * t/basic.pod: New file.
        * t/basic.txt: New file.

        * lib/Pod/Text/Overstrike.pm (strip_format): New function.
        (seq_b): Use it.
        (seq_f): Likewise.
        (seq_i): Likewise.
        (heading): New override to prevent excessive interpolation, since
        it's necessary to interpolate before formatting or the formatting
        codes end up in the output.
        (cmd_head1): Simplify, interpolate here, and use strip_format.
        (cmd_head2): Likewise.
        (cmd_head3): Likewise.
        (cmd_head4): New function, doing the same as cmd_head3().

        * lib/Pod/Man.pm (initialize): Move initialization of per-file
        variables from here...
        (begin_pod): ...to here.  Remove WEIRDINDENT, add SHIFTS, and
        rename NEWINDENT to SHIFTWAIT.
        (textblock): Maintain a stack of shifts rather than using
        WEIRDINDENT.  Rename NEWINDENT to SHIFTWAIT.
        (cmd_over): Likewise.
        (cmd_back): Likewise.
        (cmd_item): Likewise.
        (cmd_head3): Use font escapes rather than .I to avoid strange
        problems with quoting, at least for =head3.  =head1 and =head2
        likely still have troubles with repeated double-quotes.
        (outindex): Accumulate output in an array to avoid some duplicate
        code.
        (switchquotes): Fix all fixed-width font changes for nroff, not
        just the simple ones, and don't hard-code the value of any
        fixed-width font.

2001-11-22  Russ Allbery  <[EMAIL PROTECTED]>

        * lib/Pod/ParseLink.pm (_parse_section): Fix a bug in the handling
        of link text that's entirely in quotes.

        * lib/Pod/Text.pm (heading): New function, for generic code for
        all headings.  loose now applies to all headers, not just =head1.
        Also output any =item tags left open.
        (cmd_head1): Use it.
        (cmd_head2): Likewise.
        (cmd_head3): Likewise.
        (cmd_head4): Likewise.
        (cmd_over): Output any =item tags left open.
        (cmd_back): Likewise.
        (command): No longer handle open =item tags here since this is now
        handled by individual commands.  Fixes handling of =for or
        =begin/=end in =item paragraphs.
        (cmd_item): Default to a tag of "*" if none is given.
        (item): Insert some whitespace for empty item paragraphs to keep
        them from blending into subsequent text.  Fix -w warnings.

        * lib/Pod/ParseLink.pm: Documentation fixes.  Double quotes are
        only removed around sections, not names.  Text entirely enclosed
        in double quotes is interpreted as a link to a section.  Expand
        the explanation of formatting codes inside L<> codes.
        (_parse_section): Avoid -w warnings on empty page or section
        components.
        (parselink): Avoid -w warnings on empty name components.

        * lib/Pod/Man.pm (begin_pod): When intuiting the man page name for
        a module, also strip $^O by itself as a directory component even
        when not preceeded or followed by a dash and other text.

-- 
Russ Allbery ([EMAIL PROTECTED])             <http://www.eyrie.org/~eagle/>

Reply via email to