I still see the same error I'm afraid. I played around in another system, and if I set the delimiter to "xx", then it crashes with:
Exception in thread Thread-675: Traceback (most recent call last): File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 810, in __bootstrap_inner self.run() File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 763, in run self.__target(*self.__args, **self.__kwargs) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 602, in process_request_thread self.handle_error(request, client_address) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 599, in process_request_thread self.finish_request(request, client_address) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 334, in finish_request self.RequestHandlerClass(request, client_address, self) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", line 655, in __init__ self.handle() File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", line 200, in handle rv = BaseHTTPRequestHandler.handle(self) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py", line 340, in handle self.handle_one_request() File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", line 235, in handle_one_request return self.run_wsgi() File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", line 177, in run_wsgi execute(self.server.app) File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", line 167, in execute for data in application_iter: File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/wsgi.py", line 691, in __next__ return self._next() File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/wrappers.py", line 81, in _iter_encoded for item in iterable: File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py", line 842, in gen quotechar=quote_char File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/backports/csv.py", line 670, in __init__ self.writer = writer(f, dialect, *args, **kwds) File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/backports/csv.py", line 185, in __init__ raise TypeError(*e.args) TypeError: "delimiter" must be a 1-character string On Mon, Nov 20, 2017 at 4:09 PM, Khushboo Vashi < khushboo.va...@enterprisedb.com> wrote: > Hi Dave, > > Please find the attached patch. > > Thanks, > Khushboo > > > On Mon, Nov 20, 2017 at 8:59 PM, Dave Page <dp...@pgadmin.org> wrote: > >> Hi >> >> Thanks, but I'm still getting the same error. >> >> > On Mon, Nov 20, 2017 at 3:23 PM, Khushboo Vashi < >> khushboo.va...@enterprisedb.com> wrote: >> >>> Hi Dave, >>> >>> Please find the attached patch to fix the issue. >>> I have fixed the issue looking at the error you got as I can not >>> reproduce the issue on Python 2.7 or Python 3.5. >>> >>> Thanks, >>> Khushboo >>> >>> >>> >>> On Mon, Nov 20, 2017 at 8:05 PM, Dave Page <dp...@pgadmin.org> wrote: >>> >>>> >>>> >>>> On Mon, Nov 20, 2017 at 2:20 PM, Khushboo Vashi < >>>> khushboo.va...@enterprisedb.com> wrote: >>>> >>>>> >>>>> >>>>> On 20 Nov 2017 19:45, "Dave Page" <dp...@pgadmin.org> wrote: >>>>> >>>>> Though whilst it worked fine when I was testing, I now get the >>>>> following. Khushboo - can you investigate please? >>>>> >>>>> Exception in thread Thread-96: >>>>> >>>>> Traceback (most recent call last): >>>>> >>>>> File >>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", >>>>> line 810, in __bootstrap_inner >>>>> >>>>> self.run() >>>>> >>>>> File >>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", >>>>> line 763, in run >>>>> >>>>> self.__target(*self.__args, **self.__kwargs) >>>>> >>>>> File >>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", >>>>> line 602, in process_request_thread >>>>> >>>>> self.handle_error(request, client_address) >>>>> >>>>> File >>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", >>>>> line 599, in process_request_thread >>>>> >>>>> self.finish_request(request, client_address) >>>>> >>>>> File >>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", >>>>> line 334, in finish_request >>>>> >>>>> self.RequestHandlerClass(request, client_address, self) >>>>> >>>>> File >>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py", >>>>> line 655, in __init__ >>>>> >>>>> self.handle() >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", >>>>> line 200, in handle >>>>> >>>>> rv = BaseHTTPRequestHandler.handle(self) >>>>> >>>>> File "/System/Library/Frameworks/Python.framework/Versions/2.7/li >>>>> b/python2.7/BaseHTTPServer.py", line 340, in handle >>>>> >>>>> self.handle_one_request() >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", >>>>> line 235, in handle_one_request >>>>> >>>>> return self.run_wsgi() >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", >>>>> line 177, in run_wsgi >>>>> >>>>> execute(self.server.app) >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/serving.py", >>>>> line 167, in execute >>>>> >>>>> for data in application_iter: >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/wsgi.py", >>>>> line 691, in __next__ >>>>> >>>>> return self._next() >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/wrappers.py", >>>>> line 81, in _iter_encoded >>>>> >>>>> for item in iterable: >>>>> >>>>> File >>>>> "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py", >>>>> line 828, in gen >>>>> >>>>> quotechar=quote_char >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/backports/csv.py", >>>>> line 670, in __init__ >>>>> >>>>> self.writer = writer(f, dialect, *args, **kwds) >>>>> >>>>> File >>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/backports/csv.py", >>>>> line 185, in __init__ >>>>> >>>>> raise TypeError(*e.args) >>>>> >>>>> TypeError: "delimiter" must be string, not bytes >>>>> >>>>> Please share your CSV Output settings. >>>>> >>>> >>>> Screenshot attached. >>>> >>>> >>>> >>>>> >>>>> On Mon, Nov 20, 2017 at 1:51 PM, Dave Page <dp...@pgadmin.org> wrote: >>>>> >>>>>> Thanks, applied. >>>>>> >>>>>> On Mon, Nov 20, 2017 at 5:18 AM, Khushboo Vashi < >>>>>> khushboo.va...@enterprisedb.com> wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> Please find the attached updated patch. >>>>>>> >>>>>>> >>>>>>> On Thu, Nov 16, 2017 at 7:42 PM, Dave Page <dp...@pgadmin.org> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi >>>>>>>> >>>>>>>> On Thu, Nov 16, 2017 at 10:01 AM, Khushboo Vashi < >>>>>>>> khushboo.va...@enterprisedb.com> wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> Please find the attached patch for RM #2781 : New option to set >>>>>>>>> the quotation mark for copying to clipboard. >>>>>>>>> >>>>>>>>> This patch includes: >>>>>>>>> >>>>>>>>> - Provide options in preferences to control the CSV output which >>>>>>>>> includes copy to clipboard and download as CSV features in Query Tool >>>>>>>>> - Modified related jasmine tests >>>>>>>>> - Modified related feature tests >>>>>>>>> >>>>>>>> >>>>>>>> Thanks. At first glance, I see a few issues with this patch: >>>>>>>> >>>>>>>> - I can type into the combo boxes in the preferences, but only to >>>>>>>> search. That means (for example) that the only quote character I can >>>>>>>> use is >>>>>>>> ". I can't use anything else as a might want. The same applies to the >>>>>>>> field >>>>>>>> separator. >>>>>>>> >>>>>>> >>>>>>>> >>>>>>> Provided provision to add user defined field separator and quote >>>>>>> character. >>>>>>> >>>>>>> - I can click the x to clear the options in the combo boxes, but >>>>>>>> then the settings can be accepted and stored. For the separator and >>>>>>>> quote >>>>>>>> char, I assume they just become blank, however the quoting method >>>>>>>> makes no >>>>>>>> sense to be unspecified. >>>>>>>> >>>>>>>> Fixed. User can not clear the combo-boxes. >>>>>>> >>>>>>> - There don't seem to be any documentation updates. >>>>>>>> >>>>>>> The documents of SQL Editor and Preferences are updated. >>>>>>> >>>>>>>> >>>>>>>> - The CSV Quoting options appear to apply to copying from the grid, >>>>>>>> but they should apply to saving results as CSV. >>>>>>>> >>>>>>>> - The Result Copy quoting options (which should apply to copied >>>>>>>> data) are missing altogether. >>>>>>>> >>>>>>>> To be clear, there should be 6 new config options, 3 of which apply >>>>>>>> to data when copied from the grid, and the other 3 which apply when >>>>>>>> saving >>>>>>>> data as CSV. Please see the original RM case in which I detailed what >>>>>>>> the >>>>>>>> settings should be and what they should do. >>>>>>>> >>>>>>> >>>>>>> Provided 2 set of options (one set consists of 3 options); one for >>>>>>> CSV output and another for Results grid. >>>>>>> >>>>>>> >>>>>>>> >>>>>>> Thanks. >>>>>>>> >>>>>>>> -- >>>>>>>> Dave Page >>>>>>>> Blog: http://pgsnake.blogspot.com >>>>>>>> Twitter: @pgsnake >>>>>>>> >>>>>>>> EnterpriseDB UK: http://www.enterprisedb.com >>>>>>>> The Enterprise PostgreSQL Company >>>>>>>> >>>>>>> >>>>>>> Thanks, >>>>>>> Khushboo >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Dave Page >>>>>> Blog: http://pgsnake.blogspot.com >>>>>> Twitter: @pgsnake >>>>>> >>>>>> EnterpriseDB UK: http://www.enterprisedb.com >>>>>> The Enterprise PostgreSQL Company >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Dave Page >>>>> Blog: http://pgsnake.blogspot.com >>>>> Twitter: @pgsnake >>>>> >>>>> EnterpriseDB UK: http://www.enterprisedb.com >>>>> The Enterprise PostgreSQL Company >>>>> >>>>> >>>>> >>>> >>>> >>>> -- >>>> Dave Page >>>> Blog: http://pgsnake.blogspot.com >>>> Twitter: @pgsnake >>>> >>>> EnterpriseDB UK: http://www.enterprisedb.com >>>> The Enterprise PostgreSQL Company >>>> >>> >>> >> >> >> -- >> Dave Page >> Blog: http://pgsnake.blogspot.com >> Twitter: @pgsnake >> >> EnterpriseDB UK: http://www.enterprisedb.com >> The Enterprise PostgreSQL Company >> > > -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company