Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d8oyf-0001WN-Qp for pgadmin-hackers@arkaria.postgresql.org; Thu, 11 May 2017 14:22:02 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1d8oyf-0005l6-DF for pgadmin-hackers@arkaria.postgresql.org; Thu, 11 May 2017 14:22:01 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1d8oye-0005kx-Sr for pgadmin-hackers@postgresql.org; Thu, 11 May 2017 14:22:00 +0000 Received: from mail-wm0-x229.google.com ([2a00:1450:400c:c09::229]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1d8oyb-0003z8-5K for pgadmin-hackers@postgresql.org; Thu, 11 May 2017 14:22:00 +0000 Received: by mail-wm0-x229.google.com with SMTP id 142so38365517wma.1 for ; Thu, 11 May 2017 07:21:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=wRIzW9tN8P59KWJucUancx/kiQ+bCOYE7R9E2mKZ9Dg=; b=d97vyBHlC/1KT1bA/UdBXER9rvqRIwdKFP/Sm3oXFqZt02uQY7wI1MtLktSJMoAkgI /NcAKln3xHYR4UfoFAcoSa/TCyGNV5TdjHOiGP08GMfXOYeciJo+Dm7pnqgG5rTfJNHH 4ZV4bZBjdyNwz/UKdgKv5rl1BqHedJAvPs/mG1Nft1z62tSjmeRqonUgCrPTa2h4CE6F HTqar5G090jfroZz29yPQINl97IcnobIRAhH8kWFnjijv2pNs1iCKaE4Fa6KgU6eST4i ZdTgdhJzy4YGEQXrqHcqLHV930gNHEmAymYmOrEw3tiHApq3rQ+khcig35yfyFvJeFuT Syug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=wRIzW9tN8P59KWJucUancx/kiQ+bCOYE7R9E2mKZ9Dg=; b=um/jZXC28eLbK804jl3XYcJzhCCl17qznvs8MaH1NVWbV1OQZOnEv+c6FxIvhI0G8Y UDyBIYcgVk4aFXFcAv93AgCDw9RN1L5SqtMkm4TiTYuKXD3cgfpvbulBuK7R9/RUfjzs E45CuYZsfWgYauqyJWpeVTH1GNlUhxCpmsxAQQHmgRN6hDsymxdBrfkR7mkkRNbgr8i2 GiOYFURFNCFRPt+liJPTomT7taS+HNXkZYhxttQDl20ooxRiJ9wCG54ux0j7BmXdUND2 yltN9BRPCOgLN1De7yP6AFpd/NZv9dMloWi/XbC+3B1xrk65C3pFcPpIUF6pi47IvxMQ Zufg== X-Gm-Message-State: AODbwcBLfmprOvvRMeyBPkVL9mkEqGiXPxdjfNehKlVY5cOWofor+QmX eu9t4r5q6B5i8bfgHwzNij6Opfm/Vynw X-Received: by 10.28.101.6 with SMTP id z6mr1182073wmb.134.1494512515841; Thu, 11 May 2017 07:21:55 -0700 (PDT) MIME-Version: 1.0 Received: by 10.223.136.70 with HTTP; Thu, 11 May 2017 07:21:34 -0700 (PDT) In-Reply-To: References: From: Murtuza Zabuawala Date: Thu, 11 May 2017 19:51:34 +0530 Message-ID: Subject: Re: [pgAdmin4][PATCH] To fix the issues with CSV file download To: Dave Page Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary="001a114b332c9f089a054f404fee" X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --001a114b332c9f089a054f404fee Content-Type: multipart/alternative; boundary="001a114b332c9f0893054f404fec" --001a114b332c9f0893054f404fec Content-Type: text/plain; charset="UTF-8" Hi Dave, Please find patch to handle non-ascii column names in CSV for Pyhton2. Thanks to Harshal for pointing out the issue. -- Regards, Murtuza Zabuawala EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Mon, May 8, 2017 at 6:06 PM, Dave Page wrote: > Thanks, patch applied. > > On Mon, May 8, 2017 at 1:14 PM, Murtuza Zabuawala enterprisedb.com> wrote: > >> Hi, >> >> Please find the patch to fix the issues in CSV file download feature, >> >> 1) To handle non-ascii filenames which we set from table name >> RM#2314 >> >> 2) To handle non-ascii query data >> RM#2353 >> >> 3) To dump JSON type columns properly in csv >> RM#2360 >> >> Please review. >> >> -- >> Regards, >> Murtuza Zabuawala >> EnterpriseDB: http://www.enterprisedb.com >> The Enterprise PostgreSQL Company >> >> >> -- >> Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) >> To make changes to your subscription: >> http://www.postgresql.org/mailpref/pgadmin-hackers >> >> > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > --001a114b332c9f0893054f404fec Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dave,

