Commit Graph

68 Commits (master)

Author SHA1 Message Date
cmpilato f48add83f7 Bump copyright years.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2820 8cb11bc2-c004-0410-86c3-e597b4017df7
2013-01-04 19:01:54 +00:00
cmpilato 7043120d2c * tools/bump-copyright-years
(update_license): Remove.
  (bump_years): Print reminder about amending the change history
    section of the LICENSE.html file.

git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2722 8cb11bc2-c004-0410-86c3-e597b4017df7
2012-01-23 18:31:20 +00:00
cmpilato ad0c0dd5fa * tools/bump-copyright-years
(replace_end_year): Remove debugging print statements, and simplify code.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2721 8cb11bc2-c004-0410-86c3-e597b4017df7
2012-01-23 17:57:10 +00:00
cmpilato 9e9b82218c Bump copyright years.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2720 8cb11bc2-c004-0410-86c3-e597b4017df7
2012-01-23 17:52:47 +00:00
cmpilato 85df9e6ba4 * tools/bump-copyright-years
New tool for bumping copyright years.  I'm tired of trying to
  micromanage these things.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2719 8cb11bc2-c004-0410-86c3-e597b4017df7
2012-01-23 17:51:58 +00:00
cmpilato a5df176395 Wow. Drop a "general code cleanup" kind of bomb on the codebase. All
of this is aimed at not paying the maintenance price of supporting
Python versions prior to 2.4 any longer, plus a little bit of just
getting dead code out of the way.

* lib/compat.py
  Remove as unused.

* bin/cvsdbadmin,
* bin/loginfo-handler,
* bin/make-database,
* bin/svndbadmin,
* lib/accept.py,
* lib/blame.py,
* lib/cvsdb.py,
* lib/popen.py,
* lib/query.py,
* lib/sapi.py,
* lib/vcauth/forbidden/__init__.py
* lib/vcauth/forbiddenre/__init__.py,
* lib/vcauth/svnauthz/__init__.py,
* lib/vclib/__init__.py,
* lib/vclib/ccvs/blame.py,
* lib/win32popen.py,
* tests/timelog.py
  Replace explicit import and use of the 'string' module with newer constructs.

* bin/standalone.py,
* lib/viewvc.py 
  No longer use 'compat' module.  Replace explicit import and use of
  the 'string' module with newer constructs.

* lib/dbi.py
  Use calender.timegm() instead of compat.timegm().

* lib/vcauth/__init__.py
  Lose unused module imports.

* lib/config.py,
  Replace explicit import and use of the 'string' module with newer
  constructs where possible.  Lose old ConfigParser patch-up code for
  Python 1.5.1.

* lib/vclib/ccvs/ccvs.py
  Replace explicit import and use of the 'string' module with newer
  constructs where possible.  Import _path_join() from bincvs, and use
  it instead of a bunch of copy-and-pasted string join() statements
  throughout.

* lib/vclib/ccvs/__init__.py
  (cvs_strptime): Moved here from the 'compat' module.

* lib/vclib/ccvs/bincvs.py
  (): No longer use 'compat' module.  Replace explicit import and use
    of the 'string' module with newer constructs.
  (_path_join): New, used now instead of a bunch of copy-and-pasted
    string join() statements throughout.

* viewvc-install
  Don't use the 'compat' module any more.

Also, so some rearranging of non-critical bits.

* misc/:              New directory.
* misc/py2html.py:    Moved from 'lib/py2html.py'.
* misc/PyFontify.py:  Moved from 'lib/PyFontify.py'.
* misc/elemx/:        Moved from 'elemx/'.
* misc/tparse/:       Moved from 'tparse/'.
* tools/make-release
  Omit 'misc' directory from releases, too.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2437 8cb11bc2-c004-0410-86c3-e597b4017df7
2010-09-03 16:49:52 +00:00
cmpilato 3da11f485a Slight terminology tweak.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2129 8cb11bc2-c004-0410-86c3-e597b4017df7
2009-04-20 17:40:51 +00:00
cmpilato a8e6f976ef * tools/make-release
Make this able to build any branch, not just trunk and tag names.

