Skip to content

Commit 218228c

Browse files
authored
Merge pull request #205 from SeeSharpSoft/master
[INTERNAL] prepare hotfix release 2.11.1
2 parents 92f7b05 + 2b926d4 commit 218228c

File tree

9 files changed

+111
-2
lines changed

9 files changed

+111
-2
lines changed

CHANGELOG

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
2.11.1
2+
May 9, 2020
3+
4+
FIX: Memory issues and freezes after updating #204
5+
16
2.11.0
27
May 8, 2020
38

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jacocoTestReport {
2424
}
2525

2626
group 'net.seesharpsoft.intellij.plugins'
27-
version '2.11.0'
27+
version '2.11.1'
2828

2929
apply plugin: 'java'
3030
sourceCompatibility = javaVersion

src/main/java/net/seesharpsoft/intellij/plugins/csv/CsvLexer.flex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import java.util.regex.Pattern;
1818
private CsvValueSeparator myValueSeparator;
1919
private CsvEscapeCharacter myEscapeCharacter;
2020

21-
private static final Pattern ESCAPE_TEXT_PATTERN = Pattern.compile("[,;|\\t\\r\\n]");
21+
private static final Pattern ESCAPE_TEXT_PATTERN = Pattern.compile("[,:;|\\t\\r\\n]");
2222