Please find patch to handle no= n-ascii column names in CSV for Pyhton2.

Thanks to= Harshal for pointing out the issue.


--Regards,
Murtuza Zabuawala
EnterpriseDB:=C2= =A0http://www.enterprisedb.com=
The Enterprise PostgreSQL Company


On Mon, May 8, 2017 at 6:06 PM, Dave Page <= dpage@pgadmin.org> wrote:
<= div dir=3D"ltr">Thanks, patch applied.

=
On Mon, May 8, 2017 at 1:14 PM, Murtuza Zabuawal= a <murtuza.zabuawala@enterprisedb.com>= wrote:
Hi,

Please find the patch to fix the issues in CSV file download feature= ,

1) To handle non-ascii filenames which we set fr= om table name
RM#2314

2) = To handle non-ascii query data
RM#2353

3) To dump JSON type columns properly in csv
RM#2360

Please review.

= --
= Regards,
Murtuza Zabuawala
EnterpriseDB:=C2=A0http://www.enterprisedb.com
The Ent= erprise PostgreSQL Company


--
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-ha= ckers




--
Dave Page<= br>Blog: http://p= gsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb= .com
The Enterprise PostgreSQL Company

--001a114b332c9f0893054f404fec-- --001a114b332c9f089a054f404fee Content-Type: text/plain; charset="US-ASCII"; name="RM_2314_v1.diff" Content-Disposition: attachment; filename="RM_2314_v1.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_j2khyljp0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3ljb3Bn Mi9fX2luaXRfXy5weSBiL3dlYi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3lj b3BnMi9fX2luaXRfXy5weQppbmRleCAxZjdjY2NlLi41MDJjZWU0IDEwMDY0 NAotLS0gYS93ZWIvcGdhZG1pbi91dGlscy9kcml2ZXIvcHN5Y29wZzIvX19p bml0X18ucHkKKysrIGIvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNv cGcyL19faW5pdF9fLnB5CkBAIC00Miw5ICs0MiwxMSBAQCBpZiBzeXMudmVy c2lvbl9pbmZvIDwgKDMsKToKICAgICBmcm9tIFN0cmluZ0lPIGltcG9ydCBT dHJpbmdJTwogICAgIHBzeWNvcGcyLmV4dGVuc2lvbnMucmVnaXN0ZXJfdHlw ZShwc3ljb3BnMi5leHRlbnNpb25zLlVOSUNPREUpCiAgICAgcHN5Y29wZzIu ZXh0ZW5zaW9ucy5yZWdpc3Rlcl90eXBlKHBzeWNvcGcyLmV4dGVuc2lvbnMu VU5JQ09ERUFSUkFZKQorICAgIElTX1BZMiA9IFRydWUKIGVsc2U6CiAgICAg ZnJvbSBpbyBpbXBvcnQgU3RyaW5nSU8KICAgICBpbXBvcnQgY3N2CisgICAg SVNfUFkyID0gRmFsc2UKIAogXyA9IGdldHRleHQKIApAQCAtNjI0LDcgKzYy Niw3IEBAIFdIRVJFCiAgICAgICAgICAgICByZXR1cm4gRmFsc2UsIHN0cihj dXIpCiAgICAgICAgIHF1ZXJ5X2lkID0gcmFuZG9tLnJhbmRpbnQoMSwgOTk5 OTk5OSkKIAotICAgICAgICBpZiBzeXMudmVyc2lvbl9pbmZvIDwgKDMsKSBh bmQgdHlwZShxdWVyeSkgPT0gdW5pY29kZToKKyAgICAgICAgaWYgSVNfUFky IGFuZCB0eXBlKHF1ZXJ5KSA9PSB1bmljb2RlOgogICAgICAgICAgICAgcXVl cnkgPSBxdWVyeS5lbmNvZGUoJ3V0Zi04JykKIAogICAgICAgICBjdXJyZW50 X2FwcC5sb2dnZXIubG9nKApAQCAtNjcwLDcgKzY3Miw3IEBAIFdIRVJFCiAg ICAgICAgICAgICAgICAgcmVzdWx0cwogICAgICAgICAgICAgIiIiCiAgICAg ICAgICAgICAjIE9ubHkgaWYgUHl0aG9uMiBhbmQgdGhlcmUgYXJlIGNvbHVt bnMgd2l0aCBKU09OIHR5cGUKLSAgICAgICAgICAgIGlmIHN5cy52ZXJzaW9u X2luZm8gPCAoMywpIGFuZCBsZW4oanNvbl9jb2x1bW5zKSA+IDA6CisgICAg ICAgICAgICBpZiBJU19QWTIgYW5kIGxlbihqc29uX2NvbHVtbnMpID4gMDoK ICAgICAgICAgICAgICAgICB0ZW1wX3Jlc3VsdHMgPSBbXQogICAgICAgICAg ICAgICAgIGZvciByb3cgaW4gcmVzdWx0czoKICAgICAgICAgICAgICAgICAg ICAgcmVzID0gZGljdCgpCkBAIC02ODMsNiArNjg1LDI2IEBAIFdIRVJFCiAg ICAgICAgICAgICAgICAgcmVzdWx0cyA9IHRlbXBfcmVzdWx0cwogICAgICAg ICAgICAgcmV0dXJuIHJlc3VsdHMKIAorICAgICAgICBkZWYgY29udmVydF9r ZXlzX3RvX3VuaWNvZGUocmVzdWx0cywgY29ubl9lbmNvZGluZyk6CisgICAg ICAgICAgICAiIiIKKyAgICAgICAgICAgIFsgVGhpcyBpcyBvbmx5IGZvciBQ eXRob24yLnhdCisgICAgICAgICAgICBXZSBuZWVkIHRvIGNvbnZlcnQgYWxs IGtleXMgdG8gdW5pY29kZSBhcyBwc3ljb3BnMgorICAgICAgICAgICAgc2Vu ZHMgdGhlbSBhcyBzdHJpbmcKKworICAgICAgICAgICAgQXJnczoKKyAgICAg ICAgICAgICAgICByZXM6IFF1ZXJ5IHJlc3VsdCBzZXQgZnJvbSBwc3ljb3Bn MgorICAgICAgICAgICAgICAgIGNvbm5fZW5jb2Rpbmc6IENvbm5lY3Rpb24g ZW5jb2RpbmcKKworICAgICAgICAgICAgUmV0dXJuczoKKyAgICAgICAgICAg ICAgICBSZXN1bHQgc2V0IChXaXRoIGFsbCB0aGUga2V5cyBjb252ZXJ0ZWQg dG8gdW5pY29kZSkKKyAgICAgICAgICAgICIiIgorICAgICAgICAgICAgbmV3 X3Jlc3VsdHMgPSBbXQorICAgICAgICAgICAgZm9yIHJvdyBpbiByZXN1bHRz OgorICAgICAgICAgICAgICAgIG5ld19yZXN1bHRzLmFwcGVuZCgKKyAgICAg ICAgICAgICAgICAgICAgZGljdChbKGsuZGVjb2RlKGNvbm5fZW5jb2Rpbmcp LCB2KSBmb3IgaywgdiBpbiByb3cuaXRlbXMoKV0pCisgICAgICAgICAgICAg ICAgKQorICAgICAgICAgICAgcmV0dXJuIG5ld19yZXN1bHRzCisKICAgICAg ICAgZGVmIGdlbigpOgogCiAgICAgICAgICAgICByZXN1bHRzID0gY3VyLmZl dGNobWFueShyZWNvcmRzKQpAQCAtNjkxLDE3ICs3MTMsMjUgQEAgV0hFUkUK ICAgICAgICAgICAgICAgICAgICAgY3VyLmNsb3NlKCkKICAgICAgICAgICAg ICAgICB5aWVsZCBnZXR0ZXh0KCdUaGUgcXVlcnkgZXhlY3V0ZWQgZGlkIG5v dCByZXR1cm4gYW55IGRhdGEuJykKICAgICAgICAgICAgICAgICByZXR1cm4K KwogICAgICAgICAgICAgaGVhZGVyID0gW10KICAgICAgICAgICAgIGpzb25f Y29sdW1ucyA9IFtdCisgICAgICAgICAgICBjb25uX2VuY29kaW5nID0gY3Vy LmNvbm5lY3Rpb24uZW5jb2RpbmcKKwogICAgICAgICAgICAgIyBqc29uLCBq c29uYiwganNvbltdLCBqc29uYltdCiAgICAgICAgICAgICBqc29uX3R5cGVz ID0gKDExNCwgMTk5LCAzODAyLCAzODA3KQogICAgICAgICAgICAgZm9yIGMg aW4gY3VyLm9yZGVyZWRfZGVzY3JpcHRpb24oKToKICAgICAgICAgICAgICAg ICAjIFRoaXMgaXMgdG8gaGFuZGxlIHRoZSBjYXNlIGluIHdoaWNoIGNvbHVt biBuYW1lIGlzIG5vbi1hc2NpaQotICAgICAgICAgICAgICAgIGhlYWRlci5h cHBlbmQodSIiICsgYy50b19kaWN0KClbJ25hbWUnXSkKKyAgICAgICAgICAg ICAgICBjb2x1bW5fbmFtZSA9IGMudG9fZGljdCgpWyduYW1lJ10KKyAgICAg ICAgICAgICAgICBpZiBJU19QWTI6CisgICAgICAgICAgICAgICAgICAgIGNv bHVtbl9uYW1lID0gY29sdW1uX25hbWUuZGVjb2RlKGNvbm5fZW5jb2Rpbmcp CisgICAgICAgICAgICAgICAgaGVhZGVyLmFwcGVuZChjb2x1bW5fbmFtZSkK ICAgICAgICAgICAgICAgICBpZiBjLnRvX2RpY3QoKVsndHlwZV9jb2RlJ10g aW4ganNvbl90eXBlczoKLSAgICAgICAgICAgICAgICAgICAganNvbl9jb2x1 bW5zLmFwcGVuZCgKLSAgICAgICAgICAgICAgICAgICAgICAgIHUiIiArIGMu dG9fZGljdCgpWyduYW1lJ10KLSAgICAgICAgICAgICAgICAgICAgKQorICAg ICAgICAgICAgICAgICAgICBqc29uX2NvbHVtbnMuYXBwZW5kKGNvbHVtbl9u YW1lKQorCisgICAgICAgICAgICBpZiBJU19QWTI6CisgICAgICAgICAgICAg ICAgcmVzdWx0cyA9IGNvbnZlcnRfa2V5c190b191bmljb2RlKHJlc3VsdHMs IGNvbm5fZW5jb2RpbmcpCisKICAgICAgICAgICAgIHJlc19pbyA9IFN0cmlu Z0lPKCkKIAogICAgICAgICAgICAgY3N2X3dyaXRlciA9IGNzdi5EaWN0V3Jp dGVyKApAQCAtNzI4LDYgKzc1OCwxMCBAQCBXSEVSRQogICAgICAgICAgICAg ICAgICAgICByZXNfaW8sIGZpZWxkbmFtZXM9aGVhZGVyLCBkZWxpbWl0ZXI9 dScsJywKICAgICAgICAgICAgICAgICAgICAgcXVvdGluZz1jc3YuUVVPVEVf Tk9OTlVNRVJJQwogICAgICAgICAgICAgICAgICkKKworICAgICAgICAgICAg ICAgIGlmIElTX1BZMjoKKyAgICAgICAgICAgICAgICAgICAgcmVzdWx0cyA9 IGNvbnZlcnRfa2V5c190b191bmljb2RlKHJlc3VsdHMsIGNvbm5fZW5jb2Rp bmcpCisKICAgICAgICAgICAgICAgICByZXN1bHRzID0gaGFuZGxlX2pzb25f ZGF0YShqc29uX2NvbHVtbnMsIHJlc3VsdHMpCiAgICAgICAgICAgICAgICAg Y3N2X3dyaXRlci53cml0ZXJvd3MocmVzdWx0cykKICAgICAgICAgICAgICAg ICB5aWVsZCByZXNfaW8uZ2V0dmFsdWUoKQo= --001a114b332c9f089a054f404fee Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers --001a114b332c9f089a054f404fee--