Commit Graph

277 Commits

Author SHA1 Message Date
Akshay Joshi
561ee7556f Update version for release 2019-01-07 16:14:58 +05:30
Dave Page
b5c7a108ab Put the appname back how it should be! 2019-01-04 10:54:35 +00:00
Dave Page
d6778aa915 Bump version prior to 4.0 2019-01-04 10:53:10 +00:00
Dave Page
d7da8be486 Make the upgrade check key configurable. 2019-01-02 12:56:39 +00:00
Murtuza Zabuawala
e23d307c56 Update copyright notices for 2019 2019-01-02 15:54:12 +05:30
Dave Page
e2df00fc05 Use the standard copyright string. 2018-12-20 10:58:31 +00:00
Akshay Joshi
527e084ef7 Bump version number for release 2018-11-26 15:35:26 +05:30
Dave Page
29ed7ec881 Fix standalone setup script execution. 2018-11-05 13:39:43 +00:00
Akshay Joshi
d97431cb4f Bump version number for release. 2018-10-29 22:29:07 +05:30
Akshay Joshi
7144db7f5a Cleanup session files periodically. Fixes #3674 2018-10-09 11:34:13 +01:00
Dave Page
c092495b7a Bump version number for release. 2018-10-01 10:25:19 +01:00
Dave Page
61f00a0cbb Update versions for 3.3. 2018-09-03 10:11:34 +01:00
Isaias Sanchez
2eac2f43ac Add a Spanish translation. Fixes #3553 2018-08-08 17:17:26 +01:00
Akshay Joshi
7479467a54 Update version and message catalog for release. 2018-08-06 16:15:11 +05:30
Akshay Joshi
c8c5f83dfe Add support to save and clear SSH Tunnel password. Fixes #3511 2018-08-06 15:56:46 +05:30
Aditya Toshniwal
cb8a288f85 Added version number for URL's to ensure that files are only cached on a per-version basis. Fixes #2136. 2018-08-06 15:21:10 +05:30
Dave Page
d7eb41fff4 Include a cacert file when needed for the upgrade check. Fixes #3185 2018-07-23 16:15:58 +01:00
Dave Page
58ef723476 SESSION_SKIP_PATHS should be set before we load local or distro config files. 2018-07-23 15:44:54 +01:00
Ioseph Kim
c7325bea93 Add a Korean translation. 2018-07-12 10:02:54 +01:00
Aditya Toshniwal
82d77c4608 Don't create a session when the /misc/ping test endpoint is called. Fixes #3371 2018-07-05 11:12:03 +01:00
Dave Page
f04b2e33b5 Prep for 3.1 release. 2018-06-26 11:13:46 +01:00
Akshay Joshi
28126a0a0d Fixed pep8 issue for last commit. 2018-05-18 11:30:40 +05:30
Akshay Joshi
fb0c322ccf Correct the logic to set the SUPPORT_SSH_TUNNEL flag, if the flag is set the False in local config file, then we should not override it. 2018-05-18 11:26:11 +05:30
Murtuza Zabuawala
a68dac97c4 Set SESSION_COOKIE_SAMESITE='Lax' per Flask recommendation to prevents sending cookies with CSRF-prone requests from external sites, such as submitting a form. Fixes #3342 2018-05-09 14:04:50 +01:00
Dave Page
554a199fd2 Bump version to avoid confusion 2018-05-04 13:52:24 +01:00
Akshay Joshi
b7fb01ab04 Add support for SSH tunneled connections. Fixes #1447 2018-05-04 11:27:27 +01:00
Khushboo Vashi
413709fc78 Simplify cookie domain/path settings, per discussion. Instead of trying to be smart, just let the user specify them in the config, e.g.
COOKIE_DEFAULT_DOMAIN = None
SESSION_COOKIE_DOMAIN = None
2018-03-23 10:14:02 +00:00
Dave Page
6668d5eb93 Bump version for release. 2018-03-21 10:48:52 +00:00
Khushboo Vashi
534f1f35fe Appropriately set the cookie path. Fixes #3197 2018-03-19 17:09:19 +00:00
Fred Escallier
6c59563afa Add a French translation. Fixes #3184 2018-03-15 06:58:39 -04:00
Joao Pedro De Almeida Pereira
3a6994f719 Final PEP-8 fixes 2018-03-08 09:33:43 +00:00
Murtuza Zabuawala
abf0b1a7ae Allow admins to disable the use of Gravatar if they choose. Fixes #3037 2018-03-07 16:35:33 +00:00
Dave Page
2706d9cd8e Bump the version to 3.0, per discussion on the mailing lists 2018-02-05 15:38:20 +00:00
Murtuza Zabuawala
393ce53d2d Fix PEP8 issues in the Tools module. Fixes #3063 2018-01-26 16:54:21 +00:00
Dave Page
f1e39dd20c Update version number for release. 2018-01-10 09:55:13 +00:00
Dave Page
89821c0d19 Update copyright notices for 2018. 2018-01-05 10:42:50 +00:00
Dave Page
d44328664a Bump version for some dev builds. 2017-12-18 10:35:58 +00:00
Dave Page
10c8befb71 Illustrate how to set the default mail sender name. 2017-11-28 09:29:31 +00:00
Alexander Lakhin
87549e0936 Add a Russian translation 2017-10-31 09:09:00 +00:00
Dave Page
bc0320d21e Add a Japanese translation created by:
Junichi Tado
Nozomi Amzai
Kouske Kida
2017-10-27 14:00:09 +02:00
Dave Page
d57072b156 Bump version number for release. 2017-09-29 16:00:21 +01:00
Ashesh Vashi
9c6c32e936 Resolved the logo issue.
For some unknown reason, font-mfizz was showing the slonik icon in
italic. Even after upgrading it to the latest version of font-mfizz, the
problem was not resolved.

