Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aoWqb-0005Id-BF for pgadmin-hackers@arkaria.postgresql.org; Fri, 08 Apr 2016 13:53:17 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1aoWqa-0001bL-Tk for pgadmin-hackers@arkaria.postgresql.org; Fri, 08 Apr 2016 13:53:16 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1aoWqL-0000nY-Ow for pgadmin-hackers@postgresql.org; Fri, 08 Apr 2016 13:53:02 +0000 Received: from mail-qg0-x236.google.com ([2607:f8b0:400d:c04::236]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1aoWqI-0006z9-Mc for pgadmin-hackers@postgresql.org; Fri, 08 Apr 2016 13:53:00 +0000 Received: by mail-qg0-x236.google.com with SMTP id j35so90617835qge.0 for ; Fri, 08 Apr 2016 06:52:58 -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=gX5HsA6tHQtR10oH3usJ+mu6ywiksnVfJU1Fg9IJYdE=; b=ftmMyL4dgMNFdKnMM4w4InjVUfTf6/hR6A3iqpvIdHbzsk2iM38MT3xnkcdHOKVTKz QGNr++hOsZ/BgUcMpVR8KMd4RhZaIzaEoL//yBi4DP9W0DUZDTTD6fOk7wty1e6PQF03 uZd6Dm8pK3+TE1fsNR5fAvOvY+ETKAXboFQy1/YOZxPV5z8hkpXMLEhEhOuA2qrcIJuT jiKoFfycczaObOfQsRvtb4iBVT/D9P2MwDBmpxgOi8wllqgz/K9Pqn5C6fAxlndL0dmG 4RsdRX05n3PUOPCdgQ3sBOXbIzTSF4g85dTaIf08cMxn4HLPj9Jl4crv7VDz64MJjC1B zD3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=gX5HsA6tHQtR10oH3usJ+mu6ywiksnVfJU1Fg9IJYdE=; b=mAi86q1lLMVfDLhJcuYX4pDnB62pqELBkov3aAt3H3J8YGQQ+csNBo+pMstN03630Q Ty4ah+joOVCNomNdH3Jkv8PnChos5zZWbMKgnwo/AC1mK02pS2Ti+Jx7fEH8Zovzle5j TGc2CXszQIV4skSFa+pFovFbhY/Eb0ZdJhjeSquAkJuc07oicbwKUWD0WJXGXwFgPUgJ Tpj3XMhWVjfR0Wc1cCuxAd1yFc+TBddSbI/F4D+2fwGlsXaDdkAdWOMo1ny04l2619bf pf44ZUbemgKhHuvgHpJvSiJNZ3G58w48Nfs1S38tRwKoqAV++35zJRX+qu7P7RD+FNqb 75YA== X-Gm-Message-State: AD7BkJLTbyGyFcP/I+aMqw0jew022+A3/GNBGX3RTzUbbZnhawQZuN14AaDyrPVi8w7J2YPCvBuICjl5dM2Oi1qy X-Received: by 10.140.97.202 with SMTP id m68mr11103354qge.102.1460123577352; Fri, 08 Apr 2016 06:52:57 -0700 (PDT) MIME-Version: 1.0 Received: by 10.55.128.132 with HTTP; Fri, 8 Apr 2016 06:52:37 -0700 (PDT) In-Reply-To: References: From: Murtuza Zabuawala Date: Fri, 8 Apr 2016 19:22:37 +0530 Message-ID: Subject: Re: PATCH: Added Node Type & Catalog objects [pgAdmin4] To: Dave Page Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary=001a113a60ca28ffc9052ff98312 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 --001a113a60ca28ffc9052ff98312 Content-Type: multipart/alternative; boundary=001a113a60ca28ffc4052ff98310 --001a113a60ca28ffc4052ff98310 Content-Type: text/plain; charset=UTF-8 Hi Dave, Please find updated patches to fix all the mentioned issues. There are three patches, 1) One for fixing rendering issue when selecting type 2) Added utility function to fetch full type name with length & precision 3) Added new Shell type for External types. Regards, Murtuza -- Regards, Murtuza Zabuawala EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Thu, Apr 7, 2016 at 5:06 PM, Dave Page wrote: > Hi Murtuza > > On Tue, Mar 22, 2016 at 9:22 AM, Dave Page wrote: > > Hi > > > > On Tue, Mar 22, 2016 at 8:14 AM, Murtuza Zabuawala > > wrote: > >> Hi Dave, > >> > >> We can create new external type using below method, By running all of > below > >> queries at the same time , we can not create separate external type by > only > >> using create type statement. > >> > >> So as per my discussion with Ashesh, We should not allow user to create > >> external type in pgAdmin4 but only show definition in edit mode. > > > > Hmm, would it not make sense to allow the user to create the shell > > type as well (perhaps, with a new type of "SHELL")? Then they could do > > what is needed (and that should be easy, as it's just CREATE TYPE > > foo;) > > > > For example: > > > > CREATE TYPE box; > > > > CREATE FUNCTION my_box_in_function(cstring) RETURNS box AS ... ; > > CREATE FUNCTION my_box_out_function(box) RETURNS cstring AS ... ; > > > > CREATE TYPE box ( > > INTERNALLENGTH = 16, > > INPUT = my_box_in_function, > > OUTPUT = my_box_out_function > > ); > > > > CREATE TABLE myboxes ( > > id integer, > > description box > > ); > > In the interests of making progress, I've committed the most recent > patch, with a number of minor changes most significantly, the Postgres > docs and system catalogs seem to have different ideas about what to > call length, precision and scale. pgAdmin 3 followed the catalogs and > used length and precision, however I've updated pgAdmin 4 to use > "Length/precision" and "Scale" which is inline with the Postgres docs. > That's only in the UI though - the code follows the catalogs. > > There are still a couple of issues - please provide fixes ASAP: > > 1) If you create a composite type that contains a sized type (e.g. > numeric(5, 4), the precision and scale are not shown if you later open > the properties dialogue, or in the reverse engineered SQL. > > E.g. what pgAdmin3 shows as: > > CREATE TYPE pem.blergh AS > (c1 text COLLATE pg_catalog."C", > c2 numeric(5)); > > Is shown by pgAdmin4 as: > > CREATE TYPE pem.blergh AS > (c1 text COLLATE pg_catalog."C", c2 numeric); > > (adding the \n's would be good too). > > 2) If you select a different type of type in create mode, the new > options are shown below those for the previously selected type, > instead of replacing them. Please see the attached screenshot. > > 3) I would still like us to support External types. I believe the > simple option here is to re-add the code you had previously, and to > add a new type of type called "SHELL" as discussed in my previous > email above. The user would then be able to create a SHELL type, add > the required functions, then come back and create the EXTERNAL type. > > I'll add cards to our internal kanban chart for these issues. > > Thanks. > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > --001a113a60ca28ffc4052ff98310 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Dave,

Please find updated patches to= fix all the mentioned issues.

There are three pat= ches,
1) One for fixing rendering issue when selecting type
=
2) Added utility function to fetch full type name with length & pr= ecision
3) Added new Shell type for External types.