* notes/releases.txt
  Update example of using make-release.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2128 8cb11bc2-c004-0410-86c3-e597b4017df7
2009-04-20 17:38:57 +00:00
cmpilato 5a4e2c343b The whole license file dance is annoying. Just put the thing where it
wants to be -- where folks expect to find it -- and be done with it.

* viewvc.org/license-1.html
  Moved this...

* LICENSE.html
  ...to here, and stripped out site branding stuffs...

* viewvc.org/license-1.html
  ...but re-added a symlink.

* viewvc.org/.htaccess
  Add a redirect rule to point license-1.html URLs to the latest
  LICENSE.html file.

* tools/make-release
  Don't bother copying the LICENSE.html file any more -- it's already
  in place.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1597 8cb11bc2-c004-0410-86c3-e597b4017df7
2007-04-10 16:10:38 +00:00
cmpilato f5bfd66019 * tools/make-release
Uh... actually copy the LICENSE.html file into place like the
  comment claims we do.



git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1591 8cb11bc2-c004-0410-86c3-e597b4017df7
2007-04-10 15:28:41 +00:00
cmpilato 0dfb93969d Update copyright years.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1590 8cb11bc2-c004-0410-86c3-e597b4017df7
2007-04-10 15:26:36 +00:00
cmpilato 00b8f8a74e * tools/make-release
Fix some bugs in this script which prevented the to-be-deleted
  directories from actually being deleted.



git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1586 8cb11bc2-c004-0410-86c3-e597b4017df7
2007-04-10 07:04:51 +00:00
cmpilato 8bbe853ffe Do a documentation reorganization I've been dying to do for some time
now.  Get stuff that's aimed at regular developers off our website,
get the website out of our release tarballs, while letting the docs/
that ViewVC admins need remain in the tarballs.

* docs/
  New directory.

* docs/url-reference.html,
* docs/template-authoring-guide.html
  Moved these documents, which hardly need to live on our public website, here ...

* viewvc.org/url-reference.html,
* viewvc.org/template-authoring-guide.html
  ... from here.

* docs/upgrading-howto.html
  Move (and renamed, and de-website-ized) this...

* viewvc.org/upgrading.html
  ... from here.

* notes/
  New directory for developer notes.

* notes/releases.txt
  New, cored out of the contributing.html file, and greatly updated to
  track the reality of our new Subversion-land release process.

* notes/TODO
  Move here ...

* TODO
  ... from here.

* viewvc.org/who.html,
* viewvc.org/license-1.html
  Lose references to upgrading.html.

* viewvc.org/contributing.html
  Lose references to upgrading.html, and move the release rolling
  instructions out to notes/releases.txt.
 
* tools/make-release
  Also delete viewvc.org/ and notes/ from the distribution.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1401 8cb11bc2-c004-0410-86c3-e597b4017df7
2006-07-26 20:19:22 +00:00
cmpilato eedbe8b649 * tools/make-release
Only try to delete directories that exist (to reduce noise).

git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1363 8cb11bc2-c004-0410-86c3-e597b4017df7
2006-05-19 15:37:56 +00:00
rey4 10a237f380 Change make-release script to generate ZIPs with CRLF line endings.
Also, no longer include the elemx, tests, tools, tparse, and www
directories in releases.

