Commit Graph

34 Commits (0be0bf1e9d1b35ce4b102c98338de0dfc6856c31)

Author SHA1 Message Date
cmpilato ac88e349ca Expose annotation support for local Subversion repositories. Patch
largely by Stefan Haller <haller@ableton.com>, at least in the
approach used.

* viewcvs/viewcvs.conf.dist
  (svn_path): New configuration variable.

* viewcvs/lib/config.py
  (Config.set_defaults): Populate a new svn_path config member.

* viewcvs/lib/viewcvs.py
  (Request.__init__): Tweak the way Subversion's vclib.Repository
    objects are opened to have different codepaths for the 'svn' and
    'svn_ra' modules, and pass the new cfg.general.svn_path option to
    the 'svn' module's SubversionRepository.

* viewcvs/lib/vclib/svn/__init__.py
  (BlameSource, BlameSequencingError, _item): New.
  (SubversionRepository.__init__): Add 'svn_path' parameter.
    Calculate and store a path for the 'svn' command-line client binary.
  (SubversionRepository.annotate): Really implement annotation.

* viewcvs/templates/log.ezt,
* viewcvs/templates/log_table.ezt
  Enable annotate links for Subversion, too!


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1100 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-09-23 20:15:08 +00:00
cmpilato 874e0be23b Sorta kinda revert my changes from Feb. 1 2005, wherein I stopped
grouping directories in the directory view.  Now, make that behavior
optional (though, the default), but also fix it so that the directory
group itself is internally sorted by the current sort key.  This more
accurately mimics the likes of the Windows Explorer.

* viewcvs/viewcvs.conf.dist
  (sort_group_dirs): New option.

* viewcvs/lib/config.py
  (Config.set_defaults): Set default value for sort_group_dirs.

* viewcvs/lib/viewcvs.py
  (file_sort_cmp): If grouping directories, sorts dirs higher than
    files.  Otherwise, use normal sorting rules.

* viewcvs/website/upgrading.html
  Note the new option.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1047 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-03-07 15:13:23 +00:00
rey4 66cdbe31e7 Support relative images and links in checked out HTML pages when
checkout_magic is disabled by changing the default view for file URLs from
"log" to "checkout"

This causes some URL compatibility to be lost when checkout_magic is disabled.
Bookmarks which pointed to log pages but don't have explicit view=log
parameters will point to checkout pages instead.

* lib/viewcvs.py
  (Request.run_viewcvs):
    change default view for files from "log" to "checkout" when checkout_magic
    is disabled

  (Request.get_link):
    don't add explicit view=checkout parameters for checkout links when
    checkout_magic is disabled

    don't drop explicit view=log parameters for log links

* website/upgrading.html
    add note about URL compatibility

* INSTALL
    update section on access control

* viewcvs.conf.dist
    update documentation for "root_as_url_component" and "checkout_magic"

    move "checkout_magic" option directly underneath "root_as_url" component
    because the two options are related


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1037 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-02-13 16:48:12 +00:00
cmpilato da38c84d9c Move the [options] section up to just below the [general] stuffs.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1030 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-02-08 02:48:14 +00:00
cmpilato 50508ebcc7 In short, facilitate the creation, testing, installation, and sharing
of "template sets."

I'm introducing a new configuration variable ('template_dir') which is
the parent directory of all ViewCVS templates.  Those templates have
names which match the views they describe (directory.ezt,
revision.ezt, graph.ezt, etc.).  The 'docroot' variable will now
default to "<template_dir>/docroot".  Finally, the [templates] section
will continue to work as before, save that all configuration therein
(and templates not configured will fallback to
"<template_dir>/<view_name>.ezt").

