[BACK]Return to ChangeLog CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / cvsweb

Annotation of cvsweb/ChangeLog, Revision 3.187

3.22      knu         1: $FreeBSD$
3.92      scop        2:
3.183     scop        3: 2005-01-08  Ville Skyttä  <scop@FreeBSD.org>
                      4:
                      5:        * cvsweb.cgi (spacedHtmlText): Fix tab expansion to take all
                      6:        consecutive tabs into account on each pass, not just the last tab.
                      7:        [Submitted by: Vlado Klimovsky <klimovsky@iblsoft.com>]
                      8:
3.184     scop        9:        * cvsweb.cgi (config_error): New subroutine for reporting errors
                     10:        in configuration files.
                     11:
3.185     scop       12:        * cvsweb.cgi (html_header): Avoid warning when $CSS is not defined.
                     13:
3.186     scop       14:        * cvsweb.conf: Add sample code for loading site configuration file
                     15:        snippets from a conf.d directory.
                     16:
3.187   ! scop       17:        * cvsweb.cgi, cvsweb.conf: The new configuration variable
        !            18:        $allow_mailtos can be set to false in order to disable creation
        !            19:        of mailto: links in various HTMLized views.  Thanks to
        !            20:        Solar Designer <solar@openwall.com> for the suggestion.
        !            21:
3.180     scop       22: 2005-01-06  Ville Skyttä  <scop@FreeBSD.org>
                     23:
                     24:        * cvsweb.conf (ForbiddenFiles): Comment typo fix.
                     25:        http://bugs.debian.org/288428
                     26:
3.181     scop       27:        * cvsweb.conf, cvsweb.cgi: Configuration documentation improvements.
                     28:
3.182     scop       29:        * cvsweb.cgi: Don't prefer the current dir (usually cgi-bin) when
                     30:        finding a readable dir to operate in.  Checking whether we can read
                     31:        that dir in the CGI script code may not be enough in some tightly
                     32:        controlled enviroments, eg. SELinux, since it doesn't necessarily
                     33:        apply to the commands we invoke.
                     34:
3.179     scop       35: 2004-12-11  Ville Skyttä  <scop@FreeBSD.org>
                     36:
                     37:        * cvsweb.cgi: Preserve values of hidecvsroot and hidenonreadable
                     38:        when submitting the options form.  Thanks to Daniel Leidert for
                     39:        the heads up.
                     40:
3.177     scop       41: 2004-12-10  Ville Skyttä  <scop@FreeBSD.org>
                     42:
3.178     scop       43:        * cvsweb.cgi (stickyvars): Add hidecvsroot and hidenonreadable.
                     44:
3.177     scop       45:        * cvsweb.conf (DEFAULTVALUE): Improve documentation.
                     46:
3.176     scop       47: 2004-11-17  Ville Skyttä  <scop@FreeBSD.org>
                     48:
                     49:        * cvsweb.cgi (human_readable_diff): Fix query string in links
                     50:        when human readable diff is the default diff format.
                     51:        [Submitted by: Michael Sims <michaels@crye-leike.com> (modified)]
                     52:
3.174     scop       53: 2004-11-06  Ville Skyttä  <scop@FreeBSD.org>
                     54:
3.175     scop       55:        * Release 3.0.4.
                     56:
3.174     scop       57:        * cvsweb.cgi (spacedHtmlText): Fix tab expansion to not eat all
                     58:        characters before the first tab.  This bug was introduced in
                     59:        3.0.2.
                     60:
3.172     scop       61: 2004-11-03  Ville Skyttä  <scop@FreeBSD.org>
                     62:
3.173     scop       63:        * Release 3.0.3.
                     64:
3.172     scop       65:        * cvsweb.cgi (spacedHtmlText): Improve whitespace handling
                     66:        when $hr_breakable is true, especially with String::Ediff.
                     67:        [Submitted by: Bo Zou <bzou@atreus-systems.com> (modified)]
                     68:
3.171     scop       69: 2004-10-16  Ville Skyttä  <scop@FreeBSD.org>
                     70:
                     71:        * cvsweb.cgi: Extend the magic "." revision support so that it
                     72:        takes the branch into account (if defined in the query string's
                     73:        only_with_tag parameter).  Applies to all download, view, and
                     74:        annotate URLs.
                     75:
3.169     scop       76: 2004-10-15  Ville Skyttä  <scop@FreeBSD.org>
3.168     scop       77:
3.170     scop       78:        * cvsweb.cgi (navigateHeader): Support linking to log view's
                     79:        branch/tag anchors.
                     80:
3.168     scop       81:        * cvsweb.cgi, cvsweb.conf (DEBUG): New configuration parameter for
                     82:        enabling more output to web server error log for troubleshooting.
                     83:
3.167     scop       84: 2004-08-20  Ville Skyttä  <scop@FreeBSD.org>
                     85:
                     86:        * Release 3.0.2.
                     87:
3.166     scop       88: 2004-08-11  Ville Skyttä  <scop@FreeBSD.org>
                     89:
                     90:        * cvsweb.cgi: Review and rework URI escaping.
                     91:
3.161     scop       92: 2004-08-10  Ville Skyttä  <scop@FreeBSD.org>
                     93:
3.164     scop       94:        * cvsweb.cgi: Send temporary HTTP redirects where appropriate
                     95:        instead of always permanent ones.
                     96:
3.165     scop       97:        * cvsweb.cgi: When submitting the options form in an Attic/ dir,
                     98:        stay there, don't change to the parent dir.
                     99:
3.162     scop      100:        * cvsweb.cgi: Ensure that CVSROOT/modules is always properly closed.
                    101:
3.163     scop      102:        * cvsweb.cgi: Coding style and variable scoping improvements.
                    103:
3.161     scop      104:        * cvsweb.conf (MIRRORS): Add example mirror configuration.
                    105:
3.159     scop      106: 2004-07-28  Ville Skyttä  <scop@FreeBSD.org>
3.158     scop      107:
                    108:        * cvsweb.cgi: Get rid of the $newpath and $pathinfo globals.
3.159     scop      109:
3.160     scop      110:        * cvsweb.cgi: Don't use $&.
                    111:
3.159     scop      112:        * cvsweb.cgi: Add a couple of table summaries.
3.158     scop      113:
3.156     scop      114: 2004-07-26  Ville Skyttä  <scop@FreeBSD.org>
                    115:
3.157     scop      116:        * cvsweb.cgi: Make Attic "stripping" regexps more strict in
                    117:        order to not treat eg. "FooAttic" as Attic.
                    118:
3.156     scop      119:        * cvsweb.conf (ICONS): Shorten default alt text for binaries
                    120:        to [BIN] for better text-based browser experience.
                    121:
3.155     scop      122: 2004-07-24  Ville Skyttä  <scop@FreeBSD.org>
                    123:
                    124:        * cvsweb.cgi: Coding style and variable scoping improvements.
                    125:
3.154     scop      126: 2004-07-17  Ville Skyttä  <scop@FreeBSD.org>
                    127:
                    128:        * cvsweb.cgi, css/cvsweb.css: Combine CSS properties for all
                    129:        diff lines into the "diff" class, change default diff colors for
                    130:        better experience on non-highcolor displays, and use only generic
                    131:        font families.
                    132:
3.152     scop      133: 2004-05-08  Ville Skyttä  <scop@FreeBSD.org>
                    134:
3.153     scop      135:        * Release 3.0.1.
                    136:
3.152     scop      137:        * cvsweb.cgi: Include CVSHistory links for files from the log view.
                    138:
3.151     scop      139: 2004-05-05  Ville Skyttä  <scop@FreeBSD.org>
                    140:
                    141:        * cvsweb.cgi, cvsweb.conf: Light integration with CVSHistory.
                    142:
3.150     scop      143: 2004-04-24  Ville Skyttä  <scop@FreeBSD.org>
                    144:
                    145:        * cvsweb.cgi (flush_diff_rows): Fix HTML escaping problem in the
                    146:        "PreChangeRemove" state.
                    147:        [Submitted by: Mark A. Mankins <raider15@mankins.us>]
                    148:
3.148     scop      149: 2004-04-20  Ville Skyttä  <scop@FreeBSD.org>
                    150:
                    151:        * cvsweb.cgi: Resurrect the ability to link to the latest revision
                    152:        of a file using ?rev=. and ?rev=HEAD.
                    153:
3.149     scop      154:        * cvsweb.cgi (doGraphView): Make sure branch links from the graph
                    155:        view contain only the target branch.
                    156:
3.146     scop      157: 2004-03-30  Ville Skyttä  <scop@FreeBSD.org>
                    158:
                    159:        * cvsweb.cgi: Allow revision numbers without dots (eg. "1").
                    160:
3.147     scop      161:        * cvsweb.cgi (download_url): Fix download links for valid non-branch
                    162:        revisions which contain 0's, for example "2.0.2.1".
                    163:        Thanks to Jules <jules@zjuul.net> for the heads up.
                    164:
3.145     scop      165: 2004-03-17  Ville Skyttä  <scop@FreeBSD.org>
                    166:
                    167:        * cvsweb.conf (cvs_options): Remove -l as it's not available in
                    168:        current stable or "feature" versions of cvs.
                    169:
3.144     scop      170: 2004-03-16  Ville Skyttä  <scop@FreeBSD.org>
                    171:
                    172:        * cvsweb.cgi (doAnnotate): Add CSS class for current revision lines.
                    173:        * css/cvsweb.css (current-rev): New.
                    174:        [Submitted by: Max Laier <max@love2party.net> (modified)]
                    175:
3.141     scop      176: 2004-02-27  Ville Skyttä  <scop@FreeBSD.org>
                    177:
3.143     scop      178:        * cvsweb.cgi: Always pass the -m (module) argument to cvsgraph(1).
                    179:        That's the right thing to do and makes the graphing more robust
                    180:        against unexpected cvsgraph.conf files.  Also move some related
                    181:        documentation from INSTALL to cvsweb.conf.
                    182:        Thanks to Gernot W. Schmied and Jon Noack for the heads up.
                    183:
3.142     scop      184:        * cvsweb.conf: Enscript regexp improvements: fix regexp for
                    185:        Perl scripts [Submitted by: Stefan Moessler <moessler@getemed.de>
                    186:        and Jon Noack <noackjr@alumni.rice.edu>], treat *.pac as JavaScript,
                    187:        use Perl states instead of Makefile ones for Makefile.PL, other
                    188:        documentation improvements.
3.141     scop      189:
3.140     scop      190: 2004-02-26  Ville Skyttä  <scop@FreeBSD.org>
                    191:
                    192:        * Release 3.0.0.
                    193:
3.138     scop      194: 2004-02-23  Ville Skyttä  <scop@FreeBSD.org>
                    195:
3.139     scop      196:        * cvsweb.cgi (doDiff): Don't pass -p or -F to rcsdiff(1) when
                    197:        doing side by side diffs.  diff(1) from diffutils < 2.8 does not
                    198:        like that.  Thanks to Jon Noack for the catch.
                    199:
3.138     scop      200:        * cvsweb.conf: Improve $showfunc and %funcline_regexp documentation.
                    201:
3.135     scop      202: 2004-02-15  Ville Skyttä  <scop@FreeBSD.org>
                    203:
3.137     scop      204:        * Release 2.9.3 (beta).
                    205:
3.135     scop      206:        * cvsweb.cgi (printLog): Don't turn off tag, diff etc linking
                    207:        in markup view.
                    208:        [Submitted by: Christopher Wolf <wolf@ti.com> (modified)]
                    209:
3.136     scop      210:        * cvsweb.cgi (cvswebMarkup): Use "Revision" consistently, HTML
                    211:        escape tag names also when $show_log_in_markup is turned off.
                    212:
3.130     scop      213: 2004-02-14  Ville Skyttä  <scop@FreeBSD.org>
                    214:
                    215:        * cvsweb.cgi (DIFFTYPES): Use width=168 in side by side diffs to
                    216:        support 80 character line lengths.
                    217:        [Submitted by: Christopher Wolf <wolf@ti.com>]
                    218:
3.131     scop      219:        * cvsweb.cgi, cvsweb.css: Better control over line wrapping in the
                    220:        directory view.
                    221:        [Submitted by: Christopher Wolf <wolf@ti.com> (modified)]
                    222:
3.132     scop      223:        * cvsweb.cgi, enscript/lang_cvsweb_diff.st: Use a separate Enscript
                    224:        language file for diffs, and tune it for better diff readability.
                    225:        [Submitted by: Christopher Wolf <wolf@ti.com> (modified)]
                    226:
3.133     scop      227:        * cvsweb.cgi: Fix tarball/zip creation from non-toplevel dirs.
                    228:        This was broken since revision 3.191 (FreeBSD-CVSweb 2.9.1).
3.134     scop      229:        [Submitted by: Christopher Wolf <wolf@ti.com> (modified)]
                    230:
                    231:        * cvsweb.cgi (doGraphView): Add a compatiblity kludge for the
                    232:        client side image map markup to make it work eg. with Mozilla
                    233:        based browsers.  Thanks to Christopher Wolf for the catch.
3.133     scop      234:
3.123     scop      235: 2004-01-31  Ville Skyttä  <scop@FreeBSD.org>
                    236:
3.129     scop      237:        * Release 2.9.2 (beta).
                    238:
3.125     scop      239:        * cvsweb.cgi: Rework handling of forbidden files.  forbidden_module()
                    240:        and @HideModules had nothing to do with modules in CVS terminology,
                    241:        and the implementation was broken.  forbidden() and @ForbiddenFiles
                    242:        now affect directories as well.
                    243:
3.128     scop      244:        * cvsweb.conf: Sample regexp improvements, remove @HideModules,
                    245:        disable Apache logo by default.
3.125     scop      246:
3.123     scop      247:        * cvsweb.cgi: Path canonicalization/portability improvements, makes
3.124     scop      248:        @ForbiddenFiles more robust against not-too-paranoid regexps.
3.123     scop      249:
3.126     scop      250:        * cvsweb.cgi: Hide CVSROOT directories only directly below the root.
                    251:
3.127     scop      252:        * README, README.FreeBSD: Combine into README.
                    253:
3.116     scop      254: 2004-01-24  Ville Skyttä  <scop@FreeBSD.org>
                    255:
3.117     scop      256:        * cvsweb.cgi: Add support for per file type external diff commands.
                    257:        [Submitted by: Bryce Nesbitt <bryce1@obviously.com> (modified)]
                    258:
                    259:        * cvsweb.conf (DIFF_COMMANDS): New, to support the above.
                    260:
3.120     scop      261:        * cvsweb.cgi: Avoid some warnings when HTMLifying diffs and doing
                    262:        revisionless checkouts (ie. HEAD), improve diff linking for binary
                    263:        files, fix "as text" links for non-text/plain text files, make
3.122     scop      264:        search_path a bit more robust.
3.116     scop      265:
3.122     scop      266:        * cvsweb.conf (command_path): Change to a list for portability.
                    267:
3.121     scop      268:        * cvsweb.cgi: Clean up IPC::Run usage; get rid of timeouts, they
                    269:        seem to cause more harm than good.
                    270:
3.115     scop      271: 2004-01-21  Ville Skyttä  <scop@FreeBSD.org>
                    272:
                    273:        * cvsweb.cgi: Use only_complete in MIME::Types initialization
                    274:        to get only useful entries: smaller memory footprint.
                    275:
3.113     scop      276: 2004-01-15  Ville Skyttä  <scop@FreeBSD.org>
                    277:
3.114     scop      278:        * cvsweb.cgi: Review, clean up and speed up regular expression
                    279:        usage.  Also change a few globals to constants.
                    280:
3.113     scop      281:        * cvsweb.conf: Remove the $checkout_magic configuration variable.
                    282:        Support for it has been apparently broken since 2000-10-10 so
                    283:        probably nobody will miss it.
                    284:
3.112     scop      285: 2004-01-11  Ville Skyttä  <scop@FreeBSD.org>
                    286:
                    287:        * cvsweb.cgi: Lots of improvements in download/view linking
                    288:        wrt. MIME types and binary files, avoid logging the file
                    289:        multiple times when doing a checkout.
                    290:        (VERSION): Set to 2.9.2-dev.
                    291:
                    292:        * css/cvsweb.css (display-link): New.
3.111     scop      293:
                    294:        * cvsweb.conf (long_intro): Improve.
                    295:
                    296: 2004-01-10  Ville Skyttä  <scop@FreeBSD.org>
3.110     scop      297:
                    298:        * cvsweb.cgi (download_link): Get rid of the open-in-new-window
                    299:        code altogether.  The end user should decide, not the sysadmin.
                    300:
                    301:        * cvsweb.conf: Remove now unused parameters $open_extern_window,
                    302:        $extern_window_height, and $extern_window_width.
                    303:
