Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l2RtU-00089O-4A for pgadmin-hackers@arkaria.postgresql.org; Thu, 21 Jan 2021 04:48:28 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1l2RtS-0007wE-RL for pgadmin-hackers@arkaria.postgresql.org; Thu, 21 Jan 2021 04:48:26 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l2RtS-0007w0-Dn for pgadmin-hackers@lists.postgresql.org; Thu, 21 Jan 2021 04:48:26 +0000 Received: from mail-lj1-x236.google.com ([2a00:1450:4864:20::236]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1l2RtM-0000GN-P1 for pgadmin-hackers@postgresql.org; Thu, 21 Jan 2021 04:48:24 +0000 Received: by mail-lj1-x236.google.com with SMTP id f11so1005300ljm.8 for ; Wed, 20 Jan 2021 20:48:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=aP7c35QSqHndUu3wNNiTVhZ6ovMwvcc+9CAlYjp/rRE=; b=kPxKnAhvTcajFRMCqyltKuM7g/u0mR82rlv+0tzoDdcDSZgY9D1XrHSW5DPx5r+GLM tAcGHkV+B5kT6+aa9XH1Hf4bIfz7ZWlg4PBCoN/wisalbgy+f2RdrfI7UzGxnZSk5t+2 jLNvH5R6iJZSYa1Ua+vlovDq6EaAy3SosMTG8cECkkhcll7des//zG13qBA86K9Ottp1 XRZyhRWxH2r+GwBkJ8JS1ryg8ck5Sr4eYf6a7+M+itOviMj6g82sAzRlBIT9/8C5ul0o Cx3O6Ber/cb0K7AmuWOM/cn18c+TiAIupT+dmWD+wAcpI8McE7DFnDVIkWB+cKAnexs8 tqew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aP7c35QSqHndUu3wNNiTVhZ6ovMwvcc+9CAlYjp/rRE=; b=kqSo1omFUUHnuxusYfA466xL/BR8Xj8cnuZ/76hvbEuv1/+fSecoFsyjZMz3MDMwxd Zb9bnptT4kDFEWLuNMyBDD+c3rP5CZfbnrTUgOihDVrnO0KwaWm5X/U2w3h54xbQS5ku ShFzs3BlSRAs4Hb1jQ6FvqFVqohXMND7TpQyQy00KyZJOh1ACO+PnMTZkQxwJFUB0QPU Em01k4i0dstXRh6qvcizlEdW826F/DguNAU50de/APfwtZLSahgzsSVoGk6CRMnXFLC7 J12IZ+HHfsRMu5rNYr55x+gwjJ8pFPg7OrPEhNBtHQJ2sF8XzFtFAr2qsuA8OSxVPIne Y+XQ== X-Gm-Message-State: AOAM533kc2wtmeoN6YU2iCvcILNJ1Tshnc6vjcbhR5qS5y8W0PivGa7q cDmP77xcd0xCMj9vG1fJrEeBJ+iu/wiznTePUWShVQj8HPGd4vxDoPZ75+8MygJYszoh5X8mlik LkaDuxJLvh1hDvamUzqrxXr8PJsqe2OZwkq8HIlwZcZuQOGR4cTlCAC2apXXOz3VcBbmLPfGG2k EXcqdhoKO0N5ju/liejO5noh9a6MvSvKYA4RVFgwYc9JpqzM4fT6q67wo2og== X-Google-Smtp-Source: ABdhPJxhWH6rZkpiBAXgxh/+H1jRwT2DWm++DgQS/HqAYaO3Lv5KJs8InRFMVzCU/0q0vZsRU3dssTBvjde4tS7IHHw= X-Received: by 2002:a2e:9058:: with SMTP id n24mr5212746ljg.442.1611204498589; Wed, 20 Jan 2021 20:48:18 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Aditya Toshniwal Date: Thu, 21 Jan 2021 10:17:42 +0530 Message-ID: Subject: Re: [pgAdmin][RM1802] ERD Tool (Beta) To: Dave Page Cc: Akshay Joshi , Khushboo Vashi , pgadmin-hackers Content-Type: multipart/alternative; boundary="000000000000cc9f1805b961c7d6" X-CLOUD-SEC-AV-Info: enterprisedb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000cc9f1805b961c7d6 Content-Type: text/plain; charset="UTF-8" Hi Dave, On Wed, Jan 20, 2021 at 9:20 PM Dave Page wrote: > Hi > > Where's the Save Image button gone? I know Aditya was removing it whilst > working on other things, but it's still required for phase 1 release. > It was not working 100% right. :( So I've removed it for the time being. I'm still working on it. > > On Mon, Jan 18, 2021 at 11:45 AM Akshay Joshi < > akshay.joshi@enterprisedb.com> wrote: > >> Thanks, patch applied. >> >> On Mon, Jan 18, 2021 at 5:08 PM Aditya Toshniwal < >> aditya.toshniwal@enterprisedb.com> wrote: >> >>> OK, So the changes have worked. But still failing at one more place. >>> Attached the patch fixes it. >>> >>> On Mon, Jan 18, 2021 at 4:40 PM Akshay Joshi < >>> akshay.joshi@enterprisedb.com> wrote: >>> >>>> Thanks, patch applied. >>>> >>>> On Mon, Jan 18, 2021 at 2:58 PM Aditya Toshniwal < >>>> aditya.toshniwal@enterprisedb.com> wrote: >>>> >>>>> Hi, >>>>> >>>>> The jasmine test cases are working fine on my local machine. The test >>>>> cases are successful on jenkins other than on linux, not sure why. >>>>> I have made some fixes by looking at the log. Please review and try. >>>>> >>>>> On Mon, Jan 18, 2021 at 1:10 PM Akshay Joshi < >>>>> akshay.joshi@enterprisedb.com> wrote: >>>>> >>>>>> Thanks, patch applied. >>>>>> >>>>>> On Mon, Jan 18, 2021 at 10:34 AM Aditya Toshniwal < >>>>>> aditya.toshniwal@enterprisedb.com> wrote: >>>>>> >>>>>>> Hi Akshay, >>>>>>> >>>>>>> I forgot to remove few of the dependencies which are not required as >>>>>>> of now (may be in future). Attached patch removes those dependencies from >>>>>>> package.json. >>>>>>> >>>>>>> On Sat, Jan 16, 2021 at 5:08 PM Akshay Joshi < >>>>>>> akshay.joshi@enterprisedb.com> wrote: >>>>>>> >>>>>>>> Thanks, patch applied. >>>>>>>> >>>>>>>> On Fri, Jan 15, 2021 at 7:01 PM Aditya Toshniwal < >>>>>>>> aditya.toshniwal@enterprisedb.com> wrote: >>>>>>>> >>>>>>>>> Hi, >>>>>>>>> >>>>>>>>> I've fixed the issues. You can find the comments inline. >>>>>>>>> I've also added PropTypes for the components for increased >>>>>>>>> validation. >>>>>>>>> >>>>>>>>> On Tue, Jan 12, 2021 at 12:18 PM Khushboo Vashi < >>>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>>> >>>>>>>>>> Hi Aditya, >>>>>>>>>> >>>>>>>>>> The functionalities and the code looks good to me, however some of the comments as below: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> - Correct the comments at some places (3 occurrences found in /erd/__init__.py) which mention Schema diff instead of ERD. >>>>>>>>>> >>>>>>>>>> Some comments in the JS/JSX file regarding components/functions (For example, IconButton (forwardRef), Bodywidget etc.) would >>>>>>>>>> >>>>>>>>>> be great help as we all are new to React. >>>>>>>>>> >>>>>>>>>> Done. Added comments to the components. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - Remove the unused imports (for ex bad_request) in /erd/__init__.py >>>>>>>>>> >>>>>>>>>> Removed. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - Remove commented code >>>>>>>>>> >>>>>>>>>> # req_args = request.args >>>>>>>>>> # if ('recreate' in req_args and >>>>>>>>>> # req_args['recreate'] == '1'): >>>>>>>>>> # connect = False >>>>>>>>>> >>>>>>>>>> Removed. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - TableNode.jsx, below two lines can be combined. >>>>>>>>>> >>>>>>>>>> import { PortModelAlignment, DefaultNodeModel } from >>>>>>>>>> '@projectstorm/react-diagrams'; >>>>>>>>>> import { PortWidget } from '@projectstorm/react-diagrams'; >>>>>>>>>> >>>>>>>>>> Done. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - onImageClick function in BodyWidget.jsx is no use I think, so it should be removed. >>>>>>>>>> >>>>>>>>>> I wanted to keep the code as it will be used in future. Anyway, >>>>>>>>> I've removed the code. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - I got some console errors while adding/editing tables. Refer to the attached screenshot. >>>>>>>>>> >>>>>>>>>> I tried but I didn't get any. Looking at the screenshot, the >>>>>>>>> error is from the underlying library. Can't do much in this. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - In the column Edit Mode, while deleting the primary key, it gives the error, which does not go away with any further modifications. >>>>>>>>>> >>>>>>>>>> Fixed. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - While generating the SQL, if the server is disconnected, a proper error message should be thrown, right now some server side error is coming. >>>>>>>>>> >>>>>>>>>> It will show connection lost error now. Fixed. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - Please remove ... from the menu title (New ERD Project(Beta)...) as it is not opening a dialog. >>>>>>>>>> >>>>>>>>>> Done. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - For large data sets, generate ERD hangs. >>>>>>>>>> >>>>>>>>>> It shows the spinner and waits for the response to come from the >>>>>>>>> back end. I've used the existing table fetching code which is used at other >>>>>>>>> places. I'll create an RM to improve the back end code for fetching the >>>>>>>>> tables data which will help the schema diff tool as well. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - Opening the ERD panel in a new window is not working, it opens in the same tab even if you have set the Preference "Open in new browser tab" to True. >>>>>>>>>> >>>>>>>>>> Fixed. Added the setting in "Tab settings". >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - No shortcut is provided to open the ERD Tool. >>>>>>>>>> >>>>>>>>>> A shortcut is helpful if we are using it frequently. ERD tool >>>>>>>>> won't be used that frequently. We already have a limited number >>>>>>>>> of keys available for shortcuts. I think we should roll out without >>>>>>>>> shortcut for now. If there is a user demand for it then we can think of >>>>>>>>> adding it. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - SonarQube fixes required. >>>>>>>>>> >>>>>>>>>> Fixed. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> - >>>>>>>>>> >>>>>>>>>> *Suggestion:* >>>>>>>>>> >>>>>>>>>> While removal of the FK link, If any of the table is selected, it is being deleted with FK link. >>>>>>>>>> Either we should warn the user OR make 2 different buttons for FK removal and table removal as the user may be confused if the selected table is also removed with the FK. >>>>>>>>>> >>>>>>>>>> I've added a confirmation dialog which will show the number of >>>>>>>>> tables and links selected. This way user will know what he has selected >>>>>>>>> before deleting. >>>>>>>>> >>>>>>>>>> *Observations:* >>>>>>>>>> >>>>>>>>>> Lodash has been used in this module in place of Underscore, >>>>>>>>>> though the dependency is already introduced by another module, >>>>>>>>>> but we have mentioned it in the package.json file, which is >>>>>>>>>> somewhat not convincing to me. >>>>>>>>>> Lodash is more advanced than Underscore but we should pick anyone >>>>>>>>>> as it will be easy to manage. >>>>>>>>>> >>>>>>>>>> TL;DR; we cannot. >>>>>>>>> lodash is a peer dependency for react-diagrams (and some existing >>>>>>>>> modules in pgAdmin) so it will come to package.json without choice. We >>>>>>>>> cannot remove underscore because it is a dependency of backbone. Underscore >>>>>>>>> is outdated, and I cannot migrate the complete pgAdmin code. So, >>>>>>>>> I decided to go with 100/0 method. All the new codes will use lodash only >>>>>>>>> as we'll phase out underscore with time. Just like jQuery vs ReactJS. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Table dialog code is duplicate of the table node, as it was >>>>>>>>>> difficult to extend it because it was attached to the tree. >>>>>>>>>> So, we need to keep in mind that while implementing React in >>>>>>>>>> pgAdmin, the nodes should be properly detached from the tree itself, so we >>>>>>>>>> can reuse it. >>>>>>>>>> >>>>>>>>>> Yes. I agree. We need to separate out data source from UI going >>>>>>>>> forward with React. >>>>>>>>> >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Khushboo >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Mon, Dec 28, 2020 at 10:53 AM Khushboo Vashi < >>>>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Fri, Dec 25, 2020 at 4:34 PM Akshay Joshi < >>>>>>>>>>> akshay.joshi@enterprisedb.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi Khushboo, >>>>>>>>>>>> >>>>>>>>>>>> Can you please review it? >>>>>>>>>>>> >>>>>>>>>>>> On it. >>>>>>>>>>> >>>>>>>>>>>> On Fri, Dec 25, 2020 at 3:31 PM Aditya Toshniwal < >>>>>>>>>>>> aditya.toshniwal@enterprisedb.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi Hackers, >>>>>>>>>>>>> >>>>>>>>>>>>> Attached patch introduces ERD Tool(Beta) to pgAdmin. Below are >>>>>>>>>>>>> the details: >>>>>>>>>>>>> 1) Create a diagram from scratch or generate for an existing >>>>>>>>>>>>> DB. >>>>>>>>>>>>> 2) Generate "Create" DDL from the diagram. >>>>>>>>>>>>> 3) Save the diagram and resume it later. >>>>>>>>>>>>> 4) Supports basic table fields, one-to-many relationships, >>>>>>>>>>>>> many-to-many relationships, adding notes. >>>>>>>>>>>>> 5) Test cases added with 75-80% test coverage. >>>>>>>>>>>>> >>>>>>>>>>>>> Please review. >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> Thanks, >>>>>>>>>>>>> Aditya Toshniwal >>>>>>>>>>>>> pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com* >>>>>>>>>>>>> >>>>>>>>>>>>> "Don't Complain about Heat, Plant a TREE" >>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> *Thanks & Regards* >>>>>>>>>>>> *Akshay Joshi* >>>>>>>>>>>> *pgAdmin Hacker | Principal Software Architect* >>>>>>>>>>>> *EDB Postgres * >>>>>>>>>>>> >>>>>>>>>>>> *Mobile: +91 976-788-8246* >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Thanks, >>>>>>>>> Aditya Toshniwal >>>>>>>>> pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com* >>>>>>>>> >>>>>>>>> "Don't Complain about Heat, Plant a TREE" >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Thanks & Regards* >>>>>>>> *Akshay Joshi* >>>>>>>> *pgAdmin Hacker | Principal Software Architect* >>>>>>>> *EDB Postgres * >>>>>>>> >>>>>>>> *Mobile: +91 976-788-8246* >>>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Thanks, >>>>>>> Aditya Toshniwal >>>>>>> pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com* >>>>>>> >>>>>>> "Don't Complain about Heat, Plant a TREE" >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> *Thanks & Regards* >>>>>> *Akshay Joshi* >>>>>> *pgAdmin Hacker | Principal Software Architect* >>>>>> *EDB Postgres * >>>>>> >>>>>> *Mobile: +91 976-788-8246* >>>>>> >>>>> >>>>> >>>>> -- >>>>> Thanks, >>>>> Aditya Toshniwal >>>>> pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com* >>>>> >>>>> "Don't Complain about Heat, Plant a TREE" >>>>> >>>> >>>> >>>> -- >>>> *Thanks & Regards* >>>> *Akshay Joshi* >>>> *pgAdmin Hacker | Principal Software Architect* >>>> *EDB Postgres * >>>> >>>> *Mobile: +91 976-788-8246* >>>> >>> >>> >>> -- >>> Thanks, >>> Aditya Toshniwal >>> pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com* >>> >>> "Don't Complain about Heat, Plant a TREE" >>> >> >> >> -- >> *Thanks & Regards* >> *Akshay Joshi* >> *pgAdmin Hacker | Principal Software Architect* >> *EDB Postgres * >> >> *Mobile: +91 976-788-8246* >> > > > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EDB: http://www.enterprisedb.com > > -- Thanks, Aditya Toshniwal pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com* "Don't Complain about Heat, Plant a TREE" --000000000000cc9f1805b961c7d6 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dave,

On Wed, Jan 20, 2021 at 9:20 PM = Dave Page <dpage@pgadmin.org>= ; wrote:
Hi

Where's the Save Image button gone? I k= now Aditya was removing it whilst working on other things, but it's sti= ll required for phase 1 release.
It was not work= ing 100% right. :(
So I've removed it for the time being. = I'm still working on it.=C2=A0

On Mon, Jan 18, 2021 at 11:45 AM Akshay Joshi <akshay.joshi@e= nterprisedb.com> wrote:
Thanks, patch applied.

On Mon, Jan 18, 2021= at 5:08 PM Aditya Toshniwal <aditya.toshniwal@enterprisedb.com> wrot= e:
OK, So the changes have w= orked. But still failing at one more place.
Attached the patch fixes it.

On Mon, Jan 18, 2021= at 4:40 PM Akshay Joshi <akshay.joshi@enterprisedb.com> wrote:
=
Thanks, = patch applied.

On Mon, Jan 18, 2021 at 2:58 PM Aditya Toshniwal <aditya.tos= hniwal@enterprisedb.com> wrote:
Hi,

The jasmine test cases are w= orking=C2=A0fine on my local machine. The test cases are successful on jenk= ins other than on linux, not sure why.
I have made some fixes by looking at the log. Please review = and try.

On Mon, Jan 18, 2021 at 1:10 PM Akshay Joshi <akshay.joshi@enter= prisedb.com> wrote:
Thanks, patch applied.

On Mon, Jan 18, 2021= at 10:34 AM Aditya Toshniwal <aditya.toshniwal@enterprisedb.com> wro= te:
Hi Akshay,

I forgot to remove few of the dependencies which are not= required as of now (may be in future). Attached patch removes those depend= encies from package.json.

On Sat, Jan 16, 2021 at 5:08 PM Akshay Joshi= <aks= hay.joshi@enterprisedb.com> wrote:
Thanks, patch applied.

=
On Fri, Ja= n 15, 2021 at 7:01 PM Aditya Toshniwal <aditya.toshniwal@enterprisedb.com> wrote:
Hi,

I'v= e fixed the issues. You can find the comments inline.
I've= also added PropTypes for the components for increased validation.

Hi Aditya,
The functionalities and the=
 code looks good to me, however some of the comments as below:
=
  • Co= rrect the comments at some places (3 occurrences found in /erd/__init__.py) which mention Schema diff ins= tead of ERD.
Some comments in the JS/JSX file=
 regarding components/functions (For example, IconButton (forwardRef), Body=
widget etc.) would
be great help as we all are new to React. 
Done. Added comments to the compo= nents.
  • Remove the unused imports (for ex bad_request) in= /erd/__init__.py
Removed.<= /span>=C2=A0
  • Remove commented code
# req_args =3D request.args
# if ('recreate&#= 39; in req_args and
# =C2=A0 =C2=A0 req_args['recreate'] =3D=3D = '1'):
# =C2=A0 =C2=A0 connect =3D False
<= /div>
Removed.=C2=A0
  • <= font face=3D"arial, sans-serif">TableNode.jsx, below two lines can be combi= ned.
import { PortModelAl= ignment, DefaultNodeModel } from '@projectstorm/react-diagrams';import { PortWidget } from '@projectstorm/react-diagrams';<= /blockquote>
Done.=C2=A0
  • onImag= eClick function in BodyWidget.jsx is no use I think, so it should be remove= d.
I wanted to keep the cod= e as it will be used in future. Anyway, I've removed the code.
  • I got some console errors while adding/editing tables. Refer to = the attached screenshot.
I = tried but I didn't get any. Looking at the screenshot, the error is fro= m the underlying library. Can't do much in this.=C2=A0
  • In the column Edit Mode, while deleting the primary key, it gives the er= ror, which does not go away with any further modifications.
Fixed.=C2=A0
  • While gene= rating the SQL, if the server is disconnected, a proper error message shoul= d be thrown, right now some server side error is coming.
  • <= /pre>
    It will show connection lost error now. Fixe= d.=C2=A0
    • Please remove ... from the menu title (New ERD = Project(Beta)...) as it is not opening a dialog.
    Done.=C2=A0
    • For large data sets, g= enerate ERD hangs.
    It shows= the spinner and waits for the response to come from the back end. I've= used the existing table fetching code which is used at other places. I'= ;ll create an RM to improve the back end code for fetching the tables data = which will help the schema diff tool as well.
  • Opening th= e ERD panel in a new window is not working, it opens in the same tab even i= f you have set the Preference "Open in new browser tab" to True.<= /font>
  • Fixed. Added the setting in= "Tab settings".
    • No shortcut is provided to op= en the ERD Tool.
    A shortcut= is helpful if we are using it frequently. ERD tool won't be used that = frequently.=C2=A0We already have a limited number of keys available for = shortcuts. I think we should roll out without shortcut for now. If there is= a user demand for it then we can think of adding it.
    =
    • So= narQube fixes required.
    Fix= ed.=C2=A0
    Suggestion:
    While removal of the FK link, If any of the table is selected, it is= being deleted with FK link.
    Either we should warn the user OR make 2 dif= ferent buttons for FK removal and table removal as the user may be confused= if the selected table is also removed with the FK.
    <= /blockquote>
    I've added a confirmation dialog which will show the numbe= r of tables and links selected. This way user will know what he has selecte= d before deleting.
    Observations:
    Lodash has been used in = this module in place of Underscore, though the dependency is already introd= uced by another module,
    but we have mentioned it in the package.json fil= e, which is somewhat not convincing to me.
    Lodash is more advanced than = Underscore but we should pick anyone as it will be easy to manage.
    TL;DR; we cannot.
    lodash i= s a peer dependency for react-diagrams (and some existing modules in pgAdmi= n) so it will come to package.json without choice. We cannot remove undersc= ore because it is a dependency of backbone. Underscore is outdated, and I c= annot migrate the complete pgAdmin code.=C2=A0So, I decided to go with 1= 00/0 method. All the new codes will use lodash only as we'll phase out = underscore with time. Just like jQuery vs ReactJS.


    Table dialo= g code is duplicate of the table node, as it was difficult to extend it bec= ause it was attached to the tree.
    So, we need to keep in mind that while= implementing React in pgAdmin, the nodes should be properly detached from = the tree itself, so we can reuse it.
    Yes. I agree. We need to separate out data source from UI going forwar= d=C2=A0with React.

    Thanks,
    Khus= hboo


    On Mon, Dec= 28, 2020 at 10:53 AM Khushboo Vashi <khushboo.vashi@enterprisedb.com> = wrote:


    O= n Fri, Dec 25, 2020 at 4:34 PM Akshay Joshi <akshay.joshi@enterprisedb.com&g= t; wrote:
    Hi Khushboo,
    =
    Can you please review it?

    On Fri, Dec 25, 2020 at 3:31 PM Aditya Toshniwal &= lt;a= ditya.toshniwal@enterprisedb.com> wrote:
    Hi Hackers,

    Attached patch= introduces ERD Tool(Beta) to pgAdmin. Below are the details:
    <= div>1) Create a diagram from scratch or ge= nerate for an existing DB.
    3) Save the diagram and resume it later.
    4) Supports basic table field= s, one-to-many relationships, many-to-many relationships, adding notes.
    5) Test cases added with 75-= 80% test coverage.

    Please review.

    --
    Thanks,
    Aditya Toshniwal
    = pgAdmin hacker=C2=A0| Sr. Soft= ware Engineer | edbpostgres.= com
    "Don't Complain about Heat, Plant a TREE&= quot;


    --
    Thanks & Regards
    Akshay Joshi
    = pgAdmin Hacker | Principal Software Ar= chitect
    EDB Po= stgres
    Mobile: +91 976-788-8246

    <= /div>


    --
    Thanks,
    Aditya Toshniwal=
    pgAdmin hacker=C2=A0| Sr. Software Engineer | edbpostgres.com
    &quo= t;Don't Complain about Heat, Plant a TREE"


    --
    Thank= s & Regards
    Akshay Joshi
    pgAdmin Hacker | Principal Softw= are Architect
    EDB Po= stgres
    Mobile: +91 976-788-8246



    --
    Thanks,
    Aditya Toshniwal=
    pgAdmin hacker=C2=A0| Sr. Software Engineer | edbpostgres.com
    &quo= t;Don't Complain about Heat, Plant a TREE"


    --
    Thank= s & Regards
    Akshay Joshi
    pgAdmin Hacker | Principal Softw= are Architect
    EDB Po= stgres
    Mobile: +91 976-788-8246



    --
    Thanks,
    Aditya Toshniwal=
    pgAdmin hacker=C2=A0| Sr. Software Engineer | edbpostgres.com
    &quo= t;Don't Complain about Heat, Plant a TREE"


    --
    Thank= s & Regards
    Akshay Joshi
    pgAdmin Hacker | Principal Softw= are Architect
    EDB Po= stgres
    Mobile: +91 976-788-8246



    --
    Thanks,
    Aditya Toshniwal=
    pgAdmin hacker=C2=A0| Sr. Software Engineer | edbpostgres.com
    &quo= t;Don't Complain about Heat, Plant a TREE"


    --
    Thank= s & Regards
    Akshay Joshi
    pgAdmin Hacker | Principal Softw= are Architect
    EDB Po= stgres
    Mobile: +91 976-788-8246



    --


    --
    Thanks,
    Aditya Toshniwal
    pgAdmin hacker=C2=A0| Sr. Softwa= re Engineer | edbpostgres.com<= /font>
    "Don't Complain about Heat, Plant a TREE&qu= ot;
    --000000000000cc9f1805b961c7d6--