* optimize(meta): meta is now cached in redis
* fix(meta): test fixes
* fix(meta): codacy
* fix(meta): allow nulls to be serialized
* fix(form_meta): fix form meta caches
* fix(form_meta): fix form meta caches
* fix(form_meta): don't cache for developer_mode'
* [start] removing simpler user permission structure
* permission changes
removed "apply user permission" from has_permission
* test fixes and other supporting fixes
* Removed Apply user permission code
* additional check to see if user has some user permissions related to a doctype
* test fixes
* removed a test
* Permission changes
- Code to restrict access if module is blocked for user.
- [Fix] ignore user perm if applicable
* List view restrictions ui changes
* removed unwanted apply user perm code
* permission (block module fix)
* permission fix
* change user permission
user permission will not be applied if user doesn't have role permission
* removed left "apply_user_permissions" property
* add user permission help template
* perm js refactor
* ui / ux changes
restrict list view before entering view if user is not permitterd
add description for if owner check in role permission manager
* codacy fixes
* permission code fix
add controller permission check
add blocked module check in build_permission
* optimized get blocked module method
* added PyMYSQL instead mysqlclient-python
* added pymysql import
* fixed db module import
* foxed self._conn wrapper
* updated cursor migration
* removed existent converters
* some more fixes towards API port
* modified travis
* updated doctype and revereted yml
* modified travis
* refreshed logging
* raw fix
* moved from hard coded constants to declarable instances
* moved from hard coded constants to declarable instances
* refactoring and logging
* moved to global import declaration
* fixed codacy
* unfixed codacy
* minor fix
* binary_type has a single
* deprecated alternative
* merged with latest
* fixed merge conflicts
* using deprecated alternative
* raw fix
* stupid fix
* using StringTypes instead
* brutal hack
* log
* tundebazy to the rescue
* fixed content_hash error
* frappe/database.py
* frappe/database.py
* updated database.py
* updated requirements
* updated requirements
* fixed codacy
* fixed codacy
* moved from DatabaseOperationalError to pymysql.InternalError
* moved from DatabaseOperationalError to pymysql.InternalError
* fixed codacy
* empty commit
* fixed codacy
* fixed codacy
* Allow SSL connections to a remote database server
Add the following options in site_config.json to use ssl
- "db_ssl_ca" = "/path/to/ca/cert.pem"
- "db_ssl_cert" = "/path/to/ssl/cert.pem"
- "db_ssl_key" = "/path/to/ssl/key.pem"
The files mentioned should be stored on the App server in the location mentioned.
This commit allows for basic ssl connections. X509 is still not supported.
If the above options are not set, the connection will not use an encrypted connection, and connect normally.
* docs - Allow SSL to remote database host
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility
* dict.iteritems to six.iteritems(dict) for python3 compatibility