seitime-frappe/frappe/utils
Faris Ansari d20f9e2895 Data Migration Tool (for hub) (#4144)
* 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
2017-10-05 11:15:35 +05:30
..
__init__.py accented characters are valid names 2017-09-14 14:20:50 +05:30
autodoc.py Replaced all instances of 'unicode' with 'six.text_type' (#3825) 2017-08-02 16:57:39 +05:30
background_jobs.py Data Migration Tool (for hub) (#4144) 2017-10-05 11:15:35 +05:30
backups.py Merge pull request #4135 from mbauskar/backup 2017-09-20 11:22:00 +05:30
bench_helper.py Convert dict.keys() to list 2017-08-10 22:06:09 +05:30
boilerplate.py Replaced mixed usage of tabs and spaces for indents with tabs only (#3813) 2017-07-31 10:50:26 +05:30
bot.py [patch] added patch for migration 2017-01-12 15:48:49 +05:30
change_log.py xrange to range (#3237) 2017-05-11 10:55:34 +05:30
csvutils.py Replaced all instances of basestring with six.string_types 2017-08-11 00:10:11 +05:30
data.py Don't index dict.items() 2017-09-27 01:08:07 +05:30
dateutils.py Replaced all instances of basestring with six.string_types 2017-08-11 00:10:11 +05:30
doctor.py rewrite use of dict.iteritems (#3498) 2017-06-19 09:10:21 +05:30
error.py Use repr() instead of backticks 2017-08-11 17:18:25 +05:30
file_lock.py File Based Locking at Document Level (#2374) 2016-11-25 16:14:00 +05:30
file_manager.py Encode content if not encoded before hashing 2017-09-27 01:08:07 +05:30
fixtures.py Python 3 compatible print statements (#3199) 2017-05-01 12:34:29 +05:30
formatters.py Replaced all instances of basestring with six.string_types 2017-08-11 00:10:11 +05:30
global_search.py [fix] specify exception 2017-09-08 16:03:51 +05:30
goal.py Goal Translatable 2017-09-04 15:17:25 -03:00
help.py Replaced all instances of 'unicode' with 'six.text_type' (#3825) 2017-08-02 16:57:39 +05:30
html_utils.py [fix] default email subject should be title 2017-09-29 10:05:47 +05:30
identicon.py Replaced StringIO and cStringIO imports with six.StringIO (#3810) 2017-07-31 10:54:17 +05:30
image.py Python 3 compatible print statements (#3199) 2017-05-01 12:34:29 +05:30
install.py [minor] revert enable all roles (#3790) 2017-07-27 09:01:48 +05:30
jinja.py [minor] list 2017-09-05 12:09:42 +05:30
logger.py Replaced all instances of 'unicode' with 'six.text_type' (#3825) 2017-08-02 16:57:39 +05:30
make_random.py Replaced all instances of basestring with six.string_types 2017-08-11 00:10:11 +05:30
minify.py Replaced StringIO and cStringIO imports with six.StringIO (#3810) 2017-07-31 10:54:17 +05:30
momentjs.py [fix] Added unicode_literals if missing in py files 2015-02-24 12:24:20 +05:30
nestedset.py [minor] return None is records are not available 2017-07-03 15:54:39 +05:30
oauth.py Replaced all instances of basestring with six.string_types 2017-08-11 00:10:11 +05:30
password.py Decode encryption key given by Fernet 2017-09-04 16:05:57 +05:30
password_strength.py Use zxcvbn-python instead of zxcvbn 2017-09-27 01:08:07 +05:30
pdf.py Fixed problem with margin top and bottom overwritten in print format (#3451) 2017-09-23 03:46:13 +02:00
print_format.py [fix] pypdf > pydf2 2017-08-11 16:22:55 +05:30
redis_wrapper.py Decode string before passsing to regex.match 2017-08-22 17:20:35 +05:30
response.py Replaced all instances of 'unicode' with 'six.text_type' (#3825) 2017-08-02 16:57:39 +05:30
scheduler.py [fix] if supervisor is restarting, do not queue the jobs (#4112) 2017-09-14 11:03:56 +05:30
selenium_testdriver.py [user-progress] cleanup 2017-08-29 10:03:05 +05:30
setup_docs.py [docs] simplified docs home 2017-07-31 17:39:44 +05:30
testutils.py [refactor] [optimize] dynamic links on deletion 2016-03-10 15:14:44 +05:30
user.py Merge pull request #3976 from rmehta/domain-restrict-fix 2017-08-24 18:30:40 +05:30
verified_command.py Encode unicode strings before hmac 2017-09-27 01:08:07 +05:30
xlsxutils.py Allow workbook pass in make_xlsx 2017-09-23 15:32:06 -07:00