Regards,
Murtuza
=C2=A0

--
Regard= s,
Murtuza Zabuawala
EnterpriseDB:=C2=A0http://www.enterprisedb.com
The Enterprise P= ostgreSQL Company


On Thu, Apr 7, 2016 at 5:06 PM, Dave Page <= dpage@pgadmin.org> wrote:
H= i Murtuza

On Tue, Mar 22, 2016 at 9:22 AM, Dave Page <dpage@pgadmin.org> wrote:
> Hi
>
> On Tue, Mar 22, 2016 at 8:14 AM, Murtuza Zabuawala
> <murtuza.zabu= awala@enterprisedb.com> wrote:
>> Hi Dave,
>>
>> We can create new external type using below method, By running all= of below
>> queries at the same time , we can not create separate external typ= e by only
>> using create type statement.
>>
>> So as per my discussion with Ashesh, We should not allow user to c= reate
>> external type in pgAdmin4 but only show definition in edit mode. >
> Hmm, would it not make sense to allow the user to create the shell
> type as well (perhaps, with a new type of "SHELL")? Then the= y could do
> what is needed (and that should be easy, as it's just CREATE TYPE<= br> > foo;)
>
> For example:
>
> CREATE TYPE box;
>
> CREATE FUNCTION my_box_in_function(cstring) RETURNS box AS ... ;
> CREATE FUNCTION my_box_out_function(box) RETURNS cstring AS ... ;
>
> CREATE TYPE box (
>=C2=A0 =C2=A0 =C2=A0INTERNALLENGTH =3D 16,
>=C2=A0 =C2=A0 =C2=A0INPUT =3D my_box_in_function,
>=C2=A0 =C2=A0 =C2=A0OUTPUT =3D my_box_out_function
> );
>
> CREATE TABLE myboxes (
>=C2=A0 =C2=A0 =C2=A0id integer,
>=C2=A0 =C2=A0 =C2=A0description box
> );

In the interests of making progress, I've committed the most recent
patch, with a number of minor changes most significantly, the Postgres
docs and system catalogs seem to have different ideas about what to
call length, precision and scale. pgAdmin 3 followed the catalogs and
used length and precision, however I've updated pgAdmin 4 to use
"Length/precision" and "Scale" which is inline with the= Postgres docs.
That's only in the UI though - the code follows the catalogs.

There are still a couple of issues - please provide fixes ASAP:

1) If you create a composite type that contains a sized type (e.g.
numeric(5, 4), the precision and scale are not shown if you later open
the properties dialogue, or in the reverse engineered SQL.

E.g. what pgAdmin3 shows as:

CREATE TYPE pem.blergh AS
=C2=A0 =C2=A0(c1 text COLLATE pg_catalog."C",
=C2=A0 =C2=A0 c2 numeric(5));

Is shown by pgAdmin4 as:

CREATE TYPE pem.blergh AS
=C2=A0 =C2=A0 (c1 text COLLATE pg_catalog."C", c2 numeric);

(adding the \n's would be good too).

2) If you select a different type of type in create mode, the new
options are shown below those for the previously selected type,
instead of replacing them. Please see the attached screenshot.

3) I would still like us to support External types. I believe the
simple option here is to re-add the code you had previously, and to
add a new type of type called "SHELL" as discussed in my previous=
email above. The user would then be able to create a SHELL type, add
the required functions, then come back and create the EXTERNAL type.

I'll add cards to our internal kanban chart for these issues.

Thanks.

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

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