* tools/make-release


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1313 8cb11bc2-c004-0410-86c3-e597b4017df7
2006-04-06 17:22:39 +00:00
rey4 3efd3fa040 Clean for file headers and copyright notices for issue 167
* bin/asp/query.asp
* bin/asp/viewvc.asp
* bin/cgi/query.cgi
* bin/cgi/viewvc.cgi
* bin/cvsdbadmin
* bin/loginfo-handler
* bin/make-database
* bin/mod_python/handler.py
* bin/mod_python/query.py
* bin/mod_python/viewvc.py
* bin/standalone.py
* bin/svndbadmin
* lib/accept.py
* lib/blame.py
* lib/compat.py
* lib/config.py
* lib/cvsdb.py
* lib/dbi.py
* lib/debug.py
* lib/idiff.py
* lib/popen.py
* lib/query.py
* lib/sapi.py
* lib/vclib/__init__.py
* lib/vclib/bincvs/__init__.py
* lib/vclib/ccvs/__init__.py
* lib/vclib/ccvs/blame.py
* lib/vclib/ccvs/rcsparse/__init__.py
* lib/vclib/ccvs/rcsparse/common.py
* lib/vclib/ccvs/rcsparse/debug.py
* lib/vclib/ccvs/rcsparse/default.py
* lib/vclib/ccvs/rcsparse/texttools.py
* lib/vclib/svn/__init__.py
* lib/vclib/svn_ra/__init__.py
* lib/viewvc.py
* lib/win32popen.py
* tools/make-release
* tparse/tparse.cpp
* tparse/tparse.h
* tparse/tparsemodule.cpp
* tparse/tparsemodule.h
* viewcvs-install


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1288 8cb11bc2-c004-0410-86c3-e597b4017df7
2006-03-18 02:07:36 +00:00
rey4 f74711446f Finish issue 168, the project rename. Change is mostly based on the patch
from Gerard Gerritsen (sigcafe), with some other stuff thrown in.

* bin/asp/viewcvs.asp
* bin/asp/viewvc.asp
* bin/cgi/viewcvs-strace.sh
* bin/cgi/viewvc-strace.sh
* bin/cgi/viewcvs.cgi
* bin/cgi/viewvc.cgi
* bin/mod_python/viewcvs.py
* bin/mod_python/viewvc.py
* lib/viewcvs.py
* lib/viewvc.py
* viewcvs.conf.dist
* viewvc.conf.dist
    the file renames

* bin/cvsdbadmin
* bin/loginfo-handler
* bin/svndbadmin
* bin/asp/query.asp
* bin/cgi/query.cgi
* bin/mod_python/query.py
* bin/make-database
* bin/standalone.py
* lib/debug.py
* lib/compat.py
* lib/blame.py
* lib/vclib/ccvs/rcsparse/debug.py
* lib/vclib/bincvs/__init__.py
* lib/query.py
* lib/config.py
* lib/dbi.py
* lib/sapi.py
* INSTALL
* TODO
* cvsgraph.conf.dist
* tests/timelog.py
* tools/make-release
* tparse/tparsemodule.h
* tparse/Setup.py
* tparse/INSTALL
* tparse/tparsemodule.cpp
* tparse/tparse.h
* tparse/tparse.cpp
* windows/README
* viewcvs-install
* viewvc.org/index.html
* viewvc.org/contributing.html
* viewvc.org/template-authoring-guide.html
* viewvc.org/upgrading.html
* viewvc.org/license-1.html
    the other changes



git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1287 8cb11bc2-c004-0410-86c3-e597b4017df7
2006-03-18 00:33:54 +00:00
rey4 b91146fee0 Work on issue 168, s/ViewCVS/ViewVC. This patch changes references to
ViewCVS in comments, strings, and documentation. References to ViewCVS
in filenames and urls still need to be fixed. Also, logo.png (the blimp)
needs to be updated or replaced.

This patch is by Gerard Gerritsen (sigcafe), the only change I've made is
to restore a reference to ViewCVS in a comment about backwards compatibility.

