Re: [pgAdmin4][Patch] Feature #1447 SSH Tunnel

2018-05-02 Thread Akshay Joshi
Hi

On Wed, May 2, 2018 at 9:05 PM, Victoria Henry  wrote:

> Hi Akshay,
>
> Thanks for sending this updated patch.  The linter and tests are all
> passing.
>
>> - utils/driver/psycopg2/server_manager.py
>>>   - Do we have Unit Tests around this?
>>
>>  No.
>
>
> In our opinion, server_manager.py and connection.py should have tests.
> Are you finding it difficult to add tests to these files?
>

   We will have to write test cases from scratch for both the files and it
will take time, there is no point keeping these important feature(SSH
Tunnel) on hold. We can create a separate task for this as we have for
utility(Backup, Maintenance, Restore) modules.

   @Dave your thoughts on this?

>
> Sincerely,
>
> Victoria & Joao
>
>
> On Wed, May 2, 2018 at 5:58 AM, Akshay Joshi <
> akshay.jo...@enterprisedb.com> wrote:
>
>> Hi Joao
>>
>>
>> On Thu, Apr 26, 2018 at 10:26 PM, Joao De Almeida Pereira <
>> jdealmeidapere...@pivotal.io> wrote:
>>
>>> Hi Akshay,
>>>
>>> Some suggestions:
>>> - browser/server_groups/servers/__init__py
>>>   This file could have been split into separate functionalities. There
>>> is a chunk of changes for connect, why not move that out? Same thing for
>>> create. Do we really need to have full integrationy tests that do a HTTP
>>> request and connect to a real database to do make sure the functionalities
>>> are working? If we isolate these into their own actions we can more easily
>>> get more coverage on the code with tests that would be much faster and
>>> directed. The big advantage of this is that by reading the tests we can
>>> understand what the functions do. Self documenting code.
>>>
>>
>> If I understood you correctly, you want separate connect and create
>> function for SSH Tunnel. If yes I don't think so we should move the SSH
>> code and make the rest of the code duplicated in two different functions.
>> For "create" function I have just added logic to pass SSH tunnel parameter
>> while creating server object, encrypt the tunnel password and send it to
>> connect method. For "connect" function encrypt the password and send it
>> connect method as parameter. There is no point for such small changes we
>> should create two separate functions.
>>
>>>
>>> - utils/driver/psycopg2.py same comments has above
>>>
>>
>>I think you are talking about "utils/driver/psycopg2/connection.py".
>> Same comments as above.
>>
>>>
>>> - browser/server_groups/servers/static/js/server.js:
>>>   - The patterm of using `m` for `model`? is a bad pattern, so why not
>>> change it?
>>>
>>
>>   Fixed.
>>
>>>   - We could extract the model creation from this file. This will allow
>>> us to add some tests around disabled methods that are a bit everywhere
>>>
>>Model creation is the main functionality of the "server.js" (or
>> any other module file), code readability wise it should be in the same
>> file. If we will do it for rest of the modules then there are so many java
>> script files where model creation is in separate file.
>>
>>   - We could also convert this file to ES6
>>>
>>
>>  I am new to this, so will need to learn first. We can create a
>> separate task to do this.
>>
>>>
>>> - utils/driver/psycopg2/server_manager.py
>>>   - Do we have Unit Tests around this?
>>>
>>
>>   No.
>>
>>>   - Maybe this SSH part could be isolated into it's own class, as it is
>>> not 100% related to the class in question. We need to use it but is is not
>>> part of the ServerManager domain
>>>
>>
>>   According to me SSH Tunnel parameters is the part of server manager
>> as we do have other parameters of Server dialog. We can isolate the SSH
>> part in other class, but most of the modules (including Server module) have
>> access to the ServerManager. If we will isolate that part then anyways
>> we will have to write wrapper functions in ServerManager which will
>> eventually call functions of new SSH class.
>>
>>   As one ServerManager object belongs to one server, similarly one
>> SSH Tunnel belongs to one server. When SSH tunnel gets created it will
>> return local bind port, where rest of the communication should be done on
>> local host and the local bind port return by the "SSHTunnelForwarder"
>> class, so that need to be in the ServerManager.
>>
>>  Considering above I have kept that logic in ServerManager.
>>
>>>
>>>
>>> - JS template. Eventually I would like to see if completely removed, and
>>> the information that we are generating using the template can be passed to
>>> the frontend via a Ajax call as an example( Do not think this is the time
>>> to do it.)
>>>
>>> - start_running_query.py
>>>  - we could enrich the tests of this functionality
>>>
>>
>>  Added one test case for SSHTunnelConnectionLost.
>>
>>>
>>>
>>> And example of naming is for example on psycopg2/connection.py
>>>
>>> mgr = self.manager
>>>
>>> How much to we win by having this variable name versus manager =
>>> self.manager or even using the self.manager?
>>>
>>
>>