--001a113a60ca28ffc4052ff98310-- --001a113a60ca28ffc9052ff98312 Content-Type: application/octet-stream; name="added_fulltype_function_v1.patch" Content-Disposition: attachment; filename="added_fulltype_function_v1.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_imrrot0o1 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3V0aWxzLnB5IGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvdXRpbHMucHkKaW5kZXggMTI5YzE5ZS4uMTA3MjQ2NyAxMDA2 NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3Nl cnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdXRpbHMucHkKKysrIGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvdXRpbHMucHkKQEAgLTE0MSw2ICsxNDIsOTcgQEAgY2xhc3Mg RGF0YVR5cGVSZWFkZXI6CgogICAgICAgICByZXR1cm4gVHJ1ZSwgcmVzCgor ICAgIGRlZiBnZXRfZnVsbF90eXBlKHNlbGYsIG5zcCwgdHlwbmFtZSwgaXNE dXAsIG51bWRpbXMsIHR5cG1vZCk6CisgICAgICAgICIiIgorICAgICAgICBS ZXR1cm5zIGZ1bGwgdHlwZSBuYW1lIHdpdGggTGVuZ3RoIGFuZCBQcmVjaXNp b24uCisKKyAgICAgICAgQXJnczoKKyAgICAgICAgICAgIGNvbm46IENvbm5l Y3Rpb24gT2JqZWN0CisgICAgICAgICAgICBjb25kaXRpb246IGNvbmRpdGlv biB0byByZXN0cmljdCBTUUwgc3RhdGVtZW50CisgICAgICAgICIiIgorICAg ICAgICBuZWVkU2NoZW1hID0gaXNEdXAKKyAgICAgICAgc2NoZW1hID0gbnNw IGlmIG5zcCBpcyBub3QgTm9uZSBlbHNlICcnCisgICAgICAgIG5hbWUgPSAn JworICAgICAgICBhcnJheSA9ICcnCisgICAgICAgIGxlbmd0aCA9ICcnCisK KyAgICAgICAgIyBBYm92ZSA3LjQsIGZvcm1hdF90eXBlIGFsc28gc2VuZHMg dGhlIHNjaGVtYSBuYW1lIGlmIGl0J3Mgbm90IGluY2x1ZGVkCisgICAgICAg ICMgaW4gdGhlIHNlYXJjaF9wYXRoLCBzbyB3ZSBuZWVkIHRvIHNraXAgaXQg aW4gdGhlIHR5cG5hbWUKKyAgICAgICAgaWYgdHlwbmFtZS5maW5kKHNjaGVt YSArICciLicpID49IDA6CisgICAgICAgICAgICBuYW1lID0gdHlwbmFtZVts ZW4oc2NoZW1hKSszXQorICAgICAgICBlbGlmIHR5cG5hbWUuZmluZChzY2hl bWEgKyAnLicpID49IDA6CisgICAgICAgICAgICBuYW1lID0gdHlwbmFtZVts ZW4oc2NoZW1hKSsxXQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgbmFt ZSA9IHR5cG5hbWUKKworICAgICAgICBpZiBuYW1lLnN0YXJ0c3dpdGgoJ18n KToKKyAgICAgICAgICAgIGlmIG5vdCBudW1kaW1zOgorICAgICAgICAgICAg ICAgIG51bWRpbXMgPSAxCisgICAgICAgICAgICBuYW1lID0gbmFtZVsxOl0K KworICAgICAgICBpZiBuYW1lLmVuZHN3aXRoKCdbXScpOgorICAgICAgICAg ICAgaWYgbm90IG51bWRpbXM6CisgICAgICAgICAgICAgICAgbnVtZGltcyA9 IDEKKyAgICAgICAgICAgIG5hbWUgPSBuYW1lWzotMl0KKworICAgICAgICBp ZiBuYW1lLnN0YXJ0c3dpdGgoJyInKSBhbmQgbmFtZS5lbmRzd2l0aCgnIicp OgorICAgICAgICAgICAgbmFtZSA9IG5hbWVbMTotMV0KKworICAgICAgICBp ZiBudW1kaW1zID4gMDoKKyAgICAgICAgICAgIHdoaWxlIG51bWRpbXM6Cisg ICAgICAgICAgICAgICAgYXJyYXkgKz0gJ1tdJworICAgICAgICAgICAgICAg IG51bWRpbXMgLT0gMQorCisgICAgICAgIGlmIHR5cG1vZCAhPSAtMToKKyAg ICAgICAgICAgIGxlbmd0aCA9ICcoJworICAgICAgICAgICAgaWYgbmFtZSA9 PSAnbnVtZXJpYyc6CisgICAgICAgICAgICAgICAgX2xlbiA9ICh0eXBtb2Qg LSA0KSA+PiAxNjsKKyAgICAgICAgICAgICAgICBfcHJlYyA9ICh0eXBtb2Qg LSA0KSAmIDB4ZmZmZjsKKyAgICAgICAgICAgICAgICBsZW5ndGggKz0gc3Ry KF9sZW4pCisgICAgICAgICAgICAgICAgaWYoX3ByZWMpOgorICAgICAgICAg ICAgICAgICAgICBsZW5ndGggKz0gJywnICsgc3RyKF9wcmVjKQorICAgICAg ICAgICAgZWxpZiBuYW1lID09ICd0aW1lJyBvciBcCisgICAgICAgICAgICAg ICAgICAgIG5hbWUgPT0gJ3RpbWV0eicgb3IgXAorICAgICAgICAgICAgICAg ICAgICBuYW1lID09ICd0aW1lIHdpdGhvdXQgdGltZSB6b25lJyBvciBcCisg ICAgICAgICAgICAgICAgICAgIG5hbWUgPT0gJ3RpbWUgd2l0aCB0aW1lIHpv bmUnIG9yIFwKKyAgICAgICAgICAgICAgICAgICAgbmFtZSA9PSAndGltZXN0 YW1wJyBvciBcCisgICAgICAgICAgICAgICAgICAgIG5hbWUgPT0gJ3RpbWVz dGFtcHR6J29yIFwKKyAgICAgICAgICAgICAgICAgICAgbmFtZSA9PSAndGlt ZXN0YW1wIHdpdGhvdXQgdGltZSB6b25lJyBvciBcCisgICAgICAgICAgICAg ICAgICAgIG5hbWUgPT0gJ3RpbWVzdGFtcCB3aXRoIHRpbWUgem9uZScgb3Ig XAorICAgICAgICAgICAgICAgICAgICBuYW1lID09ICdiaXQnIG9yIFwKKyAg ICAgICAgICAgICAgICAgICAgbmFtZSA9PSAnYml0IHZhcnlpbmcnIG9yIFwK KyAgICAgICAgICAgICAgICAgICAgbmFtZSA9PSAndmFyYml0JzoKKyAgICAg ICAgICAgICAgICBfcHJlYyA9IDAKKyAgICAgICAgICAgICAgICBfbGVuID0g dHlwbW9kCisgICAgICAgICAgICAgICAgbGVuZ3RoICs9IHN0cihfbGVuKQor ICAgICAgICAgICAgZWxpZiBuYW1lID09ICdpbnRlcnZhbCc6CisgICAgICAg ICAgICAgICAgX3ByZWMgPSAwCisgICAgICAgICAgICAgICAgX2xlbiA9IHR5 cG1vZCAmIDB4ZmZmZgorICAgICAgICAgICAgICAgIGxlbmd0aCArPSBzdHIo X2xlbikKKyAgICAgICAgICAgIGVsaWYgbmFtZSA9PSAnZGF0ZSc6CisgICAg ICAgICAgICAgICAgIyBDbGVhciBsZW5ndGgKKyAgICAgICAgICAgICAgICBs ZW5ndGggPSAnJworICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAg ICBfbGVuID0gdHlwbW9kIC0gNAorICAgICAgICAgICAgICAgIF9wcmVjID0g MAorICAgICAgICAgICAgICAgIGxlbmd0aCArPSBzdHIoX2xlbikKKworICAg ICAgICAgICAgaWYgbGVuKGxlbmd0aCkgPiAwOgorICAgICAgICAgICAgICAg IGxlbmd0aCArPSAnKScKKworICAgICAgICBpZiBuYW1lID09ICdjaGFyJyBh bmQgc2NoZW1hID09ICdwZ19jYXRhbG9nJzoKKyAgICAgICAgICAgIHJldHVy biAnImNoYXIiJyArIGFycmF5CisgICAgICAgIGVsaWYgbmFtZSA9PSAndGlt ZSB3aXRoIHRpbWUgem9uZSc6CisgICAgICAgICAgICByZXR1cm4gJ3RpbWUn ICsgbGVuZ3RoICsgJyB3aXRoIHRpbWUgem9uZScgKyBhcnJheQorICAgICAg ICBlbGlmIG5hbWUgPT0gJ3RpbWUgd2l0aG91dCB0aW1lIHpvbmUnOgorICAg ICAgICAgICAgcmV0dXJuICd0aW1lJyArIGxlbmd0aCArICcgd2l0aG91dCB0 aW1lIHpvbmUnICsgYXJyYXkKKyAgICAgICAgZWxpZiBuYW1lID09ICd0aW1l c3RhbXAgd2l0aCB0aW1lIHpvbmUnOgorICAgICAgICAgICAgcmV0dXJuICd0 aW1lc3RhbXAnICsgbGVuZ3RoICsgJyB3aXRoIHRpbWUgem9uZScgKyBhcnJh eQorICAgICAgICBlbGlmIG5hbWUgPT0gJ3RpbWVzdGFtcCB3aXRob3V0IHRp bWUgem9uZSc6CisgICAgICAgICAgICByZXR1cm4gJ3RpbWVzdGFtcCcgKyBs ZW5ndGggKyAnIHdpdGhvdXQgdGltZSB6b25lJyArIGFycmF5CisgICAgICAg IGVsc2U6CisgICAgICAgICAgICByZXR1cm4gbmFtZSArIGxlbmd0aCArIGFy cmF5CisKCiBkZWYgdHJpZ2dlcl9kZWZpbml0aW9uKGRhdGEpOgogICAgICIi Igo= --001a113a60ca28ffc9052ff98312 Content-Type: application/octet-stream; name="Fixed_rendering_issue.patch" Content-Disposition: attachment; filename="Fixed_rendering_issue.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_imrroxtn2 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3N0YXRpYy9qcy9iYWNrZm9ybS5w Z2FkbWluLmpzIGIvd2ViL3BnYWRtaW4vc3RhdGljL2pzL2JhY2tmb3JtLnBn YWRtaW4uanMKaW5kZXggOGVhZWQ2ZC4uNWM2MmI1OCAxMDA2NDQKLS0tIGEv d2ViL3BnYWRtaW4vc3RhdGljL2pzL2JhY2tmb3JtLnBnYWRtaW4uanMKKysr IGIvd2ViL3BnYWRtaW4vc3RhdGljL2pzL2JhY2tmb3JtLnBnYWRtaW4uanMK QEAgLTkwMCw2ICs5MDAsNyBAQAogICAgIHJlbmRlcjogZnVuY3Rpb24oKSB7 CiAgICAgICAvLyBDbGVhbiB1cCBleGlzdGluZyBlbGVtZW50cwogICAgICAg dGhpcy51bmRlbGVnYXRlRXZlbnRzKCk7CisgICAgICB0aGlzLiRlbC5lbXB0 eSgpOwogCiAgICAgICB2YXIgZmllbGQgPSBfLmRlZmF1bHRzKHRoaXMuZmll bGQudG9KU09OKCksIHRoaXMuZGVmYXVsdHMpLAogICAgICAgICAgIGF0dHJp YnV0ZXMgPSB0aGlzLm1vZGVsLnRvSlNPTigpLApAQCAtOTc4LDcgKzk3OSw4 IEBACiAgICAgICAgICAgZ3JpZFNjaGVtYS5jb2x1bW5zLnVuc2hpZnQoewog ICAgICAgICAgICAgbmFtZTogInBnLWJhY2tmb3JtLWRlbGV0ZSIsIGxhYmVs OiAiIiwKICAgICAgICAgICAgIGNlbGw6IEJhY2tncmlkLkV4dGVuc2lvbi5E ZWxldGVDZWxsLAotICAgICAgICAgICAgZWRpdGFibGU6IGZhbHNlLCBjZWxs X3ByaW9yaXR5OiAtMQorICAgICAgICAgICAgZWRpdGFibGU6IGZhbHNlLCBj ZWxsX3ByaW9yaXR5OiAtMSwKKyAgICAgICAgICAgIGNhbkRlbGV0ZVJvdzog ZGF0YS5jYW5EZWxldGVSb3cKICAgICAgICAgICB9KTsKICAgICAgIH0KIApA QCAtOTkwLDcgKzk5Miw3IEBACiAKICAgICAgICAgICBncmlkU2NoZW1hLmNv bHVtbnMudW5zaGlmdCh7CiAgICAgICAgICAgICBuYW1lOiAicGctYmFja2Zv cm0tZWRpdCIsIGxhYmVsOiAiIiwgY2VsbCA6IGVkaXRDZWxsLAotICAgICAg ICAgICAgY2VsbF9wcmlvcml0eTogLTIKKyAgICAgICAgICAgIGNlbGxfcHJp b3JpdHk6IC0yLCBjYW5FZGl0Um93OiBkYXRhLmNhbkVkaXRSb3cKICAgICAg ICAgICB9KTsKICAgICAgIH0KIApAQCAtMTIwMCw3ICsxMjAyLDggQEAKICAg ICAgICAgICBncmlkU2NoZW1hLmNvbHVtbnMudW5zaGlmdCh7CiAgICAgICAg ICAgICBuYW1lOiAicGctYmFja2Zvcm0tZGVsZXRlIiwgbGFiZWw6ICIiLAog ICAgICAgICAgICAgY2VsbDogQmFja2dyaWQuRXh0ZW5zaW9uLkRlbGV0ZUNl bGwsCi0gICAgICAgICAgICBlZGl0YWJsZTogZmFsc2UsIGNlbGxfcHJpb3Jp dHk6IC0xCisgICAgICAgICAgICBlZGl0YWJsZTogZmFsc2UsIGNlbGxfcHJp b3JpdHk6IC0xLAorICAgICAgICAgICAgY2FuRGVsZXRlUm93OiBkYXRhLmNh bkRlbGV0ZVJvdwogICAgICAgICAgIH0pOwogICAgICAgfQogCkBAIC0xMjE0 LDcgKzEyMTcsOCBAQAogCiAgICAgICAgICAgZ3JpZFNjaGVtYS5jb2x1bW5z LnVuc2hpZnQoewogICAgICAgICAgICAgbmFtZTogInBnLWJhY2tmb3JtLWVk aXQiLCBsYWJlbDogIiIsIGNlbGwgOiBlZGl0Q2VsbCwKLSAgICAgICAgICAg IGNlbGxfcHJpb3JpdHk6IC0yLCBlZGl0YWJsZTogY2FuRWRpdAorICAgICAg ICAgICAgY2VsbF9wcmlvcml0eTogLTIsIGVkaXRhYmxlOiBjYW5FZGl0LAor ICAgICAgICAgICAgY2FuRWRpdFJvdzogZGF0YS5jYW5FZGl0Um93CiAgICAg ICAgICAgfSk7CiAgICAgICB9CiAKQEAgLTE2NjQsNiArMTY2OCw4IEBACiAg ICAgICAgICAgICBjYW5BZGQ6IChkaXNhYmxlZCA/IGZhbHNlIDogZXZhbEFT RnVuYyhzLmNhbkFkZCkpLAogICAgICAgICAgICAgY2FuRWRpdDogKGRpc2Fi bGVkID8gZmFsc2UgOiBldmFsQVNGdW5jKHMuY2FuRWRpdCkpLAogICAgICAg ICAgICAgY2FuRGVsZXRlOiAoZGlzYWJsZWQgPyBmYWxzZSA6IGV2YWxBU0Z1 bmMocy5jYW5EZWxldGUpKSwKKyAgICAgICAgICAgIGNhbkVkaXRSb3c6IChk aXNhYmxlZCA/IGZhbHNlIDogZXZhbEFTRnVuYyhzLmNhbkVkaXRSb3cpKSwK KyAgICAgICAgICAgIGNhbkRlbGV0ZVJvdzogKGRpc2FibGVkID8gZmFsc2Ug OiBldmFsQVNGdW5jKHMuY2FuRGVsZXRlUm93KSksCiAgICAgICAgICAgICB0 cmFuc2Zvcm06IGV2YWxBU0Z1bmMocy50cmFuc2Zvcm0pLAogICAgICAgICAg ICAgbW9kZTogbW9kZSwKICAgICAgICAgICAgIGNvbnRyb2w6IGNvbnRyb2ws Cg== --001a113a60ca28ffc9052ff98312 Content-Type: application/octet-stream; name="updated_type_node.patch" Content-Disposition: attachment; filename="updated_type_node.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_imrrp48n3 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3R5cGVzL19faW5pdF9fLnB5 IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvdHlwZXMvX19pbml0X18ucHkKaW5kZXggNmE0 NmJiMC4uN2UwNWZhZSAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nl ci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdHlw ZXMvX19pbml0X18ucHkKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdHlwZXMvX19p bml0X18ucHkKQEAgLTE2LDcgKzE2LDcgQEAgZnJvbSBwZ2FkbWluLnV0aWxz LmFqYXggaW1wb3J0IG1ha2VfanNvbl9yZXNwb25zZSwgXAogICAgIG1ha2Vf cmVzcG9uc2UgYXMgYWpheF9yZXNwb25zZSwgaW50ZXJuYWxfc2VydmVyX2Vy cm9yCiBmcm9tIHBnYWRtaW4uYnJvd3Nlci51dGlscyBpbXBvcnQgUEdDaGls ZE5vZGVWaWV3CiBmcm9tIHBnYWRtaW4uYnJvd3Nlci5zZXJ2ZXJfZ3JvdXBz LnNlcnZlcnMuZGF0YWJhc2VzLnNjaGVtYXMudXRpbHMgXAotICAgIGltcG9y dCBTY2hlbWFDaGlsZE1vZHVsZQorICAgIGltcG9ydCBTY2hlbWFDaGlsZE1v ZHVsZSwgRGF0YVR5cGVSZWFkZXIKIGltcG9ydCBwZ2FkbWluLmJyb3dzZXIu c2VydmVyX2dyb3Vwcy5zZXJ2ZXJzLmRhdGFiYXNlcyBhcyBkYXRhYmFzZQog ZnJvbSBwZ2FkbWluLmJyb3dzZXIuc2VydmVyX2dyb3Vwcy5zZXJ2ZXJzLnV0 aWxzIGltcG9ydCBwYXJzZV9wcml2X2Zyb21fZGIsIFwKICAgICBwYXJzZV9w cml2X3RvX2RiCkBAIC04Nyw3ICs4Nyw3IEBAIGNsYXNzIFR5cGVNb2R1bGUo U2NoZW1hQ2hpbGRNb2R1bGUpOgogYmx1ZXByaW50ID0gVHlwZU1vZHVsZShf X25hbWVfXykKIAogCi1jbGFzcyBUeXBlVmlldyhQR0NoaWxkTm9kZVZpZXcp OgorY2xhc3MgVHlwZVZpZXcoUEdDaGlsZE5vZGVWaWV3LCBEYXRhVHlwZVJl YWRlcik6CiAgICAgIiIiCiAgICAgVGhpcyBjbGFzcyBpcyByZXNwb25zaWJs ZSBmb3IgZ2VuZXJhdGluZyByb3V0ZXMgZm9yIFR5cGUgbm9kZQogCkBAIC0z MzUsNyArMzM1LDEzIEBAIGNsYXNzIFR5cGVWaWV3KFBHQ2hpbGROb2RlVmll dyk6CiAgICAgICAgICAgICBjb21wb3NpdGVfbHN0ID0gW10KIAogICAgICAg ICAgICAgZm9yIHJvdyBpbiByc2V0Wydyb3dzJ106Ci0gICAgICAgICAgICAg ICAgdHlwZWxpc3QgPSAnICcuam9pbihbcm93WydhdHRuYW1lJ10sIHJvd1sn dHlwbmFtZSddXSkKKyAgICAgICAgICAgICAgICAjIFdlIHdpbGwgZmV0Y2gg RnVsbCB0eXBlIG5hbWUKKyAgICAgICAgICAgICAgICBmdWxsdHlwZSA9IHNl bGYuZ2V0X2Z1bGxfdHlwZSgKKyAgICAgICAgICAgICAgICAgICAgcm93Wydj b2xsbnNwbmFtZSddLCByb3dbJ3R5cG5hbWUnXSwKKyAgICAgICAgICAgICAg ICAgICAgcm93Wydpc2R1cCddLCByb3dbJ2F0dG5kaW1zJ10sIHJvd1snYXR0 dHlwbW9kJ10KKyAgICAgICAgICAgICAgICApCisKKyAgICAgICAgICAgICAg ICB0eXBlbGlzdCA9ICcgJy5qb2luKFtyb3dbJ2F0dG5hbWUnXSwgZnVsbHR5 cGVdKQogICAgICAgICAgICAgICAgIGlmIG5vdCByb3dbJ2NvbGxuYW1lJ10g b3IgKHJvd1snY29sbG5hbWUnXSA9PSAnZGVmYXVsdCcKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgcm93Wydjb2xs bnNwbmFtZSddID09ICdwZ19jYXRhbG9nJyk6CiAgICAgICAgICAgICAgICAg ICAgIGZ1bGxfY29sbGF0ZSA9ICcnCkBAIC0zNDksMTkgKzM1NSwyMSBAQCBj bGFzcyBUeXBlVmlldyhQR0NoaWxkTm9kZVZpZXcpOgogCiAgICAgICAgICAg ICAgICAgIyBCZWxvdyBsb2dpYyB3aWxsIGFsbG93IHVzIHRvIHNwbGl0IGxl bmd0aCwgcHJlY2lzaW9uIGZyb20gdHlwZSBuYW1lIGZvciBncmlkCiAgICAg ICAgICAgICAgICAgaW1wb3J0IHJlCi0gICAgICAgICAgICAgICAgbWF0Y2hP YmogPSByZS5tYXRjaCggcicoLiopXCgoLio/KSwoLio/KVwpJywgcm93Wyd0 eXBuYW1lJ10pCisgICAgICAgICAgICAgICAgbWF0Y2hPYmogPSByZS5zZWFy Y2gocicoXGQrKSwoXGQrKScsIGZ1bGx0eXBlKQogICAgICAgICAgICAgICAg IGlmIG1hdGNoT2JqOgotICAgICAgICAgICAgICAgICAgICB0X25hbWUgPSBt YXRjaE9iai5ncm91cCgxKQotICAgICAgICAgICAgICAgICAgICB0X2xlbiA9 IG1hdGNoT2JqLmdyb3VwKDIpCi0gICAgICAgICAgICAgICAgICAgIHRfcHJl YyA9IG1hdGNoT2JqLmdyb3VwKDMpCisgICAgICAgICAgICAgICAgICAgIHRf bGVuID0gbWF0Y2hPYmouZ3JvdXAoMSkKKyAgICAgICAgICAgICAgICAgICAg dF9wcmVjID0gbWF0Y2hPYmouZ3JvdXAoMikKICAgICAgICAgICAgICAgICBl bHNlOgotICAgICAgICAgICAgICAgICAgICB0X25hbWUgPSByb3dbJ3R5cG5h bWUnXQogICAgICAgICAgICAgICAgICAgICB0X2xlbiA9IE5vbmUKICAgICAg ICAgICAgICAgICAgICAgdF9wcmVjID0gTm9uZQogCisgICAgICAgICAgICAg ICAgaXNfdGxlbmd0aCA9IFRydWUgaWYgdF9sZW4gZWxzZSBGYWxzZQorICAg ICAgICAgICAgICAgIGlzX3ByZWNpc2lvbiA9IFRydWUgaWYgdF9wcmVjIGVs c2UgRmFsc2UKKwogICAgICAgICAgICAgICAgIGNvbXBvc2l0ZV9sc3QuYXBw ZW5kKHsKLSAgICAgICAgICAgICAgICAgICAgJ2F0dG51bSc6cm93WydhdHRu dW0nXSwgJ21lbWJlcl9uYW1lJzogcm93WydhdHRuYW1lJ10sICd0eXBlJzog dF9uYW1lLCAnY29sbGF0aW9uJzogZnVsbF9jb2xsYXRlLAotICAgICAgICAg ICAgICAgICAgICAndGxlbmd0aCc6IHRfbGVuLCAncHJlY2lzaW9uJzogdF9w cmVjIH0pCisgICAgICAgICAgICAgICAgICAgICdhdHRudW0nOnJvd1snYXR0 bnVtJ10sICdtZW1iZXJfbmFtZSc6IHJvd1snYXR0bmFtZSddLCAndHlwZSc6 IHJvd1sndHlwbmFtZSddLCAnY29sbGF0aW9uJzogZnVsbF9jb2xsYXRlLAor ICAgICAgICAgICAgICAgICAgICAndGxlbmd0aCc6IHRfbGVuLCAncHJlY2lz aW9uJzogdF9wcmVjLAorICAgICAgICAgICAgICAgICAgICAnaXNfdGxlbmd0 aCc6IGlzX3RsZW5ndGgsICdpc19wcmVjaXNpb24nOiBpc19wcmVjaXNpb24g fSkKIAogICAgICAgICAgICAgIyBBZGRpbmcgYm90aCByZXN1bHRzCiAgICAg ICAgICAgICByZXNbJ21lbWJlcl9saXN0J10gPSAnLCAnLmpvaW4ocHJvcGVy dGllc19saXN0KQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdHlwZXMv dGVtcGxhdGVzL3R5cGUvanMvdHlwZS5qcyBiL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3R5 cGVzL3RlbXBsYXRlcy90eXBlL2pzL3R5cGUuanMKaW5kZXggNWQ3OTQ0OS4u MWJlMzQ0NyAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdHlwZXMvdGVt cGxhdGVzL3R5cGUvanMvdHlwZS5qcworKysgYi93ZWIvcGdhZG1pbi9icm93 c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90 eXBlcy90ZW1wbGF0ZXMvdHlwZS9qcy90eXBlLmpzCkBAIC0zMDYsMjMgKzMw NiwxNSBAQCBmdW5jdGlvbigkLCBfLCBTLCBwZ0FkbWluLCBwZ0Jyb3dzZXIs IGFsZXJ0aWZ5LCBCYWNrZ3JpZCkgewogICAgICAgICAgIGdyb3VwOiAne3sg XygnRGVmaW5pdGlvbicpIH19JywKICAgICAgICAgICBtb2RlOiBbJ2VkaXQn LCAnY3JlYXRlJ10sCiAgICAgICAgICAgc2VsZWN0MjogeyB3aWR0aDogIjUw JSIgfSwKLSAgICAgICAgICBvcHRpb25zOiBmdW5jdGlvbigpIHsKLSAgICAg ICAgICAgaWYoIXRoaXMubW9kZWwuaXNOZXcoKSkgeworICAgICAgICAgIG9w dGlvbnM6IGZ1bmN0aW9uKG9iaikgewogICAgICAgICAgICAgICByZXR1cm4g WwogICAgICAgICAgICAgICAgIHtsYWJlbDogIkNvbXBvc2l0ZSIsIHZhbHVl OiAiYyJ9LAogICAgICAgICAgICAgICAgIHtsYWJlbDogIkVudW1lcmF0aW9u IiwgdmFsdWU6ICJlIn0sCiAgICAgICAgICAgICAgICAge2xhYmVsOiAiRXh0 ZXJuYWwiLCB2YWx1ZTogImIifSwKICAgICAgICAgICAgICAgICB7bGFiZWw6 ICJSYW5nZSIsIHZhbHVlOiAiciJ9LAorICAgICAgICAgICAgICAgIHtsYWJl bDogIlNoZWxsIChFeHRlcm5hbCB0eXBlIG9ubHkpIiwgdmFsdWU6ICJzIn0K ICAgICAgICAgICAgICAgXQotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAg ICAgICAgICAgcmV0dXJuIFsKLSAgICAgICAgICAgICAgICB7bGFiZWw6ICJD b21wb3NpdGUiLCB2YWx1ZTogImMifSwKLSAgICAgICAgICAgICAgICB7bGFi ZWw6ICJFbnVtZXJhdGlvbiIsIHZhbHVlOiAiZSJ9LAotICAgICAgICAgICAg ICAgIHtsYWJlbDogIlJhbmdlIiwgdmFsdWU6ICJyIn0sCi0gICAgICAgICAg ICAgIF0KLQotICAgICAgICAgICB9Ci0gICAgICAgICAgfSwKKyAgICAgICAg ICAgfSwKICAgICAgICAgICBkaXNhYmxlZDogJ2luU2NoZW1hV2l0aE1vZGVs Q2hlY2snLAogICAgICAgICAgIC8vIElmIGNyZWF0ZSBtb2RlIHRoZW4gYnkg ZGVmYXVsdCBvcGVuIGNvbXBvc2l0ZSB0eXBlCiAgICAgICAgICAgY29udHJv bDogQmFja2Zvcm0uU2VsZWN0MkNvbnRyb2wuZXh0ZW5kKHsKQEAgLTM0Mywx MCArMzM1LDcgQEAgZnVuY3Rpb24oJCwgXywgUywgcGdBZG1pbiwgcGdCcm93 c2VyLCBhbGVydGlmeSwgQmFja2dyaWQpIHsKICAgICAgICAgICBjYW5BZGQ6 IHRydWUsIGNhbkVkaXQ6IHRydWUsIGNhbkRlbGV0ZTogdHJ1ZSwgZGlzYWJs ZWQ6ICdpblNjaGVtYScsCiAgICAgICAgICAgZGVwczogWyd0eXB0eXBlJ10s IGRlcHM6IFsndHlwdHlwZSddLAogICAgICAgICAgIHZpc2libGU6IGZ1bmN0 aW9uKG0pIHsKLSAgICAgICAgICAgaWYgKG0uZ2V0KCd0eXB0eXBlJykgPT09 ICdjJykgewotICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICAg ICB9Ci0gICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgcmV0 dXJuIG0uZ2V0KCd0eXB0eXBlJykgPT09ICdjJzsKICAgICAgICAgICB9CiAg ICAgICAgIH0sewogICAgICAgICAgIGlkOiAnZW51bScsIGxhYmVsOiAne3sg XygnRW51bWVyYXRpb24gVHlwZScpIH19JywKQEAgLTUyMiw3ICs1MTEsNyBA QCBmdW5jdGlvbigkLCBfLCBTLCBwZ0FkbWluLCBwZ0Jyb3dzZXIsIGFsZXJ0 aWZ5LCBCYWNrZ3JpZCkgewogICAgICAgICB9LHsKICAgICAgICAgICB0eXBl OiAnbmVzdGVkJywgY29udHJvbDogJ3RhYicsIGdyb3VwOiAne3sgXygnRGVm aW5pdGlvbicpIH19JywKICAgICAgICAgICBsYWJlbDogJ3t7IF8oJ0V4dGVy bmFsIFR5cGUnKSB9fScsIGRlcHM6IFsndHlwdHlwZSddLAotICAgICAgICAg IG1vZGU6IFsnZWRpdCddLAorICAgICAgICAgIG1vZGU6IFsnY3JlYXRlJywg J2VkaXQnXSwKICAgICAgICAgICB2aXNpYmxlOiBmdW5jdGlvbihtKSB7CiAg ICAgICAgICAgICByZXR1cm4gbS5nZXQoJ3R5cHR5cGUnKSA9PT0gJ2InOwog ICAgICAgICAgIH0sCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90eXBl cy90ZW1wbGF0ZXMvdHlwZS9zcWwvOS4xX3BsdXMvY3JlYXRlLnNxbCBiL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL3R5cGVzL3RlbXBsYXRlcy90eXBlL3NxbC85LjFfcGx1 cy9jcmVhdGUuc3FsCmluZGV4IGJkMWY4YjcuLjRjNDkyOWUgMTAwNjQ0Ci0t LSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJz L2RhdGFiYXNlcy9zY2hlbWFzL3R5cGVzL3RlbXBsYXRlcy90eXBlL3NxbC85 LjFfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3R5cGVz L3RlbXBsYXRlcy90eXBlL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCkBAIC0x LDkgKzEsMTkgQEAKIHslIGltcG9ydCAnbWFjcm9zL3NjaGVtYXMvc2VjdXJp dHkubWFjcm9zJyBhcyBTRUNMQUJMRSAlfQogeyUgaW1wb3J0ICdtYWNyb3Mv c2NoZW1hcy9wcml2aWxlZ2UubWFjcm9zJyBhcyBQUklWSUxFR0UgJX0KK3sj IyBJZiB1c2VyIHNlbGVjdGVkIHNoZWxsIHR5cGUgdGhlbiBqdXN0IGNyZWF0 ZSB0eXBlIHRlbXBsYXRlICMjfQoreyUgaWYgZGF0YSBhbmQgZGF0YS50eXB0 eXBlID09ICdzJyAlfQorLS0gVGhpcyBpcyBhIHNoZWxsIHR5cGUgZm9yIGNy ZWF0aW5nICdFeHRlcm5hbCcgdHlwZS4KKy0tIEluIG9yZGVyIHRvIHVzZSwg WW91IG5lZWQgdG8gY3JlYXRlIHJlc3BlY3RpdmUgSW5wdXQvT3V0cHV0IGZ1 bmN0aW9uCistLSBPbmNlIHlvdSBjcmVhdGVkIHRoZW0sIFVzZSBwZ0FkbWlu NCB0byBjcmVhdGUgJ0V4dGVybmFsJyB0eXBlLgorCistLSBSZWZlciBodHRw Oi8vd3d3LnBvc3RncmVzcWwub3JnL2RvY3MvW1BHX1ZFUlNJT05dL3N0YXRp Yy9zcWwtY3JlYXRldHlwZS5odG1sCisKK0NSRUFURSBUWVBFIHt7IGNvbm58 cXRJZGVudChkYXRhLnNjaGVtYSwgZGF0YS5uYW1lKSB9fTsKK3slIGVsc2Ug JX0KIHsjIyMgIENvbXBvc2l0ZSBUeXBlICMjI30KIHslIGlmIGRhdGEgYW5k IGRhdGEudHlwdHlwZSA9PSAnYycgJX0KIENSRUFURSBUWVBFIHslIGlmIGRh dGEuc2NoZW1hICV9e3sgY29ubnxxdElkZW50KGRhdGEuc2NoZW1hLCBkYXRh Lm5hbWUpIH19eyUgZWxzZSAlfXt7IGNvbm58cXRJZGVudChkYXRhLm5hbWUp IH19eyUgZW5kaWYgJX0gQVMKLSAgICAoeyUgaWYgZGF0YS5jb21wb3NpdGUg JX17JSBmb3IgZCBpbiBkYXRhLmNvbXBvc2l0ZSAlfXslIGlmIGxvb3AuaW5k ZXggIT0gMSAlfSwgeyUgZW5kaWYgJX17eyBjb25ufHF0SWRlbnQoZC5tZW1i ZXJfbmFtZSkgfX0ge3sgZC50eXBlIH19eyUgaWYgZC5pc190bGVuZ3RoIGFu ZCBkLnRsZW5ndGggJX0oe3tkLnRsZW5ndGh9fXslIGlmIGQuaXNfcHJlY2lz aW9uIGFuZCBkLnByZWNpc2lvbiAlfSx7e2QucHJlY2lzaW9ufX17JSBlbmRp ZiAlfSl7JSBlbmRpZiAlfXslIGlmIGQuY29sbGF0aW9uICV9IENPTExBVEUg e3tkLmNvbGxhdGlvbn19eyUgZW5kaWYgJX17JSBlbmRmb3IgJX17JSBlbmRp ZiAlfSk7Cisoe3siXG5cdCJ9fXslIGlmIGRhdGEuY29tcG9zaXRlICV9eyUg Zm9yIGQgaW4gZGF0YS5jb21wb3NpdGUgJX17JSBpZiBsb29wLmluZGV4ICE9 IDEgJX0se3siXG5cdCJ9fXslIGVuZGlmICV9e3sgY29ubnxxdElkZW50KGQu bWVtYmVyX25hbWUpIH19IHt7IGQudHlwZSB9fXslIGlmIGQuaXNfdGxlbmd0 aCBhbmQgZC50bGVuZ3RoICV9KHt7ZC50bGVuZ3RofX17JSBpZiBkLmlzX3By ZWNpc2lvbiBhbmQgZC5wcmVjaXNpb24gJX0se3tkLnByZWNpc2lvbn19eyUg ZW5kaWYgJX0peyUgZW5kaWYgJX17JSBpZiBkLmNvbGxhdGlvbiAlfSBDT0xM QVRFIHt7ZC5jb2xsYXRpb259fXslIGVuZGlmICV9eyUgZW5kZm9yICV9eyUg ZW5kaWYgJX17eyJcbiJ9fSk7CiB7JSBlbmRpZiAlfQogeyMjIyAgRW51bSBU eXBlICMjI30KIHslIGlmIGRhdGEgYW5kIGRhdGEudHlwdHlwZSA9PSAnZScg JX0KQEAgLTc3LDMgKzg3LDUgQEAgQ09NTUVOVCBPTiBUWVBFIHslIGlmIGRh dGEuc2NoZW1hICV9e3sgY29ubnxxdElkZW50KGRhdGEuc2NoZW1hLCBkYXRh Lm5hbWUpIH19eyUKIHslIGVuZGlmICV9CiB7JSBlbmRmb3IgJX0KIHslIGVu ZGlmICV9Cit7IyMgRW5kIG9mIHNoZWxsIHR5cGUgaWYgIyN9Cit7JSBlbmRp ZiAlfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBh L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL3R5cGVzL3RlbXBsYXRlcy90eXBlL3NxbC85LjFf cGx1cy9nZXRfZXh0ZXJuYWxfZnVuY3Rpb25zLnNxbCBiL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL3R5cGVzL3RlbXBsYXRlcy90eXBlL3NxbC85LjFfcGx1cy9nZXRfZXh0 ZXJuYWxfZnVuY3Rpb25zLnNxbAppbmRleCA4NjY0OGEyLi4xNDgyNTZlIDEw MDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90eXBlcy90ZW1wbGF0ZXMvdHlw ZS9zcWwvOS4xX3BsdXMvZ2V0X2V4dGVybmFsX2Z1bmN0aW9ucy5zcWwKKysr IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvdHlwZXMvdGVtcGxhdGVzL3R5cGUvc3FsLzku MV9wbHVzL2dldF9leHRlcm5hbF9mdW5jdGlvbnMuc3FsCkBAIC0xLDggKzEs MTAgQEAKIHsjIyMgSW5wdXQvT3V0cHV0L1NlbmQvUmVjZWl2ZS9BbmFseXpl IGZ1bmN0aW9uIGxpc3QgYWxzbyBhcHBlbmQgaW50byBUeXBNb2RlSU4vVHlw TW9kT1VUICMjI30KIHslIGlmIGV4dGZ1bmMgJX0KIFNFTEVDVCBwcm9uYW1l LCBuc3BuYW1lLAotICAgIENBU0UgV0hFTiBsZW5ndGgobnNwbmFtZSkgPiAw IEFORCBsZW5ndGgocHJvbmFtZSkgPiAwICBUSEVOCisgICAgQ0FTRSBXSEVO IGxlbmd0aChuc3BuYW1lKSA+IDAgQU5EIGFuZCBsZW5ndGgobnNwbmFtZSkg IT0gJ3B1YmxpYycgYW5kIGxlbmd0aChwcm9uYW1lKSA+IDAgIFRIRU4KICAg ICAgICAgY29uY2F0KHF1b3RlX2lkZW50KG5zcG5hbWUpLCAnLicsIHF1b3Rl X2lkZW50KHByb25hbWUpKQorICAgIENBU0UgbGVuZ3RoKHByb25hbWUpID4g MCBUSEVOCisgICAgICAgIHF1b3RlX2lkZW50KHByb25hbWUpCiAgICAgRUxT RSAnJyBFTkQgQVMgZnVuYwogRlJPTSAoCiAgICAgU0VMRUNUIHByb25hbWUs IG5zcG5hbWUsIG1heChwcm9hcmd0eXBlc1swXSkgQVMgYXJnMCwgbWF4KHBy b2FyZ3R5cGVzWzFdKSBBUyBhcmcxCg== --001a113a60ca28ffc9052ff98312 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 --001a113a60ca28ffc9052ff98312--