[jabref] 02/03: drop dependency on java-diff-utils due to license issues
Tony Mancill
tmancill at moszumanska.debian.org
Sun Dec 4 19:58:23 UTC 2016
This is an automated email from the git hooks/post-receive script.
tmancill pushed a commit to branch dev
in repository jabref.
commit d4cb9086ea46d42850e82675d020d54b0d84e192
Author: tony mancill <tmancill at debian.org>
Date: Sun Dec 4 11:50:39 2016 -0800
drop dependency on java-diff-utils due to license issues
---
debian/control | 1 -
debian/patches/060_diable_java-diff-utils.patch | 286 ++++++++++++++++++++++++
debian/patches/series | 1 +
3 files changed, 287 insertions(+), 1 deletion(-)
diff --git a/debian/control b/debian/control
index 2c16af7..5cc0485 100644
--- a/debian/control
+++ b/debian/control
@@ -14,7 +14,6 @@ Build-Depends-Indep: ant,
libantlr3-runtime-java,
libcommons-logging-java,
libglazedlists-java,
- libjava-diff-utils-java,
libjava-string-similarity-java,
libjempbox-java,
libjgoodies-common-java (>= 1.8.1),
diff --git a/debian/patches/060_diable_java-diff-utils.patch b/debian/patches/060_diable_java-diff-utils.patch
new file mode 100644
index 0000000..440441f
--- /dev/null
+++ b/debian/patches/060_diable_java-diff-utils.patch
@@ -0,0 +1,286 @@
+From 52e4b22224e3da8d3adf90b180d4cd7711887e63 Mon Sep 17 00:00:00 2001
+From: Oliver Kopp <kopp.dev at gmail.com>
+Date: Sun, 4 Dec 2016 11:26:17 +0100
+Subject: [PATCH] Remove dependency on java-diff-utils
+Comment: Edited patch originally found here:
+ https://github.com/koppor/jabref/commit/52e4b22224e3da8d3adf90b180d4cd7711887e63.patch
+
+---
+ build.gradle | 2 -
+ .../sf/jabref/gui/mergeentries/MergeEntries.java | 32 +------
+ .../logic/util/strings/DiffHighlighting.java | 101 ---------------------
+ .../logic/util/strings/DiffHighlightingTest.java | 81 -----------------
+ 4 files changed, 5 insertions(+), 211 deletions(-)
+ delete mode 100644 src/main/java/net/sf/jabref/logic/util/strings/DiffHighlighting.java
+ delete mode 100644 src/test/java/net/sf/jabref/logic/util/strings/DiffHighlightingTest.java
+
+--- a/build.gradle
++++ b/build.gradle
+@@ -98,8 +98,6 @@
+ compile 'org.openoffice:ridl:4.1.2'
+ compile 'org.openoffice:unoil:4.1.2'
+
+- compile 'com.googlecode.java-diff-utils:diffutils:1.3.0'
+-
+ antlr3 'org.antlr:antlr:3.5.2'
+ compile 'org.antlr:antlr-runtime:3.5.2'
+
+--- a/src/main/java/net/sf/jabref/gui/mergeentries/MergeEntries.java
++++ b/src/main/java/net/sf/jabref/gui/mergeentries/MergeEntries.java
+@@ -34,7 +34,6 @@
+ import net.sf.jabref.logic.bibtex.LatexFieldFormatterPreferences;
+ import net.sf.jabref.logic.formatter.casechanger.SentenceCaseFormatter;
+ import net.sf.jabref.logic.l10n.Localization;
+-import net.sf.jabref.logic.util.strings.DiffHighlighting;
+ import net.sf.jabref.model.database.BibDatabaseMode;
+ import net.sf.jabref.model.entry.BibEntry;
+ import net.sf.jabref.model.entry.InternalBibtexFields;
+@@ -272,7 +271,7 @@
+ mergePanel.add(boldFontLabel(Localization.lang("Entry type")), CELL_CONSTRAINTS.xy(1, 1));
+
+ JTextPane leftTypeDisplay = new DiffHighlightingTextPane();
+- leftTypeDisplay.setText(DiffHighlighting.HTML_START + leftEntry.getType() + DiffHighlighting.HTML_END);
++ leftTypeDisplay.setText(leftEntry.getType());
+ mergePanel.add(leftTypeDisplay, CELL_CONSTRAINTS.xy(3, 1));
+ if (leftEntry.getType().equals(rightEntry.getType())) {
+ identicalTypes = true;
+@@ -290,13 +289,14 @@
+ typeRadioButtons.get(0).setSelected(true);
+ }
+ JTextPane rightTypeDisplay = new DiffHighlightingTextPane();
+- rightTypeDisplay.setText(DiffHighlighting.HTML_START + rightEntry.getType() + DiffHighlighting.HTML_END);
++ rightTypeDisplay.setText(rightEntry.getType());
+ mergePanel.add(rightTypeDisplay, CELL_CONSTRAINTS.xy(11, 1));
+ }
+
+ private void setupHeadingRows() {
+ mainPanel.add(boldFontLabel(Localization.lang("Use")), CELL_CONSTRAINTS.xyw(4, 1, 7, "center, bottom"));
+ mainPanel.add(diffMode, CELL_CONSTRAINTS.xy(11, 1, "right, bottom"));
++ diffMode.setVisible(false);
+
+ // Set headings
+ for (int i = 0; i < 6; i++) {
+@@ -362,33 +362,11 @@
+ for (String field : fields) {
+ String leftString = leftEntry.getFieldOptional(field).orElse("");
+ String rightString = rightEntry.getFieldOptional(field).orElse("");
+- switch (diffMode.getSelectedIndex()) {
+- case 0: // Plain text
+- break;
+- case 1: // Latexdiff style - word
+- rightString = DiffHighlighting.generateDiffHighlighting(leftString, rightString, " ");
+- break;
+- case 2: // Latexdiff style - character
+- rightString = DiffHighlighting.generateDiffHighlighting(leftString, rightString, "");
+- break;
+- case 3: // Symmetric style - word
+- String tmpLeftString = DiffHighlighting.generateSymmetricHighlighting(leftString, rightString, " ");
+- rightString = DiffHighlighting.generateSymmetricHighlighting(rightString, leftString, " ");
+- leftString = tmpLeftString;
+- break;
+- case 4: // Symmetric style - character
+- tmpLeftString = DiffHighlighting.generateSymmetricHighlighting(leftString, rightString, "");
+- rightString = DiffHighlighting.generateSymmetricHighlighting(rightString, leftString, "");
+- leftString = tmpLeftString;
+- break;
+- default: // Shouldn't happen
+- break;
+- }
+ if ((leftString != null) && leftTextPanes.containsKey(field)) {
+- leftTextPanes.get(field).setText(DiffHighlighting.HTML_START + leftString + DiffHighlighting.HTML_END);
++ leftTextPanes.get(field).setText(leftString);
+ }
+ if ((rightString != null) && rightTextPanes.containsKey(field)) {
+- rightTextPanes.get(field).setText(DiffHighlighting.HTML_START + rightString + DiffHighlighting.HTML_END);
++ rightTextPanes.get(field).setText(rightString);
+ }
+ }
+ SwingUtilities.invokeLater(() -> scrollPane.getVerticalScrollBar()
+--- a/src/main/java/net/sf/jabref/logic/util/strings/DiffHighlighting.java
++++ b/src/main/java/net/sf/jabref/logic/util/strings/DiffHighlighting.java
+@@ -1,101 +0,0 @@
+-package net.sf.jabref.logic.util.strings;
+-
+-import java.util.ArrayList;
+-import java.util.Arrays;
+-import java.util.Collections;
+-import java.util.List;
+-import java.util.Objects;
+-
+-import difflib.Delta;
+-import difflib.DiffUtils;
+-
+-public class DiffHighlighting {
+-
+- private static final String ADDITION_START = "<span class=add>";
+- private static final String REMOVAL_START = "<span class=del>";
+- private static final String CHANGE_START = "<span class=change>";
+- private static final String TAG_END = "</span>";
+-
+- public static final String HTML_START = "<html><body>";
+- public static final String HTML_END = "</body></html>";
+-
+-
+- public static String generateDiffHighlighting(String baseString, String modifiedString, String separator) {
+- Objects.requireNonNull(separator);
+- if ((baseString != null) && (modifiedString != null)) {
+- List<String> stringList = new ArrayList<>(Arrays.asList(baseString.split(separator)));
+- List<Delta<String>> deltaList = new ArrayList<>(
+- DiffUtils.diff(stringList, Arrays.asList(modifiedString.split(separator))).getDeltas());
+- Collections.reverse(deltaList);
+- for (Delta<String> delta : deltaList) {
+- int startPos = delta.getOriginal().getPosition();
+- List<String> lines = delta.getOriginal().getLines();
+- int offset = 0;
+- switch (delta.getType()) {
+- case CHANGE:
+- for (String line : lines) {
+- stringList.set(startPos + offset, (offset == 0 ? DiffHighlighting.REMOVAL_START : "") + line);
+- offset++;
+- }
+- stringList.set((startPos + offset) - 1,
+- stringList.get((startPos + offset) - 1) + DiffHighlighting.TAG_END + separator + DiffHighlighting.ADDITION_START
+- + String.join(separator, delta.getRevised().getLines()) + DiffHighlighting.TAG_END);
+- break;
+- case DELETE:
+- for (String line : lines) {
+- stringList.set(startPos + offset, (offset == 0 ? DiffHighlighting.REMOVAL_START : "") + line);
+- offset++;
+- }
+- stringList.set((startPos + offset) - 1,
+- stringList.get((startPos + offset) - 1) + DiffHighlighting.TAG_END);
+- break;
+- case INSERT:
+- stringList.add(delta.getOriginal().getPosition(),
+- DiffHighlighting.ADDITION_START + String.join(separator, delta.getRevised().getLines()) + DiffHighlighting.TAG_END);
+- break;
+- default:
+- break;
+- }
+- }
+- return String.join(separator, stringList);
+- }
+- return modifiedString;
+- }
+-
+- public static String generateSymmetricHighlighting(String baseString, String modifiedString, String separator) {
+- if ((baseString != null) && (modifiedString != null)) {
+- List<String> stringList = new ArrayList<>(Arrays.asList(baseString.split(separator)));
+- List<Delta<String>> deltaList = new ArrayList<>(DiffUtils
+- .diff(stringList, new ArrayList<>(Arrays.asList(modifiedString.split(separator)))).getDeltas());
+- Collections.reverse(deltaList);
+- for (Delta<String> delta : deltaList) {
+- int startPos = delta.getOriginal().getPosition();
+- List<String> lines = delta.getOriginal().getLines();
+- int offset = 0;
+- switch (delta.getType()) {
+- case CHANGE:
+- for (String line : lines) {
+- stringList.set(startPos + offset, (offset == 0 ? DiffHighlighting.CHANGE_START : "") + line);
+- offset++;
+- }
+- stringList.set((startPos + offset) - 1, stringList.get((startPos + offset) - 1) + DiffHighlighting.TAG_END);
+- break;
+- case DELETE:
+- for (String line : lines) {
+- stringList.set(startPos + offset, (offset == 0 ? DiffHighlighting.ADDITION_START : "") + line);
+- offset++;
+- }
+- stringList.set((startPos + offset) - 1, stringList.get((startPos + offset) - 1) + DiffHighlighting.TAG_END);
+- break;
+- case INSERT:
+- break;
+- default:
+- break;
+- }
+- }
+- return String.join(separator, stringList);
+- }
+- return modifiedString;
+- }
+-
+-}
+--- a/src/test/java/net/sf/jabref/logic/util/strings/DiffHighlightingTest.java
++++ b/src/test/java/net/sf/jabref/logic/util/strings/DiffHighlightingTest.java
+@@ -1,81 +0,0 @@
+-package net.sf.jabref.logic.util.strings;
+-
+-import org.junit.Test;
+-
+-import static org.junit.Assert.assertEquals;
+-import static org.junit.Assert.assertNull;
+-
+-
+-public class DiffHighlightingTest {
+-
+- @Test
+- public void testGenerateDiffHighlightingBothNullReturnsNull() {
+- assertNull(DiffHighlighting.generateDiffHighlighting(null, null, ""));
+- }
+-
+- @Test(expected = NullPointerException.class)
+- public void testNullSeparatorThrowsNPE() {
+- assertNull(DiffHighlighting.generateDiffHighlighting("", "", null));
+- }
+-
+- @Test
+- public void testGenerateDiffHighlightingNoDiff() {
+- assertEquals("foo", DiffHighlighting.generateDiffHighlighting("foo", "foo", ""));
+- }
+-
+- @Test
+- public void testGenerateDiffHighlightingSingleWordAddTextWordDiff() {
+- assertEquals("<span class=del>foo</span> <span class=add>foobar</span>",
+- DiffHighlighting.generateDiffHighlighting("foo", "foobar", " "));
+- }
+-
+- @Test
+- public void testGenerateDiffHighlightingSingleWordAddTextCharacterDiff() {
+- assertEquals("foo<span class=add>bar</span>", DiffHighlighting.generateDiffHighlighting("foo", "foobar", ""));
+- }
+-
+- @Test
+- public void testGenerateDiffHighlightingSingleWordDeleteTextWordDiff() {
+- assertEquals("<span class=del>foobar</span> <span class=add>foo</span>",
+- DiffHighlighting.generateDiffHighlighting("foobar", "foo", " "));
+- }
+-
+- @Test
+- public void testGenerateDiffHighlightingSingleWordDeleteTextCharacterDiff() {
+- assertEquals("foo<span class=del>bar</span>", DiffHighlighting.generateDiffHighlighting("foobar", "foo", ""));
+- }
+-
+- @Test
+- public void generateSymmetricHighlightingSingleWordAddTextWordDiff() {
+- assertEquals("<span class=change>foo</span>",
+- DiffHighlighting.generateSymmetricHighlighting("foo", "foobar", " "));
+- }
+-
+- @Test
+- public void generateSymmetricHighlightingSingleWordAddTextCharacterDiff() {
+- assertEquals("foo", DiffHighlighting.generateSymmetricHighlighting("foo", "foobar", ""));
+- }
+-
+- @Test
+- public void generateSymmetricHighlightingSingleWordDeleteTextWordDiff() {
+- assertEquals("<span class=change>foobar</span>",
+- DiffHighlighting.generateSymmetricHighlighting("foobar", "foo", " "));
+- }
+-
+- @Test
+- public void generateSymmetricHighlightingSingleWordDeleteTextCharacterDiff() {
+- assertEquals("foo<span class=add>bar</span>", DiffHighlighting.generateSymmetricHighlighting("foobar", "foo", ""));
+- }
+-
+- @Test
+- public void generateSymmetricHighlightingMultipleWordsDeleteTextCharacterDiff() {
+- assertEquals("foo<span class=add>bar</span> and <span class=add>some</span>thing",
+- DiffHighlighting.generateSymmetricHighlighting("foobar and something", "foo and thing", ""));
+- }
+-
+- @Test
+- public void generateSymmetricHighlightingMultipleWordsDeleteTextWordDiff() {
+- assertEquals("foo <span class=add>bar</span> and <span class=add>some</span> thing",
+- DiffHighlighting.generateSymmetricHighlighting("foo bar and some thing", "foo and thing", " "));
+- }
+-}
diff --git a/debian/patches/series b/debian/patches/series
index 88f64bf..47d8b39 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@
030_xjc.patch
040_disable_macadapter.patch
050_unirest_json.patch
+060_diable_java-diff-utils.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jabref.git
More information about the pkg-java-commits
mailing list