will cause a lot of confusion, because many people will think 0.10 < 0.9!
Since the main functionality of ViewCVS is mature, there is no need to
avoid bumping up the version up to 1.0-dev. I do that right now.
Merry Xmas to all.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@426 8cb11bc2-c004-0410-86c3-e597b4017df7
in additional arguments to the target EZT file. The target file can
refer to the arguments as [arg0] thru [argN].
Example usage: [include "header.ezt" "annotate"]
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@418 8cb11bc2-c004-0410-86c3-e597b4017df7
(need to put instructions somewhere, but in brief:)
An admin can create a KV file in the [i18n] domain:
kv_files = [i18n]data/%lang%-text.conf
That KV file should have a [time] section and options named
%(name)_singular and %(name)_plural, where name is one of: second,
minute, hour, day, week, month, year. Each of the values should be
like: %d second. Additionally, one option name "little_time" with a
value like: very little time (e.g. no format specifier).
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@417 8cb11bc2-c004-0410-86c3-e597b4017df7
of the naming, and shift some text from the program to the templates.
* viewcvs.conf.dist: clarify description of the hide_attic default
* viewcvs.py: add [show_attic_href], [hide_attic_href], and
[rows.state] variables for managing the attic links. remove the
[rows.hide_attic_href] and [rows.attic] variables.
* directory.ezt, dir_alternate.ezt: use the new vars to insert the
text/links for the attic handling.
* upgrading.html: document the template variable changes. a few other
tweaks.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@414 8cb11bc2-c004-0410-86c3-e597b4017df7
* adjust the timers to take a tag on the start; this allows them to be
started/stopped independently, rather than needing to nest them
* add a few timers to get some perf info
* removed unused stuff: header_comment and html_link()
* use request.amp_query for the tarball_href
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@413 8cb11bc2-c004-0410-86c3-e597b4017df7
* viewcvs.py:
- make "search" param a sticky variable; it should propagate through
the screens, across column sort changes, etc
- htmlify() the search expression
- add a new variable to specify whether a search form is needed on
the directory page (to select a tag and/or a regex)
- add [files_shown] since [num_files] isn't "right"; need longer
term fix for variable w.r.t message when zero files are selected
- always create form parameters because we may have a search form
(and now use them in the search form)
- use new ezt.boolean() where appropriate
* directory.ezt, dir_alternate.ezt:
- display the current location and selection criteria in one block
- move selection form to bottom of screen; this emphasizes the
directory contents rather than how to select/refine the contents
- tweak the "no_match" message since the search expression could be
causing the zero-matches
- use a table to format the various forms of selection criteria
- use the params for *both* tag selection and regex selection
- optionally display the "show all files" button, based on whether
there is current selection criteria or not
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@412 8cb11bc2-c004-0410-86c3-e597b4017df7
as a formatting command. Prepare the arguments and pass them to the
new _cmd_format function.
_cmd_format splits up the format/value and then delivers it to the
output file with any potential substitutions.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@409 8cb11bc2-c004-0410-86c3-e597b4017df7
to this, when we displayed the attic contents, then would have Attic/
on the front of the name (erroneously).
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@404 8cb11bc2-c004-0410-86c3-e597b4017df7
* rather than using [headers] to determine the columns, just display
them explicitly. use the new [have_logs] to determine whether the
additional columns are needed.
* fix a bunch of problems in directory.ezt relating to unreadable
files or errors while reading CVS information (lining up columns and
whatnot)
* remove the "show_author" config option, favoring removal from the
templates instead.
* remove the unused "hide_non_readable" option. remove the
"use_java_script" and "open_extern_window" options; these were
removed recently, but accidentally left in the .conf file.
* remove the "flip_links_in_dirview" option, favoring a new template
instead. added a copy of directory.ezt as dir_alternate.ezt. changes
to actually make the columns flipped are coming in a future commit.
* remove the [rev_in_front], [rows.span], and [rows.cols] options;
these are now obsolete given the above changes
* add documentation to upgrading.html
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@403 8cb11bc2-c004-0410-86c3-e597b4017df7
* define a new "languages" config item for the available languages
* use the accept.py module to select the appropriate language based on
the Accept-Language header and the languages config.
* add a new key/value files concept. load them after determining the
language to use.
* support %lang% specification in the template files. This required
passing the "request" variable to generate_page() and to
html_footer()
* pass the 'kv' name into all templates
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@399 8cb11bc2-c004-0410-86c3-e597b4017df7
* annotation, human readable diff, CvsGraph, and a marked-up file all
use a template to generate the basic parts of the page. In many
cases (annotate, graph, markup), the content is still rendered
by other code.
* for the diff support, we take advantage of the new list iteration
support in EZT to "iterate on" a DiffSource object, which parses a
diff stream into structured object for the template to display.
* for the CvsGraph page, we make use of EZT's new stream support to
stream in an imagemap from the CvsGraph executable. the graph page
includes a navigation header now.
* updated the upgrading.html page with some items missing from the 0.7
instructions, plus new instructions.
* because of the complete conversion, the configuration file no longer
specifies colors or images -- these are all in the templates now.
Removed the relevant material from config.py and viewcvs.conf.dist.
* converted html_footer() to use the new footer.ezt template because
we still have to call that manually in the markup and annotate
cases.
* add the templates to viewcvs.conf.dist and config.py
* added a handy generate_page() utility for generating pages from a
template and its input data.
* removed download_link, html_icon, html_option, print_diff_select,
and navigate_header utility functions. These all printed HTML to the
output, but are obsolete due to the new templates.
* the new nav_header_data() utility function fills in data used by the
"header.ezt" template, which replaces the navigate_header() func.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@395 8cb11bc2-c004-0410-86c3-e597b4017df7
should have been "s". (the resulting bug is that a side-by-side diff
would never appear pre-selected in the popup)
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@393 8cb11bc2-c004-0410-86c3-e597b4017df7
* [include] now uses the current template's directory as a base for
including other templates. Thus, you can [include "header.ezt"] to
refer to a header.ezt template in the same directory.
* _cmd_print() now looks for a "read" attribute on the value, to
determine whether it is a stream (rather than a simple string). It
can now copy a stream to the output.
* added a simple catch for unclosed blocks. It doesn't say *what* is
unclosed, but it will at least give you an error about it, rather
than quiet failure.
* [for] loops now iterate until the end of a list (determined
internally by the interpreter when an IndexError occurs), rather
than using len(list). This allows for lists of an indeterminate
length to be used.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@392 8cb11bc2-c004-0410-86c3-e597b4017df7
* Use lib/ndiff.py to do the differencing.
* Passes by configuration files that have no differences between new and old.
* Create menu loop to choose between overwrite, do not overwrite and view
differences.
Future:
Need to work on difference format, ndiff is unusual. Need line numbers.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@391 8cb11bc2-c004-0410-86c3-e597b4017df7
1) don't include the surrounded [ ] in the regex group, this avoids the need
to slice them off (the [1:-1] stuff)
2) use a new regex to properly parse the args: loose double quotes, strict
symbols.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@390 8cb11bc2-c004-0410-86c3-e597b4017df7
to be restrictive on what a refname can contain.
Add some basic tests for the parsing regex.
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@388 8cb11bc2-c004-0410-86c3-e597b4017df7
* get_file_tests(): revert a portion: on error, append file, not full_name
* process_checkout(): take individual params rather than a request object.
nit: removed a call to normpath()
* view_checkout(): pass the individual params to process_checkout()
* search_files():
- call it "request" for consistency with other uses of the object
- DON'T CHANGE ITS FIELDS. the request object is passed to the template,
which needs values from it. we cannot go mucking with it. and who knows
what the caller may want to do with it.
- set up various local vars rather than munging request.*. note that we
call mimetypes.guess_type() manually
- rearrange ordering within loop to avoid expensive operations if we are
just going to bail out: if we have a dir, or the file isn't a text file.
- style nits: spaces after commas in function calls' args
- if we terminate reading of a pipe, then close it (avoids a hang)
- pass individual params to process_checkout()
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@382 8cb11bc2-c004-0410-86c3-e597b4017df7
* _prepare_ref() and _get_value() can now handle string constants
* change [is] processing to stop special-casing strings
* single quotes are not allowed, so simplify [include] parsing
git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@381 8cb11bc2-c004-0410-86c3-e597b4017df7