* windows/README
* viewcvs-install
* README
* templates/include/footer.ezt
* templates/include/header.ezt
* templates/error.ezt
* templates/query.ezt
* templates/docroot/help.css
* templates/docroot/help_query.html
* templates/docroot/help_dirview.html
* templates/docroot/help_rootview.html
* templates/docroot/styles.css
* templates/docroot/help_log.html
* templates/diff.ezt
* tools/make-release
* lib/sapi.py
* lib/dbi.py
* lib/accept.py
* lib/cvsdb.py
* lib/config.py
* lib/query.py
* lib/vclib/bincvs/__init__.py
* lib/vclib/svn/__init__.py
* lib/vclib/__init__.py
* lib/vclib/svn_ra/__init__.py
* lib/vclib/ccvs/rcsparse/common.py
* lib/vclib/ccvs/rcsparse/__init__.py
* lib/vclib/ccvs/rcsparse/default.py
* lib/vclib/ccvs/rcsparse/texttools.py
* lib/vclib/ccvs/rcsparse/debug.py
* lib/vclib/ccvs/__init__.py
* lib/vclib/ccvs/blame.py
* lib/blame.py
* lib/popen.py
* lib/compat.py
* lib/viewcvs.py
* lib/debug.py
* INSTALL
* bin/standalone.py
* bin/make-database
* bin/mod_python/query.py
* bin/mod_python/viewcvs.py
* bin/cgi/query.cgi
* bin/cgi/viewcvs.cgi
* bin/asp/query.asp
* bin/asp/viewcvs.asp
* bin/svndbadmin
* bin/loginfo-handler
* bin/cvsdbadmin
* viewcvs.conf.dist


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1200 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-12-17 17:19:28 +00:00
cmpilato db63df565e * tools/make-release
Update the release tool to work with the Subversion repsitory.

* viewcvs.sourceforge.net/contributing.html
  Update whole sections of this page (including the part that tells
  how to make use of the release tool) with post-migration information.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1162 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-11-12 07:06:54 +00:00
cmpilato 3c9b6d1869 Tigris.org likes to use '/trunk/www' for the project htdocs stuff.
This gives me a chance to finally rename the 'www' directory to
something more in line with other CGI programs I've seen.  And while
I'm here, and while we have Subversion, I might as well do many of the
reorgs I've been wanting to do for some time.

* www
  Renamed to...

* bin
  ...this.

* standalone.py,
* tools/make-database,
* tools/svndbadmin,
* tools/loginfo-handler,
* tools/cvsdbadmin
  Moved from here...

* bin/standalone.py,
* bin/make-database,
* bin/svndbadmin,
* bin/loginfo-handler,
* bin/cvsdbadmin
  ...to here.

* viewcvs-install
  Update locations of moved files.

* viewcvs.sourceforge.net/upgrading.html
  Tweak relevant documentation.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1161 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-11-12 06:15:20 +00:00
rey4 5204e26666 Change vclib interface to accept 'rev' parameters wherever it accepts
path parameters so it is possible to use a single Repository object
to request information about any path at any revision.

Note: I wasn't able to test the svn_ra.get_location function because
I only have subversion 1.2.3.

* lib/vclib/__init__.py
  (Repository.itemtype, Repository.openfile, Repository.listdir,
   Repository.dirlogs, Repository.itemlog, Repository.annotate):
    add rev arguments, update docstrings

* lib/vclib/bincvs/__init__.py
  (CVSRepository.itemtype, CVSRepository.listdir, BinCVSRepository.openfile,
   BinCVSRepository.dirlogs, BinCVSRepository.itemlog):
    same

* lib/vclib/ccvs/__init__.py
  (CCVSRepository.dirlogs, CCVSRepository.itemlog):
    same

* lib/vclib/svn/__init__.py
  (SubversionRepository.__init__):
    remove rev argument

  (get_location, created_rev, _get_history, get_revision_info, _fetch_log,
   _get_last_history_rev, get_logs, do_diff,
   SubversionRepository.itemtype, SubversionRepository.openfile,
   SubversionRepository.listdir, SubversionRepository.dirlogs,
   SubversionRepository.itemlog, SubversionRepository.annotate):
    add rev arguments, use new _getrev and _getroot functions to handle
    all revision string parsing and revision_root creation

  (SubversionRepository._getrev, SubversionRepository._getroot):
    new functions

