This is the modern implementation of the classic Foswiki RCS based store. It has been moved into a contrib as other store implementations have emerged, and the RCS store's status as "the one and only" store implementation has been eroded.
Trash
web should be be cleared periodically, by archiving (saving) the text and RCS files if required (recommended), then deleting them from the pub/Trash
and data/Trash
directories.
Trash
directory is all that is required for maintenance, it is possible to grant Trash
admin privileges to multiple users, while strictly limiting server access.RcsWrap
rcs
commands under the control of Foswiki. It is generally not recommended on systems running with mod_perl, and is unavailable on Windows.
RcsLite
There is a configuration option embedded in the RCSLite module that can significantly improve performance, It is not enabled by default because it will disable the capability of storing a revision comment with each save. The developers do not believe that Foswiki uses this feature, but as it might be used by non-default extensions, it has not been disabled.
To improve performance, (and disable storage of save comments) apply the following patch. Paste it into a file named"patchrcs"
in your Foswiki installation directory,
and then apply the patch by running patch -p0 < patchrcs
. You can also just edit the file directly and change the 0;
to 1;
, around line 105.
diff lib/Foswiki/Store/Rcs/RcsLiteHandler.pm lib/Foswiki/Store/Rcs/RcsLiteHandler.pm --- lib/Foswiki/Store/Rcs/RcsLiteHandler.pm +++ lib/Foswiki/Store/Rcs/RcsLiteHandler.pm @@ -102,7 +102,7 @@ use Foswiki::Sandbox (); # doesn't actually use that part of the info record for anything much. We could rework the store API to # separate the log info, but it would be a lot of work. Using this constant you can ignore the log info in # getInfo calls. The tests will fail, but the core will run a lot faster. -use constant CAN_IGNORE_COMMENT => 0; # 1 +use constant CAN_IGNORE_COMMENT => 1; # 1 # # As well as the field inherited from Rcs::Handler, the object for each file
cd /path/to/foswiki perl tools/extension_installer <NameOfExtension> installIf you have any problems, or if the extension isn't available in
configure
, then you can still install manually from the command-line. See https://foswiki.org/Support/ManuallyInstallingExtensions for more help.
Name | Version | Description |
---|---|---|
File::Copy::Recursive | >0 | Required |
1.22 (31 Mar 2022): | Foswikitask:Item15076: RCS store does not properly encode topic information |
1.21 (30 Sep 2021): | Foswikitask:Item15045: getRevisionInfo of an attachment always returned the revision info of the first attachment of a topic |
1.20 (24 Jan 2021): | Foswikitask:Item15010: accept rcs versions > 5.10 |
1.10 (5 Jan 2018): | Foswikitask:Item14591: Fixed loading old revisions |
1.06 (4 Apr 2017): | Foswikitask:Item14368: Failure to handle edge cases leads to obscure bug. |
1.05 (26 Nov 2016): | Released wth Foswiki 2.1.3 Foswikitask:Item14066: performance issue sorting topic list based on NFKD. |
1.04 (06 Mar 2016): | Foswikitask:Iem14008: Error if FoswikiAttachPubFiles is enabled with a non-RCS store. |
1.03 (03 Feb 2016): | Released with Foswiki 2.1, Foswikitask:Item13405 - NFC Normalize all UNICODE strings. Foswikitask:Item12569: Use NFKD normalization when sorting names. Foswikitask:Item13894: Fix double-encoding of attachment comments. Foswikitask:Item13870: Foswikitask:Item13927: Fixes to configure checkers |
1.01 (11 Sep 2015): | Foswikitask:Item13697: Reject unsupported characters from web/topic and attachment filenames. Foswikitask:Item13728: Rename fails for symlinked attachments. |
1.00 (10 May 2013): | Initial version, abstracted from core |
Author | ProjectContributor |
Version | 1.22 |
Release | 31 Mar 2022 |
Description | A wiki topic and attachment store using the RCS revision control system |
Repository | https://github.com/foswiki/distro |
Copyright | © 2015-2022 Foswiki Contributors, All Rights Reserved |
License | GPL (GNU General Public License) |
Home | http://foswiki.org/Extensions/RCSStoreContrib |
Support | http://foswiki.org/Support/RCSStoreContrib |