Tweak the "from 0.8" section for a bit of consistency with other sections.
(As if anyone is still running 0.8.)
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2633 8cb11bc2-c004-0410-86c3-e597b4017df7
into two: 'log_pagesize' and 'dir_pagesize', individually controlling
the size of pages used (if at all) for the revision log and directory
views, respectively.
* conf/viewvc.conf.dist
(use_pagesize): Removed, in favor of...
(dir_pagesize, log_pagesize): ...these.
* lib/viewvc.py,
* lib/config.py,
* bin/standalone.py
Replace the use and tooling around 'use_pagesize' with
'dir_pagesize' and 'log_pagesize' as appropriate.
* templates/include/paging.ezt,
* templates/include/dir_header.ezt
Stop using the option value to determine whether or not to show
pagination UI. Use the presence of some pages instead.
* docs/upgrading-howto.html
Note the changes in options.
Patch by: Lei Zhang <thestig{_AT_}google.com>
(Tweaked by me.)
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2142 8cb11bc2-c004-0410-86c3-e597b4017df7
Trade the 'mime_types_file' option for 'mime_types_files' -- an
ordered list of MIME mapping files to consult. And provide our own
(empty) mapping file that folks can use to override the mappings
provided by other such files.
* mimetypes.conf.dist
New file.
* viewvc.conf.dist
(mime_types_files): Was mime_types_file, and now accepts multiple values.
* lib/config.py
(Config._force_multi_value): Add "mime_types_files" to the list of
multi-value configuration options.
(Config.set_defaults): Track rename of mime_types_file parameter,
now setting the default to a list containing only "mimetypes.conf".
* lib/viewvc.py
(load_config): Track new name and format of mime_types_files option.
* viewvc-install
(FILE_INFO_LIST): Also install mimetypes.conf.dist as itself and as
mimetypes.conf.
* INSTALL
(INSTALLING VIEWVC): Update reference to renamed configuration option.
* docs/upgrading-howto.html
Update this document.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2101 8cb11bc2-c004-0410-86c3-e597b4017df7
and have that mean "use an authorizer". So let's just prevent that
confusion right now, okay?
* lib/config.py
(Config.set_defaults): Set 'authorizer' by default to None.
* viewvc.conf.dist
(authorizer): Update comments for correctness, and don't imply that
"forbidden" is the default authorizer.
* docs/upgrading-howto.html
Stop saying that "forbidden" is the default authorizer.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@2053 8cb11bc2-c004-0410-86c3-e597b4017df7
* viewvc.conf.dist
(hide_errorful_entries): New.
* lib/config.py
(Config.set_defaults): Init cfg.options.hide_errorful_entries to 0.
* lib/viewvc.py
(view_directory): If cfg.options.hide_errorful_entries is enabled,
skip any directory entries that carry errors.
* docs/upgrading-howto.html
Note the new option.
* CHANGES
Note this (and the previous) change.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1998 8cb11bc2-c004-0410-86c3-e597b4017df7
modules were renamed), and merge r1933 (in which the 'imp' module is
used to more directly deal with the import cycle problem).
* docs/upgrading-howto.html
Remove upgrading notes about renamed modules since, now, they aren't
renamed any more.
* viewvc-install
Note re-renamed paths.
* bin/mod_python/viewvc_mp.py,
* bin/mod_python/query_mp.py
Rename these back ...
* bin/mod_python/viewvc.py,
* bin/mod_python/query.py
... to these, and use the 'imp' module to load libraries from
specific locations.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1994 8cb11bc2-c004-0410-86c3-e597b4017df7
configured template directory now.
* lib/viewvc.py
(get_view_template): Rework this to interpret per-template overrides
as relative to the template-dir, which itself is relative to the
configuration location.
* viewvc.conf.dist
(templates): Strip 'templates/' from the sample template locations,
and note that these paths are relative to the configured template
directory.
* docs/upgrading-howto.html
Note this change of interpretation.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1953 8cb11bc2-c004-0410-86c3-e597b4017df7
ViewVC's core libraries, turn the form hidden-values objects from HTML
strings to iterable objects that templates can use to *make* HTML strings.
* lib/viewvc.py
(Request.get_form): Now prepare hidden values as an iterable list of
objects with .name and .value attributes.
(common_template_data): Don't add 'change_root_action' and
'change_root_hidden_values' data dictionary items.
(prepare_hidden_values): Remove as unused.
* templates/include/diff_form.ezt,
* templates/include/dir_footer.ezt,
* templates/include/dir_header.ezt,
* templates/include/paging.ezt,
* templates/include/pathrev_form.ezt,
* templates/include/sort.ezt,
* templates/diff.ezt,
* templates/log_table.ezt,
* templates/query_form.ezt,
* templates/revision.ezt
Iterate over hidden-values items to generate <input type="hidden"
.../> output.
* docs/upgrading-howto.html,
* docs/template-authoring-guide.html
Note these changes.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1894 8cb11bc2-c004-0410-86c3-e597b4017df7
allow_compress option do something useful.
. o O ( What other dead code exists in this software? )
* lib/viewvc.py
Import the 'gzip' module unconditionally.
(Request.__init__): Determine if gzip output encoding is allowed.
(get_writeready_server_file): New.
(download_tarball): Lose the code that falls back to using a gzip
binary. Use get_writeready_server_file()
(generate_page, view_checkout, view_cvsgraph_image, view_doc,
view_patch): Use get_writeready_server_file(), allowing it to do
server header output finalization.
* lib/config.py
(Config.set_defaults): No longer initialize self.utilities.gzip.
Now initialize cfg.option.allow_compress to 0.
* viewvc.conf.dist
(utilities.gzip): Lose.
(options.allow_compress): Lose note that indicates that 'gzip' must
be installed and accessible in the program path.
* docs/upgrading-howto.html
Don't note the addition of cfg.utilities.gzip ... because I just
un-added it.
* CHANGES
Note support for gzip-encoded output.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1873 8cb11bc2-c004-0410-86c3-e597b4017df7
confusing folks upgrading from ViewVC 1.0.x.
* lib/vcauth/forbiddenre/__init__.py
(ViewVCAuthorizer.__init__): Look for a configuration option called
"forbiddenre" instead of "forbidden".
* lib/config.py
(_force_multi_value): Remove "forbidden" from this list, as we don't parse
its value directly any more.
* docs/upgrading-howto.html
Update the section about migrating forbiddenness settings.
* viewvc.conf.dist
Rename the authz-forbidden.forbidden option to authz-forbidden.forbiddenre.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1836 8cb11bc2-c004-0410-86c3-e597b4017df7
ago), I inadvertantly cross namespaces with the log view's use of
those variables as links to the HEAD versions of files. Disambiguate
the head versions by renaming the data dictionary variables with head_
prefixes.
* lib/viewvc.py
(view_log): Store HEAD href stuff in variables with "head_" prefixes
so we don't clobber the global href variables.
* docs/upgrading-howto.html
Note renames of annotate_href, download_href, download_text_href,
prefer_markup, and view_href to head_annotate_href, head_download_href,
head_download_text_href, head_prefer_markup, and head_view_href
(respectively).
* docs/template-authoring-guide.html,
* templates/include/log_header.ezt
Track template variable renames.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1833 8cb11bc2-c004-0410-86c3-e597b4017df7
* lib/viewvc.py
(view_diff): Rework the data dictionary: provide 'left' and 'right'
container objects with members for stuff related to the files on
the left and right side of the diff. Also, add the usual
per-file-revision view links to those containers, too.
* templates/diff.ezt
Track the data dictionary changes, and add links to the preferred
file views for each revision.
* docs/template-authoring-guide.html,
* docs/upgrading-howto.html
Note template changes.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1701 8cb11bc2-c004-0410-86c3-e597b4017df7
* viewvc.conf.dist
(mangle_email_addresses): New option.
* lib/config.py
(Config.set_defaults): Set defaults for new 'mangle_email_addresses'
option.
* lib/viewvc.py
In various functions, use 'cfg = request.cfg' to enhance readability.
(htmlify): Add 'cfg' parameter. Callers updated. Honor the new cfg
option 'mangle_email_addresses', showing only "username@..." when
mangling.
(copy_stream, MarkupPipeWrapper.__init__, MarkupShell.__init__): Add
'cfg' parameter. All callers updated.
(MarkupEnscript.__init__, MarkupHighlight.__init__): Squirrel away
the 'cfg' parameter.
* docs/upgrading-howto.html
Note the new mangle_email_addresses option.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1670 8cb11bc2-c004-0410-86c3-e597b4017df7
subsystem go mainstream!
* notes/authz-dev-TODO
* lib/vcauth/*
New, copied from the authz-dev branch.
* viewvc.conf.dist
* lib/viewvc.py
* lib/query.py
* lib/debug.py
Merge changes from the authz-dev branch.
* lib/config.py
Merge changes from the authz-dev branch. Also, make 'forbidden' the
default value for 'authorizer'.
* docs/upgrading-howto.html
Add sections about handling forbidden modules.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1623 8cb11bc2-c004-0410-86c3-e597b4017df7
override groupings and the base configuration section that is being
overridden. Why? Besides revealing a clear heirachy of information
(which seems more intuitive to me, at least), I anticipate it being
helpful for disambiguation later, especially since neither vhosts nor
root names should have forward slashes in them.
* viewvc.conf.dist
(vhosts): Tweak the inline comments in accordance with this new plan.
* lib/config.py
(Config._process_vhost, Config._process_root_options): Expect a
forward slash (/) character where a hyphen (-) was previously
expected.
* docs/upgrading-howto.html
Update upgrade documentation with these changes.
* CHANGES
Note that per-root configuration overrides are now supported.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1609 8cb11bc2-c004-0410-86c3-e597b4017df7
root-ROOTNAME-CONFIGSECTION.
In order to keep the configuration section naming conventions
consistent, change the way virtual host override sections are named
from VHOSTNAME-CONFIGSECTION to vhost-VHOSTNAME-CONFIGSECTION.
* lib/config.py
(Config.load_config): Add optional 'rootname' parameter. Actually
make use of self.conf_path. If there is a rootname provided,
overlay per-root options.
(Config._process_vhost): Now expect vhost section names to begin
with the prefix "vhost-".
(Config._find_canon_vhost): Minimize some logic.
(Config.overlay_root_options, Config._process_root_options): New.
(ViewVCConfigurationError, IllegalOverrideSection): New.
(MalformedRoot): Now inherit from ViewVCConfigurationError.
* lib/viewvc.py
(Request.run_viewvc): Once the rootname is determined, overlay
per-root configuration options.
* viewvc.conf.dist
(vhosts): Update vhosts docs and examples to note the new "vhost-"
section name prefix.
* docs/upgrading-howto.html
Note the change in vhost override section naming expectations.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1607 8cb11bc2-c004-0410-86c3-e597b4017df7
* viewvc.conf.dist
(use_rcsparse): Move this from the 'general' section to the
'options' section.
* lib/config.py
(Config.set_defaults): Track the move of the 'use_rcsparse' section.
* lib/viewvc.py
(Request.run_viewvc): Track the move of the 'use_rcsparse' section.
* docs/upgrading-howto.html
Note the option changes, and re-work the upgrading-from-1.0.0 option
changes section a little bit while I'm here.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1604 8cb11bc2-c004-0410-86c3-e597b4017df7
* lib/config.py
(Config.set_defaults): Enable options.root_as_url_component by default.
* viewvc.conf.dist
(default_root): Describe this a little better.
(root_as_url_component): Indicate that enabled is the default state.
* docs/upgrading-howto.html
Add a note about the root_as_url_component option default change.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1563 8cb11bc2-c004-0410-86c3-e597b4017df7
having them populate almost identical data dictionaries, and having
similar template headers.
* docs/upgrading-howto.html
(Upgrading from 1.0.0): Note that 'mime_type', 'log', 'date', 'ago',
'author', 'branches', 'tags', 'branch_points', 'changed', 'size',
'state', 'vendor_branch', and 'prev' were added to annotate.ezt.
* docs/template-authoring-guide.html
(Annotation View): Add 'mime_type', 'log', 'date', 'ago', 'author',
'branches', 'tags', 'branch_points', 'changed', 'size', 'state',
'vendor_branch', and 'prev'.
* templates/annotate.ezt
Basically, replace the top of this thing with a copy of the top of
markup.ezt.
* lib/viewvc.py
(view_annotate): Populate almost an identical data dictionary to
what the markup view uses.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1552 8cb11bc2-c004-0410-86c3-e597b4017df7
checkout view. The former is for sanity, the latter for security.
* viewvc.conf.dist
(allow_tar, allow_annotate, allow_markup): Removed.
(allowed_views): New.
* lib/config.py
(Config._force_multi_value): Add 'allowed_views'.
(Config.set_defaults): Set default for 'allowed_views'; no longer set
defaults for 'allow_tar', 'allow_annotate', 'allow_markup'.
* lib/viewvc.py
(default_view, view_directory, download_tarball, get_file_view_info,
view_annotate, view_diff, build_commit, view_revision, view_markup,
view_checkout): Track changes, adding code to prevent checkout view
URL generation when the view is disabled, and doing the same for
markup views (which should have already been done, since we already
had an allow_markup option!)
* templates/query_results.ezt
* templates/markup.ezt
* templates/directory.ezt
* templates/log.ezt
* templates/log_table.ezt
* templates/annotate.ezt
Don't assume checkout and markup views are present.
* docs/upgrading-howto.html
Update to show the configuration changes.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1544 8cb11bc2-c004-0410-86c3-e597b4017df7
object, again with the same warnings applied to [rootpath] in r1425.
* lib/viewvc.py
(common_template_data): Expose the path for each root in the "roots"
data item.
* docs/upgrading-howto.html,
* docs/template-authoring-guide.html
Update the docs.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1426 8cb11bc2-c004-0410-86c3-e597b4017df7
(common_template_data): Expose request.rootpath as "rootpath".
* docs/upgrading-howto.html,
* docs/template-authoring-guide.html
Note this new exposition, though with a warning about its use in an
insecure environment.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1425 8cb11bc2-c004-0410-86c3-e597b4017df7
Bring this, I think, up-to-date with the 1.1.0 work-in-progress.
Also, fix some colors to avoid using green save for "added" variables.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1409 8cb11bc2-c004-0410-86c3-e597b4017df7
creating a new section of the configuration file strictly for defining
the locations of these helper applications.
This closes issue #229 (configurable path to sed) and issue #62
(configurable path to diff), and perhaps others I failed to find.
* viewvc.conf.dist
Add a new "utilities" section for corraling all the various
tool-location configurations, and relocate (with some tweaks) a
bunch of options:
general.rcs_path => utilities.rcs_dir
general.cvsnt_ext_path = utilities.cvsnt
general.svn_path => utilities.svn
options.enscript_path => utilities.enscript
options.highlight_path => utilities.highlight
options.py2html_path => utilities.py2html_dir
options.php_exe => utilities.php
options.cvsgraph_path => utilities.cvsgraph
utilities.diff (new)
utilities.gzip (new)
utilities.sed (new)
options.use_py2html (new)
* lib/config.py
(_sections): Add 'utilities' section.
(Config.set_defaults): Reflect options tweaks made to
viewvc.conf.dist in the code here.
* lib/viewvc.py
(Request.run_viewvc): Track renamed utilities.svn option. Now pass
cfg.utilities into BinCVSRepository(), CCVSRepository(), and
SubversionRepository(). Collapse now-identical
SubversionRepository() calls.
(markup_stream_python): Return immediately if options.use_py2html
isn't set. Track renamed utilities.py2html_dir option.
(view_cvsgraph_image, view_cvsgraph): Track renamed
utilities.cvsgraph option.
(MarkupPHP.__init__): Track renamed utilities.php option, and allow
for 'php' as a fallback value.
(MarkupHighlight.__init__): Track renamed utilities.highlight option.
(MarkupEnscript.__init__): Track renamed utilities.enscript option,
and honor new utilities.sed option.
(download_tarball): Use new utilities.gzip option.
* lib/vclib/__init__.py
(_diff_fp.__init__): Add 'diff_cmd' parameter.
* lib/vclib/svn/__init__.py
(SubversionRepository.__init__): Drop 'svn_path' parameter, and now
accept 'utilities'.
(SubversionRepository.rawdiff): Pass self.diff_cmd to _diff_fp().
* lib/vclib/svn_ra/__init__.py
(SubversionRepository.rawdiff): Pass self.diff_cmd to _diff_fp().
* lib/vclib/ccvs/__init__.py
(CCVSRepository.rawdiff): Pass self.utilities.diff or 'diff' to _diff_fp().
* lib/vclib/bincvs/__init__.py
(CVSRepository.__init__): Add 'utilities' parameter.
(BinCVSRepository.__init__): Lose as no-longer-necessary.
(BinCVSRepository.rcs_popen): Track renamed options, and renamed
member variable that hold those options.
* docs/upgrading-howto.html
Note these options changes.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1407 8cb11bc2-c004-0410-86c3-e597b4017df7
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