* lib/vclib/svn_ra/__init__.py
  (_rev2optrev):
    accept integers instead of strings, and eliminate head/unspecified
    revision handling which is already taken care of by _getrev

  (SubversionRepository.__init__):
    remove rev argument

  (get_location, created_rev, get_revision_info, get_logs,
   SubversionRepository.itemtype, SubversionRepository.openfile,
   SubversionRepository.listdir, SubversionRepository.dirlogs,
   SubversionRepository.itemlog, SubversionRepository.annotate,
   SubversionRepository.rawdiff, SubversionRepository._get_dirents):
    add rev arguments, use new _getrev function to handle all revision
    string parsing

  (SubversionRepository._getrev):
    new function

* lib/blame.py
  (link_includes):
    update call to repos.itemtype

* tools/cvsdbadmin
  (RecurseUpdate):
    update call to repos.listdir

* lib/viewcvs.py
  (Request.run_viewcvs):
    update calls to SubversionRepository constructors and _strip_suffix

  (_strip_suffix):
    add rev parameter, remove redundant where parameter

  (_repos_pathtype, view_markup, search_files, _get_diff_path_parts,
   generate_tarball):
    update calls to vclib methods

  (nav_path, view_directory, view_log, setup_diff, download_tarball,
   view_revision):
    explicitly read 'rev' query param instead of relying on
    SubversionRepository.rev, and update vclib calls


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1144 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-11-03 13:23:42 +00:00
rey4 c2c60e243d Fix exception when cvsdbadmin is passed only one argument
* tools/cvsdbadmin
  (global code)
    make sure script has 2 arguments


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1083 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-08-22 18:51:54 +00:00
cmpilato 5df9a282b0 Make svndbadmin run to completion on the Subversion source code
repository, which it previously failed to do because of poor change
handling.  Also, stop it from Aborting at the end of every run due to
double-freeing of memory.

* viewcvs/tools/svndbadmin
  (SvnRepo.__init__): No longer keep self.pool around, and certainly
    don't close it on __del__() -- that's what the svn.core.run_app()
    wrapper framework is for.
  (_get_diff_counts): Just accept a diff file pointer object as input,
    and let the caller generate such a thing and pass it in.
  (SvnRev.__init__): Make use of the change item's base_path and
    base_rev to get accurate locations against which to diff.  Update
    calls to _get_diff_counts(), and make use of a new revision root
    cache.
  (SvnRev._get_root_for_rev): New revision root caching helper.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1074 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-08-09 03:22:50 +00:00
rey4 ce2a896be2 Fix loginfo crashes on "cvs import" and "cvs add <directory>". Thanks to John
Beranek <john@redux.org.uk> for reporting the bug on the users' list.

* tools/loginfo-handler
  (HeuristicArgParse, CvsNtArgParse):
    fix return values


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@982 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-12-10 02:43:07 +00:00
rey4 2529196782 Improve error messages in directory view for inaccessible CVS files.
* lib/vclib/__init__.py
  (DirEntry.__init__):
    set "errors" member instead of "verboten"

* lib/vclib/bincvs/__init__.py
  (CVSRepository.listdir):
    don't skip "Attic" and "CVS" entries if we're not sure if they are
    directories

    don't skip entries in Attic/ when we can't tell if they are files or
    directories

  (CVSDirEntry.__init__):
    use "errors" argument instead of "verboten"

  (_get_logs):
    don't set "DirEntry.log_errors" member, use "errors"

  (_log_path):
    don't return file access errors here, they are returned by _check_path

  (_check_path):
    return error strings on file access errors instead of simple booleans

* lib/vclib/ccvs/__init__.py
  (CCVSRepository.dirlogs):
    don't set "DirEntry.log_errors" member, use "errors"

* lib/vclib/svn/__init__.py
* lib/vclib/svn_ra/__init__.py
  (get_logs):
    don't set "DirEntry.log_errors" member

* lib/viewcvs.py
  (view_directory):
    use "DirEntry.errors" member instead of "log_errors"

  (generate_tarball):
    use "DirEntry.errors" member instead of "verboten"

