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 1f3SFJ-0005uu-Fl for pgadmin-hackers@arkaria.postgresql.org; Tue, 03 Apr 2018 20:09:33 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1f3SFI-0002cv-7I for pgadmin-hackers@arkaria.postgresql.org; Tue, 03 Apr 2018 20:09: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 1f3SFH-0002cl-T5 for pgadmin-hackers@lists.postgresql.org; Tue, 03 Apr 2018 20:09:32 +0000 Received: from mail-io0-x242.google.com ([2607:f8b0:4001:c06::242]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1f3SFC-0008QH-Dp for pgadmin-hackers@postgresql.org; Tue, 03 Apr 2018 20:09:30 +0000 Received: by mail-io0-x242.google.com with SMTP id e79so23535232ioi.7 for ; Tue, 03 Apr 2018 13:09:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pivotal-io.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=lwEY3WihLqtvGOh8YoLImNno2OmJEL/Tg5FE6XTVVns=; b=wpPPfb5NFhcIuyxWFh/F95V2TMc+8N4RTb8cXH7xocHzb9quaCuSLAms1IuWH+wTvH xSC/nssol3318dLT+uXYxmVZHLqMirDIy0VgZ8P551YfRhQE+PIJfLqf9QN5KpItk3Xy uZENu7ELWxiNj8wmsdyGFXVV6yE2Q9T3tjWEqErhqioBlsSCdZhXlo7A9R5VX+RKNUTl YNKMNm42DEjggmA2I3rJZR8SK6aSzQje7WHIH7dRN16AJgMbUgNLN0pUM+0EWox08FJX uSi/873ZZgoMXZSS2Mzs7zol9GGPhIiiaDgGCTZGkq4/RyOr+HBcrXPf8SU6dIxmKxRt pCBw== 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=lwEY3WihLqtvGOh8YoLImNno2OmJEL/Tg5FE6XTVVns=; b=X2VkqsTNj17GTC59SiJZ7cV5RuYaB9mRjy2N5fYEuPfOGz4Pc557BQ7rQAgO3THJBk iohJC1/pha2F26tzTKbYiC9f0MwV2iVn6zmtpKmE+Z5RcyGxGETPXyYZgWkRoAtm5fHC Uzsd8iz2mHQ1Q/E56vhGP7h2WUx/v6YBprSs+4BqZ67n+nK/1SWoZfARzdUcVnP+F2TI XURmLWuc7vK1Rd/Ae5o2SBOUhJxoR+vx2S6lnYS1MDtsQfxdBRCI0Vso2T4Q3G1fwQmS QrvljDi+ky/z/gtG7GoZJRB3UHgDoVuwa5OLuah5hSst2FVOFEIygaJnYtFlS6zvmTEJ hjsw== X-Gm-Message-State: AElRT7GDqVHUL7zbBsKp4AQtE6qcO7f0HzI1J8DeL1iEtXWe1nVW4C/S rDm5aSgsz2u2bhpzbWR1CQBw0xMniZMBrR7KaMTVqA== X-Google-Smtp-Source: AIpwx485P6vBV5+Q3BuCUaSIfIi3BThncGGLI7UgKSC326S1GjM/jLvM07TKYpucZ5F4NHucm5HuB7YxtLhY7RDZapk= X-Received: by 10.107.143.211 with SMTP id r202mr13910696iod.185.1522786163805; Tue, 03 Apr 2018 13:09:23 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Joao De Almeida Pereira Date: Tue, 03 Apr 2018 20:09:13 +0000 Message-ID: Subject: Re: pgAdmin4 - Issue of unmaintained libraries To: Dave Page Cc: Murtuza Zabuawala , pgadmin-hackers Content-Type: multipart/alternative; boundary="94eb2c05a4bc5cf9fe0568f7481e" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --94eb2c05a4bc5cf9fe0568f7481e Content-Type: text/plain; charset="UTF-8" Hi Dave, On Tue, Apr 3, 2018 at 8:32 AM Dave Page wrote: > Hi > > On Tue, Apr 3, 2018 at 1:22 PM, Murtuza Zabuawala < > murtuza.zabuawala@enterprisedb.com> wrote: > >> Hi Team, >> >> As we are heavily dependent on 3rd party JS libraries and some of them >> are no longer actively maintained by their respective authors (Last commit >> was approximate year ago). >> >> Some of the core libraries which are no longer actively maintained are, >> - Backbone >> - wcDocker >> - aciTree >> - Backgrid /Backform >> - jQuery 1.x >> version >> >> What would be our future plans when it comes to fixing the issues in the >> core libraries or adding new feature? >> (Ref: Email thread >> >> ) >> > > Well jQuery can be updated can't it? > > wcDocker is, as far as I'm aware, the only library of it's kind. Unless > something else has surpassed it in the last couple of years, there's > nothing even close in functionality to it. aciTree was in a similar > position, though Joao and team think there may be other candidates now. > About the wcDocker, in fact it as a lot of features. In our User Interviews we didn't find any person that was using features like dragging and creating new panels. The only feature that we see people using was the tabs. So if the only feature that people use of wcDocker is really tabs there are some other libraries like: react-tabs or react-tabtab (Draggable tabs) or rc-tabs(Static tabs, with 52k Downloads last 7 days). For ACITree we already started the process of isolating it from the application, This will allow us in the future to replace it with something that is more up to date. > As for Backbone/Backgrid/Backform, I don't know. Backbone could maybe be > replaced with React eventually. Not sure about the others. > > In any case, this is likely to be a problem on an ongoing basis - and I > think we need to consider the future on a case by case basis when > necessary. It may mean moving to a different library, or it may mean > forking components, or it may be the upstream may have not had any commits > for a long time simply because there is no development happening right now, > but bugs may still be fixed. > > We understand and agree that this should be handled case-by-case instead of replacing everything at once since it is not feasible to do a complete rewrite of the application. But we also think it's hard to build new features on top of libraries that are no longer supported. We don't really want to fork a library either because we'll become responsible for maintaining that library, which means maintaining more code. We want to use libraries that are actively maintained so we can get security patches, new features, etc. Also, if we need a new functionality on a specific library, we can, for example, open an issue and the maintainers of that library can implement it for us or we can create a pull request for them to merge. Thanks, Victoria & Joao > -- > Dave Page > Blog: http://pgsnake.blogspot.com > Twitter: @pgsnake > > EnterpriseDB UK: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > --94eb2c05a4bc5cf9fe0568f7481e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Dave,

On Tue, Apr 3, 2018 at 8:32 AM Dave Page <dpage@pgadmin.org> wrote:
Hi

=
On Tue, Apr 3, 2018 at 1:22 PM, Murtuza Zabuawal= a <murtuza.zabuawala@enterprisedb.com> wrot= e:
Hi Team,

As we are heavily depend= ent on 3rd party JS libraries and some of them are no longer actively maint= ained by their respective authors (Last commit was approximate year ago).
<= br>
= Some of the core libraries which are no longer actively maintained are,
- Backgrid/Backform
- jQuery 1= .x version

What would be our future plans when it comes to fixing the issu= es in the core libraries or adding new feature?
(Ref:=C2=A0Email thread)
=

Well jQuery can be updated= can't it?

wcDocker is, as far as I'm awar= e, the only library of it's kind. Unless something else has surpassed i= t in the last couple of years, there's nothing even close in functional= ity to it. aciTree was in a similar position, though Joao and team think th= ere may be other candidates now.
<= br>
About the wcDocker, in fact it as a lot of features. In our U= ser Interviews we didn't find any person that was using features like d= ragging and creating new panels. The only feature that we see people using = was the tabs. So if the only feature that people use of wcDocker is really = tabs there are some other libraries like:=C2=A0
react-tabs or=C2= =A0react-tabtab (Draggable tabs) or rc-tabs(Static tabs, with 52k Downloads= last 7 days).=C2=A0

For ACITree we already starte= d the process of isolating it from the application, This will allow us in t= he future to replace it with something that is more up to date.
<= br>

As for Backbone/Bac= kgrid/Backform, I don't know. Backbone could maybe be replaced with Rea= ct eventually. Not sure about the others.

In any c= ase, this is likely to be a problem on an ongoing basis - and I think we ne= ed to consider the future on a case by case basis when necessary. It may me= an moving to a different library, or it may mean forking components, or it = may be the upstream may have not had any commits for a long time simply bec= ause there is no development happening right now, but bugs may still be fix= ed.=C2=A0


We understand= and agree that this should be handled case-by-case instead of replacing ev= erything at once since it is not feasible to do a complete rewrite of the a= pplication.=C2=A0 But we also think it's hard to build new features on = top of libraries that are no longer supported.=C2=A0 We don't really wa= nt to fork a library either because we'll become responsible for mainta= ining that library, which means maintaining more code.=C2=A0 We want to use= libraries that are actively maintained so we can get security patches, new= features, etc.=C2=A0 Also, if we need a new functionality on a specific li= brary, we can, for example, open an issue and the maintainers of that libra= ry can implement it for us or we can create a pull request for them to merg= e.

Thanks,

Victoria &= Joao
=C2=A0
--94eb2c05a4bc5cf9fe0568f7481e--