[pgAdmin4][RM#3324] - Windows user unable to expand "External Tables" navigation item

2018-05-02 Thread Anthony Emengo
Hi Hackers,

Please find the attached patch to fix the RM #3324 : user cannot load
“External Tables” on the navigation pane.

The issue was that ultimately paths were not being cleaned after being
munged from the “template” input which would result in template_paths that
resembled: path//to//dir.sql. These would work on unix based systems but
lead to complication on Windows.

The following patch resolves this issue, and also included a small file
refactor to better convey developer intent.

Thanks,
Anthony
​


0001-fix-external-tables-on-windows.patch
Description: Binary data


pgAdmin 4 commit: Allow feature tests to run in Chrome headless mode.

2018-05-02 Thread Dave Page
Allow feature tests to run in Chrome headless mode.

Branch
--
master

Details
---
https://git.postgresql.org/gitweb?p=pgadmin4.git;a=commitdiff;h=59d8f6fb84e0aabc098fecf968cde3f9fcdf53b0

Modified Files
--
web/regression/feature_utils/app_starter.py | 1 -
web/regression/runtests.py  | 9 -
web/regression/test_config.json.in  | 1 +
3 files changed, 9 insertions(+), 2 deletions(-)



Re: [pgAdmin4][Patch]: Fixed RMs #1220 & #1221

2018-05-02 Thread Victoria Henry
Hi Khushboo,

Could you write tests for this change?
These files are actually apart of the ACITree refactoring patch. If this
patch was already in master the task of adding tests would be much easier.

Victoria & Joao

On Wed, May 2, 2018 at 8:33 AM, Ashesh Vashi 
wrote:

> On Wed, May 2, 2018 at 5:56 PM, Akshay Joshi <
> akshay.jo...@enterprisedb.com> wrote:
>
>> Hi Khushboo
>>
>> I have reviewed your code and looks good to me. Can we change the message
>> from "The database name is inappropriate" to some meaningful message, so
>> that user should know why it is inappropriate. If user will be able to
>> create database with "=" in name then why Backup, Maintenance and Restore
>> fails.
>>
>
> Just curious, as I understand the problem, we're not able to able to run
> pg_dump/pg_restore/psql against the database, which contains '=' in
> the name.
> Can we use PGDATABASE environment variable for them?
>
> Of course - this tools may still fail when special characters (e.g. '=')
> exists in the name of the database objects (e.g. schema, table, etc).
>
>
> --
>
> Thanks & Regards,
>
> Ashesh Vashi
> EnterpriseDB INDIA: Enterprise PostgreSQL Company
> 
>
>
> *http://www.linkedin.com/in/asheshvashi
> *
>
>>
>> On Wed, May 2, 2018 at 3:44 PM, Khushboo Vashi <
>> khushboo.va...@enterprisedb.com> wrote:
>>
>>> Hi,
>>>
>>> Please find the attached patch which will fix RMs # 1220 and #1221.
>>>
>>> If the database name contains = then the backup, maintenance and restore
>>> jobs are failing.
>>> To fix these, we will display the error message regarding inappropriate
>>> database name.
>>>
>>> Thanks,
>>> Khushboo
>>>
>>
>>
>>
>> --
>> *Akshay Joshi*
>>
>> *Sr. Software Architect *
>>
>>
>>
>> *Phone: +91 20-3058-9517Mobile: +91 976-788-8246*
>>
>
>


Re: [pgAdmin4][Patch] Feature #1447 SSH Tunnel

2018-05-02 Thread Victoria Henry
Hi Akshay,

Thanks for sending this updated patch.  The linter and tests are all
passing.

> - utils/driver/psycopg2/server_manager.py
>>   - Do we have Unit Tests around this?
>
>  No.


In our opinion, server_manager.py and connection.py should have tests.  Are
you finding it difficult to add tests to these files?

Sincerely,

Victoria & Joao


On Wed, May 2, 2018 at 5:58 AM, Akshay Joshi 
wrote:

> Hi Joao
>
>
> On Thu, Apr 26, 2018 at 10:26 PM, Joao De Almeida Pereira <
> jdealmeidapere...@pivotal.io> wrote:
>
>> Hi Akshay,
>>
>> Some suggestions:
>> - browser/server_groups/servers/__init__py
>>   This file could have been split into separate functionalities. There is
>> a chunk of changes for connect, why not move that out? Same thing for
>> create. Do we really need to have full integrationy tests that do a HTTP
>> request and connect to a real database to do make sure the functionalities
>> are working? If we isolate these into their own actions we can more easily
>> get more coverage on the code with tests that would be much faster and
>> directed. The big advantage of this is that by reading the tests we can
>> understand what the functions do. Self documenting code.
>>
>
> If I understood you correctly, you want separate connect and create
> function for SSH Tunnel. If yes I don't think so we should move the SSH
> code and make the rest of the code duplicated in two different functions.
> For "create" function I have just added logic to pass SSH tunnel parameter
> while creating server object, encrypt the tunnel password and send it to
> connect method. For "connect" function encrypt the password and send it
> connect method as parameter. There is no point for such small changes we
> should create two separate functions.
>
>>
>> - utils/driver/psycopg2.py same comments has above
>>
>
>I think you are talking about "utils/driver/psycopg2/connection.py".
> Same comments as above.
>
>>
>> - browser/server_groups/servers/static/js/server.js:
>>   - The patterm of using `m` for `model`? is a bad pattern, so why not
>> change it?
>>
>
>   Fixed.
>
>>   - We could extract the model creation from this file. This will allow
>> us to add some tests around disabled methods that are a bit everywhere
>>
>Model creation is the main functionality of the "server.js" (or
> any other module file), code readability wise it should be in the same
> file. If we will do it for rest of the modules then there are so many java
> script files where model creation is in separate file.
>
>   - We could also convert this file to ES6
>>
>
>  I am new to this, so will need to learn first. We can create a
> separate task to do this.
>
>>
>> - utils/driver/psycopg2/server_manager.py
>>   - Do we have Unit Tests around this?
>>
>
>   No.
>
>>   - Maybe this SSH part could be isolated into it's own class, as it is
>> not 100% related to the class in question. We need to use it but is is not
>> part of the ServerManager domain
>>
>
>   According to me SSH Tunnel parameters is the part of server manager
> as we do have other parameters of Server dialog. We can isolate the SSH
> part in other class, but most of the modules (including Server module) have
> access to the ServerManager. If we will isolate that part then anyways we
> will have to write wrapper functions in ServerManager which will
> eventually call functions of new SSH class.
>
>   As one ServerManager object belongs to one server, similarly one
> SSH Tunnel belongs to one server. When SSH tunnel gets created it will
> return local bind port, where rest of the communication should be done on
> local host and the local bind port return by the "SSHTunnelForwarder"
> class, so that need to be in the ServerManager.
>
>  Considering above I have kept that logic in ServerManager.
>
>>
>>
>> - JS template. Eventually I would like to see if completely removed, and
>> the information that we are generating using the template can be passed to
>> the frontend via a Ajax call as an example( Do not think this is the time
>> to do it.)
>>
>> - start_running_query.py
>>  - we could enrich the tests of this functionality
>>
>
>  Added one test case for SSHTunnelConnectionLost.
>
>>
>>
>> And example of naming is for example on psycopg2/connection.py
>>
>> mgr = self.manager
>>
>> How much to we win by having this variable name versus manager =
>> self.manager or even using the self.manager?
>>
>
>Fixed. Replace "mgr" with "manager" almost at 69 places in the file.
>
>Attached is the modified patch. Please review it.
>
>>
>>
>> This is not for you in specific, but for @hackers in general:
>> The book https://www.amazon.com/dp/0132350882/
>>  is a
>> pretty nice book that gives you an introduction to clean code, that is self
>> documenting and that is much easily maintained.
>>
>> Thanks
>> Joao
>>
>> On Thu, Apr 26, 2018 at 3:44 AM Akshay Joshi 

Re: [pgAdmin4][Patch]: Fixed RMs #1220 & #1221

2018-05-02 Thread Ashesh Vashi
On Wed, May 2, 2018 at 5:56 PM, Akshay Joshi 
wrote:

> Hi Khushboo
>
> I have reviewed your code and looks good to me. Can we change the message
> from "The database name is inappropriate" to some meaningful message, so
> that user should know why it is inappropriate. If user will be able to
> create database with "=" in name then why Backup, Maintenance and Restore
> fails.
>

Just curious, as I understand the problem, we're not able to able to run
pg_dump/pg_restore/psql against the database, which contains '=' in
the name.
Can we use PGDATABASE environment variable for them?

Of course - this tools may still fail when special characters (e.g. '=')
exists in the name of the database objects (e.g. schema, table, etc).


--

Thanks & Regards,

Ashesh Vashi
EnterpriseDB INDIA: Enterprise PostgreSQL Company



*http://www.linkedin.com/in/asheshvashi
*

>
> On Wed, May 2, 2018 at 3:44 PM, Khushboo Vashi <
> khushboo.va...@enterprisedb.com> wrote:
>
>> Hi,
>>
>> Please find the attached patch which will fix RMs # 1220 and #1221.
>>
>> If the database name contains = then the backup, maintenance and restore
>> jobs are failing.
>> To fix these, we will display the error message regarding inappropriate
>> database name.
>>
>> Thanks,
>> Khushboo
>>
>
>
>
> --
> *Akshay Joshi*
>
> *Sr. Software Architect *
>
>
>
> *Phone: +91 20-3058-9517Mobile: +91 976-788-8246*
>


Re: [pgAdmin4][Patch]: Fixed RMs #1220 & #1221

2018-05-02 Thread Akshay Joshi
Hi Khushboo

I have reviewed your code and looks good to me. Can we change the message
from "The database name is inappropriate" to some meaningful message, so
that user should know why it is inappropriate. If user will be able to
create database with "=" in name then why Backup, Maintenance and Restore
fails.

On Wed, May 2, 2018 at 3:44 PM, Khushboo Vashi <
khushboo.va...@enterprisedb.com> wrote:

> Hi,
>
> Please find the attached patch which will fix RMs # 1220 and #1221.
>
> If the database name contains = then the backup, maintenance and restore
> jobs are failing.
> To fix these, we will display the error message regarding inappropriate
> database name.
>
> Thanks,
> Khushboo
>



-- 
*Akshay Joshi*

*Sr. Software Architect *



*Phone: +91 20-3058-9517Mobile: +91 976-788-8246*


pgAdmin 4 commit: Python 3 fixes

2018-05-02 Thread Dave Page
Python 3 fixes

Branch
--
master

Details
---
https://git.postgresql.org/gitweb?p=pgadmin4.git;a=commitdiff;h=f0b6fb0e5d0b53218ecdeba228243aed12c2edba

Modified Files
--
pkg/mac/build.sh | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)