* tools/cvsdbadmin
  (RecurseUpdate):
    use "DirEntry.errors" member instead of "verboten"


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@978 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-12-03 20:44:56 +00:00
cmpilato c7e1eeb97d * tools/make-release
Fix the CVS root used, and remove the website before tarrin' up.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@967 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-26 06:36:30 +00:00
rey4 68ebc10d44 Minor fix in svndbadmin
* tools/svndbadmin
  (usage):
    fix call to os.path.basename()


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@958 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-16 03:08:04 +00:00
rey4 eaa2136cf6 Minor cleanups in loginfo script
* tools/loginfo-handler
  (HeuristicArgParse):
    fix spelling error in docstring

  (HeuristicArgParseDirectory, FindLongestDirectory)
    rename function

  (NextFile):
    fix return value

  (ProcessLoginfo):
    update inaccurate comment

  (module code):
    update inaccurate debug message


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@957 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-16 03:04:30 +00:00
rey4 173a8a7290 Get rid of rlog module, make CVSdb use bincvs instead.
* lib/rlog.py
    deleted

* lib/cvsdb.py
  (RLogDataToCommitList):
    removed

  (GetCommitListFromRCSFile):
    change to use vclib instead of rlog module

  (GetCommitListFromRCSFile, GetUnrecordedCommitList):
    update to accept vclib-style path_parts arguments

* lib/vclib/bincvs/__init__.py
  (BinCVSRepository.filelog):
    accept "cvs_pass_rev" option for passing -r arguments to rlog

  (_match_revs_tags):
    make this function work with an incomplete list of revisions
    instead of crashing. This is neccessary when an -r argument
    is passed to rlog.

  (_add_tag):
    make this function work when we need to create a tag with no
    revision object. We need this to create a HEAD tag when an -r
    argument is passed to rlog and we don't know what the HEAD
    revision is.

  (fetch_log):
    removed

* tools/cvsdbadmin
  (RebuildFile):
    removed, merged into UpdateFile

  (UpdateFile)
    accept new argument to reinsert all commits

  (RecurseRebuild):
    removed, merged into RecurseUpdate

  (RecurseUpdate):
    update to use vclib's listdir instead of os.listdir

  (CommandRebuild, CommandUpdate):
    removed, code moved into __main__ section

* tools/loginfo-handler
  (FileData, CommitFromFileData, GetUnrecordedCommitList):
    removed, these were just wrappers over the cvsdb interface

  (HeuristicArgParse, CvsNtArgParse)
    return tuples describing file data instead of file data objects

  (ProcessLoginfo):
    update to use cvsdb interface


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@953 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-16 02:23:23 +00:00
rey4 34b3f3e47a Fix file path issues in CVSdb on windows. Summary of changes:
- Stop converting directory and file paths to lower case with native
    slashes before storing them in the database. Instead store with
    preserved case and forward slashes.

  - Stop trying to clean up paths haphazardly all over the cvsdb module,
    instead expect paths to be normalized before they get passed to
    cvsdb.

* lib/cvsdb.py
  (Commit.SetRepository, Commit.SetDirectory, Commit.SetFile,
   CheckinDatabaseQuery.SetRepository,
   CheckinDatabaseQuery.SetDirectory):
    remove path cleanup code

  (RLogDataToCommitList)
    don't strip repository prefix because rlog module now does it

  (CleanRepository):
    new function

* lib/rlog.py
  (_get_co_file):
    change to return paths with forward slashes and without repository
    prefixes

  (GetRLogData):
    update call to _get_co_file

* tools/cvsdbadmin
  (UpdateFile, CommandUpdate, RebuildFile, CommandRebuild)
    remove calls to normcase here

  (module code):
    use CleanRepository function to clean up repository path

* tools/loginfo-handler
  (CleanDirectory):
    removed

  (HeuristicArgParse, CvsNtArgParse):
    don't call CleanDirectory or normcase here

  (HeuristicArgParseDirectory):
    remove stray print statement

  (module code):
    use cvsdb.CleanRepository function to clean up repository path

* tools/svndbadmin
  (module code):
    use cvsdb.CleanRepository function to clean up repository path

* lib/viewcvs.py
  (view_query):
    change to use forward slashes in directory names instead of native
    slashes

    use cvsdb.CleanRepository function to clean up repository paths

