Changes between SVN::Web versions.
This is a list of the main changes between different versions of
SVN::Web. Please see UPDATING.pod for details about any changes you may need
to make when updating an SVN::Web installation.
- •
- More improvements to UTF8 handling graciously contributed by Vladimir
Timofeev
- Updated psgi file, for some reason I regressed it.
- A variety of fixes, notably huge improvements to UTF8 handling graciously
contributed by Vladimir Timofeev and diff output fixes
- Template fixes for RT48416
- RT24507 closed as the stand alone server was removed in favor of
Plack.
- RT39707 closed as many perl SVN related issues were resolved
elsewhere
- Included patch from RT32041 to authenticate to https
- Pulled out mod_perl1/2 and cgi, replaced with Plack. This probably broke
lots of things.
- Changed to using Dist::Zilla with MakeMaker (due to .po issues with
Module::Build)
- DAGOLDEN recommends using Alien::SVN as dependency, rather than SVN::Core,
SVN::Client and SVN::Ra. This is because the SVN perl modules are not
published to CPAN.
- Merged patch from rt26159
- Fix for RT35186, to make 'selected' compliant with XHTML
- Fix for RT37388, by Vladimir Timofeev
- Change how path's are encoded, to work around new strictness in Template
Toolkit's "uri" filter. SVN::Web now
works with versions of TT > 2.15.
- Adjust t/timedate-format.t to work correctly in non-English
locales. Fixes rt#25435, reported by
"ema_zep@libero.it".
- •
- Belatedly update the SVN::Web installation to note that Subversion 1.4.0
or above is now required to use SVN::Web.
- •
- "reposparent" functionality was
inadvertently broken in 0.50. This release fixes that. This was rt#24377
reported by Christoph Buescher <Christoph.Buescher@fiducia.de>.
- SVN::Web now properly supports Apache 2 / mod_perl 2. In addition, the
test suite contains tests that work under Apache 2, and ensure that future
changes should not introduce regressions in this functionality.
- File::Spec is now used when constructing filesystem paths, instead of
assuming that the directory separator is /. This should allow the
use of native paths on Windows, e.g. C:\path\to\svnweb.
- A bug in the mod_perl handler meant that the [% script %] directive wasn't
generating fully qualified links. This resulted in links in the RSS feed
being relative. This is now fixed. Reported by Dietrich Streifert
<dietrich.streifert@visionet.de>.
- When testing the generated httpd.conf includes an explicit
"ServerName" directive, removing a
warning on some hosts. Reported in rt#20170 by
<fiajro@cy.ath.cx>.
- Set permissions on the temporary directories when running tests as root.
Otherwise they fail. Reported in rt#20170 by
<fiajro@cy.ath.cx>.
- Fix a bug encounted on Solaris. SVN::Core::time_from_cstring() was
returning negative numbers.
- The questions that are asked when running "perl
Build.PL" can now be answered and/or skipped by passing
command line options to Build.PL. Run
"perldoc Build.PL" for the documentation
options.
- Paths to Apache modules are no longer hardcoded in conf/httpd.tt.
"apxs" is used to retrieve the value of
the Apache library directory. In addition, the name of the mod_perl .so
file is now configurable, as different systems call it different
things.
- Included documentation on using SVN::Web with the IIS web server.
Submitted by Tom Hukins <tom@eborcom.com> in rt#20341.
- A bug in the author's testing environment meant that 0.48 shipped with
templates that generated HTML that was not strictly valid. This, and the
templates, have been fixed.
- The interface localisation can now be selected. The interface has always
been localised, but the mechanism for choosing it has been badly exposed.
SVN::Web now supports two configuration options
("languages" and
"default_language") to specify the
language selection.
In addition, the available configured languages are also
exposed through the ("trac") user
interface, and the user can choose from the list of available
localisation. Their choice is saved in a cookie.
- Generation of RSS feeds is now done using a template, instead of using
XML::RSS. This removes a dependency on XML:RSS, and should make it easier
to customise the content of the RSS feed should you desire.
This fixes rt#18169, reported by Mike Ellery
<mikee@s2technologies.com>.
- RSS feeds are now autodiscoverable in modern browsers.
- The formatting of timestamps is now configurable using
"strftime" in POSIX. You can choose how timestamps are
formatted, and they can be displayed in UTC (the Subversion default), the
server's local timezone, or the timezone of your choice. See "Time
and date formatting" in SVN::Web for details.
This fixes rt#18806, reported by Mike Ellery
<mikee@s2technologies.com>.
- Worked around a bug in Subversion where repository paths that were
specified with a tailing slash would trigger an assertion. This fixes
rt#19273, reported by Michael Schwern <MSCHWERN@cpan.org>.
- Fixed a bug where the "directory_umask"
cache backend option was not being treated as an octal number. This fixes
rt#19272, reported by Michael Schwern <MSCHWERN@cpan.org>.
- The SVN::Web::Revision action now show's the repository's youngest
revision if no "rev" parameter is
provided.
- Fixed a bug in SVN::Web::Revision. Revisions that contain files that were
copied from another file, modified, and then committed will now be
displayed properly instead of generating an error.
- The documentation for SVN::Web includes an example configuration for
Apache and FastCGI, contributed by Robert Spier
<rspier@pobox.com>.
- Made extensive changes to the test suite. Include tests that exercise
SVN::Web when running under
"svnweb-server", as a CGI script, and as
an Apache mod_perl1 handler. These tests are optional -- the installer is
prompted at "perl Build.PL" time whether
to run these tests, and to provide the information the tests need (such as
the port to run on).
- Implement support for caching the results of the actions, using any of the
Cache::Cache family of modules. In tests (see t/benchmark.t) this
can yield a 20% or greater speed benefit. See "Data cache" in
SVN::Web for details of how to enable the cache and configure cache
related options.
- Support Subversion repo directories and files that have spaces or other
characters that should be URI escaped in their names. Fixes rt#19093,
reported by <gbloice@gmail.com>.
- Commented out the references to Template::Plugin::Clickable and
Template::Plugin::Clickable::Email in the config file that is generated by
"svnweb-install". This stops log files
filling up with warnings if they're not present. The lines remain,
commented out, as a suggestion for users.
- Improved the modperl2 support, fixing rt#19004, rt#18437, and rt#18346
(Garrison Hoffman <garrison@codefix.net>, <cpan@rickster.com>,
Thomas Nagel <me@thomasnagel.com>).
- •
- Fixed a bug in "svnweb-server". The CGI
module is now always used when running under this server, instead of
CGI::Fast. This should fix problems if you are trying to use
"svnweb-server" on a host with CGI::Fast
installed.
- •
- Fixed a bug that broke mod_perl support.
- When browsing the repository the trac templates now include age of
the file, expressed as {seconds, minutes, hours, days, weeks, months,
years} since the file was last modified.
- The "revision",
"log",
"view", and
"rss" actions are much more conservative
with memory when processing commits that changed a large number of files.
Fixes rt#17359, reported by Dietrich Streifert
<dietrich.streifert@visionet.de>.
- Included support for running under mod_perl2 as well as mod_perl1. Fixes
rt#17085 and rt#17350. Based on a patch from Garrison Hoffman
<garrison@codefix.net>.
- Fixed a bug when running under mod_perl -- the HTTP headers were not being
sent. Some browsers could cope with this, others just displayed the raw
HTML. Reported by Dominic Mitchell <dom@happygiraffe.net>.
- Entering a revision number that does not exist will now generate a
localised error message. Fixes rt#17822, reported by
<gk5885@kickstyle.net>
- The SVN::Web::Revision action will now not show diffs between file
revisions if either revision of the file has a non-text MIME type. Fixes
rt#17625, reported by Mike Ellery <mikee@s2technologies.com>.
- Fixed some bugs in "svnweb-server".
Option parsing works properly, fixing rt#17347 (reported by
<miyagawa@cpan.org>) and the
"--net-server" option is now
honoured.
- "svnweb-install" should now work if any
directories in the install path contain regexp metacharacters in the
filename. Fixes rt#17282, reported by <CORION@cpan.org>. It also
emits warnings if copying files or making directories during the install
process fails, fixing rt#17283.
- Fix a syntax error in the config file generated by svnweb-install.
- Fix the instructions and code for running under mod_perl.
- When viewing an HTML diff, include a link to the plain text
equivalent.
- Showing diffs when viewing a revision is now optional, but defaults to
on.
- Require Exception::Class 1.22 or above. Versions below lack the necessary
"caught()" syntax.
- Improve the installation and configuration documentation.
- Include "svnweb-server", a simple web
server to make it easier for people to get started with SVN::Web.
- Throw exceptions instead of die()ing on almost all errors. Catch
the exceptions and generate much friendlier error messages. Error messages
are now easy to localise.
- When viewing a diff, the trac templates show the two revision
numbers being compared, and include a link allowing the user to reverse
the order of the diff.
- The syntax for specifying permitted actions, and the classes that
implement them, has changed. See UPDATING for more information. This
mechanism also allows for easy configuration of per-action options.
- A (partial) French localisation has been supplied by Cyril Brulebois.
- Any "svn:externals" properties that are
set on a directory are now shown when browsing that directory.
- When viewing a file's revision log, you can now select two arbitrary
revisions and get a diff showing the changes between those revisions.
Fixes rt#15813.
- If you only have one repository configured then the
"list" action can be configured to
immediately redirect to browsing that repository, saving the user from
having to click through an intermediate page. See SVN::Web::List for more
information.
- Introduce a [% base_uri %] variable so templates can refer to files
relative to the directory that
"svnweb-install" was run in. Fix a
hardcoded reference to my home directory in a template.
- Update some of the packaging files, which were out of date.
- Maintainership handed from Chia-ling Kao to Nik Clayton.
- Overhauled the templates, so the out-of-the-box experience is much
nicer.
- Add a "view" action that shows the
contents of a file, along with the most recent log message.
- More customisation options, making it easier to add or remove actions from
the list of things that SVN::Web is allowed to do.
- Added huge swathes of information to the documentation. It should now be
much easier for anyone else to contribute code and/or templates to
SVN::Web.
- A fix for rt#12431. URLs without trailing slashes are fixed.
- A mechanism to 'stack' Template Toolkit filters. You can easily run log
messages through an arbitrary number of filters, without causing problems
if one or more of the filters is not installed.
- Inline display of some content from the repository where appropriate
(e.g., viewing an image works properly).
- Fixed a bug that meant the results from the automated tests weren't valid.
Fixed the bugs that this uncovered.
- Added tests to ensure that the generated HTML is valid.
- Fix pool mess causing apache to segfault under mod_perl.
- Add limit option to log.
- Templates are now css friendly. [Autrijus]
- heavy branch detection no longer default.
- Make mod_perl 1 work.
- I18n support from Autrijus.
- Repository list action from DROLSKY
- Fix poor pool usage for branch init.
- Fix RSS links to revisions under mod_perl.
- Misc fixes and API catch-up.
- Fix - Escape log message properly.
- Add log message when describing a revision.
- Sort the entries in browsing.
- Adjust pool usage for opened repos so it's easier for modperl to work
- Add mod_perl support.
- Add path navigation support.
- Add file diff support.
- Add RSS support for tracking changes.
- Add mime-type support for checkout and browse.
- Add branch info support in directory browsing.
- Add branchpoint info in log mode.
- Update document.
- •
- Fix - Missing '/' in path in links.