Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1evjxm-0001vG-Ek for pgadmin-hackers@arkaria.postgresql.org; Tue, 13 Mar 2018 13:27:34 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1evjxk-00010E-Pb for pgadmin-hackers@arkaria.postgresql.org; Tue, 13 Mar 2018 13:27:32 +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.89) (envelope-from ) id 1evjxk-0000zy-Iv for pgadmin-hackers@lists.postgresql.org; Tue, 13 Mar 2018 13:27:32 +0000 Received: from mail-ot0-x234.google.com ([2607:f8b0:4003:c0f::234]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1evjxf-0004Vj-7J for pgadmin-hackers@postgresql.org; Tue, 13 Mar 2018 13:27:31 +0000 Received: by mail-ot0-x234.google.com with SMTP id n74so18937874ota.1 for ; Tue, 13 Mar 2018 06:27:26 -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=rsNp0AY1+HhUcc12ZAaq+xyMUHlQ+Nyc20+n9M+bbFY=; b=f1npy63SfgfoqLZmiE6fEj+iXuyWs/RmBXaFlbCR6RJ0l95DXRU2CbApyrw5XXBgZa NvvsxNhA1kMqHbgAP9IFdhQpLCbeWL71rC1Uhx9j7cxA6p5pMMMqQVSRXCSF9J2uK2JP A/hRzzgkSweNFX87wSGGNZ6GhtCm0rhALbh/tIU3wrH2Fh9M4eYP3mLC4BfuoaJlEJPU 8z07rKZ96Y6ek6888JwvZ35JfZ5ajFY3292iOEnR7M8TMbuiCQW33t1ZCfAHokL8kHEF CgM8nNFkguaeDqG81jfAie/EKGxhjV/WIzZDVvzMhz2iv0lwqxBaqlT0cLATsOd7ywhy 45gQ== 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=rsNp0AY1+HhUcc12ZAaq+xyMUHlQ+Nyc20+n9M+bbFY=; b=ad4B56RTQ6G8+UW/mf1YtAk52v6YGHSRnSadib39x3+4z0EvfwO4ewgeE4GFNXIYt9 FBSGZv3FzjqlEQYCxEFMQerhpOtj6LJAjNFzZeXk8B5g/7VUHHzB2G3rZ/LOuJwFMKqh WLseQxXeWl+Fs804kbaBdBYNYA9ZNyXy/+2yRPeG9LJZ308bCeAQHjuV3FMZCnXWoTx7 8OiDRzjtXzS56rXHc2WPrMA2P7mhSj/Pemp5/Fl3URjO4WgrMuCW6BG2B94Pwx1+MaEm zR6+WGu6TzHHUYHuPTNmPmAxeHxed4GNN+5DGLcjkytCIASB1JN609Xeh9s5TZN5SR4j BstQ== X-Gm-Message-State: AElRT7F9Gyvu1BNcbOYKoG0ldVxr1evNzBY5Y3fjY8M1SoR8UrohT7KY N8WDj+G8yGQks7YrQjrnp+iSvch/P2keT+vT6bIN3Q== X-Google-Smtp-Source: AG47ELu8xqLB2SJtpDOPXTtQbSKnfNqfEqoxNgcQCURjwQHseYqp/8wZFpF9HfIc5dYRDuDd3WaeHFlyCRv4ANKYrUk= X-Received: by 10.157.58.53 with SMTP id j50mr419246otc.157.1520947644828; Tue, 13 Mar 2018 06:27:24 -0700 (PDT) MIME-Version: 1.0 Received: by 10.74.8.150 with HTTP; Tue, 13 Mar 2018 06:27:04 -0700 (PDT) In-Reply-To: References: From: Murtuza Zabuawala Date: Tue, 13 Mar 2018 18:57:04 +0530 Message-ID: Subject: Re: [pgAdmin4][RM#3139] Create proper template path if Windows To: Dave Page Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary="001a1147191017fa9505674b38ba" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --001a1147191017fa9505674b38ba Content-Type: multipart/alternative; boundary="001a1147191017fa9005674b38b8" --001a1147191017fa9005674b38b8 Content-Type: text/plain; charset="UTF-8" Hi Dave, Please find updated patch which Joao sent along with RM#3139 fix. -- Regards, Murtuza Zabuawala EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Tue, Mar 13, 2018 at 6:24 PM, Murtuza Zabuawala < murtuza.zabuawala@enterprisedb.com> wrote: > Hi Dave, > > I have already replied on another thread regarding the failure of these > tests, Joao has already sent a patch for the same. > > -- > Regards, > Murtuza Zabuawala > EnterpriseDB: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > > > On Tue, Mar 13, 2018 at 6:20 PM, Dave Page wrote: > >> And... reverted. It seems this makes Jenkins very unhappy. >> >> On Tue, Mar 13, 2018 at 7:58 AM, Dave Page wrote: >> >>> OK, thanks. Patch applied. >>> >>> On Tue, Mar 13, 2018 at 12:32 AM, Murtuza Zabuawala < >>> murtuza.zabuawala@enterprisedb.com> wrote: >>> >>>> Hi Dave, >>>> >>>> We are not joining template path with os.path.join because we are >>>> passing prefix paths in render_template(..) at many places, >>>> we are passing them as below, >>>> >>>> Some of examples, >>>> >>>> render_template( >>>> "exclusion_constraint/js/exclusion_constraint.js", >>>> _=_ >>>> ), >>>> >>>> recovery_check_sql = render_template( >>>> "connect/sql/#{0}#/check_recovery.sql".format(postgres_versi >>>> on)) >>>> >>>> sql = render_template( >>>> "/servers/sql/#{0}#/stats.sql".format(manager.version), >>>> conn=conn, _=gettext >>>> ) >>>> >>>> sql = render_template( >>>> "/".join([self.template_path, 'create.sql']), >>>> data=data, conn=self.conn >>>> ) >>>> >>>> def csssnippets(self): >>>> """ >>>> Returns a snippet of css to include in the page >>>> """ >>>> snippets = [render_template("css/servers.css")] >>>> >>>> >>>> So again it will conflict if use os.path.join, To make it consistent >>>> with render_template(...) and VersionedTemplateLoader(..) class we >>>> opt'd for this mechanism. >>>> >>>> >>>> -- >>>> Regards, >>>> Murtuza Zabuawala >>>> EnterpriseDB: http://www.enterprisedb.com >>>> The Enterprise PostgreSQL Company >>>> >>>> >>>> On Tue, Mar 13, 2018 at 6:11 AM, Dave Page wrote: >>>> >>>>> Hi >>>>> >>>>> On Mon, Mar 12, 2018 at 10:15 AM, Murtuza Zabuawala < >>>>> murtuza.zabuawala@enterprisedb.com> wrote: >>>>> >>>>>> Hi, >>>>>> >>>>>> PFA patch to correct the template path generation logic incase of >>>>>> Windows system. >>>>>> >>>>> >>>>> Seems like it would be better to fix it the other way round to me - >>>>> e.g. update the template loader to use os.path.join. >>>>> >>>>> Any reason not to do that? >>>>> >>>>> -- >>>>> 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 >> > > --001a1147191017fa9005674b38b8 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dave,

Please find updated patch which Joao sent along with=C2=A0RM#313= 9 fix.

--
Regards,
Murtuza Zabuawala
EnterpriseD= B:=C2=A0http://www.enterprisedb.com
The Enterprise PostgreSQL Co= mpany


On Tue, Mar 13, 2018 at 6:24 PM, Murtuza Zab= uawala <murtuza.zabuawala@enterprisedb.com>= wrote:
Hi Dave= ,

I have already replied on another thread= regarding the failure of these tests, Joao has already sent a patch for th= e same.

--
Regards,
Murtuza Z= abuawala
EnterpriseDB:=C2=A0http://www.enterprisedb.com
T= he Enterprise PostgreSQL Company

=

On Tue, Mar 13, 2018 at 6:20 PM, Dave Page <= span dir=3D"ltr"><dpage@pgadmin.org> wrote:
=
And... reverted. It seems this makes Jenkins very unhappy.=

On Tue, Mar= 13, 2018 at 7:58 AM, Dave Page <dpage@pgadmin.org> wrote:
OK, thanks. Patch applied= .

On Tue, Mar 13, 2018 at 12:32 AM= , Murtuza Zabuawala <murtuza.zabuawala@enterprisedb.= com> wrote:
Hi Dave,

We a= re not joining template path with os.path.join because we are passing prefi= x paths in render_template(..) at many places,
we are p= assing them as below,

Some of = examples,

=C2=A0 =C2=A0 "exclusion_constraint/js/exclusion_= constraint.js",
=C2=A0 =C2=A0 _=3D_
),

recovery_check_sql =3D render_templa= te(

sql =3D render_template(
=C2=A0 =C2=A0 = "/servers/sql/#{0}#/stats.sql".format(manager.version),
=C2=A0 = =C2=A0 conn=3Dconn, _=3Dgettext
)

<= font color=3D"#444444" style=3D"background-color:rgb(238,238,238)" face=3D"= arial, helvetica, sans-serif">sql =3D render_template(
=C2=A0 =C2=A0 "/&q= uot;.join([self.template_path, 'create.sql']),
=C2=A0 =C2=A0 data=3Dda= ta, conn=3Dself.conn
)

def csssnippets(self):
=C2=A0 =C2=A0 """<= /font>
=C2= =A0 =C2=A0 Returns a snippet of css to include in the page
=C2=A0 =C2=A0 "= ;""
=C2=A0 =C2=A0 snippets =3D [render_template("css/servers.css")]


So again it will conflict if use os.path.join, To make it consistent w= ith render_template(...) and=C2=A0VersionedTemplateLoader(..) class we= opt'd for this mechanism.


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


On Tue, Mar 13, 2018 at 6:11 AM, Dave Page <= span dir=3D"ltr"><dpage@pgadmin.org> wrote:
=
Hi

On Mon, Mar 12, 2018 at 10:15 AM, Murtuza Zabuawala <= ;mu= rtuza.zabuawala@enterprisedb.com> wrote:
Hi,

PFA patch to correct the template path generation logic incase of= Windows system.

Seems like it = would be better to fix it the other way round to me - e.g. update the templ= ate loader to use os.path.join.

Any reason not to = do that?=C2=A0

--
Dave Page
Blog: = http://pgsnake.bl= ogspot.com
Twitter: @pgsnake

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




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

Ent= erpriseDB UK: htt= p://www.enterprisedb.com
The Enterprise PostgreSQL Company



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

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


--001a1147191017fa9005674b38b8-- --001a1147191017fa9505674b38ba Content-Type: application/octet-stream; name="path-correction-for-windows_v1.diff" Content-Disposition: attachment; filename="path-correction-for-windows_v1.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jepow5la0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9leHRlcm5hbF90YWJsZXMvX19pbml0X18ucHkgYi93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvZXh0ZXJuYWxfdGFibGVzL19faW5pdF9f LnB5CmluZGV4IDEzN2M2YzQuLjM3YmJlZTMgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9leHRlcm5hbF90YWJsZXMvX19pbml0 X18ucHkKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0 YWJhc2VzL2V4dGVybmFsX3RhYmxlcy9fX2luaXRfXy5weQpAQCAtMTMzLDcgKzEzMyw3IEBAIGNs YXNzIEV4dGVybmFsVGFibGVzVmlldyhQR0NoaWxkTm9kZVZpZXcpOgogICAgICAgICAgICAgICAg IGRpZD1rd2FyZ3NbJ2RhdGFiYXNlX2lkJ10KICAgICAgICAgICAgICkKICAgICAgICAgICAgIHNl bGYuc3FsX3RlbXBsYXRlX3BhdGggPSBjb21waWxlX3RlbXBsYXRlX3BhdGgoCi0gICAgICAgICAg ICAgICAgJ3NxbC8nLAorICAgICAgICAgICAgICAgICdzcWwnLAogICAgICAgICAgICAgICAgIHNl bGYubWFuYWdlci5zZXJ2ZXJfdHlwZSwKICAgICAgICAgICAgICAgICBzZWxmLm1hbmFnZXIuc3Zl cnNpb24KICAgICAgICAgICAgICkKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9leHRlcm5hbF90YWJsZXMvdGVzdHMvdGVzdF9l eHRlcm5hbF90YWJsZXNfdmlldy5weSBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9leHRlcm5hbF90YWJsZXMvdGVzdHMvdGVzdF9leHRlcm5hbF90 YWJsZXNfdmlldy5weQppbmRleCBhY2VkYzYxLi4zZjA4ZTQwIDEwMDY0NAotLS0gYS93ZWIvcGdh ZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvZXh0ZXJuYWxfdGFi bGVzL3Rlc3RzL3Rlc3RfZXh0ZXJuYWxfdGFibGVzX3ZpZXcucHkKKysrIGIvd2ViL3BnYWRtaW4v YnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL2V4dGVybmFsX3RhYmxlcy90 ZXN0cy90ZXN0X2V4dGVybmFsX3RhYmxlc192aWV3LnB5CkBAIC03LDYgKzcsNyBAQAogIwogIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMKIAoraW1wb3J0IG9zCiBpbXBvcnQgc3lzCiAKIGZyb20gcGdhZG1pbi5i cm93c2VyLnNlcnZlcl9ncm91cHMuc2VydmVycy5kYXRhYmFzZXMuZXh0ZXJuYWxfdGFibGVzIGlt cG9ydCBcCkBAIC02OCw3ICs2OSw5IEBAIGNsYXNzIFRlc3RFeHRlcm5hbFRhYmxlc1ZpZXcoQmFz ZVRlc3RHZW5lcmF0b3IpOgogICAgICAgICAgICAgIGNvbm5lY3Rpb249TWFnaWNNb2NrKGV4ZWN1 dGVfMmRhcnJheT1NYWdpY01vY2soKSksCiAgICAgICAgICAgICAgZXhlY3V0ZV8yZGFycmF5X3Jl dHVybl92YWx1ZT0oVHJ1ZSwgZGljdChyb3dzPVtdKSksCiAKLSAgICAgICAgICAgICBleHBlY3Rf cmVuZGVyX3RlbXBsYXRlX2NhbGxlZF93aXRoPSdzcWwvI2dwZGIjODAzMjMjL2xpc3Quc3FsJywK KyAgICAgICAgICAgICBleHBlY3RfcmVuZGVyX3RlbXBsYXRlX2NhbGxlZF93aXRoPW9zLnBhdGgu am9pbignc3FsJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnI2dwZGIjODAzMjMjJworICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgJ2xpc3Quc3FsJyksCiAgICAg ICAgICAgICAgZXhwZWN0ZWRfbWFrZV9qc29uX3Jlc3BvbnNlX2NhbGxlZF93aXRoPWRpY3QoCiAg ICAgICAgICAgICAgICAgIGRhdGE9W10sCiAgICAgICAgICAgICAgICAgIHN0YXR1cz0yMDAKQEAg LTkwLDcgKzkzLDkgQEAgY2xhc3MgVGVzdEV4dGVybmFsVGFibGVzVmlldyhCYXNlVGVzdEdlbmVy YXRvcik6CiAgICAgICAgICAgICAgY29ubmVjdGlvbj1NYWdpY01vY2soZXhlY3V0ZV8yZGFycmF5 PU1hZ2ljTW9jaygpKSwKICAgICAgICAgICAgICBleGVjdXRlXzJkYXJyYXlfcmV0dXJuX3ZhbHVl PShGYWxzZSwgJ1NvbWUgZXJyb3IgbWVzc2FnZScpLAogCi0gICAgICAgICAgICAgZXhwZWN0X3Jl bmRlcl90ZW1wbGF0ZV9jYWxsZWRfd2l0aD0nc3FsLyNncGRiIzgwMzIzIy9saXN0LnNxbCcsCisg ICAgICAgICAgICAgZXhwZWN0X3JlbmRlcl90ZW1wbGF0ZV9jYWxsZWRfd2l0aD1vcy5wYXRoLmpv aW4oJ3NxbCcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJyNncGRiIzgwMzIzIycsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xpc3Quc3FsJyksCiAgICAgICAg ICAgICAgZXhwZWN0ZWRfaW50ZXJuYWxfc2VydmVyX2Vycm9yX2NhbGxlZF93aXRoPWRpY3QoCiAg ICAgICAgICAgICAgICAgIGVycm9ybXNnPSdTb21lIGVycm9yIG1lc3NhZ2UnCiAgICAgICAgICAg ICAgKSwKQEAgLTEyMiw3ICsxMjcsOSBAQCBjbGFzcyBUZXN0RXh0ZXJuYWxUYWJsZXNWaWV3KEJh c2VUZXN0R2VuZXJhdG9yKToKICAgICAgICAgICAgICAgICAgXQogICAgICAgICAgICAgICkpLAog Ci0gICAgICAgICAgICAgZXhwZWN0X3JlbmRlcl90ZW1wbGF0ZV9jYWxsZWRfd2l0aD0nc3FsLyNn cGRiIzgwMzIzIy9saXN0LnNxbCcsCisgICAgICAgICAgICAgZXhwZWN0X3JlbmRlcl90ZW1wbGF0 ZV9jYWxsZWRfd2l0aD1vcy5wYXRoLmpvaW4oJ3NxbCcsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNncGRiIzgwMzIzIycsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJ2xpc3Quc3FsJyksCiAgICAgICAgICAgICAgZXhwZWN0ZWRfbWFrZV9qc29uX3Jlc3BvbnNl X2NhbGxlZF93aXRoPWRpY3QoCiAgICAgICAgICAgICAgICAgIGRhdGE9WwogICAgICAgICAgICAg ICAgICAgICAgewpAQCAtMTY3LDcgKzE3NCw5IEBAIGNsYXNzIFRlc3RFeHRlcm5hbFRhYmxlc1Zp ZXcoQmFzZVRlc3RHZW5lcmF0b3IpOgogICAgICAgICAgICAgIGV4ZWN1dGVfMmRhcnJheV9yZXR1 cm5fdmFsdWU9KEZhbHNlLCAnU29tZSBlcnJvciBtZXNzYWdlJyksCiAKICAgICAgICAgICAgICBl eHBlY3RfcmVuZGVyX3RlbXBsYXRlX2NhbGxlZF93aXRoPWRpY3QoCi0gICAgICAgICAgICAgICAg IHRlbXBsYXRlX25hbWVfb3JfbGlzdD0nc3FsLyNncGRiIzgwMzIzIy9ub2RlLnNxbCcsCisgICAg ICAgICAgICAgICAgIHRlbXBsYXRlX25hbWVfb3JfbGlzdD1vcy5wYXRoLmpvaW4oJ3NxbCcsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyNncGRi IzgwMzIzIycsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJ25vZGUuc3FsJyksCiAgICAgICAgICAgICAgICAgIGV4dGVybmFsX3RhYmxlX2lkPTEx CiAgICAgICAgICAgICAgKSwKICAgICAgICAgICAgICBleHBlY3RlZF9pbnRlcm5hbF9zZXJ2ZXJf ZXJyb3JfY2FsbGVkX3dpdGg9ZGljdCgKQEAgLTE5Miw3ICsyMDEsOSBAQCBjbGFzcyBUZXN0RXh0 ZXJuYWxUYWJsZXNWaWV3KEJhc2VUZXN0R2VuZXJhdG9yKToKICAgICAgICAgICAgICBleGVjdXRl XzJkYXJyYXlfcmV0dXJuX3ZhbHVlPShUcnVlLCBkaWN0KHJvd3M9W10pKSwKIAogICAgICAgICAg ICAgIGV4cGVjdF9yZW5kZXJfdGVtcGxhdGVfY2FsbGVkX3dpdGg9ZGljdCgKLSAgICAgICAgICAg ICAgICAgdGVtcGxhdGVfbmFtZV9vcl9saXN0PSdzcWwvI2dwZGIjODAzMjMjL25vZGUuc3FsJywK KyAgICAgICAgICAgICAgICAgdGVtcGxhdGVfbmFtZV9vcl9saXN0PW9zLnBhdGguam9pbignc3Fs JywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAn I2dwZGIjODAzMjMjJywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAnbm9kZS5zcWwnKSwKICAgICAgICAgICAgICAgICAgZXh0ZXJuYWxfdGFibGVf aWQ9MTEKICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIGV4cGVjdGVkX21ha2VfanNvbl9y ZXNwb25zZV9jYWxsZWRfd2l0aD1kaWN0KApAQCAtMjI5LDcgKzI0MCw5IEBAIGNsYXNzIFRlc3RF eHRlcm5hbFRhYmxlc1ZpZXcoQmFzZVRlc3RHZW5lcmF0b3IpOgogICAgICAgICAgICAgICkpLAog CiAgICAgICAgICAgICAgZXhwZWN0X3JlbmRlcl90ZW1wbGF0ZV9jYWxsZWRfd2l0aD1kaWN0KAot ICAgICAgICAgICAgICAgICB0ZW1wbGF0ZV9uYW1lX29yX2xpc3Q9J3NxbC8jZ3BkYiM4MDMyMyMv bm9kZS5zcWwnLAorICAgICAgICAgICAgICAgICB0ZW1wbGF0ZV9uYW1lX29yX2xpc3Q9b3MucGF0 aC5qb2luKCdzcWwnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICcjZ3BkYiM4MDMyMyMnLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICdub2RlLnNxbCcpLAogICAgICAgICAgICAgICAgICBleHRl cm5hbF90YWJsZV9pZD0xMQogICAgICAgICAgICAgICksCiAgICAgICAgICAgICAgZXhwZWN0ZWRf bWFrZV9qc29uX3Jlc3BvbnNlX2NhbGxlZF93aXRoPWRpY3QoCkBAIC0yODMsOCArMjk2LDExIEBA IGNsYXNzIFRlc3RFeHRlcm5hbFRhYmxlc1ZpZXcoQmFzZVRlc3RHZW5lcmF0b3IpOgogICAgICAg ICAgICAgICkpLAogCiAgICAgICAgICAgICAgZXhwZWN0X3JlbmRlcl90ZW1wbGF0ZV9jYWxsZWRf d2l0aD1kaWN0KAotICAgICAgICAgICAgICAgICB0ZW1wbGF0ZV9uYW1lX29yX2xpc3Q9J3NxbC8j Z3BkYiM4MDMyMyMvJwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dl dF90YWJsZV9pbmZvcm1hdGlvbi5zcWwnLAorICAgICAgICAgICAgICAgICB0ZW1wbGF0ZV9uYW1l X29yX2xpc3Q9b3MucGF0aC5qb2luKAorICAgICAgICAgICAgICAgICAgICAgJ3NxbCcsCisgICAg ICAgICAgICAgICAgICAgICAnI2dwZGIjODAzMjMjJywKKyAgICAgICAgICAgICAgICAgICAgICdn ZXRfdGFibGVfaW5mb3JtYXRpb24uc3FsJworICAgICAgICAgICAgICAgICApLAogICAgICAgICAg ICAgICAgICB0YWJsZV9vaWQ9MTEKICAgICAgICAgICAgICApLAogICAgICAgICAgICAgIGV4cGVj dGVkX21ha2VfcmVzcG9uc2VfY2FsbGVkX3dpdGg9ZGljdCgKZGlmZiAtLWdpdCBhL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxl cy90ZXN0cy90ZXN0X3RlbXBsYXRlX2NyZWF0ZS5weSBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90ZXN0cy90ZXN0X3Rl bXBsYXRlX2NyZWF0ZS5weQppbmRleCAyNWQ1ODkyLi5jZDc2NWFhIDEwMDY0NAotLS0gYS93ZWIv cGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90 YWJsZXMvdGVzdHMvdGVzdF90ZW1wbGF0ZV9jcmVhdGUucHkKKysrIGIvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3Rlc3Rz L3Rlc3RfdGVtcGxhdGVfY3JlYXRlLnB5CkBAIC0xMTcsMjAgKzExNywyNiBAQCBjbGFzcyBGYWtl QXBwKEZsYXNrKToKICAgICAgICAgc2VsZi5qaW5qYV9lbnYuZmlsdGVyc1sncXRUeXBlSWRlbnQn XSA9IGRyaXZlci5xdFR5cGVJZGVudAogICAgICAgICBzZWxmLmppbmphX2xvYWRlciA9IENob2lj ZUxvYWRlcihbCiAgICAgICAgICAgICBGaWxlU3lzdGVtTG9hZGVyKAotICAgICAgICAgICAgICAg IG9zLnBhdGguZGlybmFtZSgKLSAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5yZWFscGF0aChf X2ZpbGVfXykpICsgJy8uLi90ZW1wbGF0ZXMvJworICAgICAgICAgICAgICAgIG9zLnBhdGguam9p bihvcy5wYXRoLmRpcm5hbWUoCisgICAgICAgICAgICAgICAgICAgIG9zLnBhdGgucmVhbHBhdGgo X19maWxlX18pCisgICAgICAgICAgICAgICAgKSwgb3MucGFyZGlyLCAndGVtcGxhdGVzJykKICAg ICAgICAgICAgICksCiAgICAgICAgICAgICBGaWxlU3lzdGVtTG9hZGVyKAotICAgICAgICAgICAg ICAgIG9zLnBhdGguZGlybmFtZSgKLSAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5yZWFscGF0 aChfX2ZpbGVfXykpICsgJy8uLi8uLi90ZW1wbGF0ZXMvJworICAgICAgICAgICAgICAgIG9zLnBh dGguam9pbigKKyAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKAorICAgICAgICAg ICAgICAgICAgICAgICAgb3MucGF0aC5yZWFscGF0aChfX2ZpbGVfXykKKyAgICAgICAgICAgICAg ICAgICAgKSwgb3MucGFyZGlyLCBvcy5wYXJkaXIsICd0ZW1wbGF0ZXMnKQogICAgICAgICAgICAg KSwKICAgICAgICAgICAgIEZpbGVTeXN0ZW1Mb2FkZXIoCi0gICAgICAgICAgICAgICAgb3MucGF0 aC5kaXJuYW1lKAotICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLnJlYWxwYXRoKF9fZmlsZV9f KSkgKyAnLy4uLy4uL3R5cGVzL3RlbXBsYXRlcy8nCisgICAgICAgICAgICAgICAgb3MucGF0aC5q b2luKG9zLnBhdGguZGlybmFtZSgKKyAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5yZWFscGF0 aChfX2ZpbGVfXykpCisgICAgICAgICAgICAgICAgICAgICwgb3MucGFyZGlyLCBvcy5wYXJkaXIs ICd0eXBlcycsICd0ZW1wbGF0ZXMnKQogICAgICAgICAgICAgKSwKICAgICAgICAgICAgIEZpbGVT eXN0ZW1Mb2FkZXIoCi0gICAgICAgICAgICAgICAgb3MucGF0aC5kaXJuYW1lKAotICAgICAgICAg ICAgICAgICAgICBvcy5wYXRoLnJlYWxwYXRoKF9fZmlsZV9fKSkgKyAnLy4uLy4uLy4uLy4uL3Rl bXBsYXRlcy8nCisgICAgICAgICAgICAgICAgb3MucGF0aC5qb2luKG9zLnBhdGguZGlybmFtZSgK KyAgICAgICAgICAgICAgICAgICAgb3MucGF0aC5yZWFscGF0aChfX2ZpbGVfXykpCisgICAgICAg ICAgICAgICAgICAgICwgb3MucGFyZGlyLCBvcy5wYXJkaXIsIG9zLnBhcmRpciwgb3MucGFyZGly LAorICAgICAgICAgICAgICAgICAgICAndGVtcGxhdGVzJykKICAgICAgICAgICAgICksCiAgICAg ICAgIF0KICAgICAgICAgKQo= --001a1147191017fa9505674b38ba Content-Type: application/octet-stream; name="RM_3139.diff" Content-Disposition: attachment; filename="RM_3139.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jepoxcs61 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3V0aWxzL2NvbXBpbGVfdGVtcGxhdGVfbmFtZS5weSBi L3dlYi9wZ2FkbWluL3V0aWxzL2NvbXBpbGVfdGVtcGxhdGVfbmFtZS5weQppbmRleCAxZTBiOTRm YS4uMTIzMmI2YTAgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3V0aWxzL2NvbXBpbGVfdGVtcGxh dGVfbmFtZS5weQorKysgYi93ZWIvcGdhZG1pbi91dGlscy9jb21waWxlX3RlbXBsYXRlX25hbWUu cHkKQEAgLTExLDEwICsxMSwxMyBAQCBpbXBvcnQgb3MKIAogZGVmIGNvbXBpbGVfdGVtcGxhdGVf bmFtZSgKICAgICAgICAgdGVtcGxhdGVfcHJlZml4LCB0ZW1wbGF0ZV9maWxlX25hbWUsIHNlcnZl cl90eXBlLCB2ZXJzaW9uKToKLSAgICByZXR1cm4gb3MucGF0aC5qb2luKAotICAgICAgICBjb21w aWxlX3RlbXBsYXRlX3BhdGgodGVtcGxhdGVfcHJlZml4LCBzZXJ2ZXJfdHlwZSwgdmVyc2lvbiks Ci0gICAgICAgIHRlbXBsYXRlX2ZpbGVfbmFtZQotICAgICkKKworICAgICMgVGVtcGxhdGUgcGF0 aCBjb25jYXRlbmF0aW9uIHNob3VsZCBiZSBzYW1lIGFzCisgICAgIyBSZWY6IC4uL3BnYWRtaW40 L3dlYi9wZ2FkbWluL3V0aWxzL3ZlcnNpb25lZF90ZW1wbGF0ZV9sb2FkZXIucHkgKzU0CisgICAg IyB0byBhdm9pZCBwYXRoIG1pc21hdGNoIGluIHdpbmRvd3MKKyAgICByZXR1cm4gY29tcGlsZV90 ZW1wbGF0ZV9wYXRoKHRlbXBsYXRlX3ByZWZpeCwgc2VydmVyX3R5cGUsIHZlcnNpb24pICsgXAor ICAgICAgICAgICAnLycgKyB0ZW1wbGF0ZV9maWxlX25hbWUKKwogCiAKIGRlZiBjb21waWxlX3Rl bXBsYXRlX3BhdGgodGVtcGxhdGVfcHJlZml4LCBzZXJ2ZXJfdHlwZSwgdmVyc2lvbik6CkBAIC0y Miw0ICsyNSw4IEBAIGRlZiBjb21waWxlX3RlbXBsYXRlX3BhdGgodGVtcGxhdGVfcHJlZml4LCBz ZXJ2ZXJfdHlwZSwgdmVyc2lvbik6CiAgICAgICAgIHZlcnNpb25fcGF0aCA9ICcjezB9I3sxfSMn LmZvcm1hdChzZXJ2ZXJfdHlwZSwgdmVyc2lvbikKICAgICBlbHNlOgogICAgICAgICB2ZXJzaW9u X3BhdGggPSAnI3swfSMnLmZvcm1hdCh2ZXJzaW9uKQotICAgIHJldHVybiBvcy5wYXRoLmpvaW4o dGVtcGxhdGVfcHJlZml4LCB2ZXJzaW9uX3BhdGgpCisKKyAgICAjIFRlbXBsYXRlIHBhdGggY29u Y2F0ZW5hdGlvbiBzaG91bGQgYmUgc2FtZSBhcworICAgICMgUmVmOiAuLi9wZ2FkbWluNC93ZWIv cGdhZG1pbi91dGlscy92ZXJzaW9uZWRfdGVtcGxhdGVfbG9hZGVyLnB5ICs1NAorICAgICMgdG8g YXZvaWQgcGF0aCBtaXNtYXRjaCBpbiB3aW5kb3dzCisgICAgcmV0dXJuIHRlbXBsYXRlX3ByZWZp eCArICcvJyArIHZlcnNpb25fcGF0aAo= --001a1147191017fa9505674b38ba--