* lib/query.py
  (build_commit):
    change to handle forward slashes in directory paths instead of
    native slashes

  (run_query):
    use cvsdb.CleanRepository function to clean up repository path


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@952 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-16 00:47:42 +00:00
rey4 fb0a3cb754 Remove workaround for really old CVSNT bug in loginfo-handler
* tools/loginfo-handler
  (BrokenCvsNtArgParse):
    remove

  (global scope)
    no longer accept "brokencvsnt" argument


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@948 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-10-14 01:44:53 +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 d428e9fa2e - Add svndbadmin script, which can be used to add Subversion revision
information to the Bonsai checkin database.
- Get viewcvs-install to install the new script.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@868 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-07-16 11:53:48 +00:00
rey4 3690e0b386 Fix problem with cvsdb and bincvs.fetch_log
* lib/vclib/bincvs/__init__.py
  (fetch_log):
    fix arg list

* lib/rlog.py
  (GetRLogData)
    take repository object as argument instead of cfg object

* lib/cvsdb.py
  (GetCommitListFromRCSFile):
    take repository object as argument instead of repository path

* tools/cvsdbadmin
  (CommandUpdate, CommandRebuild)
    create BinCVSRepository objects to pass to cvsdb functions

* tools/loginfo-handler
  (CommitFromFileData, GetUnrecordedCommitList)
    take repository object as arguments instead of repository path

  (ProcessLoginfo)
    create BinCVSRepository objects to pass to cvsdb functions


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@802 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-01-26 01:25:47 +00:00
rey4 3f2d834184 add forward.gif and back.gif to apache_icons.py. these icons are used
by the new subversion revision page

* tools/bin2inline_py.py:
   added two new icons

* lib/apache_icons.py:
    regenerated


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@759 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-10-25 23:44:49 +00:00
rey4 cf9aa07cdb fixed docstring
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@688 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-24 19:53:59 +00:00
rey4 0999369756 changed to exit silently on "cvs import" instead of crashing
* tools/loginfo-handler (HeuristicArgParse, CvsNtArgParse): added tests
  to detect command line parameters ending in "- Imported sources'"

  (debug, warning, error): changed these functions to write to standard out
  instead of standard error


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@687 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-07-24 08:48:40 +00:00
timcera e0f09153bb Changed the length of dir and file VARCHAR fields from 128 to 255. I felt
this was the best (and easiest) change compared to changing the type
because of the possible introduction of subtle differences in the treatment
of VARCHAR and TEXT.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@628 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-02-22 03:52:14 +00:00
rey4 69b548a1b3 important bugfix for loginfo handler, didn't handle multidigit version numbers
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@616 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-02-18 11:56:35 +00:00
rey4 db8777345b There are a few significant changes to the loginfo handler script.
1) There's a new way to pass it parameters. You can write:

  ALL <VIEWCVS_INSTALLATION_DIRECTORY>/loginfo-handler %{sVv}

instead of:

  ALL (echo %{sVv}; cat) | <VIEWCVS_INSTALLATION_DIRECTORY>/loginfo-handler

although for backwards compatibility, the old invokation still works. The
reason for the change is to make life easier for windows users who do not
typically have cat and a unix-style echo command installed on their machines.

2) It now sort of supports spaces in file names. Current versions of CVS pass
loginfo parameters in a space-separated string without bothering to escape the
spaces that can occur in filenames within the string. This can make it
impossible to unambiguously parse, so a heuristic is used to guess which spaces
are meant to be separators and which are part of file names. (See the
documentation string for the HeuristicArgParse() function for a description of
how it works). The heuristic should be pretty reliable when spaces are used in
filenames AND directory names, extremely reliable when spaces are allowed in
EITHER filenames OR directory names, and completely reliable in the
unambiguous case when there are no spaces in path names.

There is a completely different situation with CVSNT. CVSNT does escape spaces
and special characters with backslashes so no heuristic is needed. A separate
parsing routine is used for this case.

