THIS PACKAGE IS NO LONGER MAINTAINED.
At this point, I have no longer the time nor the interest to work on go-difflib. I apologize for the inconvenience.

Go-difflib is a partial port of python 3 difflib package. Its main goalwas to make unified and context diff available in pure Go, mostly fortesting purposes.
The following class and functions (and related tests) have be ported:
SequenceMatcherunified_diff()context_diff()
$ go get github.com/pmezard/go-difflib/difflib
Diffs are configured with Unified (or ContextDiff) structures, and canbe output to an io.Writer or returned as a string.
diff:= difflib.UnifiedDiff{A:difflib.SplitLines("foo\nbar\n"),B:difflib.SplitLines("foo\nbaz\n"),FromFile:"Original",ToFile:"Current",Context:3,}text,_:=difflib.GetUnifiedDiffString(diff)fmt.Printf(text)would output:
--- Original+++ Current@@ -1,3 +1,3 @@ foo-bar+baz