Re: [pgadmin4][patch] Initial patch to decouple from ACI Tree

2018-05-02 Thread Dave Page
On Wed, May 2, 2018 at 6:30 AM, Ashesh Vashi 
wrote:

> On Mon, Apr 30, 2018 at 11:27 PM, Joao De Almeida Pereira <
> jdealmeidapere...@pivotal.io> wrote:
>
>> You've lost us with the last reply. We'd love to know what we'd have to
>> do to get this patch committed. You mention that "some things are missing
>> at some places" and that "there are missing bits".
>>
> I've already mentioned few of them in the earlier mails about them.
>
>> Please note that this is not a complete solution that we've offered so
>> far.
>>
> I know and, hence - asked for your understanding of the code (and, asked
> for the TODOs.)
>
>> But only one step in a grander effort to effect a more cleaner, more
>> maintainable, more testable, code base.
>>
> Yes - we all want cleaner, maintainable, and testable code base.
> As per my understading comments are required for better understanding, and
> makes the code more maintainable.
>
> But - if we're going to change everything in one go, it is difficult to
> understand the changes.
> Let's avoid mix match multiple things in a single patch. And, concerntrate
> one functionality at a time.
>

So if I understand you correctly, your concerns are:

- The changes should cover specific units of code at once.

- There should be high-level comments to help guide new or less experienced
developers.