3.108     scop      304: 2003-10-25  Ville Skyttä  <scop@FreeBSD.org>
                    305:
                    306:        * cvsweb.cgi (doCheckout): Fix checkout from paths where the
                    307:        top level directory starts with a dot, improve error message.
                    308:        [Submitted by: David O'Shea <dcoshea@hotmail.com>]
                    309:
3.109     scop      310:        * cvsweb.cgi: General error handling and message improvements.
                    311:        Avoid "cvs export" for unsupported tarball requests.
                    312:
3.104     scop      313: 2003-10-05  Ville Skyttä  <scop@FreeBSD.org>
                    314:
3.107     scop      315:        * Release 2.9.1 (beta).
                    316:
3.105     scop      317:        * cvsweb.cgi: Show contents of README.cvs(.html) in the dir view
                    318:        header if such a file is present in the directory.
                    319:
3.104     scop      320:        * cvsweb.cgi (human_readable_diff): Add some links to markup view.
                    321:
3.106     scop      322:        * INSTALL: Clean up and add instructions for upgrading from 2.0.x.
                    323:
3.103     scop      324: 2003-10-02  Ville Skyttä  <scop@FreeBSD.org>
                    325:
                    326:        * cvsweb.cgi: Improve markup, change to XHTML 1.0 Transitional.
                    327:
3.102     scop      328: 2003-09-26  Ville Skyttä  <scop@FreeBSD.org>
                    329:
                    330:        * cvsweb.cgi: Pulling in the huge CGI module only for the sake
                    331:        of query string parsing isn't quite worth it.  Revert to a
                    332:        homebrew implementation, use URI::Escape and grok semicolons as
                    333:        separators.
                    334:
3.101     scop      335: 2003-09-15  Ville Skyttä  <scop@FreeBSD.org>
                    336:
                    337:        * cvsweb.cgi (cvswebMarkup): Add line numbers support to
                    338:        internal "preformat-in-markup" mode.  Prefer enscript(1) over
                    339:        it (if enabled).
                    340:
3.96      scop      341: 2003-09-14  Ville Skyttä  <scop@FreeBSD.org>
                    342:
                    343:        * cvsweb.cgi: Rewrite tarball/zip creation using IPC::Run,
                    344:        now works with mod_perl.  Improve error handling, allow .tgz
                    345:        extension for tarballs.
                    346:
3.97      scop      347:        * cvsweb.cgi: Don't show tarball/zip download links if the
                    348:        commands for creating them aren't available.
                    349:
3.99      scop      350:        * cvsweb.cgi: Strict input checking and laundering, needed
                    351:        for running under Perl 5.8 with taint checks enabled (PR 52386).
                    352:        Use the CGI module for input parsing.
                    353:
3.100     scop      354:        * cvsweb.cgi: More use of File::Spec for portability.
                    355:
3.98      scop      356:        * cvsweb.conf: Improve documentation and default settings.
                    357:
3.94      scop      358: 2003-09-07  Ville Skyttä  <scop@FreeBSD.org>
                    359:
                    360:        * cvsweb.cgi: Don't offer tarball/zip downloads for empty dirs.
                    361:
3.95      scop      362:        * cvsweb.cgi, cvsweb.css: Redesign option forms, general
                    363:        markup improvements.
                    364:
3.92      scop      365: 2003-09-06  Ville Skyttä  <scop@FreeBSD.org>
                    366:
3.93      scop      367:        * cvsweb.cgi: Get rid of mod_perl specific code.
                    368:        It's not needed and will only cause trouble because of subtle
                    369:        differences between mod_perl 1 and 2.
                    370:
3.92      scop      371:        * cvsweb.cgi: Try to find and cd into a readable directory
                    372:        before doing any cvs or rcs operations for better support for
                    373:        non-readable cgi-bin directories.
                    374:
3.91      scop      375: 2003-08-12  Ville Skyttä  <scop@FreeBSD.org>
                    376:
                    377:        * cvsweb.cgi, cvsweb.css: Use String::Ediff for Emacs-style
                    378:        human readable ediffs if available.
                    379:        [Submitted by: Bo Zou <boxzou@yahoo.com> (modified)]
                    380:
3.90      scop      381: 2003-08-08  Ville Skyttä  <scop@FreeBSD.org>
                    382:
                    383:        * cvsweb.cgi: Use IPC::Run instead of IPC::Open2 and IO::Pipe
                    384:        for better portablity (eg. for mod_perl 1.99+).
                    385:
3.87      scop      386: 2003-08-03  Ville Skyttä  <scop@FreeBSD.org>
                    387:
                    388:        * cvsweb.cgi: Baby steps in use of File::Spec (0.8+) for
                    389:        better portability.
3.89      scop      390:
                    391:        * cvsweb.cgi: Implement enscript-colored diffs
                    392:
                    393:        * cvsweb.cgi (doDiff): Use rcsdiff_options.
3.88      scop      394:
                    395:        * cvsweb.conf (rcsdiff_options): New.
3.87      scop      396:
3.86      scop      397: 2003-07-30  Ville Skyttä  <scop@FreeBSD.org>
                    398:
                    399:        * cvsweb.conf-freebsd (prcategories): Bring up to date.
                    400:        [Submitted by: simon@FreeBSD.org]
                    401:
3.85      scop      402: 2003-07-20  Ville Skyttä  <scop@FreeBSD.org>
                    403:
                    404:        * cvsweb.cgi: Make $cvstreedefault optional in cvsweb.conf,
                    405:        improve error messages and warnings.
                    406:        * cvsweb.conf: Doc updates.
                    407:
3.83      scop      408: 2003-06-25  Ville Skyttä  <scop@FreeBSD.org>
                    409:
                    410:        * cvsweb.cgi: Rework MIME type discovery, now uses
                    411:        MIME::Types(3) if it's available.
3.84      scop      412:        (cvswebMarkup): Use height="100%" for <embed>.
3.83      scop      413:        * cvsweb.conf: Doc update, comment out '*' from %MTYPES.
                    414:        [Heads up by: Daniel Wallner <daniel.wallner@bredband.net>]
                    415:
3.81      scop      416: 2003-06-24  Ville Skyttä  <scop@FreeBSD.org>
                    417:
                    418:        * cvsweb.cgi: Don't try to rlog(1) unreadable files
                    419:        [Submitted by: Bernd Groh <bgroh@redhat.com> (modified)]
                    420:
                    421:        * cvsweb.cgi (doGraphView): Make it work with multiple roots.
                    422:        [Submitted by: Christophe Kalt <kalt@taranis.org>]
                    423:
3.82      scop      424:        * cvsweb.cgi: Show binary (-kb) files with a different icon,
                    425:        show keyword expansion mode in log view.
                    426:        * cvsweb.conf: Add binfile to %ICONS.
                    427:        * icons/binary.gif: New.
                    428:        [Submitted by: Paul Gelderblom <paulgelderblom@bigfoot.com>]
                    429:
3.79      scop      430: 2003-05-04  Ville Skyttä  <scop@FreeBSD.org>
                    431:
                    432:        * cvsweb.cgi (cvswebMarkup): Implement line number output.
                    433:        [Submitted by: Roy Smith <roy@panix.com> (modified)]
                    434:
3.80      scop      435:        * cvsweb.conf (DEFAULTVALUE): Don't show line numbers by default.
3.79      scop      436:        * enscript/lang_cvsweb.st: Support for line numbers.
                    437:        * css/cvsweb.css (src): Ditto.
                    438:        * README.FreeBSD: Ditto.
                    439:
3.78      scop      440: 2003-05-01  Ville Skyttä  <scop@FreeBSD.org>
                    441:
                    442:        * cvsweb.cgi (cvswebMarkup): Syntax highlighting with GNU Enscript.
                    443:        * cvsweb.conf (CMD): Search for enscript.
                    444:        * cvsweb.conf (allow_enscript, enscript_options, enscript_types): New.
                    445:        * enscript/lang_cvsweb.st: New.
                    446:        [Submitted by: Neal Horman <neal@wanlink.com> (modified)]
                    447:
                    448:        * INSTALL: Document GNU Enscript stuff.
                    449:        * README.FreeBSD: Ditto.
                    450:
3.75      scop      451: 2003-04-27  Ville Skyttä  <scop@FreeBSD.org>
                    452:
                    453:        * cvsweb.cgi: Nuke $verbose and some undefinedness warnings.
3.77      scop      454:        Handle text/vnd.viewcvs-markup for interoperability/easier
                    455:        migration from ViewCVS.
                    456:
                    457:        * cvsweb.cgi (fileSortCmp): Sort parent dir first, then Attic.
                    458:
                    459:        * cvsweb.cgi (htmlify): Don't link "man pages" that contain only
                    460:        numbers and punctuation.
                    461:
                    462:        * cvsweb.cgi (doGraphView): Prevent cross site scripting in
                    463:        CvsGraph maps, output HTML 4.
                    464:
                    465:        * INSTALL: Minimum supported CvsGraph version is 1.4.0.
3.75      scop      466:
3.74      knu       467: 2003-02-11  Akinori MUSHA  <knu@iDaemons.org>
                    468:
                    469:        * cvsweb.cgi (htmlify): Improve man page linking. [Requested by:
                    470:        Yoshihiko SARUMARU <mistral@imasy.or.jp>]
                    471:
3.72      scop      472: 2002-12-23  Ville Skyttä  <scop@FreeBSD.org>
                    473:
                    474:        * cvsweb.conf*, cvsweb.cgi: Use $^O instead of `uname`.
                    475:        See the perlport(1) manual page for $^O values.
                    476:
                    477:        * cvsweb.conf (CMD): Prefer gtar over tar.
                    478:        (zip_options): Add -q to prevent zip(1) from trashing error logs.
                    479:
3.73      scop      480:        * cvsweb.cgi: Get rid of unsafe environment variables.
                    481:        [Submitted by: Paul Gelderblom <paul.gelderblom@lostboys.nl>]
                    482:
3.70      scop      483: 2002-12-21  Ville Skyttä  <scop@FreeBSD.org>
                    484:
                    485:        * cvsweb.conf (file_list_len): New configuration variable.
                    486:
3.71      scop      487:        * cvsweb.cgi (getDirLogs): Use $file_list_len to handle dirs
                    488:        with lots of files.
3.70      scop      489:        [Submitted by:  Peter Klausner <peter.klausner@systor.com> and
                    490:         Tomas Novak <tnovak@atrey.karlin.mff.cuni.cz> (modified)]
3.71      scop      491:
                    492:        * cvsweb.cgi: Add case (in)sensitive sort option for files.
                    493:        [Submitted by: Paul Gelderblom <paul.gelderblom@lostboys.nl>]
3.70      scop      494:
3.69      scop      495: 2002-11-24  Ville Skyttä  <scop@FreeBSD.org>
                    496:
                    497:        * cvsweb.cgi: Use File::Temp for creating temporary stuff,
                    498:        only dirs for now, bump minimum Perl version to 5.005_03.
                    499:
3.67      scop      500: 2002-11-16  Ville Skyttä  <scop@FreeBSD.org>
                    501:
3.68      scop      502:        * cvsweb.cgi: Move CSS to external file, HTML escaping fixes.
3.67      scop      503:        * cvsweb.conf: New configuration variable: $cssurl
                    504:        * css/cvsweb.css: New.
                    505:
3.66      scop      506: 2002-11-13  Ville Skyttä  <scop@FreeBSD.org>
                    507:
                    508:        * cvsweb.cgi: Implement CvsGraph integration.
                    509:        Thanks to CvsGraph and ViewCVS folks for ideas.
                    510:
                    511:        * cvsweb.conf (allow_cvsgraph, cvsgraph_config): New variables.
                    512:        (ICONS): Add graph icon.
                    513:
                    514:        * icons/minigraph.png: New.
                    515:
                    516:        * INSTALL, README.FreeBSD, TODO.FreeBSD: CvsGraph update.
                    517:
3.64      scop      518: 2002-10-21  Ville Skyttä  <scop@FreeBSD.org>
                    519:
                    520:        * cvsweb.cgi: More CSS'ifications.
3.65      scop      521:        (htmlify): Improve URL regexp.
                    522:
3.64      scop      523:        * cvsweb.conf: Remove many options obsoleted by use of CSS,
                    524:        they'll be customizable again when the CSS moves to an external
                    525:        file.
                    526:
3.63      scop      527: 2002-09-23  Ville Skyttä  <scop@FreeBSD.org>
                    528:
                    529:        * cvsweb.conf (annotate_options): New config variable.
                    530:        * cvsweb.cgi (doAnnotate): Use @annotate_options.
                    531:        [Idea from: Debian bug tracking system (#117112)]
                    532:
3.60      scop      533: 2002-08-16  Ville Skyttä  <scop@FreeBSD.org>
                    534:
3.61      scop      535:        * cvsweb.cgi (doAnnotate): Make annotate work under mod_perl.
                    536:
3.62      scop      537:        * cvsweb.cgi (html_footer): Output address only if it's set.
                    538:        [Obtained from: NetBSD (modified)]
                    539:
3.60      scop      540:        * cvsweb.conf: Add -u to cvs_options by default on NetBSD.
                    541:        [Obtained from: NetBSD]
                    542:
3.58      scop      543: 2002-08-04  Ville Skyttä  <scop@FreeBSD.org>
                    544:
                    545:        * cvsweb.cgi: Made annotate work against a read only repository.
                    546:        This implementation uses the global -n option to cvs(1) if
                    547:        any of the annotate dirs is not writable.  If all are, we don't
                    548:        use -n since locking ensures consistent annotations.
                    549:        While working with this, noticed that annotate didn't work under
                    550:        mod_perl, nor does it after this change.
                    551:
3.59      scop      552:        * cvsweb.cgi: Fix annotate HTML output.
                    553:
3.57      scop      554: 2002-08-03  Ville Skyttä  <scop@FreeBSD.org>
                    555:
                    556:        * cvsweb.cgi: Escape filenames in directory listings.
                    557:        Re-indentation, whitespace cleanup.
                    558:
3.56      scop      559: 2002-07-30  Ville Skyttä  <scop@FreeBSD.org>
                    560:
                    561:        * INSTALL: Recommend cvs >= 1.11, typo fixes.
                    562:
                    563:        * cvsweb.conf (cvs_options): Mention cvs < 1.11 '-l' bug.
                    564:
3.55      scop      565: 2002-07-23  Ville Skyttä  <scop@FreeBSD.org>
                    566:
                    567:        * cvsweb.cgi: Fix diffs between tags.
3.54      scop      568:
                    569:        * cvsweb.cgi: Release as FreeBSD-CVSweb 2.0.5.
                    570:
3.53      scop      571: 2002-07-18  Ville Skyttä  <scop@FreeBSD.org>
                    572:
                    573:        * cvsweb.cgi (chooseMirror):
                    574:        Cleanup, sort and reformat mirror listing, fix HTML.
                    575:
                    576:        * cvsweb.cgi (chooseCVSRoot):
                    577:        Fix duplicate accesskeys and id's in the "front" page.
                    578:
                    579:        * cvsweb.cgi (download_link):
                    580:        Fix typo in JavaScript download window parameter.
                    581:
3.52      scop      582: 2002-07-14  Ville Skyttä  <scop@FreeBSD.org>
                    583:
                    584:        * cvsweb.cgi (download_link): Include query string in JavaScript
                    585:        download links in order to unbreak downloads from non-default
                    586:        CVS roots.
                    587:        [Submitted by: Yann Droneaud <ydroneaud@meuh.eu.org>]
                    588:
3.51      scop      589: 2002-07-10  Ville Skyttä  <scop@FreeBSD.org>
                    590:
                    591:        * cvsweb.cgi: Don't display @ForbiddenFiles in directory
                    592:        listings; also make sure their logs are not accessible via direct
                    593:        URLs.
                    594:
3.50      scop      595: 2002-07-09  Ville Skyttä  <scop@FreeBSD.org>
                    596:
                    597:        * cvsweb.cgi (fileSortCmp): Fix dir sort order breakage when
                    598:        there are rogue files in the repository dir and the sort order
                    599:        is not by file name.
                    600:        [Submitted by: "Khachaturov, Vassilii" <vassilii@tarunz.org>]
                    601:
3.46      scop      602: 2002-07-06  Ville Skyttä  <scop@FreeBSD.org>
                    603:
                    604:        * cvsweb.conf (long_intro): Remove authors' email addresses.
                    605:
3.48      scop      606:        * cvsweb.conf (cvs_options): Add -f; avoid reading ~/.cvsrc.
                    607:
3.47      scop      608:        * cvsweb.cgi: Add some labels and access keys to form controls.
                    609:
3.49      scop      610:        * cvsweb.cgi: Release as FreeBSD-CVSweb 2.0.4.
                    611:
3.44      scop      612: 2002-07-03  Ville Skyttä  <scop@FreeBSD.org>
                    613:
                    614:        * cvsweb.cgi: Remove an unused variable.
                    615:
3.45      scop      616:        * README, cvsweb.cgi, cvsweb.conf:
                    617:        Update various contact infos and links.
                    618:
3.41      scop      619: 2002-07-02  Ville Skyttä  <scop@FreeBSD.org>
                    620:
                    621:        * cvsweb.cgi (printLog): Remove extra <br> from first log message.
3.22      knu       622:
3.42      scop      623:        * cvsweb.cgi: Variablize HTML metadata, add "generator".
                    624:
3.43      scop      625:        * cvsweb.cgi: Close the CVSROOT/descriptions
                    626:        filehandle after we're finished with it.
                    627:
3.34      knu       628: 2002-05-22  Akinori MUSHA  <knu@iDaemons.org>
3.31      knu       629:
                    630:        * cvsweb.cgi: Read configuration files with `do' instead of
                    631:        `require' to unbreak mod_perl support.
3.32      knu       632:        [Submitted by: "Khachaturov, Vassilii" <vassilii@tarunz.org>]
3.31      knu       633:
                    634:        * cvsweb.cgi: Cosmetic fixes.  Use and/or rather than &&/|| to
                    635:        connect sentences.
                    636:
                    637:        * cvsweb.cgi: Exit with -1 if exec() fails.
                    638:
3.33      knu       639:        * cvsweb.cgi: Do not print a redundant `Diff' for rev.1.1.
                    640:        [Submitted by:  Ville Skyttä <ville.skytta@iki.fi>]
3.34      knu       641:
                    642:        * cvsweb.cgi: Prevent cross-site scripting.
                    643:        [Submitted by: Motoyuki Konno <motoyuki@bsdclub.org> (modified)]
3.33      knu       644:
3.35      knu       645:        * cvsweb.cgi: Skip a possible `locked by' clause and extract a
                    646:        revision number out of a log entry properly.
                    647:        [Submitted by: "Khachaturov, Vassilii" <vassilii@tarunz.org>]
                    648:
3.36      knu       649:        * cvsweb.cgi: Apply some HTML cleanups and use CSS instead of
                    650:        ancient HTML 3/4 tags and attributes.
                    651:        [Submitted by:  Ville Skyttä <ville.skytta@iki.fi>]
                    652:
                    653:        * cvsweb.cgi: Pass `use' features to import to make it more memory
                    654:        efficient.
                    655:        [Submitted by: Ville Skyttä <ville.skytta@iki.fi>]
                    656:
3.37      knu       657:        * cvsweb.cgi: Add new configuration variables: $allow_log_extra,
                    658:        $allow_dir_extra, and $allow_source_extra.
                    659:        [Submitted by: "Khachaturov, Vassilii" <vassilii@tarunz.org>]
                    660:
3.38      knu       661:        * cvsweb.cgi: Release as FreeBSD-cvsweb 2.0.2.
                    662:
3.39      knu       663:        * cvsweb.cgi: Previous fixes against cross-site scripting
                    664:        vulnerabilities were insufficient and buggy (error messages were
                    665:        messed up).  Revamp fatal() to HTML-quote automatically and fix
                    666:        error message output.
                    667:
3.40      knu       668:        * cvsweb.cgi: Release as FreeBSD-cvsweb 2.0.3.
                    669:
3.29      knu       670: 2002-05-11  Akinori MUSHA  <knu@iDaemons.org>
                    671:
                    672:        * cvsweb.cgi: There are no spaces at EOL in modern rlog output.
3.32      knu       673:        [Submitted by: "Khachaturov, Vassilii" <vassilii@tarunz.org>]
3.29      knu       674:
3.30      knu       675: 2002-05-08  Motoyuki Konno <motoyuki@FreeBSD.org>
                    676:
                    677:        * cvsweb.cgi: Fix a cross-site scripting vulnerablity.
                    678:
3.28      knu       679: 2002-05-07  Akinori MUSHA  <knu@iDaemons.org>
                    680:
                    681:        * cvsweb.conf-netbsd, cvsweb.conf-openbsd: NetBSD and OpenBSD
                    682:        don't use $CVSHeader$ but $Id$.
                    683:        [Submitted by: motoyuki@FreeBSD.org]
                    684:
                    685:        * cvsweb.cgi: Work around a bug of cvs -p; expand symlinks in a
                    686:        cvsroot.
                    687:        [Submitted by: motoyuki@FreeBSD.org]
                    688:
                    689:        * cvsweb.cgi: Fix parsing in 'tags' state.
3.32      knu       690:        [Submitted by: "Khachaturov, Vassilii" <vassilii@tarunz.org>]
3.28      knu       691:
3.25      knu       692: 2002-04-11  Akinori MUSHA  <knu@iDaemons.org>
                    693:
                    694:        * cvsweb.cgi, cvsweb.conf: Perform an HTML cleanup.
3.27      knu       695:        [Submitted by: Ville Skyttä <ville.skytta@iki.fi>]
3.25      knu       696:
3.26      knu       697:        * cvsweb.cgi: Call this version FreeBSD-cvsweb 2.0.1.
                    698:
3.24      knu       699: 2002-04-05  Akinori MUSHA  <knu@iDaemons.org>
                    700:
                    701:        * INSTALL: Somehow description configuration doesn't work if you
                    702:        put trailing /'s in module names, so fix the document for the
                    703:        moment.
                    704:        [Submitted by: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>]
                    705:
                    706: 2002-02-06  Akinori MUSHA  <knu@iDaemons.org>
                    707:
                    708:        * cvsweb.cgi: Use TMPDIR instead of the hardcoded /tmp.
                    709:
                    710:        * cvsweb.cgi: Never pass 'MAIN' to cvs(1).  'HEAD' is the valid
                    711:        tag.
                    712:
3.22      knu       713: 2001-11-08  Akinori MUSHA  <knu@iDaemons.org>
                    714:
                    715:        * cvsweb.conf-freebsd: Allow downloading a tarball of a project
                    716:        directory as well as a port directory.
3.20      knu       717:
3.23      knu       718:        * cvsweb.cgi: Call this version FreeBSD-cvsweb 2.0.0.
                    719:
3.20      knu       720: 2001-10-11  Akinori MUSHA  <knu@iDaemons.org>
3.21      knu       721:
                    722:        * cvsweb.cgi, cvsweb.conf: Introduce optional output filter.
                    723:        [Requested by:  Shigeyuki Fukushima <shige@FreeBSD.org>]
3.20      knu       724:
                    725:        * ChangeLog, README.knu, TODO.knu, cvsweb.cgi, cvsweb.conf,
                    726:        cvsweb.conf-freebsd, cvsweb.conf-netbsd, cvsweb.conf-openbsd,
                    727:        cvsweb.conf-ruby: Add FreeBSD tags and adjust my vendor tags.
                    728:
3.19      knu       729: 2001-10-08  Akinori MUSHA  <knu@iDaemons.org>
                    730:
                    731:        * cvsweb.cgi: Fix a bug where it produces wrong download links
                    732:        when cvsweb.cgi is placed right under the document root.
                    733:        [Reported by:    Arnaud on EFnet]
                    734:
3.18      knu       735: 2001-08-01  Akinori MUSHA  <knu@iDaemons.org>
                    736:
                    737:        * cvsweb.cgi: perltidy -i=8 -t -pt=2 -bt=2 -sbt=2 -ci=4 -noll -sfs
                    738:        -nasc -ce
                    739:
                    740:        * cvsweb.conf, cvsweb.conf-freebsd, cvsweb.conf-netbsd,
                    741:        cvsweb.conf-openbsd, cvsweb.conf-ruby: perltidy -i=8 -t -pt=2 -bt=2
                    742:        -sbt=2 -ci=4 -noll -sfs -nasc -ce
                    743:
                    744:        * cvsweb.cgi, cvsweb.conf: MFZ 1.111, but introduce @ForbiddenFiles
                    745:        instead of @DissallowRead to forbid user to cvs
                    746:        checkout/diff/annotate specified files.
                    747:
                    748:        * cvsweb.cgi: MFZ 1.112: A couple of trivial fixes.
                    749:
3.17      knu       750: 2001-07-26  Akinori MUSHA  <knu@iDaemons.org>
                    751:
                    752:        * cvsweb.cgi: Chdir to TMPDIR so it works even when the cgi-bin
                    753:        directory is unreadable.
                    754:        [Submitted by: Dmitry Morozovsky <marck@rinet.ru>]
                    755:
                    756:        * cvsweb.cgi: Let the module/path box appear and work properly
                    757:        when there is only one repository.
                    758:        [Submitted by: Dmitry Morozovsky <marck@rinet.ru>]
                    759:
3.15      knu       760: 2001-07-06  Akinori MUSHA  <knu@iDaemons.org>
                    761:
                    762:        * cvsweb.cgi, cvsweb.conf: Support "zip" as an additional
                    763:        archiver.
                    764:
3.16      knu       765:        * cvsweb.cgi: MFZ 1.110.  But the bug had already been fixed in
                    766:        knu-cvsweb.
                    767:
3.14      knu       768: 2001-06-22  Akinori MUSHA  <knu@iDaemons.org>
                    769:
                    770:        * cvsweb.cgi: Get rid of a potential "uninitialized variable
                    771:        usage" warning.
                    772:        [Submitted by: Bill Fenner <fenner@FreeBSD.org>]
                    773:
3.13      knu       774: 2001-06-08  Akinori MUSHA  <knu@iDaemons.org>
                    775:
                    776:        * cvsweb.cgi: MFZ 1.109.  Preset the global variable the stores
                    777:        the per file cvs info to avoid accumulating cruft under modperl.
                    778:
3.12      knu       779: 2001-06-05  Akinori MUSHA  <knu@iDaemons.org>
                    780:
                    781:        * cvsweb.cgi: Change "Previous Directory" to "Parent Directory".
                    782:
                    783:        * cvsweb.cgi: Properly HTML-quote function names in the colored
                    784:        diff view.
                    785:        [Submitted by: Ian Whalley <ian@whalley.org>]
                    786:
3.11      knu       787: 2001-05-18  Akinori MUSHA  <knu@iDaemons.org>
                    788:
                    789:        * cvsweb.cgi: Avoid localizing @_ to make threaded Perl happy.
                    790:        [FreeBSD PR: 26851]
                    791:        [Submitted by: David Wolfskill <dhw@whistle.com>]
                    792:
3.9       knu       793: 2001-05-10  Akinori MUSHA  <knu@iDaemons.org>
                    794:
3.10      knu       795:        * cvsweb.cgi: Correct a link in the navigation header.
3.9       knu       796:        [Submitted by: Tanaka Akira <akr@m17n.org>]
                    797:
3.8       knu       798: 2001-05-08  Akinori MUSHA  <knu@iDaemons.org>
                    799:
                    800:        * cvsweb.cgi: Fix a typo and get diff -F RE to really work.
                    801:
3.7       knu       802: 2001-04-25  Akinori MUSHA  <knu@iDaemons.org>
3.4       knu       803:
3.7       knu       804:        * cvsweb.conf: Introduce the new knu-cvsweb site:
                    805:        http://www.idaemons.org/~knu/cvsweb/
                    806:
                    807:        * ChangeLog: Update and reformat.
                    808:
                    809: 2001-03-28 02:20  knu
                    810:
                    811:        * cvsweb.cgi: Re-fix the bogus fix for the previous
                    812:        colons-in-a-filename problem.
                    813:        [Noted by: Yar Tikhiy <yar@freebsd.org>]
                    814:
                    815: 2001-03-28 01:39  knu
                    816:
                    817:        * cvsweb.cgi: Conform cvsweb-markup pages to HTML 4.0
                    818:        Transitional.
                    819:        [Submitted by: Will Andrews <will@physics.purdue.edu>]
                    820:        [Validated by: http://validator.w3.org/]
3.4       knu       821:
3.7       knu       822: 2001-03-23 04:46  knu
3.4       knu       823:
3.6       knu       824:        * cvsweb.cgi: MFZ: 1.106.  Do closedir() properly.
                    825:
3.7       knu       826: 2001-03-23 04:36  knu
                    827:
                    828:        * ChangeLog: Add a log missed on 2001-02-01.
                    829:
                    830: 2001-03-23 04:29  knu
                    831:
                    832:        * ChangeLog: Encode colons in file names properly.
                    833:        [FreeBSD PR: 25963]
                    834:        [Submitted by: Marc van Woerkom <3d@FreeBSD.org>]
                    835:
                    836: 2001-03-23 04:27  knu
                    837:
                    838:        * cvsweb.cgi: Encode colons in file names properly.
                    839:        [FreeBSD PR: 25963]
                    840:        [Submitted by: Marc van Woerkom <3d@FreeBSD.org>]
                    841:
                    842: 2001-02-02 06:39  knu
3.5       knu       843:
                    844:        * cvsweb.cgi: Use a fixed-width font in the colored diff view.
3.7       knu       845:        [Requested by: Julian Elischer <julian@elischer.org>]
3.5       knu       846:
3.7       knu       847: 2001-01-29 12:54  knu
3.3       knu       848:
                    849:        * cvsweb.cgi: Remove an obsolete notice: CVSWEB_CONFIG is disused.
                    850:        One leftover substitution: "cvs" -> $CMD{cvs}
                    851:
3.7       knu       852: 2001-01-14 18:04  knu
                    853:
                    854:        * cvsweb.conf: s/at here/here/
                    855:
                    856: 2001-01-13 16:48  knu
3.2       knu       857:
3.7       knu       858:        * ChangeLog, README.knu, TODO.knu, cvsweb.cgi, cvsweb.conf,
                    859:        cvsweb.conf-freebsd, cvsweb.conf-netbsd, cvsweb.conf-openbsd,
                    860:        cvsweb.conf-ruby: Add some knu-cvsweb info.
3.2       knu       861:
                    862:        * cvsweb.cgi: MFZ: 1.105.
                    863:
                    864:        * README.knu, TODO.knu, cvsweb.cgi, cvsweb.conf,
                    865:        cvsweb.conf-freebsd, cvsweb.conf-netbsd, cvsweb.conf-openbsd,
                    866:        cvsweb.conf-ruby: Change CVS tags: "Id" -> "Idaemons".
                    867:
3.7       knu       868: 2001-01-12 16:48  knu
                    869:
                    870:        * ChangeLog: Add ChangeLog.
                    871:
3.1       knu       872: 2001-01-12 08:42  knu
                    873:
3.7       knu       874:        * cvsweb.cgi: Clean up URI parser.
                    875:
                    876:        * cvsweb.cgi: Workaround thttpd's buggy SCRIPT_NAME / PATH_INFO
                    877:        parser.
                    878:        [Requested by: Makoto MATSUSHITA <matusita@jp.FreeBSD.org>]
                    879:
                    880:        * cvsweb.conf-freebsd, cvsweb.conf-netbsd, cvsweb.conf-openbsd:
3.1       knu       881:        Allow downloading a single port/pkgsrc in tarball by default.
                    882:
                    883: 2001-01-12 03:17  knu
                    884:
                    885:        * cvsweb.cgi, cvsweb.conf: D'oh, forgot to chomp the result of
                    886:        `uname`.
3.7       knu       887:        [Submitted by: Christian Weisgerber <naddy@mips.inka.de>]
3.1       knu       888:
                    889: 2001-01-11 11:00  knu
                    890:
                    891:        * cvsweb.cgi, cvsweb.conf: Oops.
                    892:
                    893: 2001-01-11 10:52  knu
                    894:
                    895:        * cvsweb.cgi, cvsweb.conf, cvsweb.conf-freebsd, cvsweb.conf-netbsd,
                    896:        cvsweb.conf-openbsd: Run "tar cf - ... | gzip -c" rather than "tar
                    897:        zcf - ..." to avoid tar(1)'s automatic padding of nulls to align
                    898:        with the block size, which is just garbage for a receiver.
3.7       knu       899:        [Noted by: Katsuyuki Komatsu <komatsu@sarion.co.jp>]
                    900:
                    901:        * cvsweb.cgi: Have $uname variable to hold the OS implementation
                    902:        name.
                    903:
                    904:        * cvsweb.conf: Move %CMD's initialization part to the beginning of
                    905:        cvsweb.conf so it can use $uname and configure properly for the
                    906:        OS.
                    907:
                    908:        * cvsweb.conf, cvsweb.conf-freebsd, cvsweb.conf-netbsd,
                    909:        cvsweb.conf-openbsd: Wrap FreeBSD or OpenBSD specific features in
                    910:        conditional blocks using $uname.
                    911:
                    912:        * cvsweb.cgi: Fix some open() calls in good manners.
3.1       knu       913:
                    914: 2001-01-05 09:00  knu
                    915:
                    916:        * cvsweb.cgi: Delete $ENV{PATH} before everything. (against -T
                    917:        paranoia) It's nothing to worry since cvsweb.cgi always invokes
                    918:        executables by full paths, though.
3.7       knu       919:
                    920:        * cvsweb.cgi: Correct the error messages regarding $command_path.
3.1       knu       921:
                    922: 2001-01-03 17:57  knu
                    923:
3.7       knu       924:        * cvsweb.cgi, cvsweb.conf: Don't rely on perl's $ENV{PATH} search.
3.1       knu       925:        Search commands for itself and specify them by full paths.
                    926:
                    927: 2001-01-03 11:55  knu
                    928:
                    929:        * README.knu, cvsweb.cgi: Don't forget to add $query to the URL
                    930:        when redirecting.  Now module alias redirection and Attic
                    931:        redirection work with all sticky variables preserved. (Previously
                    932:        they didn't work against a non-default cvsroot)
3.7       knu       933:
                    934:        * cvsweb.cgi: Put a text field on each directory view that allows
                    935:        user to jump directly to an arbitrary module, which can be
                    936:        specified either by a full module/file path or by a module alias.
3.1       knu       937:
                    938: 2001-01-03 08:34  knu
                    939:
                    940:        * README.knu, cvsweb.cgi, cvsweb.conf: List CVS repository entries
                    941:        in the specified order, not alphabetical.
3.7       knu       942:
                    943:        * README.knu, cvsweb.cgi, cvsweb.conf: Now /usr/local/etc/cvsweb/
                    944:        is the default directory for configuration files.
3.1       knu       945:
                    946: 2001-01-02 21:23  knu
                    947:
                    948:        * cvsweb.cgi, cvsweb.conf: Get cvsweb.cgi to run under perl -T.
3.7       knu       949:
                    950:        * cvsweb.cgi: Change perl command line: Change perl5 to perl and
                    951:        just declare `require 5.000'. Remove -s option that was intended
                    952:        for debug use.  Add -T option to perform security checks.
                    953:
                    954:        * cvsweb.cgi: Change search paths for cvsweb.conf: Don't adopt the
                    955:        value of $ENV{CVSWEB_CONFIG} that was intended for debug use.
                    956:        Search the same directory that cvsweb.cgi is in instead of the
                    957:        current directory.
                    958:
                    959:        * cvsweb.cgi: Invoking `last' in `do { ... } while (0);' is wrong.
                    960:        Change the loop to `while (1) { ... last; }'.
                    961:
                    962:        * cvsweb.cgi, cvsweb.conf: Don't do chdir.  Instead, use tar(1)'s
                    963:        -C option and cvs(1) export's -d option.
                    964:
                    965:        * cvsweb.cgi: Explicitly define $ENV{PATH}.
                    966:
                    967:        * cvsweb.conf: Turn $allow_compress off by default so user can
                    968:        debug cvsweb.cgi easily.
3.1       knu       969:
                    970: 2001-01-02 08:15  knu
                    971:
3.7       knu       972:        * cvsweb.cgi: Add $prkeyword variable to allow user to use (e.g.)
                    973:        `Bug' instead of `PR' as the bug report identifier.
                    974:
                    975:        * cvsweb.conf, cvsweb.conf-freebsd, cvsweb.conf-netbsd,
                    976:        cvsweb.conf-openbsd, cvsweb.conf-ruby: Add
                    977:        cvsweb.conf-{freebsd,openbsd,netbsd,ruby} files, and move rather
                    978:        FreeBSD specific configuration values to cvsweb.conf-freebsd.
                    979:
                    980:        * cvsweb.conf: Add a %funcline_regexp entry for Ruby. (*.rb)
3.1       knu       981:
                    982: 2001-01-02 06:24  knu
                    983:
                    984:        * cvsweb.conf: Add `pending' to the list of PR categories.
                    985:
                    986: 2001-01-02 05:57  knu
                    987:
                    988:        * cvsweb.cgi: Reduce 'Use of uninitialized value' warnings.
3.7       knu       989:        [Noticed by: Wolfram Schneider <wosch@schneider.org>]
3.1       knu       990:
                    991: 2000-12-30 08:56  knu
                    992:
3.7       knu       993:        * cvsweb.cgi: Oops, I forgot "cvs export" always need a -r/-D.
3.1       knu       994:        Specify -rHEAD when no tag/branch is defaulted.
                    995:
                    996: 2000-12-30 08:35  knu
                    997:
                    998:        * cvsweb.cgi, cvsweb.conf: Add $preformat_in_markup variable and
                    999:        turn it off by default.  This option should be turned off when you
                   1000:        have files in the repository that are in a multibyte encoding which
                   1001:        uses HTML special characters ([<>&"]) as part of a multi-byte
                   1002:        character. (such as iso-2022-jp, ShiftJIS, etc.)  Otherwise those
                   1003:        files will get screwed up in markup.
3.7       knu      1004:
                   1005:        * cvsweb.conf: Fix for those systems which tar(1)'s are not GNU
                   1006:        tar(1): Add @tar_options variable and make the
                   1007:        --ignore-failed-read flag optional.  Use cvs export instead of cvs
                   1008:        checkout, so the --exclude 'CVS' flag isn't needed.
                   1009:        [Noticed by: Christian Weisgerber <naddy@mips.inka.de>]
                   1010:
                   1011:        * cvsweb.conf: Fix for those systems which cvs(1)'s don't support
                   1012:        -R option (Actually, only FreeBSD's and OpenBSD's cvs(1) support
                   1013:        it): Add @cvs_options and make the -R flag optional.
3.1       knu      1014:
                   1015: 2000-12-29 22:29  knu
                   1016:
                   1017:        * cvsweb.cgi: Add charset to all text/* output, including diffs.
3.7       knu      1018:        [Submitted by: Alexey Zelkin <phantom@cris.net>]
3.1       knu      1019:
                   1020: 2000-12-29 18:12  knu
                   1021:
                   1022:        * cvsweb.cgi: The use of `do "file"' is obsolete.  Use require
                   1023:        instead.
                   1024:
                   1025: 2000-12-29 17:47  knu
                   1026:
                   1027:        * cvsweb.cgi: Add the prototype declaration for hrefquote().
                   1028:
                   1029: 2000-12-29 03:17  knu
                   1030:
                   1031:        * README.knu: Mention automatic tarball generation feature.
                   1032:
                   1033: 2000-12-29 03:16  knu
                   1034:
3.7       knu      1035:        * TODO.knu: Directory sorting was fixed at the same time that
                   1036:        "show only tags" feature was fixed.
3.1       knu      1037:
                   1038: 2000-12-29 03:07  knu
                   1039:
                   1040:        * cvsweb.cgi: Specify --ignore-failed-read on invoking tar(1).
                   1041:
                   1042: 2000-12-29 02:49  knu
                   1043:
                   1044:        * cvsweb.cgi, cvsweb.conf: Add "automatic tarball generation"
                   1045:        feature.  You can check out a whole directory in gzipped tarball.
3.7       knu      1046:        [Obtained from: Debian package: cvsweb_1.93-1]
                   1047:
                   1048:        * cvsweb.cgi: Allow space characters in file names. (not tested
                   1049:        yet)
3.1       knu      1050:
                   1051: 2000-12-18 13:25  knu
                   1052:
                   1053:        * TODO.knu, cvsweb.cgi: Revert MFZ: 1.103 -> 1.104 which introduced
                   1054:        a bogus bug.  As noone seems to need to use 0.X revisions, I'd just
                   1055:        drop it.  This should fix the "show only tags" feature.
                   1056:
                   1057: 2000-12-18 12:47  knu
                   1058:
                   1059:        * cvsweb.cgi: Silence the warnings.
                   1060:
                   1061: 2000-12-18 11:48  knu
                   1062:
                   1063:        * cvsweb.cgi: Add meta tags to prevent WWW robots from crawling
                   1064:        over the cvsweb.
3.7       knu      1065:        [Submitted by: Wolfram Schneider <wolfram@schneider.org>]
3.1       knu      1066:
                   1067: 2000-12-08 00:11  knu
                   1068:
                   1069:        * cvsweb.cgi: Silence `Use of uninitialized value' warnings.
                   1070:        (again)
                   1071:
                   1072: 2000-12-07 03:20  knu
                   1073:
                   1074:        * TODO.knu: Mention "show only tags" feature breakage.
                   1075:
                   1076: 2000-12-07 03:19  knu
                   1077:
                   1078:        * cvsweb.cgi: Emit a rather better error message when a user
                   1079:        requests to check out a deleted file.
3.7       knu      1080:        [Pointed out by: Chris Faulhaber <jedgar@fxp.org>]
                   1081:
                   1082:        * cvsweb.cgi: Cut an out-of-date error message. (adding -R and -l
                   1083:        options to the cvs command line should have obsoleted it)
                   1084:
                   1085:        * cvsweb.cgi: Optimize, clean up.
3.1       knu      1086:
                   1087: 2000-11-23 04:26  knu
                   1088:
                   1089:        * cvsweb.cgi, cvsweb.conf: Add a new variable $charset to specify
                   1090:        the charset for HTML output.
3.7       knu      1091:        [Submitted by: SADA Kenji <sada@bsdclub.org>]
3.1       knu      1092:
                   1093: 2000-11-05 00:32  knu
                   1094:
                   1095:        * cvsweb.cgi: Silence `Use of uninitialized value' warnings.
                   1096:
                   1097: 2000-11-03 02:36  knu
                   1098:
                   1099:        * README.knu: Mention cat.1 is hyperlinked as well as cat(1).
                   1100:
                   1101: 2000-11-03 02:34  knu
                   1102:
3.7       knu      1103:        * cvsweb.cgi: MFZ: 1.104: ("Allow for 0.X versions. CVS accepts
                   1104:        such version numbers in import -b even if not strictly legal...")
3.1       knu      1105:
                   1106: 2000-11-03 02:33  knu
                   1107:
                   1108:        * cvsweb.conf: Set the default diff type to unidiff for all
                   1109:        browsers, not only text-based ones.
                   1110:
                   1111: 2000-10-21 00:46  knu
                   1112:
                   1113:        * cvsweb.cgi: Always give options to click on a non-colored diff
                   1114:        _and_ a colored diff.
3.7       knu      1115:        [Requested by: SO many people :>]
3.1       knu      1116:
                   1117: 2000-10-20 22:59  knu
                   1118:
                   1119:        * TODO.knu: Hyperlinking was properly fixed.
                   1120:
                   1121: 2000-10-20 21:28  knu
                   1122:
                   1123:        * TODO.knu, cvsweb.cgi: Fix htmllify so that <A href="...">...</A>
                   1124:        won't nest. :)
3.7       knu      1125:
                   1126:        * cvsweb.cgi: Do not show additional "(colored)" diff links when
                   1127:        long colored diff is the default.
                   1128:
                   1129:        * cvsweb.cgi: Reduce the use of `.' operator that is known to be
                   1130:        expensive.  Fix indent, clean up.
3.1       knu      1131:
                   1132: 2000-10-11 06:14  knu
                   1133:
                   1134:        * cvsweb.cgi: Introduce a new function: htmlquote().
3.7       knu      1135:
                   1136:        * cvsweb.cgi: Clean up hyperlink tags.
                   1137:
                   1138:        * cvsweb.cgi: Use &link() instead of <a href="...">...</a>.
                   1139:
                   1140:        * cvsweb.cgi: Do urlencode() or htmlquote() as appropriate.
3.1       knu      1141:
                   1142: 2000-10-11 03:48  knu
                   1143:
                   1144:        * cvsweb.cgi: - Recognize "links" as another text mode browser.  -
                   1145:        Fix the revision links in the annotation view of a file.
3.7       knu      1146:        [Submitted by: Christian Weisgerber <naddy@mips.inka.de>]
3.1       knu      1147:
                   1148: 2000-10-07 16:44  knu
                   1149:
                   1150:        * cvsweb.cgi: Fix &link() not to put a redundant trailing LF.
3.7       knu      1151:
                   1152:        * cvsweb.cgi: Improve manpage linking to support "foo.1" as well
                   1153:        as "foo(1)".
3.1       knu      1154:
                   1155: 2000-10-07 16:35  knu
                   1156:
                   1157:        * cvsweb.cgi: Fix screwups in the last commit.
3.7       knu      1158:
                   1159:        * cvsweb.cgi: Parse rlog's output explicitly.  Recognize 77 ='s as
                   1160:        a file separator, and 28 -'s as revision separator.
                   1161:        [Submitted by: Makoto MATSUSHITA <matusita@jp.FreeBSD.org>]
3.1       knu      1162:
                   1163: 2000-10-03 04:07  knu
                   1164:
                   1165:        * cvsweb.cgi: Cleanup $barequery generation.  Undefine "my"
                   1166:        variables when they are done.
                   1167:
                   1168: 2000-10-01 05:10  knu
                   1169:
3.7       knu      1170:        * cvsweb.cgi: Fix annotation bugs.
                   1171:
                   1172:        * cvsweb.cgi: Do not pass gzip'ed directives to cvs. (it never
                   1173:        worked, sigh)
                   1174:
                   1175:        * cvsweb.cgi: Fix mis-spacing. Now it should look pretty well.
3.1       knu      1176:
                   1177: 2000-10-01 03:48  knu
                   1178:
                   1179:        * INSTALL, cvsweb.cgi: Specify -R (Read-only mode) and -l (Do not
                   1180:        log in history) flags when doing a cvs annotation so that one does
                   1181:        not need to turn on the write permission on CVSROOT/history for the
                   1182:        user which httpd runs cvsweb.cgi as. (typically "nobody")
                   1183:
                   1184: 2000-10-01 03:27  knu
                   1185:
                   1186:        * cvsweb.cgi: Fix the comment to make how to set $config clear.
3.7       knu      1187:        [Inspired by: "Dan Langille" <dan@langille.org>]
3.1       knu      1188:
                   1189: 2000-09-29 03:06  knu
                   1190:
                   1191:        * cvsweb.cgi: Trap errors in the configuration files on loading and
                   1192:        show error messages.  (Previously it failed silently)
3.7       knu      1193:        [Submitted by: Sean Scarff <sean@pavilion.net>]
3.1       knu      1194:
                   1195: 2000-09-22 20:13  knu
                   1196:
                   1197:        * cvsweb.cgi, cvsweb.conf: Remove $backcolor and introduce
                   1198:        $body_tag_for_src to allow to set the foreground color.
3.7       knu      1199:        [Noticed by: dcs@FreeBSD.org]
3.1       knu      1200:
                   1201: 2000-09-22 00:30  knu
                   1202:
                   1203:        * cvsweb.cgi: MFZ: 1.103.
                   1204:
                   1205: 2000-09-20 05:07  knu
                   1206:
3.7       knu      1207:        * cvsweb.cgi: Follow tab-width/tabstop/ts directives when
                   1208:        expanding tabs into spaces.  Currently, only first 10 lines are
                   1209:        scanned for the directives.
3.1       knu      1210:
                   1211: 2000-09-20 04:57  knu
                   1212:
3.7       knu      1213:        * cvsweb.cgi: MFZ: 1.101.
                   1214:
                   1215:        * cvsweb.cgi: Fix a few bugs under mod_perl.
                   1216:
                   1217:        * cvsweb.cgi: Use the Compress::Zlib module if available.
                   1218:
                   1219:        * cvsweb.cgi: Embed PDF files inside the cvs markup view.
3.1       knu      1220:
                   1221: 2000-09-20 03:35  knu
                   1222:
3.7       knu      1223:        * cvsweb.cgi: s/ts/tabstop/ that I forgot to substitute in the
                   1224:        last update.
3.1       knu      1225:
                   1226: 2000-09-12 02:11  knu
                   1227:
                   1228:        * cvsweb.cgi: Allow one to set the default diff type.
3.7       knu      1229:        [Inspired by: Makoto MATSUSHITA <matusita@jp.FreeBSD.org>]
3.1       knu      1230:
                   1231: 2000-09-10 20:54  knu
                   1232:
                   1233:        * cvsweb.cgi: Clean up spacedHtmlText().
                   1234:
                   1235: 2000-09-05 00:55  knu
                   1236:
                   1237:        * README.knu: Mention revision numbers hyperlinking in annotation.
                   1238:
                   1239: 2000-09-05 00:53  knu
                   1240:
                   1241:        * cvsweb.cgi: Get the revision numbers in annotation available as
                   1242:        hyperlinks.
3.7       knu      1243:        [Requested by: Josef Karthauser <joe@pavilion.net>]
3.1       knu      1244:
                   1245: 2000-09-04 23:50  knu
                   1246:
3.7       knu      1247:        * cvsweb.cgi: Fix previously introduced incorrect fix.
3.1       knu      1248:        s/\s+\n$//; --> s/\s+$/\n/;
3.7       knu      1249:        [FreeBSD PR: misc/20989]
                   1250:        [Submitted by: Tony Finch <dot@dotat.at>]
3.1       knu      1251:
                   1252: 2000-09-04 03:25  knu
                   1253:
                   1254:        * README.knu, cvsweb.cgi, cvsweb.conf: Introduce manpage
                   1255:        hyperlinking.
                   1256:
                   1257: 2000-09-04 02:33  knu
                   1258:
                   1259:        * cvsweb.cgi: Get all mail URLs and addresses as hyperlinks, not
                   1260:        just the first one.  (s/// --> s///g)
                   1261:
                   1262: 2000-08-25 18:01  knu
                   1263:
                   1264:        * cvsweb.cgi: Get side-by-side diff working when $showfunc is true,
                   1265:        noting that `-p' option of diff(1) can only be used with context
                   1266:        and unified diffs.
3.7       knu      1267:        [Submitted by: Roger Hardiman <roger@cs.strath.ac.uk>]
                   1268:
                   1269:        * cvsweb.cgi: Allow to specify CVS tags or branch names (including
                   1270:        `.' and `HEAD') on cvs checkout.
                   1271:        (e.g. http://foo/cvsweb.cgi/bar/dood.c?rev=.
                   1272:        http://foo/cvsweb.cgi/bar/dood.c?rev=RELENG_4
                   1273:        http://foo/cvsweb.cgi/bar/dood.c?rev=RELENG_4_1_0_RELEASE)
3.1       knu      1274:        Not for diff currently, as rcsdiff does not grok CVS tags.
3.7       knu      1275:        [Inspired by: Folks at the FreeBSD cvs-all list.]
                   1276:
                   1277:        * cvsweb.cgi: Specify `-R' (turn on read-only repository mode) and
                   1278:        `-l' (do not log in the command history) on cvs checkout, so that
                   1279:        one does not need a write permission with the repository.
3.1       knu      1280:
                   1281: 2000-08-25 00:53  knu
                   1282:
                   1283:        * cvsweb.cgi: MFZ 1.94.
                   1284:
                   1285: 2000-08-16 05:39  knu
                   1286:
                   1287:        * cvsweb.conf: Turn evil $hr_ignwhite off.
                   1288:
                   1289: 2000-08-15 17:35  knu
                   1290:
3.7       knu      1291:        * cvsweb.cgi: Fix cvsweb.cgi's hidden bug:  s/\s+$//;  -->
3.1       knu      1292:        s/\s+\n$//;
3.7       knu      1293:
3.1       knu      1294:        Whitespace cleanup.
                   1295:
                   1296: 2000-08-15 15:54  knu
                   1297:
                   1298:        * cvsweb.cgi: Declare prototypes and shut up warnings.
3.7       knu      1299:
                   1300:        * cvsweb.cgi: Remove redundant white space at the end of lines.
3.1       knu      1301:
                   1302: 2000-08-14 03:58  knu
                   1303:
                   1304:        * cvsweb.cgi: Use cvsweb.conf* in the current directory when they
                   1305:        don't exist in /usr/local/etc/.
                   1306:
                   1307: 2000-08-01 21:42  knu
                   1308:
                   1309:        * cvsweb.cgi: #!/usr/bin/perl -> #!/usr/bin/perl5
                   1310:
                   1311: 2000-07-29 21:41  knu
                   1312:
                   1313:        * cvsweb.cgi: Resurrect $Revision$ tags of Zeller's version.
                   1314:
                   1315: 2000-07-29 21:10  knu
                   1316:
                   1317:        * cvsweb.cgi: Change $prcgi to include `?pr=' part for such as
                   1318:        NetBSD.
                   1319:
                   1320: 2000-07-29 21:04  knu
                   1321:
                   1322:        * cvsweb.conf: Change $prcgi to include `?pr=' part for such as
                   1323:        NetBSD.
                   1324:
                   1325: 2000-07-29 20:16  knu
                   1326:
                   1327:        * README.knu: Add an RCS tag.
                   1328:
                   1329: 2000-07-29 20:07  knu
                   1330:
                   1331:        * README.knu: Add README.knu to document the enhancements over
                   1332:        Zeller's version.
                   1333:
                   1334: 2000-07-29 18:24  knu
                   1335:
                   1336:        * cvsweb.cgi: Another STDERR bit. (I only did 1/2 previously..)
                   1337:
                   1338: 2000-07-29 06:38  knu
                   1339:
                   1340:        * cvsweb.cgi: D'oh.  Correct @stickyvars.
                   1341:
                   1342: 2000-07-29 04:38  knu
                   1343:
3.7       knu      1344:        * cvsweb.cgi: Output diffs in unidiff format for text-based
                   1345:        browsers. (by default)
                   1346:
                   1347:        * cvsweb.conf: Convert freebsd.org to FreeBSD.org.
3.1       knu      1348:
                   1349: 2000-07-29 02:24  knu
                   1350:
3.7       knu      1351:        * cvsweb.cgi: Merge From Zeller: 1.93
                   1352:
                   1353:        * cvsweb.cgi: Use CR LF in HTTP header.
                   1354:
                   1355:        * cvsweb.cgi: Redirect STDERR to /dev/null before executing rlog
                   1356:        instead of closing it.
3.1       knu      1357:
                   1358: 2000-07-28 01:16  knu
                   1359:
                   1360:        * cvsweb.cgi, cvsweb.conf: Clean up.
3.7       knu      1361:
                   1362:        * cvsweb.cgi, cvsweb.conf: Replace $hr_funout with $showfunc and
                   1363:        always show function names if defined.  (It has been only for
                   1364:        human readable format until this change)
3.1       knu      1365:
                   1366: 2000-07-20 20:52  knu
                   1367:
                   1368:        * cvsweb.cgi: Allow to use `!!CVSROOTdescr!!' in $long_intro to
                   1369:        embed per CVSROOT description.
                   1370:
                   1371: 2000-07-20 20:14  knu
                   1372:
                   1373:        * cvsweb.conf: Make $hr_funout default.
                   1374:
                   1375: 2000-07-20 20:06  knu
                   1376:
                   1377:        * cvsweb.conf: Display my mail address instead of Zeller's.
                   1378:
                   1379: 2000-07-20 06:59  knu
                   1380:
                   1381:        * INSTALL, README, TODO, cvsweb.cgi, cvsweb.conf, icons/back.gif,
                   1382:        icons/dir.gif, icons/miniback.gif, icons/minidir.gif,
                   1383:        icons/minitext.gif, icons/text.gif: Start point.
                   1384:

CVSweb