So - instead of using the vector font, using the PostgreSQL SVG logo as
the application icon, and documentation link on dashboard now.
2017-09-29 11:07:26 +05:30
Dave Page
5ae681f2ba Bump version for RC2 release. 2017-09-18 16:15:13 +01:00
Dave Page
4b5b3195c4 Bump the build suffix in preparation for release. 2017-09-11 10:04:20 +01:00
Teng Zhang
46c5df4e7b Greenplum specific DDL and Dashboard display changes.
Initial patch by Sarah McAlear<smcalear@pivotal.io>.
2017-08-25 17:53:03 +05:30
Dave Page
f195b18f2d Ship with pre-configured paths that can work in both Server and Desktop modes out of the box. Fixes #2662
Ship the web code using server mode with appropriate paths by default and enable the runtime to override the mode, and force into desktop changing the appropriate paths to user-specific ones.

Note that this change will likely cause more advanced users to have to tweak configs.

RPMs will also need changes to create /var/lib/pgadmin and /var/log/pgadmin, owned by the webserver account.
2017-08-25 10:54:28 +01:00
Dave Page
fb9eee47bd Bump the version number for 2.0. Let's get testing started ASAP! 2017-08-25 10:18:42 +01:00
Dave Page
ea5dfe23a0 Bump version numbers prior to release. 2017-07-10 14:56:20 +01:00
Harshal Dhumal
c65158312d Use on-demand loading for results in the query tool. Fixes #2137
With a 27420 row query, pgAdmin III runs the query in 5.873s on my laptop. pgAdmin 4 now takes ~1s.
2017-06-27 09:03:04 -04:00
Khushboo Vashi
1ee555e468 Ensure the feature tests use the correct test settings database. Fixes #2486 2017-06-16 10:17:38 +01:00
Johan Van de Wauw
827aa72e99 Fix a typo in the config file 2017-06-15 15:18:59 +01:00
Dave Page
f0d287588a Couple of minor performance tweaks. Tests on my Windows VM show a consistent 30% startup time reduction. 2017-06-11 13:56:49 +01:00
Dave Page
f0e78309cb Bump version in preparation for release. 2017-05-15 12:25:28 +01:00
Dave Page
fdf292964b Bump version numbers for release. 2017-04-10 14:24:46 +01:00
Jonas Thelemann
e66616b1d8 Add German translation Fixes #2323 2017-04-05 14:02:46 +01:00
Akshay Joshi
6a861f7a91 Add the config option ALLOW_SAVE_PASSWORD to allow admins to disable saving of passwords. Fixes #2232 2017-03-31 20:14:37 -04:00
Dave Page
670c8a2cc1 Disable HTMLMIN with Python 2.6 as it doesn't work on that older version. 2017-03-09 15:21:52 +00:00
Dave Page
fb44ffffa0 Fix a couple of translation issues, and remove the test French translation files. 2017-03-08 10:13:15 +00:00
Ashesh Vashi
41e0a73ea6 Adding the directory containing 'config.py' in to the sys.path variable,
so that - when config.py refered from outside the pgAdmin itself (i.e.
during building the pip).
2017-03-07 17:10:34 +05:30
Ashesh Vashi
f2fc1ceba8 Resolved quite a few file-system encoding/decoding related cases.
In order to resolve the non-ascii characters in path (in user directory,
storage path, etc) on windows, we have converted the path into the
short-path, so that - we don't need to deal with the encoding issues
(specially with Python 2).