The beauty of this is that folks can start whipping up (and
maintaining themselves) ViewCVS template sets which can be traded and
shared, like themes for Mozilla or Windows XP.  EZT is super-powerful,
and there are some really fun things you can do with it to serve up
interesting and unique ViewCVS views.  But while we want to encourage
creativity and innovation, we don't want the ViewCVS project itself
having to maintain everyone's fun little themes.  Anyway, so now
installing a new template set is just a matter of dropping that set
directory somewhere (anywhere, really) on your system and pointing
'template_dir' to that directory tree.  No (very annoying) template
modification conflicts to deal with every time you update ViewCVS on
your system.

And the best part is that existing ViewCVS configurations should all
continue to work compatibly.

* viewcvs/viewcvs.conf.dist
  Add a new option, "template_dir".  Tweak documentation on the
  "docroot" option.  And make the whole [templates] section work a
  little differently.

* viewcvs/lib/config.py
  (Config.set_defaults): Use 'None' as the default value for the
    self.templates.directory, self.templates.log,
    self.templates.query, self.templates.diff, self.templates.graph,
    self.templates.annotate, self.templates.markup,
    self.templates.error, self.templates.query_form,
    self.templates.query_results, and self.templates.roots options.
    Add a new default value for self.options.template_dir.

* viewcvs/lib/viewcvs.py
  (get_view_template): New.
  (generate_page): Instead of taking a template name, take a view
    name.  Also, call get_view_template() to generate the full
    template path.
  (view_markup, view_roots, view_directory, view_log, view_annotate,
    view_cvsgraph, view_diff, view_revision_svn, view_queryform,
    view_queryform, view_error): Update calls to generate_page().

* viewcvs/lib/query.py
  (main): Use viewcvs.get_view_template().


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1029 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-02-08 02:46:20 +00:00
rey4 56e7993f12 Add repository listing view. This change doesn't any links to the new
view because I'm not really sure where they would fit best in the UI.
So for now, the view is only visible when viewcvs.cgi is loaded
with no trailing path in the URL and either root_as_url mode is
enabled or default_root is not set.

* lib/viewcvs.py
  (Request.run_viewcvs, Request.get_link, nav_path, common_template_data,
   _views):
    add support for new view

  (view_roots):
    new function

* lib/config.py
  (Config.set_defaults):
    set default templates.roots option

* templates/roots.ezt
    new template

* viewcvs.conf.dist
  (templates/roots):
    new option

  (general/default_root, options/root_as_url_component):
    update documentation


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1023 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-02-04 18:32:32 +00:00
rey4 c0110cacae Simplify page titles. Someone was getting a little - too crazy - with -
the: punctuation ;)

* templates/annotate.ezt
* templates/diff.ezt
* templates/graph.ezt
* templates/log.ezt
* templates/log_table.ezt
* templates/markup.ezt
* templates/query.ezt
* templates/query_form.ezt
* templates/query_results.ezt
* templates/revision.ezt
* templates/include/dir_header.ezt
* templates/include/header.ezt
  change titles

* lib/config.py
  (Config.set_defaults):
    remove "main_title" option

* viewcvs.dist.conf
    remove "main_title" option

* website/upgrading.html
    document removal of "main_title" option


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1000 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-01-14 03:40:55 +00:00
cmpilato 1a76505beb Minor docco fix. Patch by Juanma Barranquero <lektu@mi.madritel.es>.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@964 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-26 02:09:09 +00:00
rey4 50e1e87f71 Edit a comment in viewcvs.conf.dist
* viewcvs.conf.dist
  (docroot):
    edit comment


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@932 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-09-28 16:33:44 +00:00
rey4 e80dfb1aa9 Now that we're using our own icons instead of the icons provided by Apache,
we can get rid of the alternative icons we provided for the standalone web
server and IIS. We can also get rid of the "icons" configuration option.

* lib/apache_icons.py
* tools/bin2inline_py.py
    removed, icons for the standalone server

* windows/icons/apache_pb.gif
* windows/icons/small/back.gif
* windows/icons/small/dir.gif
* windows/icons/small/text.gif
    removed, icons for IIS

