Due to problems with multi-line data, we have to change our TSV output format to have text with quotes (not for every text, only text that would otherwise break the dataset if not escaped/quoted correctly).
Required changes
Frontend
When tsv, txt or csv (new) is uploaded, before sending to backend the user should be asked about field delimiter and string delimiter. For field delimiter options are: Tab, Comma, Semicolon, Space and Other. When Other is selected a text box to supply a character must be available for the user to type it in. Only ONE option can be selected. For string delimiter options are ' and " and None (perhaps in italics or something else to differentiate from actual values).
Defaults for each format are these:
Format
Field delimiter
String delimiter
csv
Comma
"
tsv
Tab
"
txt
Tab
"
Backend
[x] Receive params col_sep and quote_char filled with data from field delimiter and string delimiter respectively and pass them through Ruby's CSV reader.
[x] Change download table to output with quote_char = '"' (Ruby's default) and col_sep = "\t".
Due to problems with multi-line data, we have to change our TSV output format to have text with quotes (not for every text, only text that would otherwise break the dataset if not escaped/quoted correctly).
Required changes
Frontend
When
tsv
,txt
orcsv
(new) is uploaded, before sending to backend the user should be asked about field delimiter and string delimiter. For field delimiter options are:Tab
,Comma
,Semicolon
,Space
andOther
. WhenOther
is selected a text box to supply a character must be available for the user to type it in. Only ONE option can be selected. For string delimiter options are'
and"
andNone
(perhaps in italics or something else to differentiate from actual values).Defaults for each format are these:
csv
Comma
"
tsv
Tab
"
txt
Tab
"
Backend
col_sep
andquote_char
filled with data from field delimiter and string delimiter respectively and pass them through Ruby's CSV reader.download table
to output withquote_char = '"'
(Ruby's default) andcol_sep = "\t"
.