3) By default the loginfo handler will run the CVSNT parsing routine on windows
and the heuristic parsing routine on all other platforms. But since CVSNT has
been backported to Unix, there may be some people who need to override the
default. This can be done by tacking on a second parameter:

  ALL <VIEWCVS_INSTALLATION_DIRECTORY>/loginfo-handler %{sVv} <arg2>

where <arg2> is either "cvs", "cvsnt", or "brokencvsnt". "brokencvsnt" is for
some semi-recent versions of CVSNT which mistakenly escaped filenames twice.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@604 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-02-11 03:09:17 +00:00
rey4 8ad4c2657e - now converts path names to a canonical format with the os.path.normcase()
function before sending them to the database to avoid the problems with
  multiple path spellings on windows


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@600 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-02-11 02:57:21 +00:00
rey4 bed66c3ea8 now replaces forward slashes in windows paths with backslashes before
passing them to the database. also changed loginfo-handler to print
errors to the standard error stream instead of the standard out so
messages can get forwarded to the CVS client.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@594 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-02-09 10:05:00 +00:00
rey4 2b2f676ee3 worked around lack of working popen2.Popen3 class on windows
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@587 8cb11bc2-c004-0410-86c3-e597b4017df7
2003-02-09 09:21:08 +00:00
gstein 79728fb463 Update copyright years.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@543 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-09-05 07:34:45 +00:00
gstein 1a8c6ac15b grr... prevent double compression of the tarball
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@377 8cb11bc2-c004-0410-86c3-e597b4017df7
2001-12-10 20:02:54 +00:00
pefu 77355718c6 Fix SF Bug [#489470] loginfo-handler broken due to rlog interface change
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@364 8cb11bc2-c004-0410-86c3-e597b4017df7
2001-12-05 19:00:27 +00:00
pefu 0da8dec361 * cutting a release should become even easier: Added tarball and .zip file
generation. (People using Windows often still prefer .zip over .tar.gz)
  fix permissions before generating the files.  Don't emit a an irritating
  warning, if someone tries this script to cut out viewcvs-0.7 again (even if
  solely done to test this script, before the v0_8 tag has been set ;-))


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@359 8cb11bc2-c004-0410-86c3-e597b4017df7
2001-11-27 21:18:39 +00:00
gstein d69802487f Revamp bin2inline to create lines that are less than 80 characters wide.
Regenerate the icons.

Suggested by: Peter Funk <pf@artcom-gmbh.de>


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@350 8cb11bc2-c004-0410-86c3-e597b4017df7
2001-11-19 10:13:01 +00:00
gstein a4aa00b5f1 Just store the icons as binary strings rather than worrying about base64.
Both are equally unintelligible, so we may as well simplify.


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@348 8cb11bc2-c004-0410-86c3-e597b4017df7
2001-11-19 04:20:04 +00:00
pefu 55a94583fa I've rewritten the handling of icons in 'standalone.py': Currently only
very few icons from the set of icons distributed with Apache are really
used within the ViewCVS templates.  I've simply converted them into
a tiny new module, which is imported and used by standalone.py.  Now
standalone.py is really 'standalone' and can be run without Apache
alltogether.  The former options '-i' and '--apache_root=' of standalone.py
are now obsolete and I've removed them again.

The tool 'bin2inline_py.py' that I have used to convert the icon files
into a single sourcecode file is a cut-and-rape-oneway script from
something I've written a while ago to put icons into some other Tkinter
standalone program.  I case someone wants to add another icon, I've
placed this hacked version into the tools subdirectory and modified
'make-release', so that it will not be included into the final
ViewCVS 0.8 tarball.

For those who want to run standalone directly from the ViewCVS
source distribution, I've added a new option '-r' (or --repository=)
to standalone.py, so that it is now possible to patch the default
path '/home/cvsroot' without having to setup a Symlink in /home
pointing to their repository.  (Not everybody has the permissions
to do that on their server.)


git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@331 8cb11bc2-c004-0410-86c3-e597b4017df7
2001-11-17 21:53:03 +00:00