Ashesh Vashi d5da26876b Resolved few issues (with some improvements) with existing nodes.
This commit takes care of the following issues/improvements.
* Adding missing imports for unauthorised in database module
* Node under Servers Nodes (i.e. Databases, tablespaces, roles nodes)
  need to be inherited from PGChildNodeView (and, not from NodeView) for
  adding server version check for their children.
* Adding statistics for database, and tablespaces in its node (not, yet
  in UI)
* Renaming the camel case methods with proper name.
  (i.e. getSQL -> get_sql, getNewSQL -> get_new_sql, etc.)
* Fixed the functions going beyond the text limit (column: 80) in
  Databases, Roles & Tablespaces modules.
* Fixed the node method of Database module, which was not tested ever.
* We do not need separate SQL template for fetching the name (i.e.
  get_name.sql), using the 'nodes.sql' for the same.
* Optimise the query for fetching ACLs for the database node, we didn't
  require to join certain tables, while fetching only the ACLs.
* Introduced the list of the ACLs (regular and default ACLs for
  different type) supported by each version [Databases Module].
* Renamed the templates 'get_nodes.sql' to' nodes.sql' to make it
  consistent with other modules.
* Removed the checks for the authentication table use, as we don't need
  to expose the password to the users (even the encrypted MD5). Using
  the pg_roles view always for fetching roles/users information now.
* Resolved some typos in unreachable (specially the exceptions
  catchment area.)
* Logging the exception in the application.
* Using qtLiteral, qtIdent properly in the templates (do not assume
  about the types of data.)
* Using tsid as identifier instead of did for the tablespaces.
* Using nodes method of tablespace view for fetching individual node
  information.
* Removing the hardcoded node information from the 'parse_priv_to_db'
  function, and pass on allowed ACLs by the caller nodes.
* Using 'nodes.sql' to fetch name of the template instead of writing
  that in the delete.sql template, which is definitely wrong place to
  fetch the name of the object. [Tablespace Module]
2016-02-22 11:44:24 +05:30
2016-01-04 23:23:16 +05:30
2016-01-18 14:48:14 +00:00
2016-01-27 15:59:54 +01:00

pgAdmin 4
=========

pgAdmin 4 is a rewrite of the popular pgAdmin3 management tool for the
PostgreSQL (http://www.postgresql.org) database. 

At present, it is an experimental/proof of concept project. Use at your own
risk, and don't blame us if it breaks anything!

Architecture
------------

pgAdmin 4 is being written as a web application in Python, using jQuery and 
Bootstrap for the client side processing and UI. On the server side, Flask is
being utilised.

Although developed using web technologies, we intend for pgAdmin 4 to be usable
either on a web server using a browser, or standalone on a workstation. The
runtime/ subdirectory contains a QT based runtime application intended to allow
this - it is essentially a browser and Python interpretor in one package which
will be capable of hosting the Python application and presenting it to the user
as a desktop application.

Building
--------

To build the runtime, the following packages must be installed:

- QT 4.6 or above (older versions may work, but haven't been tested).
- Python 2.6 or above.

Assuming both qmake and python-config are in the path:

$ cd $PGADMIN4_SRC/runtime
$ qmake
Project MESSAGE: Building for QT5+...
$ make
...

On Linux, an executable called 'pgAdmin4' will be built, and on Mac OS X, an
app bundle called pgAdmin4.app will be created.

To build the runtime on a Windows system, export PYTHON_HOME and PYTHON_VERSION 
variables in the System environment. Specify the PYTHON_VERSION with the major 
and minor number. Do not specify micro level version.
For example, given a Python version of A.B.C; A - Major number, B - Minor number, 
C - Micro level (Bug fix releases).

If Python version is 2.7.2 than specify PYTHON_VERSION=27

 e.g. PYTHON_HOME=C:\Python27\
      PYTHON_VERSION=27

Support
-------

pgAdmin 4 is completely experiemental and unsupported!

Project info
------------

The source code repository can be found here:

http://git.postgresql.org/gitweb/?p=pgadmin4.git;a=summary

A Redmine project for pgAdmin 4 can be found at the address below. A PostgreSQL
community account is required to access this site. Please note that at present
only project developers can log bug and feature requests:

https://redmine.postgresql.org/projects/pgadmin4

If you wish to discuss pgAdmin 4, or contribute to the project, please use the
pgAdmin Hackers mailing list:

pgadmin-hackers@postgresql.org

-- 
Dave Page
pgAdmin Project Lead
Description
pgAdmin is the most popular and feature rich Open Source administration and development platform for PostgreSQL, the most advanced Open Source database in the world.
Readme 324 MiB
Languages
Python 62.2%
JavaScript 33.9%
PLpgSQL 1.8%
Shell 0.7%
TypeScript 0.5%
Other 0.8%