We've resolved majority of the issues with this patch.
We still need couple issues to resolve after this in the same area.

TODO
* Add better support for non-ascii characters in the database name on
  windows with Python 3
* Improve the messages created after the background processes by
  different modules (such as Backup, Restore, Import/Export, etc.),
  which does not show short-paths, and xml representable characters for
  non-ascii characters, when found in the database objects, and the file
  PATH.

Fixes #2174, #1797, #2166, #1940

Initial patch by: Surinder Kumar
Reviewed by: Murtuza Zabuawala
2017-03-07 15:31:03 +05:30
Dave Page
063177155e Bump version prior to release. 2017-03-06 15:35:08 +00:00
Atira Odhner
5fa1e83f0a Ensure feature tests use the TEST_SQLITE_PATH, not SQLITE_PATH. 2017-02-28 17:09:32 +00:00
Dave Page
24a3f3ab42 Reduce the default log level to something more sensible. 2017-02-10 21:33:57 +00:00
Dave Page
d3232b2449 Fix runtime version number. 2017-02-10 12:02:42 +00:00
Dave Page
5abd62389d Bump version for release. 2017-02-06 15:45:14 +00:00
Dave Page
f221194bcc Update copyright notices for 2017. 2017-01-04 13:33:32 +00:00
Dave Page
1a18e07329 Allow a placeholder ($DIR) to be used in utility paths to make it easier to use relative paths. 2016-11-23 13:35:27 +00:00
Dave Page
08396ce861 Allow default binary paths to be set in the config for each database driver. 2016-11-23 12:44:13 +00:00
Dave Page
020bf1d532 Minify HTML with Flask-HTMLMIN 2016-11-18 16:42:38 +00:00
Dave Page
d5351ad657 Add file resources to the windows runtime. Fixes #1874 2016-11-18 15:46:39 +00:00
lambda
3e541ecb41 Add a Chinese (Simplified) translation. Fixes #1963 2016-11-16 09:40:56 +00:00
Dave Page
517a85866b Update version number for release. 2016-10-24 16:30:37 +01:00
Dave Page
bc5cc964a3 Move security keys into the SQLite database, and auto-generate them.
This avoids packagers having to deal with the issue, which can be
difficult if they need to cater for both server and desktop modes.

Fixes #1849
2016-10-19 09:22:38 +01:00
Dave Page
e06fd21f3c Bump version for release 2016-09-26 16:16:13 +01:00
Navnath Gadakh
d3d8836f61 Introduce a test config database for the regression tests, and track/remove objects that are created during testing. 2016-09-14 16:26:12 +01:00
Ashesh Vashi
f7dd8cbab4 Bump version for RC1 release 2016-08-29 20:37:44 +05:30
Dave Page
0ce8b031f8 More sensible defaults for the mail server settings. 2016-08-23 11:41:45 +01:00
Dave Page
050937a32a Fix WSGI support. 2016-08-18 13:43:00 +01:00
Dave Page
48384cd6cd Bump version. 2016-08-08 16:48:10 +01:00
Murtuza Zabuawala
d3d96d5c05 Disable SQLALCHEMY track modification feature as it puts overhead on system, and if not set, now emits a warning. 2016-07-26 13:01:56 +01:00
Dave Page
a014cf82a1 Use a numeric version check for upgrades. 2016-07-22 16:14:57 +01:00
Dave Page
8e29d16eec Beta 3 version bump 2016-07-18 16:34:00 +01:00
Dave Page
c45960df5e Beta 2.1 - a favour for our friends in QA. 2016-06-30 16:05:23 +01:00
Dave Page
d63b54610b Move the config database schema version out of the configuration file and into the model class.
Turns out using the config file isn't a good idea if users copy config.py to config_local.py, as it prevents upgrades to the database. This has the added side-effect of simplifying future changes, as you only need to edit 2 files to modify the config DB now, not 3.
2016-06-24 12:50:52 +01:00
Dave Page
1acc1a7678 Auto-discover locally installed servers at login. Fixes #1389 2016-06-23 16:27:06 +01:00
Murtuza Zabuawala
97d49af43a Fix constraint on server table to allow port 65535 to be used. Fixes #1388 2016-06-23 11:43:50 +01:00
Dave Page
7d0fe669ca Code tidy. 2016-06-21 14:21:06 +01:00
Dave Page
3026b470e9 Optimise Python imports. 2016-06-21 14:12:14 +01:00
Dave Page
648eebd230 Bump version for beta 2. 2016-06-21 12:20:01 +01:00
Ashesh Vashi
f1eca516f0 Adding comment about setting some higher value for SQLITE_TIMEOUT, on
slower system - user may need to set the value to some higher value.

