Diffs are almost taken for granted and overlooked, but they are extremely powerful if used to full potential.
Problem: Diffs are only viewable in one main way. Context is not shown, unified diffs are not possible. Side by side is not implemented like the
CvsWeb features we use for our own TWiki code.
CVS:lib/TWiki.pm
Solution: Allow flexible display (user configurable) of diff content. Implement this as a plugin with "over ride" options for users to display all diffs as they prefer.
Result: Information can be more efficiently processed and tracked.
OK, so this isn't a very humble topic, it's long term goal.
Diffs are currently an all or nothing event. A new feature has been implemented in new versions of the GNU skin (as installed on
http://hurd.gnufans.org
) to only show about the last five diffs by default. Clicking through on another button shows all diffs for the topic.
Codev Topics with "diff" in their topic titles:
CairoDakarRegistrationDifference,
DakarDiffsInFormHandling,
DiffAttachments,
DiffAutoArchive,
DiffDoesNotAuthenticate,
DiffRawRendering,
DiffShouldSupportByWord,
DiffShouldSuppressTopicInfoMetaData,
DifferencesBetweenRevisionsBroken,
DifferentSecurityLevelsInSameTWikiInstallation,
DiffingWithVersionAttribution,
DiffsFunctionDoesNotAuthenticateProperly,
DiffsHardToRecognize,
DiffsInNotifyEmail,
DiffsRevertsToOneError,
DiffsShouldShowEntireTableRow,
EmptyDiffsOnTWikiDotOrg,
HandlingCairoDakarPluginDifferences,
HardwiredRDiffColours,
HtmlAnchorsOnRdiffSequentialOutput,
HumbleDiffs,
IncludeFromDifferentCharsetSite,
InvalidHtmlFixRdiff,
KeepRcsAndTxtInDifferentPlaces,
LastDiffFeature,
LinksDontDifferentiateIdenticalHeadings,
NoContextRdiffFix,
PreviewandViewRenderDifferently,
RdiffCgiScript,
RdiffErrorNoSuchFileOrDirectory,
RdiffIgnoresPermissions,
RdiffMissingSigs,
RdiffNotAuthWhenViewAuthUsed,
RdiffShouldShowContext,
RdiffauthCgiScript,
RemoveDiffs,
RestoreFromDiffsView,
SecurityAlertTWiki4RdiffPreviewAccess,
SelectableDiffs,
SolarisBinaryFileDifferError,
SupportDifferentSkinsForDifferentBrowsers,
TWikiFormsDiffRendering,
TaintBugInDiffs,
TestEnvPerlDiffs,
UnifiedDiffOutput,
UsingRCSDirectoryResultsInInitalVersionAndBrokenDiff,
VariableDifferencesInTemplates,
WhatDifferenceBetweenATopicAndAWeb,
WordDiff,
Number of topics: 49
--
GrantBow - 23 Jan 2003
yep - we may see something of this when i try to figure out
TWikiFormsDiffRendering
--
SvenDowideit - 23 Jan 2003
Very interesting, Sven. However it seems from a very brief look at that topic you are talking about the content displayed, omitting meta fields. At least that's what the first post you wrote there was about. Diffs are so useful, I was trying to refer specifically to the presentation of the data. I guess contextual display sort of crosses the line between these two categories in my mind.
I'm actually kind of surprised that no further features or enhancements to the diff function have evolved yet since this feature is
so useful.
--
GrantBow - 24 Jan 2003
yeah, unfortuanatly diff presentation is complex - and the rdiff script isn't very extensible. Once Bejing is out, and I have a deb out i'll concentrate on the Diff system (i hope work doesn't become busy between now and then)
--
SvenDowideit - 25 Jan 2003
One feature that would be very neat is to have an 'undo this diff' feature, i.e. the ability to see the
rdiff output with an 'Undo now' feature that attempts to undo that change. This could be done using
patch or perhaps a Perl built-in equivalent - see
PatchGuidelines for some links.
--
RichardDonkin - 08 Feb 2003
Please look at
UnifiedDiffOutput, it shows a unified diff. And to select a subrange of the diffs, you just need to set the parameters, can't remember their names right now...
--
WoutMertens - 10 Feb 2003
Thanks for the effort, Wout. That's a nice feature and it looks easy to apply.
--
GrantBow - 21 May 2003
See also
DiffsHardToRecognize
--
WolfgangSlany - 31 Dec 2003