Re: pgAdmin4 - Issue of unmaintained libraries - Mailing list pgadmin-hackers

From Joao De Almeida Pereira
Subject Re: pgAdmin4 - Issue of unmaintained libraries
Date
Msg-id CAE+jjakK0nvgC+sWSzh7D4UjbQtOFBwTAL1G2vP9DUwLH2B-UA@mail.gmail.com
Whole thread Raw
In response to Re: pgAdmin4 - Issue of unmaintained libraries  (Dave Page <dpage@pgadmin.org>)
Responses Re: pgAdmin4 - Issue of unmaintained libraries
List pgadmin-hackers
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 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,
- 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

pgadmin-hackers by date:

Previous
From: Joao De Almeida Pereira
Date:
Subject: Re: [pgAdmin4][RM#3235] Code refactoring in Query tool
Next
From: Joao De Almeida Pereira
Date:
Subject: Re: [pgAdmin4][RM#3154] Update modules to latest version