* migration tool
* custom field for primary key added
* foreign key and multiple linking F_key issue resolved
* refined code
* many-to-one mapping temp fix
* added support for pre-process + cleaned up code
* [various] fixes to setup wizard for developer mode, frappe.enqueue_doc, share with assign
* Refactor data migration module
* added migration for hub
* Add "Skip errors" in data import tool
* move db_set to document.py
* Add Data Migration Run
* Dynamic Migration ID
* move run() from Mapping to Run
* Push Deleted Documents
* fixes
* [migration] doc operation counts
* insert and update instead of push in connection
* fix count and total_pages, skip sync if total_pages is 0
* [migration] child tables
* fix complete()
* [page] remove required libs
* Add sidebar.js, rename old sidebar.js to form_sidebar.js
* [minor] get_empty_state fixes
* svg in icon
* remove image check
* fix codacy
* fix is_child_table check
* [connector] add get_list()
* Add test for Data Migration Run
* fix test
* truncate tabNote
* fix test
* sync todo with event to fix test
* fix db count
* [mapping] export Mapping to json
* Add docs for Data Migration Tool
* [migration] pull data as list, test case
* [hub] remove mapping export to files
* Pull refactor
* [test]
* Add comments
* [mapping] exec in mapping formula
* fix codacy
* fix codacy
* Remove exec for pre-process and post-process
* Add pre and post process for Push
* Remove formula
* fixes
* [refactor] add failed_log to pull, handle error in pull
* [test] Push, pull, update
* Fix codacy, fix insert_doc for pull
* Set migration id on successful insert
* fix update_doc
* fix update_doc
* method is a function
* child table mapping
* Refactor logging
* fix update_doc again
* fix hostname, password
* update docs, minors
* Remove assign_if_none
* Remove error handling from connection methods
* [refactor] Data migration run
* Break push stages into methods
* Migration run refactor
- fix test
- add separate fields for logging
* fix codacy
* fix hostname password
* fix test
* 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
* [sales goal] in company; graph, notifs
* cleanup notifications.js, summary and specific val in graph
* Add line graph, add goal data methods in goal.py
* [tests] targets in notification config
* [minor] type of graph as argument in parent
* Update graph docs
* remove company dependent test for notification
* [fix] test
* look for monthly history in cache
* check for cached graph data in field
* [tests] test_runner to run one JS test at a time
* [tests] test_runner to run one JS test at a time
* [test] ignore failing tests
* [test] comment test_calendar_view
* [test] add timeout
* [test] add timeout
* GSuite initial commit
* GSuite initial commit
* cleanups
* exception handle
* gsuite script: add doGet
* Add GSuite integration to the upload popup
* hide dialog fields if gsuite disabled
* move gsuite code to gsuite.js from upload.js
* documentation
* change name format
* typo on GSuite
* copy paste the file .gs
* fix:don't show gsuite when creating a file in filemanager
* add version to webapp
* add webapp default url
* move webapp to html fied
* fix rebase
* fixes for codecy
* Add field for client_secret in Oauth Client Doctype
* openid_profile endpoint in oauth2.py
* added stub methods for OpenID Connect in RequestValidator
* [Fix] using werkzeug url_fix on uri
* added 3 oidc methods in RequestValidator
* Added Frappe Section in Social Login Keys
Add section in `Social Login Keys` for fields `Frappe Client ID` and `Frappe Client Secret` and additional field Frappe OAuth 2 Server because github, facebook and google have fixed urls, Frappe server URL can change as per the hosting domain/server/company
* [Fix] accept code id_token param for oidc
* generate id_token jwt alg HS256
* Updates to OAuth 2 and OIDC
`OAuth Authorization Code` and `OAuth Bearer Token` DocType made RO
Delete Invalid Codes and Revoked Tokens periodically
generate and send `id_token` only if scope of token is `openid`
* [Fix] Periodically delete revoked tokens
* Social Logins untested
* Enabled Frappe social login
* [Docs] OpenID Connect and Frappe social login
* [Fix] Allow multiple scopes for OAuth 2
* [Docs] Added screenshot steps to configure openid and frappe social login
* saved doctype to solve merge conflict
* [fix] re-added client_secret after resolving merge conlict
* [Fix] frappe_userid and default scope
* OAuth 2.0 Classes Added
Added oauthlib in requirement.txt
Added class WebApplicationServer for Authorization code grant and Bearer tokens.
Added class OAuthWebRequestValidator for Validating Oauth Request for Web Application
* copied code from mnt_oauth needs review
* [New] OAuth2 Doctypes and endpoints added
Integrations > OAuth Provider Settings
Integration Broker > OAuth Bearer Token
Integration Broker > OAuth Authorization Code
Integration Broker > OAuth Client
endpoints for authorize, approve, get_token, revoke_token and test_resource
* oauth2.py: renamed skipauth to skip_auth
* [Fix] Parse URL instead of storing it in settings
* [Fix] get skip_auth from OAuth Provider Settings
* Success URL format. Failure URL added. Confirmation dialog layout changed.
* Validate access token if passed during use of REST API
* OAuth Confirmation colours fixed
* Multiple Changes
Added links for OAuth under Integrations in Module list.
Updated permissions on OAuth doctypes.
Updated layout of OAuth Client doctype.
* [Docs] Integrations > How to setup OAuth
* [Docs] Integration > Using OAuth
* [Fix] get_token endpoint must to handle POST request
* [Fix] http verbs and responses for OAuth 2.0 Endpoints
* [Fix] accept oauth2 access_token from headers
* Removed unused imports from api.py
* [docs] typo
* [email alert] now on any standard controller method
* [minor] install customizations with intall;
* [test] [fix] and truncate subject in email;
* [fix] error log seen issue