This value decide - for how long SQLITE operation will wait, before
throwing an operation timeout error because of the locked database.

Fixes #1329
2016-06-20 15:55:00 +05:30
Dave Page
5f3511ce39 Figure out storage paths in a more Windows friendly way. Fixes #1369 2016-06-16 20:11:43 +01:00
Dave Page
17b6053f45 Support distro-specific configs, and include docs in the PIP wheel.
A distro can now install a config_distro.py file alongside config.py
in which distro-specific configuration settings can be set, overriding
those in config.py. User settings in config_local.py will override
all other settings. This is useful to allow packagers to config
settings like the doc path, that may be specific to RPMs or Wheels
etc.
2016-06-15 20:56:27 +01:00
Harshal Dhumal
e3ab4501d5 User management. 2016-06-06 13:34:08 +01:00
Dave Page
fc654a0934 Let's make it Beta 1 2016-06-03 11:19:57 +01:00
Murtuza Zabuawala
d202366a5d Fixes #1185 - While connecting to the server, application becomes almost
inaccessible.

In stand (without threaded) mode, flask application is not able to
process more than one request at a time. Hence - even the client
(browser) send multiple request, when connecting the server (which is
inaccessible), rest of operations get blocked, as making the connection
with the database server is blocking operation.

In order to fix the issue, we're starting the application with thread
support, in which it will create a separate thread of each request.
2016-06-02 14:51:33 +05:30
Dave Page
1724787f2a www.pgadmin.org now supports https. 2016-05-21 13:54:22 -04:00
Dave Page
50c134c4f1 Use a 2 part version number. We never used the first digit in 13 years of pgAdmin 3. 2016-05-17 13:10:18 -04:00
Ashesh Vashi
f682f06c94 Adding a background process executor, and observer.
We will be using the external utilities like pg_dump, pg_dumpall,
pg_restore in background. pgAdmin 4 can be run as a CGI script, hence -
it is not good idea to run those utility in a controlled environment.
The process executor will run them in background, and we will execute
the process executor in detached mode.

Now that - the process executor runs in detached mode, we need an
observer, which will look at the status of the processes. It also reads
output, and error logs on demand.

Thanks - Surinder for helping in some of the UI changes.
2016-05-13 08:49:51 +05:30
Ashesh Vashi
9cdd1f8098 Added support for the server side file manager, which will be useful in
selection, creation, upload/download files/directories resides on the
server side.

This will be useful for file selection/creation for different server
side utilites like pg_dump, pg_dumpall, pg_restore.
2016-05-13 00:04:32 +05:30
Ashesh Vashi
d8cbee3850 Adding the timeout for the connection on the configuration database.
While accessing the configuration database from multiple session, it
results in to the error - OperationError, because - sqlite locks all the
database, and does not allow to access it simultaneously. We added the
timeout to give some time window for accessing it simultaneously.
2016-05-10 15:59:04 +05:30
Ashesh Vashi
e8b4bb909b Do not honour the session-id, longer than 40 characters, instead create
new session-id in that case.
2016-05-09 00:04:37 +05:30
Murtuza Zabuawala
3eb51e93e7 Allow Werkzeug to be configured to bind to adaptors other than localhost for testing. 2016-05-06 15:25:52 +01:00
Neel Patel
12ae40fe62 Procedural language debugger. 2016-04-14 21:36:04 +01:00
Ashesh Vashi
3c366fafe7 Server side session management support. 2016-03-22 15:05:43 +00:00
Dave Page
5ea822f33e Preferences dialogue. Patch by Ashesh and Khushboo Vashi. 2016-03-07 11:48:53 +00:00
Dave Page
2a52462dbf Add a simple version check mechanism to warn the user if a new release is available. 2016-02-08 16:28:20 +00:00
Dave Page
694506453b Copyright updates for 2016. 2016-01-18 14:48:14 +00:00
Ashesh Vashi
a0cfddffdf Adding maximum session idle time in the config.py file 2015-10-22 11:49:53 +05:30
Ashesh Vashi
e27e39a8f3 Added support for the infrastructure for on demand access/create the
server connection.

