DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:darcspatch

darcspatch Plugin

Compatible with DokuWiki

No compatibility info given!

plugin Apply darcs-style “raw” patches

Last updated on
2007-08-07
Provides
Admin

This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.

Similar to darcs

Tagged with !discontinued, code, repository

By Todd Augsburger

:!: According to his website (2012-06-29), the author of this plugin died in 2011 so this plugin is no longer maintained. Feel free to adopt it if you have any use for it. :!:

This Admin Plugin is a plugin that apply darcs-style “raw” patches to an existing DokuWiki installation.

See darcs for information about darcs.

This plugin only applies “raw” patches (not darcs “patchsets”, “changelogs”, or “diffs”). For instance, raw patches may be found by browsing http://dev.splitbrain.org/darcsweb/darcsweb.cgi?r=dokuwiki;a=summary and selecting the “raw” link. You should only apply patches on release targets which the patch is expecting—there is no versioning within a raw patch. No files are updated unless the grouped changes can be successfully applied. If the application fails, the first error is shown.1) Multiple patches may exist in one file, and are applied independently. You can reverse a patch to essentially un-apply it.

Admin

Apply darcs-style raw patches by providing their URL.2)

cobs.rollerorgans.com_plugins_darcspatch.jpg

Configuration

Optional: Stored patch URLs may be set in Admin Configuration Settings: place each URL on a sepatate line.

Installation

You may use the plugin manager to install the plugin using the link above.

To install the plugin manually, download the source to your plugin folder, “lib/plugins” and extract its contents. That will create a new plugin folder, “lib/plugins/darcspatch”, and install the plugin. Note that there are required subdirectories and contents as well.

Revision History

  • 2007-08-07 — “Reverse” also applies multiple patches in reverse order.
  • 2007-08-06 — Added capability to “reverse” (un-apply) the patch.
  • 2007-08-05 — Released.

WARNING!

  • Repeatedly applying patches may have undesirable effects if the patch does not have sufficient info to recognize that it's been changed before—there is no “history” as there would be in a darcs “patchset”.
  • darcs “patchsets” do not work! If you need to use the info from a patchset, you'll probably have to manually create a “raw” patch which only has the final changes.3)
  • Most patches require a particular release as a target—make sure you are applying a patch designed for your specific release
  • This plugin only modifies existing files—it does not create or delete.
  • I use PHP5—I did not test this on PHP4.

Tips

I use this plugin to maintain my own customization of a current DokuWiki installation. I regularly install the latest snapshot, then apply my patches.

I also frequently test another person's modifications or patches to see whether their code works suitably for my needs. If so, I keep it in my saved list of URLs for later reapplication.

1)
A very common error is that the patch cannot match a particular line. This is indicative of either the wrong release target, or an attempted reapplication of the patch on a file that has already been changed.
2)
It is also permissible to use relative paths instead of URLs to reference patches stored on your own server.
3)
A “patchset” usually contains the raw patch in its first few lines: comments within “[…]” and changes within “{…}”.
plugin/darcspatch.txt · Last modified: 2016-01-24 19:23 by Aleksandr