The first I agree with - and I think (if I understand correctly, so do Joao
and Anthony). That's why they've concentrated on itemData first.

The second I also agree with. It's one thing being able to follow a simple
function without comments, but that doesn't give you an easy to understand
high level view of how it all ties together without non-trivial amounts of
work. I'll be the first to admit that we're not the best at that either,
but we do try, and I'd like us to get better.


>
> -- Thanks, Ashesh
>
>>
>> Thanks
>> Joao and Anthony.
>>
>> On Mon, Apr 30, 2018 at 11:45 AM Ashesh Vashi <
>> ashesh.va...@enterprisedb.com> wrote:
>>
>>> On Mon, Apr 30, 2018 at 9:07 PM, Dave Page  wrote:
>>>


 On Mon, Apr 30, 2018 at 4:33 PM, Ashesh Vashi <
 ashesh.va...@enterprisedb.com> wrote:

>
> On Mon, Apr 30, 2018 at 8:58 PM, Anthony Emengo 
> wrote:
>
>> I was expecting a separate layer between the tree implementation, and
>>> aciTree adaptor.
>>> Please find the patch for the example.
>>> It will separate the two layers, and easy to replace with the new
>>> implementation in future.
>>
>>
>> In general, we want defer the separation of the layers for now. Even
>> though we might assume that this is the direction we want to go in. It's
>> simply too early to be making such an architectural leap. For right now, 
>> we
>> just know that we need the decoupling, but don't know what if we'd need 
>> the
>> 2 layers *as implemented*. The principle we're adhering to here is
>> the Last Responsible Moment principle, which states that you only make 
>> the
>> changes that you feel is necessary for the given problems you're facing:
>> https://blog.codinghorror.com/the-last-responsible-moment/
>>
>> I would not like to see that changes in this patch.
>>> I would like us to come up with the actual design about the hot
>>> pluggability before going in this direction.
>>
>>
>> In our point of view these 2 changes are not related. One thing is
>> the internal code organization of the application, other thing is 
>> allowing
>> third party to drop code in the application and it just work. These 2
>> should be talked separately, but the hot pluggability is not something 
>> that
>> will be address by this work we are doing right now.
>>
> Neither - it should be part of this change.
> It should be addressed separately, and discussed.
>

 I agree. As long as this work doesn't make the pluggability problem
 worse, that problem should be considered separately.

 So given Anthony's comments, are you happy with this patch?