The BaseDriver and BaseConnection are two abstract classes, which allows
us to replace the existing driver with the currently used. The current
implementation supports to connect the PostgreSQL and Postgres Plus
Advanced Server using the psycopg2 driver.
2015-10-20 12:33:29 +05:30
Ashesh Vashi
aa150030eb Introduced a mechanism to load required javascripts at runtime
(lazy loading) using the require.js. This allows us to load the
javascript required for any node, only when it was loaded in the browser
tree. Also, introduced the mechanism to show/edit/create of any node in
a tab panel (wcDocker.Panel).
2015-06-30 11:21:57 +05:30
Dave Page
7f68d6fced Update the setup script and config database to handle versioning.
This allows us to update the configuration database schema as needed,
and use the setup script to update it to the current version.

NOTE: Existing databases will need to be recreated once following
this commit. It doesn't seem worth handling the "upgrade from v0"
case when I'm probably the only active developer right now.
2015-03-09 15:06:10 +00:00
Dave Page
613df8b596 Copyright year fixes and doc tweaks. 2015-02-25 20:25:41 +00:00
Dave Page
83cbe87040 i18n support. 2015-02-25 17:06:00 +00:00
Dave Page
39089cca21 Add a Sphinx based help system, and include some initial docs on development. 2015-02-23 10:51:47 +00:00
Dave Page
89cc11fb80 This is a big one campers; Add initial support for treeview nodes.
This commit adds the following:

- Storage of server groups in the configuration database
- Creation of a default server group on in the database
- A mechanism for plugging in treeview node types
- A node type for server groups with:
  - Treeview display
  - Custom per-node javascript implementing a menu option/dialogue to add new groups
  - Custom per-node CSS to style the treeview node
- JSON formatted data in response to AJAX requests, including:
  - Success/failure indication
  - Error message
  - Extra info (e.g. stack trace)
  - The original request data
  - Additional return data, e.g. node ID and label etc.
2015-02-15 17:10:53 -05:00
Dave Page
bb6a3f9b5b Use minified output when not in debug mode, and non-minified when debugging.
Update jQuery while we're at it.
2015-02-12 10:28:15 +00:00
Dave Page
53d649de70 Add support for creating dialogs, and add an About dialog.
This adds bootstrap-dialog to help with creation of nice dialogs,
and adds the ability for modules to render Javascript into the
browser, and specify onclick handlers in the menu system.

Also add a basic About dialog, using the new infrastructure and
showing some useful info about the application.
2015-01-27 16:54:39 +00:00
Dave Page
d86c90fa73 Blacklist the test module by default. 2015-01-27 14:25:40 +00:00
Dave Page
7c60fb3377 Support a desktop authentication mode.
This uses a single default user in the config database, which is
auto-logged into the app when SERVER_MODE = False. In this mode we
also hide/remove user-related functions in the UI.
2015-01-26 15:20:28 +00:00
Dave Page
10515431c7 Add authentication and the basis of the browser module.
A user authentication module based on flask-security is added, which
allows users to login and change/recover passwords etc. Custom templates
are included for the user/password UIs.

A new setup script will initialise the user (and later settings) DB,
adding the first user and granting them an Administrator role.

A redirects blueprint module is added to handle simple URL redirects.

A browser module is added and currently renders a skeleton page with
a menu bar, gravatar and jumbotron.

NOTE FOR LATER: Currently this code might make the nice basis for any
web app that needs user management and plugins. Hmmm....
2015-01-22 15:56:23 +00:00
Dave Page
7b8cb207ab Support dynamically loaded modules. 2015-01-20 12:32:06 +00:00
Dave Page
b9bf6d9aa3 Restructure to enable use of modules for different components of pgAdmin. 2014-12-18 17:49:09 +00:00
Dave Page
417ad2c6ee Make the application name and version details configurable. 2014-12-17 12:52:43 +00:00
Dave Page
cdcafa66f2 Fix typo. 2014-12-16 17:47:33 +00:00
Dave Page
a1a6e5356f More basic setup. 2014-12-16 17:37:53 +00:00
Dave Page
ba939f27d7 Use multiple logging handlers so we can have messages going to both
the console and a file, with differing formats and levels.
2014-12-16 17:14:48 +00:00
Dave Page
2d21ea059b Add a basic logging system. 2014-12-16 15:54:29 +00:00