2323
/**
2424
* Provide constructor that supports a Project as parameter.

src/main/resources/META-INF/plugin.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
<change-notes><![CDATA[
5050
<pre style="font-family: sans-serif">
5151
NEW: Adding custom separator #177
52+
FIX: Memory issues and freezes after updating #204
5253
</pre>
5354
]]>
5455
</change-notes>

src/test/java/net/seesharpsoft/intellij/plugins/csv/parser/CsvParsingTest.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,18 @@ public void testCustomMultiSymbolSeparator() {
2828
CsvEditorSettings.getInstance().setDefaultValueSeparator(CsvEditorSettings.VALUE_SEPARATOR_DEFAULT);
2929
}
3030

31+
public void testColonSeparator() {
32+
CsvEditorSettings.getInstance().setDefaultValueSeparator(CsvValueSeparator.COLON);
33+
doTest(true);
34+
CsvEditorSettings.getInstance().setDefaultValueSeparator(CsvEditorSettings.VALUE_SEPARATOR_DEFAULT);
35+
}
36+
37+
public void testAllSeparators() {
38+
CsvEditorSettings.getInstance().setDefaultValueSeparator(CsvValueSeparator.COMMA);
39+
doTest(true);
40+
CsvEditorSettings.getInstance().setDefaultValueSeparator(CsvEditorSettings.VALUE_SEPARATOR_DEFAULT);
41+
}
42+
3143
@Override
3244
protected String getTestDataPath() {
3345
return "./src/test/resources/parser";
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
;:| header 1,header ;:| 2
2+
"value ;:| 1",";:|
3+
value 2"
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
CSV File(0,54)
2+
CsvRecordImpl(RECORD)(0,25)
3+
CsvFieldImpl(FIELD)(0,12)
4+
PsiElement(CsvTokenType.TEXT)(';')(0,1)
5+
PsiElement(CsvTokenType.TEXT)(':')(1,2)
6+
PsiElement(CsvTokenType.TEXT)('|')(2,3)
7+
PsiElement(CsvTokenType.TEXT)('\t')(3,4)
8+
PsiElement(CsvTokenType.TEXT)('header')(4,10)
9+
PsiWhiteSpace(' ')(10,11)
10+
PsiElement(CsvTokenType.TEXT)('1')(11,12)
11+
PsiElement(CsvTokenType.COMMA)(',')(12,13)
12+
CsvFieldImpl(FIELD)(13,25)
13+
PsiElement(CsvTokenType.TEXT)('header')(13,19)
14+
PsiWhiteSpace(' ')(19,20)
15+
PsiElement(CsvTokenType.TEXT)(';')(20,21)
16+
PsiElement(CsvTokenType.TEXT)(':')(21,22)
17+
PsiElement(CsvTokenType.TEXT)('|')(22,23)
18+
PsiElement(CsvTokenType.TEXT)('\t')(23,24)
19+
PsiElement(CsvTokenType.TEXT)('2')(24,25)
20+
PsiElement(CsvTokenType.CRLF)('\n')(25,26)
21+
CsvRecordImpl(RECORD)(26,54)
22+
CsvFieldImpl(FIELD)(26,39)
23+
PsiElement(CsvTokenType.QUOTE)('"')(26,27)
24+
PsiElement(CsvTokenType.TEXT)('value')(27,32)
25+
PsiWhiteSpace(' ')(32,33)
26+
PsiElement(CsvTokenType.ESCAPED_TEXT)(';')(33,34)
27+
PsiElement(CsvTokenType.ESCAPED_TEXT)(':')(34,35)
28+
PsiElement(CsvTokenType.ESCAPED_TEXT)('|')(35,36)
29+
PsiElement(CsvTokenType.ESCAPED_TEXT)('\t')(36,37)
30+
PsiElement(CsvTokenType.TEXT)('1')(37,38)
31+
PsiElement(CsvTokenType.QUOTE)('"')(38,39)
32+
PsiElement(CsvTokenType.COMMA)(',')(39,40)
33+
CsvFieldImpl(FIELD)(40,54)
34+
PsiElement(CsvTokenType.QUOTE)('"')(40,41)
35+
PsiElement(CsvTokenType.ESCAPED_TEXT)(';')(41,42)
36+
PsiElement(CsvTokenType.ESCAPED_TEXT)(':')(42,43)
37+
PsiElement(CsvTokenType.ESCAPED_TEXT)('|')(43,44)
38+
PsiElement(CsvTokenType.ESCAPED_TEXT)('\n')(44,45)
39+
PsiElement(CsvTokenType.ESCAPED_TEXT)('\t')(45,46)
40+
PsiElement(CsvTokenType.TEXT)('value')(46,51)
41+
PsiWhiteSpace(' ')(51,52)
42+
PsiElement(CsvTokenType.TEXT)('2')(52,53)
43+
PsiElement(CsvTokenType.QUOTE)('"')(53,54)
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
header 1:header 2: header ,3
2+
"value :1":"value 2":" :value 3"
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
CSV File(0,61)
2+
CsvRecordImpl(RECORD)(0,28)
3+
CsvFieldImpl(FIELD)(0,8)
4+
PsiElement(CsvTokenType.TEXT)('header')(0,6)
5+
PsiWhiteSpace(' ')(6,7)
6+
PsiElement(CsvTokenType.TEXT)('1')(7,8)
7+
PsiElement(CsvTokenType.COMMA)(':')(8,9)
8+
CsvFieldImpl(FIELD)(9,17)
9+
PsiElement(CsvTokenType.TEXT)('header')(9,15)
10+
PsiWhiteSpace(' ')(15,16)
11+
PsiElement(CsvTokenType.TEXT)('2')(16,17)
12+
PsiElement(CsvTokenType.COMMA)(':')(17,18)
13+
PsiWhiteSpace(' ')(18,19)
14+
CsvFieldImpl(FIELD)(19,28)
15+
PsiElement(CsvTokenType.TEXT)('header')(19,25)
16+
PsiWhiteSpace(' ')(25,26)
17+
PsiElement(CsvTokenType.TEXT)(',')(26,27)
18+
PsiElement(CsvTokenType.TEXT)('3')(27,28)
19+
PsiElement(CsvTokenType.CRLF)('\n')(28,29)
20+
CsvRecordImpl(RECORD)(29,61)
21+
CsvFieldImpl(FIELD)(29,39)
22+
PsiElement(CsvTokenType.QUOTE)('"')(29,30)
23+
PsiElement(CsvTokenType.TEXT)('value')(30,35)
24+
PsiWhiteSpace(' ')(35,36)
25+
PsiElement(CsvTokenType.ESCAPED_TEXT)(':')(36,37)
26+
PsiElement(CsvTokenType.TEXT)('1')(37,38)
27+
PsiElement(CsvTokenType.QUOTE)('"')(38,39)
28+
PsiElement(CsvTokenType.COMMA)(':')(39,40)
29+
CsvFieldImpl(FIELD)(40,49)
30+
PsiElement(CsvTokenType.QUOTE)('"')(40,41)
31+
PsiElement(CsvTokenType.TEXT)('value')(41,46)
32+
PsiWhiteSpace(' ')(46,47)
33+
PsiElement(CsvTokenType.TEXT)('2')(47,48)
34+
PsiElement(CsvTokenType.QUOTE)('"')(48,49)
35+
PsiElement(CsvTokenType.COMMA)(':')(49,50)
36+
CsvFieldImpl(FIELD)(50,61)
37+
PsiElement(CsvTokenType.QUOTE)('"')(50,51)
38+
PsiWhiteSpace(' ')(51,52)
39+
PsiElement(CsvTokenType.ESCAPED_TEXT)(':')(52,53)
40+
PsiElement(CsvTokenType.TEXT)('value')(53,58)
41+
PsiWhiteSpace(' ')(58,59)
42+
PsiElement(CsvTokenType.TEXT)('3')(59,60)
43+
PsiElement(CsvTokenType.QUOTE)('"')(60,61)

0 commit comments

Comments
 (0)