>>> I liked the design so far.
>>> But - as Khushboo mentioned ealier - it is missing at some places.
>>> I had to read through the code to understand the execution flow for some.
>>>
>>> And, there is still a lot missing bits, and pieces to consider for
>>> commit in the repo.
>>>
>>> -- Thanks, Ashesh
>>>


>
> -- Thanks, Ashesh
>
>>
>> Anthony && Joao
>>
>> On Mon, Apr 30, 2018 at 11:03 AM, Ashesh Vashi <
>> ashesh.va...@enterprisedb.com> wrote:
>>
>>>
>>>
>>>
>>> On Mon, Apr 30, 2018 at 8:30 PM, Ashesh Vashi <
>>> ashesh.va...@enterprisedb.com> wrote:
>>>
 On Sat, Apr 28, 2018 at 3:55 AM, Joao De Almeida Pereira <
 jdealmeidapere...@pivotal.io> wrote:

> Hi Hackers,
> As you are aware we kept on working on the patch, so we are

Re: [pgAdmin4][Patch]: RM 3284 - F5 key not working consistently

2018-05-02 Thread Akshay Joshi
Thanks patch applied.

On Wed, May 2, 2018 at 11:16 AM, Khushboo Vashi <
khushboo.va...@enterprisedb.com> wrote:

> Hi Akshay,
>
> Please find the attached patch which fixes the linter issues.
>
> Thanks,
> Khushboo
>
> On Wed, May 2, 2018 at 11:10 AM, Akshay Joshi <
> akshay.jo...@enterprisedb.com> wrote:
>
>> Hi Joao
>>
>> Linter fails for 'parse_shortcut_value_spec.js' file:
>>
>> $ node pga_eslint.js
>>
>>
>> /Users/akshay/Development/pgadmin4/web/regression/javascript
>> /parse_shortcut_value_spec.js
>>
>>13:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>14:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>21:26  error  Missing trailing comma
>> comma-dangle
>>
>>22:12  error  Missing trailing comma
>> comma-dangle
>>
>>26:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>27:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>34:26  error  Missing trailing comma
>> comma-dangle
>>
>>35:12  error  Missing trailing comma
>> comma-dangle
>>
>>39:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>40:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>47:25  error  Missing trailing comma
>> comma-dangle
>>
>>48:12  error  Missing trailing comma
>> comma-dangle
>>
>>52:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>53:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>60:25  error  Missing trailing comma
>> comma-dangle
>>
>>61:12  error  Missing trailing comma
>> comma-dangle
>>
>>65:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>66:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>73:25  error  Missing trailing comma
>> comma-dangle
>>
>>74:12  error  Missing trailing comma
>> comma-dangle
>>
>>78:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>79:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>86:25  error  Missing trailing comma
>> comma-dangle
>>
>>87:12  error  Missing trailing comma
>> comma-dangle
>>
>>91:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>92:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>99:25  error  Missing trailing comma
>> comma-dangle
>>
>>   100:12  error  Missing trailing comma
>> comma-dangle
>>
>>   104:4   error  Expected indentation of 2 spaces but found 3  indent
>>
>>   105:7   error  Expected indentation of 5 spaces but found 6  indent
>>
>>   112:25  error  Missing trailing comma
>> comma-dangle
>>
>>   113:12  error  Missing trailing comma
>> comma-dangle
>>
>>
>> *✖ 32 problems (32 errors, 0 warnings)*
>>
>>
>>
>>
>> On Mon, Apr 30, 2018 at 8:10 PM, Joao De Almeida Pereira <
>> jdealmeidapere...@pivotal.io> wrote:
>>
>>> Hi there,
>>>
>>> We weren't able to see these functions get called. Perhaps we're missing
>>> something.
>>>
>>> Thanks,
>>> Joao && Anthony
>>>
>>> On Mon, Apr 30, 2018 at 2:48 AM Khushboo Vashi <
>>> khushboo.va...@enterprisedb.com> wrote:
>>>
 Hi Joao,

 The patches look good however I have noticed that you
 deleted attachShortcut and attachDialogTabNavigatorShortcut functions
 from keyboard.js, any specific reason for that?

 Thanks,
 Khushboo

 On Fri, Apr 27, 2018 at 3:11 AM, Joao De Almeida Pereira <
 jdealmeidapere...@pivotal.io> wrote:

> Hi Khushboo,
>
> I did some changes on your patch:
>  0001 - Your original patch
>  0002 - Convert keyboard.js to ES6
>  0003 - Refactoring of the keyboard.js file(some one letter variables
> and other code)
>
>
>
> Thanks
> Joao
>
> On Thu, Apr 26, 2018 at 5:34 AM Khushboo Vashi <
> khushboo.va...@enterprisedb.com> wrote:
>
>> Hi,
>>
>> Please find the attached patch to fix the RM #3284 : F5 key not
>> working consistently.
>>
>> - Added the configurable keyboard shortcut (default F5) to refresh
>> the browser tree nodes.
>>
>>
>> Thanks,
>> Khushboo
>>
>

>>
>>
>> --
>> *Akshay Joshi*
>>
>> *Sr. Software Architect *
>>
>>
>>
>> *Phone: +91 20-3058-9517Mobile: +91 976-788-8246*
>>
>
>


-- 
*Akshay Joshi*

*Sr. Software Architect *



*Phone: +91 20-3058-9517Mobile: +91 976-788-8246*


pgAdmin 4 commit: F5 key should work to refresh Browser tree. Fixes #32

2018-05-02 Thread Akshay Joshi
F5 key should work to refresh Browser tree. Fixes #3284
Refactoring by:  Joao Pedro De Almeida Pereira

Branch
--
master

Details
---
https://git.postgresql.org/gitweb?p=pgadmin4.git;a=commitdiff;h=732d8d903dc76eef22b83a8eb01ed754ba877f31
Author: Khushboo Vashi 

Modified Files
--
.../browser/register_browser_preferences.py|  15 +
web/pgadmin/browser/static/js/keyboard.js  | 458 ++---
web/pgadmin/static/js/utils.js |   2 +-
.../javascript/parse_shortcut_value_spec.js| 117 ++
4 files changed, 357 insertions(+), 235 deletions(-)