* templates/include/footer.ezt
    point "Powered by Apache" image at /icons/apache_pb.gif instead of
    [icons]/apache_pb.gif

* standalone.py
  (apache_icons, icons_last_modified):
     removed

  (ViewCVS_Handler.do_GET):
    remove handling of /icons/ paths

  (serve):
    stop setting options.icons config value

* viewcvs.conf.dist
  (icons):
    removed

* lib/config.py
  (Config.set_defaults):
    stop setting default options.icons config value

* lib/viewcvs.py
  (common_template_data):
    don't set "icons" template variable

* windows/README
  (ICONS FOR IIS):
    removed

  (DOCROOT OPTIMIZATION):
    new section about the docroot parameter

* website/upgrading.html
    remove documentation for "icons" template variable, update
    documentation for "docroot"


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@923 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-09-25 00:00:31 +00:00
jhenstridge d027efa883 Copy online documentation, stylesheet and required images to
templates/docroot/

* templates/docroot/help_*.html, templates/docroot/styles.css: copied
  from website/
* templates/docroot/images/*: copied from website/images/ or from Apache.
  fix up the transparency on some of the PNGs (just 1-bit transparency
  though, so they work with IE).
* lib/viewcvs.py (view_doc): update to the new location for documentation.
  We can use the same location in the "installed" and "uninstalled" modes.
* viewcvs.conf.dist: update the comment about the docroot config value.
* templates/*.ezt: update for new icon locations.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@921 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-09-22 06:22:42 +00:00
jhenstridge d8cc63ee4e Add simple querying support directly to the viewcvs script. This is
closer to the Bonsai query interface, and provides better integration
with the rest of viewcvs.

Fixed two bugs in cvsdb.py:
 - when loading up query results, set the checkin type on the Commit object
 - When sorting on file name or author, order by the name rather than ID.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@877 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-07-17 06:03:33 +00:00
jhenstridge 4d6369388e Remove the svn_parent_path config value, and replace it with a root_parents
config value, which can handle CVS repositories as well as Subversion ones.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@872 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-07-16 15:43:01 +00:00
cmpilato 289c3b25bc Make Etag support optional (in a first-class fashion).
* viewcvs/lib/viewcvs.py
  (check_freshness): Check the new configuration option for etag
    support.  Also, cfg.general.http_expiration_time is now
    cfg.options.http_expiration_time.

* viewcvs/lib/debug.py
  (DISABLE_ETAGS): Remove.

* viewcvs/lib/config.py
  (Config.set_defaults): Set new 'generate_etags' option default to 1,
    and move 'http_expiration_time' to the [options] section (from the
    [general] one).

* viewcvs/viewcvs.conf.dist
  (cfg.options.generate_etags): New.
  (cfg.options.http_expiration_time): Was cfg.general.http_expiration_time.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@865 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-06-23 20:57:16 +00:00
cmpilato e8dc91b483 Fix the description of http_expiration_time.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@862 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-06-21 19:34:38 +00:00
cmpilato ac8c9d303c Add cache expiry support to ViewCVS. Patch by James Henstridge
<james@daa.com.au>.

* standalone.py
  (StandaloneServer.header): Fix some status handling stuff.

* viewcvs.conf.dist
  Add default value for new http_expiration_time option.

* lib/config.py
  (Config.set_defaults): Set default value for new
  http_expiration_time

* lib/viewcvs.py
  (check_freshness): Add cache control headers using the configured
    expiration times.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@860 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-06-14 15:52:41 +00:00
cmpilato 0f09f6c241 Templatize the annotate view!
* viewcvs/lib/viewcvs.py
  (view_annotate): Now use blame.BlameSource() class for doing annotations.

* viewcvs/lib/blame.py
  (BlameSource, BlameSequencingError): New classes.
  (make_html): Re-work to use the use BlameSource code.

* viewcvs/lib/config.py
  (Config.set_defaults): No longer set self.templates.footer.

* viewcvs/viewcvs.conf.dist
  (templates.footer): Removed.

* viewcvs/templates/annotate.ezt
  Re-work this template to make use of the newly exposed blame data,
  and the fabulous new EZT assignment commands!

* viewcvs/website/upgrading.html
  Document this change.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@833 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-04-21 05:08:12 +00:00
cmpilato d103342f27 * viewcvs/viewcvs.conf.dist
(options.cross_copies): Make this default to 1 now.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@829 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-04-20 14:41:35 +00:00
cmpilato f2c4a87740 * viewcvs/viewcvs.conf.dist
(footer): Update the default location for footer.ezt (now in the
    include/ subdir).

* viewcvs/website/upgrading.html
  Add a note about rearranged template locations.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@826 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-04-15 21:23:02 +00:00
rey4 b826424b50 Get ccvs module in working state, and add "use_rcsparse" option to use
it instead of bincvs. It works for log pages, directory pages, markup
pages, checkouts, and tarball downloads, but not for diffs because vclib
doesn't currently have an interface for diffing.

* viewcvs.conf.dist
  (use_rcsparse):
    new option

* lib/config.py
  (Config.set_defaults):
    make use_rcsparse off by default

* lib/viewcvs.py
  (Request.run_viewcvs)
    import ccvs module instead of bincvs if use_rcsparse is enabled

  (markup_stream_enscript):
    check for eof() method on file objects before calling

* lib/vclib/bincvs/__init__.py
  (CVSRepository, BinCVSRepository):
    separate new base class CVSRepository out of BinCVSRepository.
    The new base class is shared with the ccvs module

  (BinCVSRepository.filelog, _file_log):
    move calls to rcs utilities out of _file_log() function and into the
    filelog() method. This way _file_log() can be shared with the ccvs
    module

  (Revision.__init__):
    add default argument values to simplify some calls in the ccvs module

  (_get_logs, _log_path):
    move some functionality out of _get_logs() into new _log_path()
    function, which is shared with ccvs

* lib/vclib/ccvs/__init__.py
  Lots of kludges added to this module to get it running again and taking
  advantage of functionality already implemented in bincvs. It's not
  pretty, but at least it works and is no longer out of date.

  (CCVSRepository, CVSRepository):
    delete old CVSRepository class, create new CCVSRepository class
    implementing the current vclib api

  (MatchingSink):
    new sink superclass

  (InfoSink):
    updated to work with tags and default branches instead of always
    finding latest trunk revisions. Also changed to work with DirEntry
    objects

  (TreeSink):
    updated to work with Revision objects

  (StreamText.next_revision, StreamText):
    remove "next_revision" debugging method and all references to it

  (COSink):
    reimplement with a simpler algorithm

* lib/vclib/ccvs/rcsparse/common.py
  (Sink.admin_completed):
    new callback

  (_Parser.parse):
    call new callback


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@798 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-01-25 19:25:30 +00:00
rey4 b63ed80ac7 * viewcvs.conf.dist
(php_exe_path):
    add another example path


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@769 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-10-28 01:52:25 +00:00
rey4 755f7ac666 Update php colorizing code.
* viewcvs.conf.dist
  (use_php, php_exe_path):
    new options for php highlighting

* lib/config.py
  (Config.set_defaults):
    set defaults for new options

* lib/viewcvs.py
  (markup_stream_php):
    use new php option, and colorize using php's -s argument instead
    of invoking the php interpreter, building a big string and
    calling highlight_string()


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@768 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-10-28 01:46:59 +00:00
cmpilato 45629a7dde Begin implementing the new 'revision' view.
* viewcvs/lib/viewcvs.py
  (Request.get_link): Add code to generate the new revision info links.
  (view_revision): New.
  (_views): Alphabetically sort the views here, and add the new 'rev' view.

* viewcvs/viewcvs.conf.dist
  (templates.revision): New.

* viewcvs/templates/revision.ezt
  New.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@737 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-10-21 20:04:30 +00:00
rey4 c7c9807517 Removed show_changed_paths option. It was originally added as a way to
to disable a buggy and inefficient subversion feature. But it's no
longer neccessary with C. Mike's recent improvements to the subversion
module.

* viewcvs.conf.dist
  (show_changed_paths):
    removed option

* lib/config.py
  (Config.set_defaults)
    removed default assignment

* lib/viewcvs.py
  (run_viewcvs):
    stop passing option value to repository object

* lib/vclib/svn/__init__.py
  (log_helper, fetch_log):
    stop passing option value to log_helper function


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@726 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-10-15 20:33:04 +00:00
cmpilato 9632aa3bfc Teach ViewCVS how to follow copy history in Subversion repositories
(optionally, turned off by default).  No diffs across paths yet, but
that's coming soon(ish)!

* viewcvs/lib/vclib/svn/__init__.py
  (LogReceiver): Buh-bye.
  (get_history): New.
  (fetch_log): Use get_history() instead of the svn_repos_get_logs interface.

* viewcvs/lib/config.py
  (Config.set_defaults): Add default for 'cross_copies' option.

* viewcvs/lib/viewcvs.py
  (Request.run_viewcvs): Set the 'cross_copies' SubversionRepository
    attribute based on the config option of the same name.

* viewcvs/viewcvs.conf.dist
  (cross_copies): New.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@709 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-09-26 01:34:33 +00:00
rey4 c9fbb0ec71 put cvs_roots and svn_roots on a single line as requested by
Bo Berglund <bo.berglund@telia.com> to help simplify his
windows installer


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@694 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-29 02:57:51 +00:00
rey4 5d4c447dd4 added "icons" and "docroot" options to control the locations of
static files

* viewcvs.conf.dist, lib/config.py: added new options

* templates/dir_alternate.ezt:
* templates/directory.ezt:
* templates/header.ezt:
* templates/log.ezt:
* templates/log_table.ezt:
* templates/query.ezt:
* lib/viewcvs.py (Request.__init__):
  new "request.docroot" and "request.icons" template variables

* standalone.py (serve): standalone server must use default locations


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@690 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-24 20:37:39 +00:00
cmpilato dc2b8063ee * viewcvs/lib/config.py
* viewcvs/viewcvs.conf.dist
  Make the 'show_changed_paths' option default to 0.  We should
  generally avoid a policy of checking in code that, by default,
  SEGFAULTs.  Further, showing changed paths in Subversion is a large
  deviation of the manner in which CVS behaves, and I'd like to keep
  the two displaying as similarly as possible in the default setup.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@684 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-22 14:17:38 +00:00
rey4 c6ddff38ef Added some new fields to the Subversion log view and fixed the
download/view/markup links for old revisions of copied files.

The new fields are "Other changed files" which is a list of links to other
files changed in the same revision, "Copied from" which is displayed for
file revisions that are the result of a copy operations, and "Filename"
which is displayed for older file revisions which precede a copy operation.

* viewcvs.conf.dist
* lib/config.py (set_defaults): added "show_changed_paths" option to determine
  whether or not to retrieve and display the new information

* lib/viewcvs.py (run_viewcvs): now passes show_changed_paths option to
  newly created subversion repository objects

  (view_log_svn): changed the way download/view/markup links are generated
  and added code to generate links for new fields

* templates/log.ezt: template additions

* lib/vclib/svn/__init__.py (LogEntry.__init__): added extra arguments for new
  fields

  (ChangedPathEntry): new class to hold information about the changed paths
  associated with a revision

  (LogReceiver.__init__): added some new members to hold more state for the
  callback function

  (LogReceiver.receive): added some code to crawl through the "paths" hash
  and save useful information

  (get_logs): changed to work with new LogReciever constructor

  (fetch_log): changed call to repos.svn_repos_get_logs() to pass true for the
  "discover_changed_paths" argument. moved fs.file_length() call into
  LogReceiver.__init__


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@675 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-03 06:20:24 +00:00
rey4 8d21b07bc2 removed some false advertising
* viewcvs.conf.dist: removed comment about CVSNT handling UTF-16 text
  better than the RCS utilities. This is irrelevant since CVSNT
  converts text to UTF-8 before storing it in the repository file.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@674 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-02 06:49:59 +00:00
rey4 0df99f1010 updated documentation to say that CVSNT can be used instead of RCS
* windows/README
* viewcvs.conf.dist


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@673 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-02 05:42:47 +00:00
rey4 df7db58a04 changes to allow viewcvs to use CVSNT instead of the RCS utilities to
get information from CVS repositories

* viewcvs.conf.dist
* lib/config.py (Config.set_defaults): new "cvsnt_exe_path" option
  that can be set to the path of the cvsnt executable. If it is
  set, cvsnt gets invoked instead of the rcs utilities

* lib/vclib/bincvs/__init__.py (rcs_popen): new wrapper for popen that decides
  what program to execute based on the "rcs_paths" and "cvsnt_exe_path"
  options.

  (get_logs, fetch_logs): changed to use rcs_popen function instead of
  popen.popen

* lib/viewcvs.py (process_checkout, view_diff, generate_tarball_cvs): changed
  to use bincvs.rcs_popen instead of popen.popen

  (view_directory_cvs, generate_tarball_cvs): updated call to bincvs.get_logs

  (read_log): updated call to bincvs.fetch_log

* lib/rlog.py (GetRLogData): updated call to bincvs.fetch_log


general.cvsnt_exe_path


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@669 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-02 04:49:16 +00:00
cmpilato dd34c9fd4c Implement templatized error messages. Thanks to Russell Yanofsky
<rey4@columbia.edu> for bringing sanity to my morning with his fix of
the "isinstance()" usage.

* viewcvs/lib/config.py
  (set_defaults): Add new default value for self.templates.error.

* viewcvs/viewcvs.conf.dist
  (error): New configuration variable for specifying the error template.

* viewcvs/templates/error.ezt
  New default error template.

* viewcvs/lib/debug.py
  (ViewCVSException.__init__): Lose the 'description' member.
  (PrintException): Now prints exception data passed in (doesn't do
    the sys.exc_info() call itself any more).
  (GetExceptionData): New generic exception data harvester for use
    with templatized output.

* viewcvs/lib/viewcvs.py
  (view_error): New error printer that tries to use the error template
    before falling back to direct output.

* viewcvs/lib/query.py
  Update calls to debug.PrintException() to get the exception data
  from debug.GetExceptionData()


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@664 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-06-26 18:18:41 +00:00
rey4 b762466add * www/cgi/viewcvs.cgi, www/cgi/query.cgi, www/viewcvs-strace.sh,
cgi/viewcvs.cgi, cgi/query.cgi, cgi/viewcvs-strace.sh
  - moved stub scripts from cgi/ to www/cgi/

* cgi/granny.cgi
  - deleted since annotate functionality is already intergrated into
    viewcvs

* cvsgraph.conf.dist, viewcvs.conf.dist,
  cgi/cvsgraph.conf.dist, cgi/viewcvs.conf.dist
  - moved configuration files from cgi/ to project root

* www/mod_python/.htaccess, www/mod_python/query.py, www/mod_python/viewcvs.py,
  windows/htaccess.mod_python, windows/query.py windows/viewcvs.py
  - moved mod_python files from windows/ to www/mod_python/

* www/asp/query.asp, www/asp/viewcvs.asp,
  windows/query.asp, windows/viewcvs.asp
  - moved asp files from windows/ to www/asp/

* viewcvs-install
  - updated installer to deal with all the moved files

* INSTALL windows/README website/upgrading.html
  - updated documentation with new file locations and mod_python information


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@657 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-06-03 06:24:59 +00:00