frappe / erpnext

Free and Open Source Enterprise Resource Planning (ERP)
https://erpnext.com
GNU General Public License v3.0
21.55k stars 7.29k forks source link

[Workaround included] Apostrophe in the Company Name causes issues during update. #9451

Closed BradMK closed 7 years ago

BradMK commented 7 years ago

We are updating from ErpNext 8.0.50(master) to 8.1.1(master) Frappe Framework v8.0.69(master)

Our company name has an apostrophe in it, which looks like it is causing issues during update. See the last line of the console output below.

[Workaround] If not obvious from below a workaround is to rename the company in the companies list and remove the apostrophe as it cases an issue in the sql query of one of the patch files. Not sure if there are any negative effects from renaming the company, do so at your own risk, and ALWAYS have appropriate backups.

P.S. I wish the team would take the apostrophes into consideration more often as they seem to be forgotten. Some countries use them quite a lot in names etc. and there have been some issues caused by these in the past as well.

[frappe@erp frappe-bench]$ bench update
INFO:bench.utils:updating bench
INFO:bench.utils:git pull
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 4 (delta 2), reused 4 (delta 2), pack-reused 0
Unpacking objects: 100% (4/4), done.
From https://github.com/frappe/bench
   88bc56f..0808b8b  master     -> origin/master
Auto-merging .travis.yml
Merge made by the 'recursive' strategy.
 .travis.yml | 1 +
 1 file changed, 1 insertion(+)
remote: Counting objects: 604, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 604 (delta 439), reused 441 (delta 439), pack-reused 163
Receiving objects: 100% (604/604), 123.12 KiB | 0 bytes/s, done.
Resolving deltas: 100% (496/496), completed with 212 local objects.
From https://github.com/frappe/frappe
   39a1496..69adb00  master     -> upstream/master
 * [new branch]      bcornwellmott-patch-1 -> upstream/bcornwellmott-patch-1
   63ed486..7074d0c  develop    -> upstream/develop
   1819195..695501f  gh-pages   -> upstream/gh-pages
   39a1496..d8ed23e  hotfix     -> upstream/hotfix
 * [new branch]      travis-retry -> upstream/travis-retry
 * [new tag]         v8.0.71    -> v8.0.71
 * [new tag]         v8.1.1     -> v8.1.1
From https://github.com/frappe/frappe
 * [new tag]         v8.0.70    -> v8.0.70
 * [new tag]         v8.1.0     -> v8.1.0
INFO:bench.utils:./env/bin/pip install Pillow
Requirement already satisfied: Pillow in ./env/lib/python2.7/site-packages
Requirement already satisfied: olefile in ./env/lib/python2.7/site-packages (from Pillow)
INFO:bench.app:pulling frappe
INFO:bench.utils:git pull  upstream master
From https://github.com/frappe/frappe
 * branch            master     -> FETCH_HEAD
Updating 39a1496..69adb00
Fast-forward
 .eslintignore                                                                    |    9 +
 .eslintrc                                                                        |  122 +++
 .travis.yml                                                                      |   22 +-
 frappe/__init__.py                                                               |   27 +-
 frappe/app.py                                                                    |    3 +-
 frappe/boot.py                                                                   |   13 +-
 frappe/build.js                                                                  |    3 +-
 frappe/build.py                                                                  |    8 +-
 frappe/client.py                                                                 |    6 +-
 frappe/commands/__init__.py                                                      |    5 +-
 frappe/commands/site.py                                                          |   17 +-
 frappe/commands/utils.py                                                         |   46 +-
 frappe/config/desktop.py                                                         |    7 +
 frappe/config/integrations.py                                                    |   15 +
 frappe/config/setup.py                                                           |    8 +-
 frappe/{email/doctype/contact => contacts}/__init__.py                           |    0
 frappe/{geo => contacts}/address_and_contact.py                                  |    2 +-
 frappe/{geo/doctype/address => contacts/doctype}/__init__.py                     |    0
 frappe/{geo/doctype/address_template => contacts/doctype/address}/__init__.py    |    0
 frappe/{geo => contacts}/doctype/address/address.js                              |    2 +-
 frappe/{geo => contacts}/doctype/address/address.json                            |    5 +-
 frappe/{geo => contacts}/doctype/address/address.py                              |    4 +-
 frappe/contacts/doctype/address/test_address.py                                  |   33 +
 .../addresses_and_contacts => contacts/doctype/address_template}/__init__.py     |    0
 frappe/{geo => contacts}/doctype/address_template/address_template.js            |    2 +-
 frappe/{geo => contacts}/doctype/address_template/address_template.json          |   12 +-
 frappe/{geo => contacts}/doctype/address_template/address_template.py            |    0
 frappe/contacts/doctype/address_template/test_address_template.py                |   45 +
 frappe/contacts/doctype/contact/__init__.py                                      |    0
 frappe/{email => contacts}/doctype/contact/contact.js                            |    2 +-
 frappe/{email => contacts}/doctype/contact/contact.json                          |   68 +-
 frappe/{email => contacts}/doctype/contact/contact.py                            |    4 +-
 frappe/{email => contacts}/doctype/contact/test_contact.py                       |    2 +-
 frappe/{email => contacts}/doctype/contact/test_records.json                     |    0
 frappe/contacts/doctype/gender/__init__.py                                       |    0
 frappe/contacts/doctype/gender/gender.js                                         |    8 +
 frappe/contacts/doctype/gender/gender.json                                       |  113 ++
 frappe/contacts/doctype/gender/gender.py                                         |    9 +
 frappe/contacts/doctype/gender/test_gender.py                                    |    9 +
 frappe/contacts/doctype/salutation/__init__.py                                   |    0
 frappe/contacts/doctype/salutation/salutation.js                                 |    8 +
 frappe/contacts/doctype/salutation/salutation.json                               |  132 +++
 frappe/contacts/doctype/salutation/salutation.py                                 |    9 +
 frappe/contacts/doctype/salutation/test_salutation.py                            |    9 +
 frappe/contacts/report/__init__.py                                               |    0
 frappe/contacts/report/addresses_and_contacts/__init__.py                        |    0
 frappe/{geo => contacts}/report/addresses_and_contacts/addresses_and_contacts.js |    0
 .../{geo => contacts}/report/addresses_and_contacts/addresses_and_contacts.json  |    4 +-
 frappe/{geo => contacts}/report/addresses_and_contacts/addresses_and_contacts.py |    0
 frappe/core/doctype/communication/communication.js                               |   30 +-
 frappe/core/doctype/communication/communication_list.js                          |    2 +-
 frappe/core/doctype/communication/test_communication.py                          |   41 +-
 frappe/core/doctype/deleted_document/deleted_document.py                         |    2 +-
 frappe/core/doctype/doctype/boilerplate/controller_list.js                       |    1 +
 frappe/core/doctype/doctype/doctype.js                                           |    2 +-
 frappe/core/doctype/doctype/doctype.json                                         |   93 +-
 frappe/core/doctype/doctype/doctype.py                                           |   18 +-
 frappe/core/doctype/doctype/test_doctype.py                                      |    2 +-
 frappe/core/doctype/domain/__init__.py                                           |    0
 frappe/core/doctype/domain/domain.js                                             |    8 +
 frappe/core/doctype/domain/domain.json                                           |   95 ++
 frappe/core/doctype/domain/domain.py                                             |   10 +
 frappe/core/doctype/domain/test_domain.py                                        |   10 +
 frappe/core/doctype/domain_settings/__init__.py                                  |    0
 frappe/core/doctype/domain_settings/domain_settings.js                           |   57 +
 frappe/core/doctype/domain_settings/domain_settings.json                         |  153 +++
 frappe/core/doctype/domain_settings/domain_settings.py                           |   12 +
 frappe/core/doctype/error_log/error_log_list.js                                  |    4 +-
 frappe/core/doctype/error_snapshot/error_snapshot.js                             |    4 +-
 frappe/core/doctype/error_snapshot/error_snapshot_list.js                        |   24 +-
 frappe/core/doctype/feedback_request/feedback_request.js                         |    2 +-
 frappe/core/doctype/feedback_request/feedback_request_list.js                    |    4 +-
 frappe/core/doctype/feedback_trigger/feedback_trigger.js                         |    2 +-
 frappe/core/doctype/feedback_trigger/feedback_trigger.json                       |   24 +-
 frappe/core/doctype/feedback_trigger/feedback_trigger.py                         |    2 +-
 frappe/core/doctype/file/file.py                                                 |   15 +-
 frappe/core/doctype/file/file_list.js                                            |   24 +-
 frappe/core/doctype/has_domain/__init__.py                                       |    0
 frappe/core/doctype/has_domain/has_domain.json                                   |   72 ++
 frappe/core/doctype/has_domain/has_domain.py                                     |   10 +
 frappe/core/doctype/module_def/module_def.json                                   |    9 +-
 frappe/core/doctype/page/page.json                                               |   43 +-
 frappe/core/doctype/report/boilerplate/controller.js                             |    1 +
 frappe/core/doctype/report/report.py                                             |    4 +-
 frappe/core/doctype/role/role.json                                               |   37 +-
 .../role_permission_for_page_and_report/role_permission_for_page_and_report.js   |    4 +-
 frappe/core/doctype/system_settings/system_settings.js                           |   12 +-
 frappe/core/doctype/system_settings/system_settings.json                         |   36 +-
 frappe/core/doctype/user/test_user.py                                            |    9 +-
 frappe/core/doctype/user/user.js                                                 |   22 +-
 frappe/core/doctype/user/user.py                                                 |   78 +-
 frappe/core/page/data_import_tool/data_import_tool.js                            |    6 +-
 frappe/core/page/desktop/desktop.js                                              |   26 +-
 frappe/core/page/modules_setup/modules_setup.js                                  |    2 +-
 frappe/core/page/permission_manager/permission_manager.js                        |   14 +-
 frappe/core/page/permission_manager/permission_manager.py                        |   25 +-
 frappe/core/page/user_permissions/user_permissions.js                            |   24 +-
 frappe/core/report/permitted_documents_for_user/permitted_documents_for_user.js  |   12 +-
 frappe/custom/doctype/custom_field/custom_field.js                               |    6 +-
 frappe/custom/doctype/custom_field/custom_field.json                             | 2203 ++++++++++++++++++++------------------
 frappe/custom/doctype/custom_field/custom_field.py                               |   15 +-
 frappe/custom/doctype/customize_form/customize_form.js                           |   11 +-
 frappe/custom/doctype/property_setter/property_setter.js                         |    4 +-
 frappe/database.py                                                               |   19 +-
 frappe/defaults.py                                                               |    2 +-
 frappe/desk/desk_page.py                                                         |    4 +-
 frappe/desk/doctype/bulk_update/bulk_update.py                                   |    2 +-
 frappe/desk/doctype/desktop_icon/desktop_icon.py                                 |   23 +-
 frappe/desk/doctype/event/event.js                                               |    8 +-
 frappe/desk/doctype/kanban_board/kanban_board.js                                 |    2 +-
 frappe/desk/doctype/kanban_board/kanban_board.py                                 |    3 +-
 frappe/desk/doctype/todo/todo.js                                                 |    4 +-
 frappe/desk/doctype/todo/todo_list.js                                            |    6 +-
 frappe/desk/form/load.py                                                         |    4 +-
 frappe/desk/form/meta.py                                                         |    4 +-
 frappe/desk/moduleview.py                                                        |   36 +-
 frappe/desk/page/activity/activity.js                                            |   15 +-
 frappe/desk/page/applications/applications.js                                    |    2 +-
 frappe/desk/page/applications/applications.py                                    |    2 +-
 frappe/desk/page/backups/backups.js                                              |    2 +-
 frappe/desk/page/chat/chat.js                                                    |    6 +-
 frappe/desk/page/modules/modules.js                                              |    2 +-
 frappe/desk/page/setup_wizard/install_fixtures.py                                |   31 +
 frappe/desk/page/setup_wizard/setup_wizard.js                                    |   26 +-
 frappe/desk/page/setup_wizard/setup_wizard.py                                    |    2 +
 frappe/desk/query_builder.py                                                     |    4 +-
 frappe/desk/query_report.py                                                      |   11 +-
 frappe/desk/search.py                                                            |    4 +-
 frappe/docs/index.html                                                           |    4 +-
 frappe/docs/user/en/guides/app-development/dialogs-types.md                      |    4 +-
 frappe/docs/user/en/guides/basics/hooks.md                                       |    4 +
 frappe/docs/user/en/guides/integration/google_gsuite.md                          |   72 ++
 frappe/docs/user/en/guides/integration/index.txt                                 |    1 +
 frappe/docs/user/en/tutorial/before.md                                           |   52 +-
 frappe/email/doctype/auto_email_report/auto_email_report.js                      |   12 +-
 frappe/email/doctype/email_account/email_account.js                              |   33 +-
 frappe/email/doctype/email_alert/email_alert.js                                  |    4 +-
 frappe/email/doctype/email_alert/email_alert.py                                  |    4 +-
 frappe/email/doctype/email_domain/email_domain.js                                |    4 +-
 frappe/email/doctype/email_domain/email_domain.py                                |    7 +-
 frappe/email/doctype/email_group/email_group.js                                  |    6 +-
 frappe/email/doctype/email_queue/email_queue_list.js                             |    4 +-
 frappe/email/doctype/newsletter/newsletter.js                                    |    3 +-
 frappe/email/email_body.py                                                       |    4 +-
 frappe/email/receive.py                                                          |    4 +-
 frappe/email/smtp.py                                                             |    4 +-
 frappe/frappeclient.py                                                           |    4 +-
 frappe/geo/doctype/address/test_address.py                                       |   18 -
 frappe/geo/doctype/address/test_records.json                                     |   13 -
 frappe/geo/doctype/address_template/test_address_template.py                     |   24 -
 frappe/geo/doctype/address_template/test_records.json                            |   13 -
 frappe/hooks.py                                                                  |   10 +-
 frappe/installer.py                                                              |    3 +-
 frappe/integrations/doctype/dropbox_settings/dropbox_settings.js                 |   32 +-
 frappe/integrations/doctype/dropbox_settings/dropbox_settings.json               |   41 +-
 frappe/integrations/doctype/dropbox_settings/dropbox_settings.py                 |  326 +++---
 frappe/integrations/doctype/gsuite_settings/__init__.py                          |    0
 frappe/integrations/doctype/gsuite_settings/gsuite_settings.js                   |   42 +
 frappe/integrations/doctype/gsuite_settings/gsuite_settings.json                 |  404 +++++++
 frappe/integrations/doctype/gsuite_settings/gsuite_settings.py                   |   87 ++
 frappe/integrations/doctype/gsuite_templates/__init__.py                         |    0
 frappe/integrations/doctype/gsuite_templates/gsuite_templates.js                 |    8 +
 frappe/integrations/doctype/gsuite_templates/gsuite_templates.json               |  215 ++++
 frappe/integrations/doctype/gsuite_templates/gsuite_templates.py                 |   42 +
 frappe/integrations/doctype/gsuite_templates/test_gsuite_templates.py            |   10 +
 frappe/integrations/doctype/ldap_settings/ldap_settings.py                       |   18 +-
 frappe/integrations/doctype/paypal_settings/paypal_settings.py                   |    2 +-
 frappe/model/base_document.py                                                    |   41 +-
 frappe/model/db_query.py                                                         |    5 +-
 frappe/model/document.py                                                         |   12 +-
 frappe/model/meta.py                                                             |   10 +-
 frappe/model/naming.py                                                           |    2 +-
 frappe/model/utils/link_count.py                                                 |   25 +-
 frappe/model/utils/user_settings.py                                              |    4 +-
 frappe/modules.txt                                                               |    3 +-
 frappe/modules/import_file.py                                                    |    2 +-
 frappe/modules/utils.py                                                          |    6 +-
 frappe/nightwatch.global.js                                                      |   12 +
 frappe/nightwatch.js                                                             |   96 ++
 frappe/patches.txt                                                               |    3 +-
 frappe/patches/v4_0/private_backups.py                                           |    2 +-
 frappe/patches/v4_1/file_manager_fix.py                                          |    6 +-
 frappe/patches/v8_0/rename_listsettings_to_usersettings.py                       |    4 +-
 frappe/patches/v8_0/set_allow_traceback.py                                       |    5 +
 frappe/patches/v8_0/update_gender_and_salutation.py                              |   14 +
 frappe/printing/doctype/print_format/print_format.js                             |    8 +-
 frappe/printing/page/print_format_builder/print_format_builder.js                |   50 +-
 frappe/public/build.json                                                         |    5 +-
 frappe/public/css/desk-rtl.css                                                   |   27 +-
 frappe/public/css/gantt.css                                                      |    6 +
 frappe/public/css/kanban.css                                                     |    4 +
 frappe/public/js/frappe/assets.js                                                |    2 +-
 frappe/public/js/frappe/checkbox_editor.js                                       |  140 +++
 frappe/public/js/frappe/db.js                                                    |    2 +-
 frappe/public/js/frappe/defaults.js                                              |    4 +-
 frappe/public/js/frappe/desk.js                                                  |  161 +--
 frappe/public/js/frappe/dom.js                                                   |  110 +-
 frappe/public/js/frappe/feedback.js                                              |    8 +-
 frappe/public/js/frappe/form/control.js                                          |  174 +--
 frappe/public/js/frappe/form/dashboard.js                                        |    5 +-
 frappe/public/js/frappe/form/footer/assign_to.js                                 |    8 +-
 frappe/public/js/frappe/form/footer/attachments.js                               |   42 +-
 frappe/public/js/frappe/form/footer/timeline.js                                  |   24 +-
 frappe/public/js/frappe/form/footer/timeline_item.html                           |    2 +-
 frappe/public/js/frappe/form/form_viewers.js                                     |   12 +-
 frappe/public/js/frappe/form/formatters.js                                       |   10 +-
 frappe/public/js/frappe/form/grid.js                                             |  151 ++-
 frappe/public/js/frappe/form/layout.js                                           |   28 +-
 frappe/public/js/frappe/form/link_selector.js                                    |  113 +-
 frappe/public/js/frappe/form/print.js                                            |  159 +--
 frappe/public/js/frappe/form/quick_entry.js                                      |    2 +-
 frappe/public/js/frappe/form/save.js                                             |   97 +-
 frappe/public/js/frappe/form/script_manager.js                                   |   21 +-
 frappe/public/js/frappe/form/share.js                                            |    4 +-
 frappe/public/js/frappe/form/sidebar.js                                          |    8 +-
 frappe/public/js/frappe/form/templates/grid_body.html                            |    4 +-
 frappe/public/js/frappe/form/toolbar.js                                          |    6 +-
 frappe/public/js/frappe/form/workflow.js                                         |    6 +-
 frappe/public/js/frappe/list/list_renderer.js                                    |   12 +-
 frappe/public/js/frappe/list/list_sidebar.js                                     |   12 +-
 frappe/public/js/frappe/list/list_view.js                                        |   26 +-
 frappe/public/js/frappe/misc/address_and_contact.js                              |    4 +-
 frappe/public/js/frappe/misc/common.js                                           |    8 +-
 frappe/public/js/frappe/misc/datetime.js                                         |   40 +-
 frappe/public/js/frappe/misc/number_format.js                                    |  132 +--
 frappe/public/js/frappe/misc/pretty_date.js                                      |   66 +-
 frappe/public/js/frappe/misc/tools.js                                            |    2 +-
 frappe/public/js/frappe/misc/user.js                                             |   53 +-
 frappe/public/js/frappe/misc/utils.js                                            |  227 ++--
 frappe/public/js/frappe/model/create_new.js                                      |   43 +-
 frappe/public/js/frappe/model/meta.js                                            |    2 +-
 frappe/public/js/frappe/model/model.js                                           |   18 +-
 frappe/public/js/frappe/model/perm.js                                            |   10 +-
 frappe/public/js/frappe/model/workflow.js                                        |    4 +-
 frappe/public/js/frappe/request.js                                               |   20 +-
 frappe/public/js/frappe/roles_editor.js                                          |   38 +-
 frappe/public/js/frappe/router.js                                                |    2 +-
 frappe/public/js/frappe/socketio_client.js                                       |    2 +-
 frappe/public/js/frappe/toolbar.js                                               |    4 +-
 frappe/public/js/frappe/translate.js                                             |    2 +-
 frappe/public/js/frappe/ui/base_list.js                                          |    8 +-
 frappe/public/js/frappe/ui/charts.js                                             |   16 +-
 frappe/public/js/frappe/ui/field_group.js                                        |    4 +-
 frappe/public/js/frappe/ui/filters/filters.js                                    |   29 +-
 frappe/public/js/frappe/ui/like.js                                               |    8 +-
 frappe/public/js/frappe/ui/listing.js                                            |  469 --------
 frappe/public/js/frappe/ui/messages.js                                           |   26 +-
 frappe/public/js/frappe/ui/page.js                                               |    2 +-
 frappe/public/js/frappe/ui/toolbar/about.js                                      |   10 +-
 frappe/public/js/frappe/ui/toolbar/awesome_bar.js                                |    4 +-
 frappe/public/js/frappe/ui/toolbar/navbar.html                                   |    2 +-
 frappe/public/js/frappe/ui/toolbar/notifications.js                              |    6 +-
 frappe/public/js/frappe/ui/toolbar/search.js                                     |    9 +-
 frappe/public/js/frappe/ui/toolbar/search_utils.js                               |  699 ++++++------
 frappe/public/js/frappe/ui/toolbar/toolbar.js                                    |    6 +-
 frappe/public/js/frappe/ui/tree.js                                               |    2 +-
 frappe/public/js/frappe/upload.js                                                |   70 +-
 frappe/public/js/frappe/views/calendar/calendar.js                               |    6 +-
 frappe/public/js/frappe/views/communication.js                                   |   49 +-
 frappe/public/js/frappe/views/gantt/gantt_view.js                                |   12 +-
 frappe/public/js/frappe/views/image/image_view.js                                |    4 +-
 frappe/public/js/frappe/views/inbox/inbox_view.js                                |   14 +-
 frappe/public/js/frappe/views/kanban/kanban_board.html                           |    3 +
 frappe/public/js/frappe/views/kanban/kanban_board.js                             |   72 +-
 frappe/public/js/frappe/views/kanban/kanban_view.js                              |    2 +-
 frappe/public/js/frappe/views/pageview.js                                        |    2 +-
 frappe/public/js/frappe/views/reports/grid_report.js                             |   62 +-
 frappe/public/js/frappe/views/reports/query_report.js                            |   87 +-
 frappe/public/js/frappe/views/reports/reportview.js                              |   42 +-
 frappe/public/js/frappe/views/test_runner.js                                     |    2 +-
 frappe/public/js/frappe/views/treeview.js                                        |    2 +-
 frappe/public/js/integrations/gsuite.js                                          |   15 +
 frappe/public/js/legacy/clientscriptAPI.js                                       |   33 +-
 frappe/public/js/legacy/datatype.js                                              |    9 +-
 frappe/public/js/legacy/dom.js                                                   |    8 +-
 frappe/public/js/legacy/form.js                                                  |   64 +-
 frappe/public/js/legacy/globals.js                                               |   14 +-
 frappe/public/js/legacy/handler.js                                               |    2 +-
 frappe/public/js/legacy/layout.js                                                |    3 +-
 frappe/public/js/legacy/print_format.js                                          |   24 +-
 frappe/public/js/legacy/print_table.js                                           |    4 +-
 frappe/public/js/lib/datepicker/locale-all.js                                    |   13 +
 frappe/public/js/{frappe/views/kanban => lib}/fluxify.min.js                     |    0
 frappe/public/js/lib/frappe-gantt/frappe-gantt.js                                |    7 +-
 frappe/public/js/lib/microtemplate.js                                            |    4 +-
 frappe/public/less/gantt.less                                                    |   13 +
 frappe/public/less/kanban.less                                                   |    5 +
 frappe/templates/includes/comments/comments.html                                 |    4 +-
 frappe/templates/includes/contact.js                                             |   20 +-
 frappe/templates/includes/login/login.js                                         |   26 +-
 frappe/templates/styles/standard.css                                             |    4 +
 frappe/tests/test_document.py                                                    |   12 +-
 frappe/tests/test_domainification.py                                             |  136 +++
 frappe/tests/testcafe/0-test_setup_wizard.js                                     |   64 --
 frappe/tests/testcafe/test_todo.js                                               |   56 -
 frappe/tests/testcafe/uploads/user_picture.svg                                   |   22 -
 frappe/tests/ui/login.js                                                         |   19 +
 frappe/translate.py                                                              |    4 +-
 frappe/translations/am.csv                                                       |  553 +++++-----
 frappe/translations/ar.csv                                                       |  606 ++++++-----
 frappe/translations/bg.csv                                                       |  555 +++++-----
 frappe/translations/bn.csv                                                       |  571 +++++-----
 frappe/translations/bs.csv                                                       |  554 +++++-----
 frappe/translations/ca.csv                                                       |  554 +++++-----
 frappe/translations/cs.csv                                                       |  554 +++++-----
 frappe/translations/da.csv                                                       |  905 ++++++++--------
 frappe/translations/de.csv                                                       |  561 +++++-----
 frappe/translations/el.csv                                                       |  553 +++++-----
 frappe/translations/es-AR.csv                                                    |    2 +-
 frappe/translations/es-CL.csv                                                    |    6 +-
 frappe/translations/es-MX.csv                                                    |    2 +-
 frappe/translations/es-PE.csv                                                    |  101 +-
 frappe/translations/es.csv                                                       |  745 ++++++-------
 frappe/translations/et.csv                                                       |  553 +++++-----
 frappe/translations/fa.csv                                                       |  553 +++++-----
 frappe/translations/fi.csv                                                       |  555 +++++-----
 frappe/translations/fr.csv                                                       |  647 +++++------
 frappe/translations/gu.csv                                                       |  553 +++++-----
 frappe/translations/he.csv                                                       |  370 ++++---
 frappe/translations/hi.csv                                                       |  554 +++++-----
 frappe/translations/hr.csv                                                       |  554 +++++-----
 frappe/translations/hu.csv                                                       |  627 +++++------
 frappe/translations/id.csv                                                       |  556 +++++-----
 frappe/translations/is.csv                                                       |  553 +++++-----
 frappe/translations/it.csv                                                       |  688 ++++++------
 frappe/translations/ja.csv                                                       |  554 +++++-----
 frappe/translations/km.csv                                                       |  560 +++++-----
 frappe/translations/kn.csv                                                       |  586 +++++-----
 frappe/translations/ko.csv                                                       |  584 +++++-----
 frappe/translations/ku.csv                                                       |  583 +++++-----
 frappe/translations/lo.csv                                                       |  583 +++++-----
 frappe/translations/lt.csv                                                       |  583 +++++-----
 frappe/translations/lv.csv                                                       |  589 +++++-----
 frappe/translations/mk.csv                                                       |  581 +++++-----
 frappe/translations/ml.csv                                                       |  583 +++++-----
 frappe/translations/mr.csv                                                       |  583 +++++-----
 frappe/translations/ms.csv                                                       |  583 +++++-----
 frappe/translations/my.csv                                                       |  583 +++++-----
 frappe/translations/nl.csv                                                       |  578 +++++-----
 frappe/translations/no.csv                                                       |  578 +++++-----
 frappe/translations/pl.csv                                                       |  586 +++++-----
 frappe/translations/ps.csv                                                       |  583 +++++-----
 frappe/translations/pt-BR.csv                                                    |  342 +++---
 frappe/translations/pt.csv                                                       |  673 ++++++------
 frappe/translations/ro.csv                                                       |  574 +++++-----
 frappe/translations/ru.csv                                                       |  580 +++++-----
 frappe/translations/si.csv                                                       |  583 +++++-----
 frappe/translations/sk.csv                                                       |  578 +++++-----
 frappe/translations/sl.csv                                                       |  581 +++++-----
 frappe/translations/sq.csv                                                       |  575 +++++-----
 frappe/translations/sr.csv                                                       |  577 +++++-----
 frappe/translations/sv.csv                                                       |  578 +++++-----
 frappe/translations/ta.csv                                                       |  584 +++++-----
 frappe/translations/te.csv                                                       |  579 +++++-----
 frappe/translations/th.csv                                                       |  588 +++++-----
 frappe/translations/tr.csv                                                       |  603 +++++------
 frappe/translations/uk.csv                                                       |  612 +++++------
 frappe/translations/ur.csv                                                       |  570 +++++-----
 frappe/translations/vi.csv                                                       |  595 +++++-----
 frappe/translations/zh-TW.csv                                                    |  503 ++++-----
 frappe/translations/zh.csv                                                       |  581 +++++-----
 frappe/utils/__init__.py                                                         |   24 +-
 frappe/utils/background_jobs.py                                                  |    3 +-
 frappe/utils/bench_helper.py                                                     |   28 +-
 frappe/utils/data.py                                                             |   23 +-
 frappe/utils/doctor.py                                                           |    3 +-
 frappe/utils/file_manager.py                                                     |   19 +
 frappe/utils/global_search.py                                                    |   11 +-
 frappe/utils/redis_wrapper.py                                                    |    4 +-
 frappe/utils/response.py                                                         |    7 +-
 frappe/utils/sel.py                                                              |    2 +-
 frappe/utils/setup_docs.py                                                       |    6 +-
 frappe/website/doctype/blog_post/blog_post.py                                    |    2 +-
 frappe/website/doctype/blog_post/templates/blog_post.html                        |    2 +-
 frappe/website/doctype/blog_post/templates/blog_post_row.html                    |    4 +-
 frappe/website/doctype/web_form/web_form.js                                      |  130 +--
 frappe/website/doctype/web_form/web_form.py                                      |    8 +-
 frappe/website/doctype/website_settings/website_settings.js                      |    4 +-
 frappe/website/doctype/website_theme/website_theme.js                            |    3 +-
 frappe/website/doctype/website_theme/website_theme.py                            |    5 +-
 frappe/website/js/web_form.js                                                    |   41 +-
 frappe/website/js/website.js                                                     |    7 +-
 frappe/website/render.py                                                         |    4 +-
 frappe/website/utils.py                                                          |    4 +-
 frappe/www/desk.py                                                               |   11 +-
 frappe/www/feedback.py                                                           |   16 +-
 frappe/www/printview.py                                                          |    6 +
 frappe/www/sitemap.py                                                            |    5 +-
 frappe/www/update-password.html                                                  |    4 +-
 package.json                                                                     |    2 +
 requirements.txt                                                                 |    2 +-
 socketio.js                                                                      |   12 +-
 392 files changed, 24195 insertions(+), 21085 deletions(-)
 create mode 100644 .eslintignore
 create mode 100644 .eslintrc
 rename frappe/{email/doctype/contact => contacts}/__init__.py (100%)
 rename frappe/{geo => contacts}/address_and_contact.py (97%)
 rename frappe/{geo/doctype/address => contacts/doctype}/__init__.py (100%)
 rename frappe/{geo/doctype/address_template => contacts/doctype/address}/__init__.py (100%)
 rename frappe/{geo => contacts}/doctype/address/address.js (92%)
 rename frappe/{geo => contacts}/doctype/address/address.json (99%)
 rename frappe/{geo => contacts}/doctype/address/address.py (98%)
 create mode 100644 frappe/contacts/doctype/address/test_address.py
 rename frappe/{geo/report/addresses_and_contacts => contacts/doctype/address_template}/__init__.py (100%)
 rename frappe/{geo => contacts}/doctype/address_template/address_template.js (79%)
 rename frappe/{geo => contacts}/doctype/address_template/address_template.json (94%)
 rename frappe/{geo => contacts}/doctype/address_template/address_template.py (100%)
 create mode 100644 frappe/contacts/doctype/address_template/test_address_template.py
 create mode 100644 frappe/contacts/doctype/contact/__init__.py
 rename frappe/{email => contacts}/doctype/contact/contact.js (95%)
 rename frappe/{email => contacts}/doctype/contact/contact.json (91%)
 rename frappe/{email => contacts}/doctype/contact/contact.py (98%)
 rename frappe/{email => contacts}/doctype/contact/test_contact.py (77%)
 rename frappe/{email => contacts}/doctype/contact/test_records.json (100%)
 create mode 100644 frappe/contacts/doctype/gender/__init__.py
 create mode 100644 frappe/contacts/doctype/gender/gender.js
 create mode 100644 frappe/contacts/doctype/gender/gender.json
 create mode 100644 frappe/contacts/doctype/gender/gender.py
 create mode 100644 frappe/contacts/doctype/gender/test_gender.py
 create mode 100644 frappe/contacts/doctype/salutation/__init__.py
 create mode 100644 frappe/contacts/doctype/salutation/salutation.js
 create mode 100644 frappe/contacts/doctype/salutation/salutation.json
 create mode 100644 frappe/contacts/doctype/salutation/salutation.py
 create mode 100644 frappe/contacts/doctype/salutation/test_salutation.py
 create mode 100644 frappe/contacts/report/__init__.py
 create mode 100644 frappe/contacts/report/addresses_and_contacts/__init__.py
 rename frappe/{geo => contacts}/report/addresses_and_contacts/addresses_and_contacts.js (100%)
 rename frappe/{geo => contacts}/report/addresses_and_contacts/addresses_and_contacts.json (88%)
 rename frappe/{geo => contacts}/report/addresses_and_contacts/addresses_and_contacts.py (100%)
 create mode 100644 frappe/core/doctype/domain/__init__.py
 create mode 100644 frappe/core/doctype/domain/domain.js
 create mode 100644 frappe/core/doctype/domain/domain.json
 create mode 100644 frappe/core/doctype/domain/domain.py
 create mode 100644 frappe/core/doctype/domain/test_domain.py
 create mode 100644 frappe/core/doctype/domain_settings/__init__.py
 create mode 100644 frappe/core/doctype/domain_settings/domain_settings.js
 create mode 100644 frappe/core/doctype/domain_settings/domain_settings.json
 create mode 100644 frappe/core/doctype/domain_settings/domain_settings.py
 create mode 100644 frappe/core/doctype/has_domain/__init__.py
 create mode 100644 frappe/core/doctype/has_domain/has_domain.json
 create mode 100644 frappe/core/doctype/has_domain/has_domain.py
 create mode 100644 frappe/desk/page/setup_wizard/install_fixtures.py
 create mode 100644 frappe/docs/user/en/guides/integration/google_gsuite.md
 delete mode 100644 frappe/geo/doctype/address/test_address.py
 delete mode 100644 frappe/geo/doctype/address/test_records.json
 delete mode 100644 frappe/geo/doctype/address_template/test_address_template.py
 delete mode 100644 frappe/geo/doctype/address_template/test_records.json
 create mode 100644 frappe/integrations/doctype/gsuite_settings/__init__.py
 create mode 100644 frappe/integrations/doctype/gsuite_settings/gsuite_settings.js
 create mode 100644 frappe/integrations/doctype/gsuite_settings/gsuite_settings.json
 create mode 100644 frappe/integrations/doctype/gsuite_settings/gsuite_settings.py
 create mode 100644 frappe/integrations/doctype/gsuite_templates/__init__.py
 create mode 100644 frappe/integrations/doctype/gsuite_templates/gsuite_templates.js
 create mode 100644 frappe/integrations/doctype/gsuite_templates/gsuite_templates.json
 create mode 100644 frappe/integrations/doctype/gsuite_templates/gsuite_templates.py
 create mode 100644 frappe/integrations/doctype/gsuite_templates/test_gsuite_templates.py
 create mode 100644 frappe/nightwatch.global.js
 create mode 100644 frappe/nightwatch.js
 create mode 100644 frappe/patches/v8_0/set_allow_traceback.py
 create mode 100644 frappe/patches/v8_0/update_gender_and_salutation.py
 create mode 100644 frappe/public/css/gantt.css
 create mode 100644 frappe/public/js/frappe/checkbox_editor.js
 delete mode 100644 frappe/public/js/frappe/ui/listing.js
 create mode 100644 frappe/public/js/integrations/gsuite.js
 rename frappe/public/js/{frappe/views/kanban => lib}/fluxify.min.js (100%)
 create mode 100644 frappe/public/less/gantt.less
 create mode 100644 frappe/tests/test_domainification.py
 delete mode 100644 frappe/tests/testcafe/0-test_setup_wizard.js
 delete mode 100644 frappe/tests/testcafe/test_todo.js
 delete mode 100644 frappe/tests/testcafe/uploads/user_picture.svg
 create mode 100644 frappe/tests/ui/login.js
INFO:bench.utils:find . -name "*.pyc" -delete
INFO:bench.app:pulling erpnext
INFO:bench.utils:git pull  upstream master
remote: Counting objects: 2169, done.
remote: Total 2169 (delta 1534), reused 1534 (delta 1534), pack-reused 635
Receiving objects: 100% (2169/2169), 12.76 MiB | 5.42 MiB/s, done.
Resolving deltas: 100% (1774/1774), completed with 712 local objects.
From https://github.com/frappe/erpnext
 * branch            master     -> FETCH_HEAD
Updating ac13627..bbe9bcc
Fast-forward
 .eslintrc                                                                        |  136 ++
 erpnext/__init__.py                                                              |   24 +-
 erpnext/accounts/doctype/account/account.js                                      |   58 +-
 erpnext/accounts/doctype/account/account.json                                    |   34 +-
 erpnext/accounts/doctype/account/account.py                                      |   41 -
 erpnext/accounts/doctype/account/account_tree.js                                 |   14 +-
 erpnext/accounts/doctype/account/chart_of_accounts/chart_of_accounts.py          |    2 +-
 .../account/chart_of_accounts/verified/ae_uae_chart_template_standard.json       |    1 -
 .../doctype/account/chart_of_accounts/verified/fr_chart_of_accounts.json         |    5 +-
 .../account/chart_of_accounts/verified/in_standard_chart_of_accounts.json        |    5 +-
 erpnext/accounts/doctype/account/chart_of_accounts/verified/sg_default_coa.json  |    5 +-
 erpnext/accounts/doctype/account/chart_of_accounts/verified/sg_fnb_coa.json      |    5 +-
 .../doctype/account/chart_of_accounts/verified/standard_chart_of_accounts.py     |    4 +-
 erpnext/accounts/doctype/account/test_account.py                                 |   23 +
 erpnext/accounts/doctype/accounts_settings/accounts_settings.json                |   13 +-
 erpnext/accounts/doctype/accounts_settings/accounts_settings.py                  |   22 +-
 erpnext/accounts/doctype/asset/asset.js                                          |   74 +-
 erpnext/accounts/doctype/asset/asset.py                                          |    3 +-
 erpnext/accounts/doctype/asset/asset_list.js                                     |    2 +-
 erpnext/accounts/doctype/asset_movement/asset_movement.js                        |    2 +-
 erpnext/accounts/doctype/bank_guarantee/bank_guarantee.js                        |    4 +-
 erpnext/accounts/doctype/cost_center/cost_center.js                              |    2 +-
 erpnext/accounts/doctype/fiscal_year/fiscal_year.js                              |    4 +-
 erpnext/accounts/doctype/journal_entry/journal_entry.js                          |   11 +-
 erpnext/accounts/doctype/journal_entry/journal_entry.json                        |    2 +-
 erpnext/accounts/doctype/journal_entry/journal_entry.py                          |    7 +-
 erpnext/accounts/doctype/journal_entry/test_journal_entry.py                     |    4 +-
 erpnext/accounts/doctype/mode_of_payment/mode_of_payment.py                      |    3 +-
 erpnext/accounts/doctype/monthly_distribution/monthly_distribution.js            |   12 +-
 erpnext/accounts/doctype/payment_entry/payment_entry.js                          |   72 +-
 erpnext/accounts/doctype/payment_entry/payment_entry.py                          |   19 +-
 erpnext/accounts/doctype/payment_entry/test_payment_entry.py                     |   28 +
 erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js        |    9 +-
 erpnext/accounts/doctype/payment_request/test_payment_request.py                 |    4 +-
 erpnext/accounts/doctype/period_closing_voucher/period_closing_voucher.js        |    2 +-
 erpnext/accounts/doctype/pos_profile/pos_profile.js                              |   47 +-
 erpnext/accounts/doctype/pos_profile/pos_profile.json                            |    6 +-
 erpnext/accounts/doctype/pricing_rule/pricing_rule.js                            |  116 +-
 erpnext/accounts/doctype/purchase_invoice/purchase_invoice.js                    |   12 +-
 erpnext/accounts/doctype/purchase_invoice/purchase_invoice.py                    |   19 +-
 erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py               |   43 +-
 .../purchase_taxes_and_charges_template/purchase_taxes_and_charges_template.js   |    6 +-
 erpnext/accounts/doctype/sales_invoice/sales_invoice.js                          |   52 +-
 erpnext/accounts/doctype/sales_invoice/sales_invoice.json                        |   33 +-
 erpnext/accounts/doctype/sales_invoice/sales_invoice.py                          |   74 +-
 erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py                     |   38 +-
 erpnext/accounts/doctype/tax_rule/tax_rule.py                                    |    2 +-
 erpnext/accounts/general_ledger.py                                               |   10 +-
 erpnext/accounts/page/pos/pos.js                                                 |   79 +-
 erpnext/accounts/party.py                                                        |    4 +-
 erpnext/accounts/report/accounts_payable/accounts_payable.js                     |    4 +-
 erpnext/accounts/report/accounts_payable_summary/accounts_payable_summary.js     |    4 +-
 erpnext/accounts/report/accounts_receivable/accounts_receivable.html             |    2 +-
 erpnext/accounts/report/accounts_receivable/accounts_receivable.js               |    6 +-
 .../accounts/report/accounts_receivable_summary/accounts_receivable_summary.js   |    8 +-
 erpnext/accounts/report/bank_clearance_summary/bank_clearance_summary.js         |    2 +-
 .../report/bank_reconciliation_statement/bank_reconciliation_statement.js        |    2 +-
 erpnext/accounts/report/budget_variance_report/budget_variance_report.js         |    2 +-
 erpnext/accounts/report/financial_statements.html                                |    2 +-
 erpnext/accounts/report/general_ledger/general_ledger.html                       |    2 +-
 erpnext/accounts/report/gross_profit/gross_profit.py                             |    2 +-
 .../accounts/report/item_wise_purchase_register/item_wise_purchase_register.js   |    2 +-
 erpnext/accounts/report/item_wise_sales_register/item_wise_sales_register.js     |    2 +-
 .../payment_period_based_on_invoice_date/payment_period_based_on_invoice_date.js |    2 +-
 erpnext/accounts/report/purchase_invoice_trends/purchase_invoice_trends.js       |    2 +-
 erpnext/accounts/report/purchase_register/purchase_register.js                   |    2 +-
 erpnext/accounts/report/sales_invoice_trends/sales_invoice_trends.js             |    2 +-
 erpnext/accounts/report/sales_register/sales_register.js                         |    2 +-
 erpnext/accounts/utils.py                                                        |   28 +-
 erpnext/buying/doctype/purchase_order/purchase_order.js                          |    2 +-
 erpnext/buying/doctype/purchase_order/purchase_order.py                          |    2 +-
 erpnext/buying/doctype/purchase_order/purchase_order_dashboard.py                |    4 +-
 erpnext/buying/doctype/purchase_order/purchase_order_list.js                     |   24 +-
 erpnext/buying/doctype/request_for_quotation/request_for_quotation.js            |   90 +-
 erpnext/buying/doctype/supplier/supplier.js                                      |   32 +-
 erpnext/buying/doctype/supplier/supplier.py                                      |    2 +-
 erpnext/buying/doctype/supplier_quotation/supplier_quotation.js                  |    2 +-
 erpnext/buying/page/purchase_analytics/purchase_analytics.js                     |    8 +-
 erpnext/buying/report/purchase_order_trends/purchase_order_trends.js             |    2 +-
 erpnext/buying/report/quoted_item_comparison/quoted_item_comparison.js           |  105 +-
 erpnext/commands/__init__.py                                                     |   49 +
 erpnext/config/selling.py                                                        |    4 +-
 erpnext/controllers/accounts_controller.py                                       |    4 +-
 erpnext/controllers/buying_controller.py                                         |    9 +-
 erpnext/controllers/sales_and_purchase_return.py                                 |    7 +-
 erpnext/controllers/stock_controller.py                                          |   42 +-
 erpnext/crm/doctype/lead/lead.js                                                 |   15 +-
 erpnext/crm/doctype/lead/lead.json                                               |   75 +-
 erpnext/crm/doctype/lead/lead.py                                                 |    9 +-
 erpnext/crm/doctype/opportunity/opportunity.js                                   |    9 +-
 erpnext/crm/report/campaign_efficiency/campaign_efficiency.js                    |   30 +-
 .../minutes_to_first_response_for_opportunity.js                                 |   50 +-
 erpnext/demo/data/assessment_criteria.json                                       |   18 +
 erpnext/demo/data/grading_scale.json                                             |   17 +
 erpnext/demo/data/item_schools.json                                              |    5 +
 erpnext/demo/data/program.json                                                   |   96 +-
 erpnext/demo/data/student_batch_name.json                                        |   10 +
 erpnext/demo/demo.py                                                             |   14 +-
 erpnext/demo/setup/education.py                                                  |   52 +-
 erpnext/demo/setup/setup_data.py                                                 |    2 +-
 erpnext/demo/user/schools.py                                                     |   76 +-
 erpnext/docs/assets/img/accounts/bank-reconciliation-2.png                       |  Bin 0 -> 129908 bytes
 erpnext/docs/assets/img/accounts/chart-of-cost-center.png                        |  Bin 0 -> 58855 bytes
 erpnext/docs/assets/img/accounts/perpetual-1.png                                 |  Bin 79678 -> 59962 bytes
 erpnext/docs/assets/img/accounts/perpetual-2.png                                 |  Bin 40384 -> 0 bytes
 erpnext/docs/assets/img/accounts/perpetual-3.png                                 |  Bin 63607 -> 0 bytes
 erpnext/docs/assets/img/accounts/perpetual-dn-gl-5.png                           |  Bin 0 -> 73961 bytes
 erpnext/docs/assets/img/accounts/perpetual-dn-sl-4.png                           |  Bin 0 -> 59077 bytes
 erpnext/docs/assets/img/accounts/perpetual-inv-gl-7.png                          |  Bin 0 -> 106243 bytes
 erpnext/docs/assets/img/accounts/perpetual-inv-sl-6.png                          |  Bin 0 -> 59376 bytes
 erpnext/docs/assets/img/accounts/perpetual-pinv-gl-3.png                         |  Bin 0 -> 92193 bytes
 erpnext/docs/assets/img/accounts/perpetual-receipt-gl-2.png                      |  Bin 0 -> 83749 bytes
 erpnext/docs/assets/img/accounts/perpetual-receipt-sl-1.png                      |  Bin 0 -> 60172 bytes
 erpnext/docs/assets/img/accounts/perpetual-st-issue-gl.png                       |  Bin 0 -> 72463 bytes
 erpnext/docs/assets/img/accounts/perpetual-st-issue-sl.png                       |  Bin 0 -> 58623 bytes
 erpnext/docs/assets/img/accounts/perpetual-st-receipt-gl.png                     |  Bin 0 -> 72556 bytes
 erpnext/docs/assets/img/accounts/perpetual-st-receipt-sl.png                     |  Bin 0 -> 58663 bytes
 erpnext/docs/assets/img/accounts/perpetual-st-transfer-gl.png                    |  Bin 0 -> 73109 bytes
 erpnext/docs/assets/img/accounts/perpetual-st-transfer-sl.png                    |  Bin 0 -> 66363 bytes
 erpnext/docs/assets/img/collaboration-tools/calendar-5.png                       |  Bin 50838 -> 0 bytes
 erpnext/docs/assets/img/collaboration-tools/calendar-7.png                       |  Bin 77741 -> 0 bytes
 .../{old_images/erpnext => img/collaboration-tools}/calender-email-digest.png    |  Bin 240720 -> 242353 bytes
 erpnext/docs/assets/img/collaboration-tools/delete-a-doc.png                     |  Bin 0 -> 59981 bytes
 erpnext/docs/assets/img/collaboration-tools/deleted-docs-list.gif                |  Bin 0 -> 371740 bytes
 erpnext/docs/assets/img/collaboration-tools/enable-versioning.png                |  Bin 0 -> 81520 bytes
 erpnext/docs/assets/img/collaboration-tools/restore-a-doc.png                    |  Bin 0 -> 43180 bytes
 erpnext/docs/assets/img/collaboration-tools/restored-doc.png                     |  Bin 0 -> 83575 bytes
 erpnext/docs/assets/img/collaboration-tools/version-details.png                  |  Bin 0 -> 139906 bytes
 erpnext/docs/assets/img/collaboration-tools/version-links.png                    |  Bin 0 -> 108790 bytes
 erpnext/docs/assets/img/human-resources/holiday-list-1.png                       |  Bin 0 -> 46785 bytes
 erpnext/docs/assets/img/human-resources/holiday-list-2.gif                       |  Bin 0 -> 869610 bytes
 erpnext/docs/assets/img/human-resources/holiday-list-3.png                       |  Bin 0 -> 59953 bytes
 erpnext/docs/assets/img/human-resources/holiday-list-4.png                       |  Bin 0 -> 62253 bytes
 erpnext/docs/assets/img/human-resources/holiday-list.png                         |  Bin 95673 -> 0 bytes
 erpnext/docs/assets/img/schools/assessment/__init__.py                           |    0
 erpnext/docs/assets/img/schools/assessment/assessment-criteria.png               |  Bin 0 -> 56310 bytes
 erpnext/docs/assets/img/schools/assessment/assessment-group-details.png          |  Bin 0 -> 110844 bytes
 erpnext/docs/assets/img/schools/assessment/assessment-group-term.png             |  Bin 0 -> 39978 bytes
 erpnext/docs/assets/img/schools/assessment/assessment-plan-criteria.png          |  Bin 0 -> 80905 bytes
 erpnext/docs/assets/img/schools/assessment/assessment-plan-details.png           |  Bin 0 -> 189099 bytes
 erpnext/docs/assets/img/schools/assessment/assessment-result-tool.png            |  Bin 0 -> 185024 bytes
 erpnext/docs/assets/img/schools/assessment/assessment-result.png                 |  Bin 0 -> 174551 bytes
 erpnext/docs/assets/img/schools/assessment/grading-scale.png                     |  Bin 0 -> 158497 bytes
 erpnext/docs/assets/img/setup/email/email-actions.png                            |  Bin 0 -> 93732 bytes
 erpnext/docs/assets/img/setup/email/email-domain.png                             |  Bin 0 -> 99371 bytes
 erpnext/docs/assets/img/setup/email/email-folders.png                            |  Bin 0 -> 102639 bytes
 erpnext/docs/assets/img/setup/email/email-inbox.png                              |  Bin 0 -> 78704 bytes
 erpnext/docs/assets/img/setup/email/email-password.png                           |  Bin 0 -> 59766 bytes
 erpnext/docs/assets/img/setup/email/email-service.png                            |  Bin 0 -> 63213 bytes
 erpnext/docs/assets/img/setup/email/email-user-link.png                          |  Bin 0 -> 68584 bytes
 erpnext/docs/assets/img/setup/email/email-user.png                               |  Bin 0 -> 112225 bytes
 erpnext/docs/assets/img/setup/email/make-from-email.png                          |  Bin 0 -> 56845 bytes
 erpnext/docs/assets/{old_images/erpnext => img/setup}/implementation-image.png   |  Bin
 erpnext/docs/assets/img/setup/integrations/dropbox_redirect_uri.png              |  Bin 0 -> 138619 bytes
 erpnext/docs/assets/img/setup/users/user-login-email.png                         |  Bin 0 -> 13676 bytes
 erpnext/docs/assets/img/setup/users/user-login-mobile.png                        |  Bin 0 -> 12278 bytes
 erpnext/docs/assets/{old_images/erpnext => img/stock}/fifo.png                   |  Bin
 erpnext/docs/assets/img/stock/item-manufacturing-and-website.png                 |  Bin 0 -> 79743 bytes
 erpnext/docs/assets/img/stock/item-purchase.png                                  |  Bin 0 -> 76577 bytes
 erpnext/docs/assets/img/stock/item-reorder.png                                   |  Bin 0 -> 79905 bytes
 erpnext/docs/assets/img/stock/item-sales.png                                     |  Bin 0 -> 63006 bytes
 erpnext/docs/assets/img/stock/item-supplier.png                                  |  Bin 0 -> 69266 bytes
 erpnext/docs/assets/img/stock/item-warranty.png                                  |  Bin 0 -> 51672 bytes
 erpnext/docs/assets/img/website/customer-portal-order.png                        |  Bin 0 -> 97979 bytes
 erpnext/docs/assets/img/website/invoice-paid.png                                 |  Bin 0 -> 50092 bytes
 erpnext/docs/assets/img/website/invoice-unpaid.png                               |  Bin 0 -> 88198 bytes
 erpnext/docs/assets/img/website/portal-menu.png                                  |  Bin 0 -> 45586 bytes
 erpnext/docs/assets/img/website/website-login.png                                |  Bin 8927 -> 37540 bytes
 erpnext/docs/assets/img/website/website-signup-details.png                       |  Bin 0 -> 36562 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-10.png               |  Bin 19737 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-11.png               |  Bin 10282 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-12.png               |  Bin 19831 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-13.png               |  Bin 15010 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-14.png               |  Bin 20048 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-4.png                |  Bin 45057 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-5.png                |  Bin 10411 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-6.png                |  Bin 20123 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-7.png                |  Bin 9912 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-8.png                |  Bin 38017 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-9.png                |  Bin 10669 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/auto-notification.png                     |  Bin 30553 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/backup-manager.png                        |  Bin 35210 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/bank-reconciliation-2.png                 |  Bin 61116 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/budgeting-4.png                           |  Bin 23960 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/budgeting.png                             |  Bin 21617 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/calender-event-lead.png                   |  Bin 176307 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/calender-event-manually.png               |  Bin 178281 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/calender-event-notification.png           |  Bin 81797 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/calender-event-permission.png             |  Bin 102614 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/calender-event-recurring.png              |  Bin 126519 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/chart-of-cost-centers.png                 |  Bin 74045 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/custom-field-document.png                 |  Bin 19726 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/custom-field-insert.png                   |  Bin 18949 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/customer-portal-login.png                 |  Bin 20711 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/customer-portal-orders-1.png              |  Bin 71731 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/customer-portal-sign-up-1.png             |  Bin 118714 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/customer-portal-sign-up-2.png             |  Bin 21165 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/customer-portal-sign-up-3.png             |  Bin 26594 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/customize-form-custom-field.png           |  Bin 20280 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/dropbox-access.png                        |  Bin 45567 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/email-settings1.png                       |  Bin 51102 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/email-settings2.png                       |  Bin 43994 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/faq-manufacturer-part-no.png              |  Bin 34412 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/faq-reorder-level.png                     |  Bin 13240 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/faq-reorder-qty.png                       |  Bin 23973 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/faq-warranty.png                          |  Bin 36351 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/holiday-list-1.png                        |  Bin 13021 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/holiday-list-2.png                        |  Bin 9505 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/item-manufacturing-website.png            |  Bin 23420 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/item-purchase.png                         |  Bin 48504 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/item-sales.png                            |  Bin 29843 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/portal-invoice-paid.png                   |  Bin 70670 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/portal-menu.png                           |  Bin 81296 -> 0 bytes
 erpnext/docs/assets/old_images/erpnext/portal-order-billed.png                   |  Bin 46903 -> 0 bytes
 erpnext/docs/user/manual/de/accounts/budgeting.md                                |   14 +-
 erpnext/docs/user/manual/de/accounts/setup/cost-center.md                        |    2 +-
 erpnext/docs/user/manual/de/buying/setup/supplier-type.md                        |    4 +-
 .../docs/user/manual/de/customer-portal/customer-orders-invoices-and-shipping.md |    8 +-
 erpnext/docs/user/manual/de/customer-portal/portal-login.md                      |    2 +-
 erpnext/docs/user/manual/de/customer-portal/sign-up.md                           |   13 +-
 erpnext/docs/user/manual/de/customize-erpnext/custom-field.md                    |   16 +-
 .../customize-erpnext/custom-scripts/custom-script-examples/date-validation.md   |    4 +-
 .../custom-scripts/custom-script-examples/restrict-cancel-rights.md              |    6 +-
 .../custom-scripts/custom-script-examples/restrict-purpose-of-stock-entry.md     |    4 +-
 .../custom-scripts/custom-script-examples/restrict-user-based-on-child-record.md |   13 +-
 erpnext/docs/user/manual/de/introduction/the-champion.md                         |    2 +-
 erpnext/docs/user/manual/de/setting-up/data/bulk-rename.md                       |    4 +-
 erpnext/docs/user/manual/de/setting-up/third-party-backups.md                    |   49 -
 .../user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.md    |   55 +-
 erpnext/docs/user/manual/de/using-erpnext/calendar.md                            |   20 +-
 erpnext/docs/user/manual/en/accounts/index.md                                    |    2 +-
 erpnext/docs/user/manual/en/accounts/purchase-invoice.md                         |   28 +-
 erpnext/docs/user/manual/en/accounts/setup/cost-center.md                        |    2 +-
 erpnext/docs/user/manual/en/accounts/tools/bank-reconciliation.md                |   14 +-
 erpnext/docs/user/manual/en/accounts/tools/payment-tool.md                       |    2 +-
 erpnext/docs/user/manual/en/buying/setup/supplier-type.md                        |    4 +-
 .../manual/en/customer-portal/customer-orders-invoices-and-shipping-status.md    |   21 +-
 erpnext/docs/user/manual/en/customer-portal/portal-login.md                      |    2 +-
 erpnext/docs/user/manual/en/customer-portal/sign-up.md                           |   21 +-
 erpnext/docs/user/manual/en/customize-erpnext/custom-doctype.md                  |   12 +-
 .../customize-erpnext/custom-scripts/custom-script-examples/date-validation.md   |    4 +-
 .../custom-scripts/custom-script-examples/restrict-cancel-rights.md              |    6 +-
 .../custom-scripts/custom-script-examples/restrict-purpose-of-stock-entry.md     |    6 +-
 .../custom-scripts/custom-script-examples/restrict-user-based-on-child-record.md |    8 +-
 erpnext/docs/user/manual/en/human-resources/holiday-list.md                      |   57 +-
 erpnext/docs/user/manual/en/human-resources/setup/holiday-list.md                |    5 -
 erpnext/docs/user/manual/en/introduction/concepts-and-terms.md                   |    2 +-
 erpnext/docs/user/manual/en/introduction/the-champion.md                         |    2 +-
 erpnext/docs/user/manual/en/schools/Assessment/__init__.py                       |    0
 erpnext/docs/user/manual/en/schools/Assessment/assessment_criteria.md            |   13 +
 erpnext/docs/user/manual/en/schools/Assessment/assessment_group.md               |   13 +
 erpnext/docs/user/manual/en/schools/Assessment/assessment_plan.md                |   19 +
 erpnext/docs/user/manual/en/schools/Assessment/assessment_result.md              |    7 +
 erpnext/docs/user/manual/en/schools/Assessment/assessment_result_tool.md         |    9 +
 erpnext/docs/user/manual/en/schools/Assessment/grading_scale.md                  |    7 +
 erpnext/docs/user/manual/en/schools/Assessment/index.md                          |   17 +
 erpnext/docs/user/manual/en/schools/Assessment/index.txt                         |    6 +
 erpnext/docs/user/manual/en/schools/index.txt                                    |    3 +-
 erpnext/docs/user/manual/en/setting-up/data/bulk-rename.md                       |    4 +-
 erpnext/docs/user/manual/en/setting-up/email/email-account.md                    |    4 +-
 erpnext/docs/user/manual/en/setting-up/email/email-inbox.md                      |   86 +
 erpnext/docs/user/manual/en/setting-up/email/index.txt                           |    1 +
 erpnext/docs/user/manual/en/setting-up/integrations/dropbox-backup.md            |   10 +-
 erpnext/docs/user/manual/en/setting-up/settings/system-settings.md               |    2 +
 erpnext/docs/user/manual/en/setting-up/third-party-backups.md                    |   54 -
 erpnext/docs/user/manual/en/setting-up/users-and-permissions/adding-users.md     |    5 +-
 .../user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.md    |   62 +-
 erpnext/docs/user/manual/en/stock/delivery-note.md                               |    2 +-
 erpnext/docs/user/manual/en/stock/item/index.md                                  |   60 +-
 erpnext/docs/user/manual/en/stock/item/item-valuation-fifo-and-moving-average.md |    4 +-
 erpnext/docs/user/manual/en/stock/item/purchase-details.md                       |   21 +-
 erpnext/docs/user/manual/en/stock/item/reorder.md                                |   27 +-
 erpnext/docs/user/manual/en/stock/stock-entry.md                                 |    2 +-
 erpnext/docs/user/manual/en/using-erpnext/articles/bulk-rename.md                |    2 +
 erpnext/docs/user/manual/en/using-erpnext/calendar.md                            |   45 +-
 erpnext/docs/user/manual/en/using-erpnext/document-versioning.md                 |   21 +
 erpnext/docs/user/manual/en/using-erpnext/index.txt                              |    2 +
 erpnext/docs/user/manual/en/using-erpnext/restore-deleted-docs.md                |   31 +
 .../docs/user/manual/en/website/articles/managing-user-sign-up-via-website.md    |    6 +-
 erpnext/docs/user/videos/learn/budgeting.md                                      |    4 +-
 erpnext/docs/user/videos/learn/bulk-update.md                                    |    4 +-
 erpnext/docs/user/videos/learn/report-builder.md                                 |    4 +-
 erpnext/hooks.py                                                                 |    2 +-
 erpnext/hr/doctype/appraisal/appraisal.js                                        |    4 +-
 erpnext/hr/doctype/attendance/attendance.js                                      |    2 +-
 erpnext/hr/doctype/employee/employee.json                                        |    9 +-
 erpnext/hr/doctype/employee/employee_dashboard.py                                |    4 +
 erpnext/hr/doctype/employee_attendance_tool/employee_attendance_tool.js          |    2 +-
 erpnext/hr/doctype/employee_loan/employee_loan.js                                |   48 +-
 erpnext/hr/doctype/expense_claim/expense_claim.js                                |   17 +-
 erpnext/hr/doctype/expense_claim_type/expense_claim_type.py                      |    5 +-
 erpnext/hr/doctype/leave_allocation/leave_allocation.js                          |    2 +-
 erpnext/hr/doctype/leave_application/leave_application.js                        |    8 +-
 erpnext/hr/doctype/leave_control_panel/leave_control_panel.js                    |   22 +-
 erpnext/hr/doctype/offer_letter/offer_letter.js                                  |   16 +-
 erpnext/hr/doctype/process_payroll/process_payroll.js                            |  104 +-
 erpnext/hr/doctype/salary_slip/salary_slip.js                                    |    2 +-
 erpnext/hr/doctype/salary_structure/salary_structure.js                          |   35 +-
 erpnext/hr/doctype/training_event/training_event.py                              |   25 +-
 erpnext/hr/doctype/training_result/training_result.js                            |   12 +-
 erpnext/hr/doctype/training_result/training_result.json                          |   22 +-
 erpnext/hr/doctype/upload_attendance/upload_attendance.js                        |    6 +-
 erpnext/hr/doctype/vehicle_log/vehicle_log.js                                    |   22 +-
 erpnext/hr/page/team_updates/team_updates.js                                     |    9 +-
 erpnext/hr/report/salary_register/salary_register.js                             |    2 +-
 erpnext/maintenance/doctype/maintenance_schedule/maintenance_schedule.js         |    8 +-
 erpnext/maintenance/doctype/maintenance_schedule/maintenance_schedule.py         |    3 +-
 erpnext/maintenance/doctype/maintenance_visit/maintenance_visit.js               |    4 +-
 erpnext/manufacturing/doctype/bom/bom.js                                         |   38 +-
 erpnext/manufacturing/doctype/bom/bom.json                                       |   24 +-
 erpnext/manufacturing/doctype/bom/bom.py                                         |   27 +-
 erpnext/manufacturing/doctype/production_order/production_order.js               |   26 +-
 .../manufacturing/doctype/production_planning_tool/production_planning_tool.js   |   11 +-
 erpnext/manufacturing/page/production_analytics/production_analytics.js          |   22 +-
 erpnext/manufacturing/report/bom_stock_report/bom_stock_report.js                |   26 +-
 .../report/production_order_stock_report/production_order_stock_report.js        |   13 +-
 erpnext/patches.txt                                                              |   12 +-
 erpnext/patches/v7_0/create_warehouse_nestedset.py                               |   12 +-
 erpnext/patches/v7_0/fix_nonwarehouse_ledger_gl_entries_for_transactions.py      |   12 +-
 erpnext/patches/v7_0/repost_future_gle_for_purchase_invoice.py                   |   20 +-
 erpnext/patches/v7_0/repost_gle_for_pi_with_update_stock.py                      |    6 +-
 erpnext/patches/v8_0/create_domain_docs.py                                       |   52 +
 .../patches/v8_0/move_account_head_from_account_to_warehouse_for_inventory.py    |   15 +
 erpnext/patches/v8_0/move_perpetual_inventory_setting.py                         |   13 +
 erpnext/patches/v8_0/save_system_settings.py                                     |   15 +
 erpnext/patches/v8_0/set_sales_invoice_serial_number_from_delivery_note.py       |   42 +
 erpnext/patches/v8_0/update_sales_cost_in_project.py                             |   12 +
 erpnext/patches/v8_1/__init__.py                                                 |    0
 erpnext/patches/v8_1/delete_deprecated_reports.py                                |   15 +
 erpnext/projects/doctype/project/project.js                                      |   12 +-
 erpnext/projects/doctype/project/project.py                                      |   12 +-
 erpnext/projects/doctype/task/task.json                                          |   67 +-
 erpnext/projects/doctype/timesheet/timesheet.js                                  |   41 +-
 erpnext/public/js/account_tree_grid.js                                           |   25 +-
 erpnext/public/js/communication.js                                               |    2 +-
 erpnext/public/js/controllers/accounts.js                                        |   13 +-
 erpnext/public/js/controllers/buying.js                                          |  115 +-
 erpnext/public/js/controllers/taxes_and_totals.js                                |   27 +-
 erpnext/public/js/controllers/transaction.js                                     |   51 +-
 erpnext/public/js/financial_statements.js                                        |    6 +-
 erpnext/public/js/help_links.js                                                  |  398 +++-
 erpnext/public/js/payment/payments.js                                            |    6 +-
 erpnext/public/js/purchase_trends_filters.js                                     |    4 +-
 erpnext/public/js/queries.js                                                     |    6 +-
 erpnext/public/js/sales_trends_filters.js                                        |    6 +-
 erpnext/public/js/setup_wizard.js                                                |   20 +-
 erpnext/public/js/shopping_cart.js                                               |   20 +-
 erpnext/public/js/sms_manager.js                                                 |    6 +-
 erpnext/public/js/stock_analytics.js                                             |   11 +-
 erpnext/public/js/utils.js                                                       |    8 +-
 erpnext/public/js/utils/item_selector.js                                         |    4 +-
 erpnext/public/js/utils/party.js                                                 |   12 +-
 erpnext/schools/api.py                                                           |    8 +
 erpnext/schools/doctype/assessment_plan/assessment_plan.js                       |   48 +-
 erpnext/schools/doctype/assessment_result/assessment_result.js                   |   78 +-
 erpnext/schools/doctype/assessment_result_tool/assessment_result_tool.js         |    1 +
 erpnext/schools/doctype/course/course.js                                         |   12 +
 erpnext/schools/doctype/course_schedule/course_schedule.js                       |   22 +-
 erpnext/schools/doctype/course_scheduling_tool/course_scheduling_tool.js         |   18 +-
 erpnext/schools/doctype/fee_structure/fee_structure.js                           |    2 +-
 erpnext/schools/doctype/fees/fees.js                                             |   12 +-
 erpnext/schools/doctype/fees/fees_list.js                                        |    3 +-
 erpnext/schools/doctype/program/program.js                                       |   15 +
 erpnext/schools/doctype/program_course/program_course.json                       |    8 +-
 erpnext/schools/doctype/program_enrollment/program_enrollment.js                 |   35 +-
 erpnext/schools/doctype/program_enrollment/program_enrollment.json               |   70 +-
 erpnext/schools/doctype/program_enrollment_tool/program_enrollment_tool.js       |    6 +-
 erpnext/schools/doctype/student_applicant/student_applicant.js                   |    2 +-
 erpnext/schools/doctype/student_attendance_tool/student_attendance_tool.js       |   17 +-
 erpnext/schools/doctype/student_group/student_group.js                           |   17 +-
 .../schools/doctype/student_group_creation_tool/student_group_creation_tool.js   |    8 +-
 erpnext/schools/report/absent_student_report/absent_student_report.js            |    2 +-
 erpnext/schools/report/absent_student_report/absent_student_report.py            |   30 +-
 .../report/student_batch_wise_attendance/student_batch_wise_attendance.js        |   14 +-
 .../report/student_monthly_attendance_sheet/student_monthly_attendance_sheet.js  |   70 +-
 .../report/student_monthly_attendance_sheet/student_monthly_attendance_sheet.py  |    2 +-
 erpnext/selling/doctype/customer/customer.js                                     |    4 +-
 erpnext/selling/doctype/customer/customer.json                                   |   60 +
 erpnext/selling/doctype/customer/customer.py                                     |   15 +-
 erpnext/selling/doctype/installation_note/installation_note.js                   |   10 +-
 erpnext/selling/doctype/quotation/quotation.js                                   |    6 +-
 erpnext/selling/doctype/sales_order/sales_order.js                               |   33 +-
 erpnext/selling/doctype/sales_order/sales_order.json                             |    6 +-
 erpnext/selling/doctype/sales_order/sales_order.py                               |   33 +-
 erpnext/selling/doctype/sales_order/sales_order_calendar.js                      |    2 +-
 erpnext/selling/doctype/sales_order/sales_order_list.js                          |    6 +-
 erpnext/selling/page/sales_analytics/sales_analytics.js                          |    9 +-
 erpnext/selling/report/quotation_trends/quotation_trends.js                      |    2 +-
 erpnext/selling/report/sales_order_trends/sales_order_trends.js                  |    2 +-
 .../sales_person_target_variance_item_group_wise.js                              |    2 +-
 .../sales_person_wise_transaction_summary.js                                     |    2 +-
 .../territory_target_variance_item_group_wise.js                                 |    2 +-
 erpnext/selling/sales_common.js                                                  |   52 +-
 erpnext/setup/doctype/company/company.js                                         |   60 +-
 erpnext/setup/doctype/company/company.json                                       |   72 +-
 erpnext/setup/doctype/company/company.py                                         |   27 +-
 erpnext/setup/doctype/company/test_company.py                                    |    2 +-
 erpnext/setup/doctype/currency_exchange/test_currency_exchange.py                |   37 +-
 erpnext/setup/doctype/currency_exchange/test_records.json                        |   14 +
 erpnext/setup/doctype/email_digest/email_digest.js                               |   10 +-
 erpnext/setup/doctype/email_digest/email_digest.py                               |   50 +-
 erpnext/setup/doctype/email_digest/templates/default.html                        |    2 +-
 erpnext/setup/doctype/global_defaults/global_defaults.js                         |    2 +-
 erpnext/setup/doctype/item_group/item_group.py                                   |    9 +-
 erpnext/setup/doctype/sales_partner/sales_partner.js                             |    4 +-
 erpnext/setup/doctype/sales_partner/sales_partner.py                             |    2 +-
 erpnext/setup/setup_wizard/domainify.py                                          |    3 +-
 erpnext/setup/setup_wizard/install_fixtures.py                                   |   11 +-
 erpnext/setup/setup_wizard/setup_wizard.py                                       |    9 +-
 erpnext/shopping_cart/cart.py                                                    |   16 +-
 erpnext/shopping_cart/doctype/shopping_cart_settings/shopping_cart_settings.json |   75 +-
 erpnext/shopping_cart/doctype/shopping_cart_settings/shopping_cart_settings.py   |    4 +
 erpnext/startup/boot.py                                                          |    4 +-
 erpnext/stock/__init__.py                                                        |   38 +
 erpnext/stock/dashboard/item_dashboard.js                                        |    2 +-
 erpnext/stock/dashboard/item_dashboard.py                                        |    2 +
 erpnext/stock/doctype/batch/batch.js                                             |  106 +-
 erpnext/stock/doctype/delivery_note/delivery_note.js                             |   40 +-
 erpnext/stock/doctype/delivery_note/delivery_note.py                             |    2 +-
 erpnext/stock/doctype/delivery_note/test_delivery_note.py                        |   87 +-
 erpnext/stock/doctype/delivery_note/test_records.json                            |   39 -
 erpnext/stock/doctype/item/item.js                                               |   24 +-
 erpnext/stock/doctype/item/item.json                                             |    4 +-
 erpnext/stock/doctype/item/item.py                                               |    5 +-
 erpnext/stock/doctype/landed_cost_voucher/landed_cost_voucher.js                 |   67 +-
 erpnext/stock/doctype/landed_cost_voucher/test_landed_cost_voucher.py            |   29 +-
 erpnext/stock/doctype/material_request/material_request.js                       |   29 +-
 erpnext/stock/doctype/material_request/test_material_request.py                  |    4 +-
 erpnext/stock/doctype/packing_slip/packing_slip.js                               |   28 +-
 erpnext/stock/doctype/purchase_receipt/purchase_receipt.js                       |   23 +-
 erpnext/stock/doctype/purchase_receipt/purchase_receipt.py                       |   10 +-
 erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py                  |   42 +-
 erpnext/stock/doctype/purchase_receipt_item/purchase_receipt_item.json           | 3917 +++++++++++++++++++-------------------
 erpnext/stock/doctype/serial_no/serial_no.json                                   |  105 +-
 erpnext/stock/doctype/stock_entry/stock_entry.js                                 |   33 +-
 erpnext/stock/doctype/stock_entry/stock_entry.py                                 |    3 +-
 erpnext/stock/doctype/stock_entry/stock_entry_list.js                            |    2 +-
 erpnext/stock/doctype/stock_entry/test_stock_entry.py                            |   74 +-
 erpnext/stock/doctype/stock_entry_detail/stock_entry_detail.json                 | 2349 ++++++++++++-----------
 erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.js               |   26 +-
 erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.json             |    6 +-
 erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py               |    4 +-
 erpnext/stock/doctype/warehouse/test_warehouse.py                                |   40 +-
 erpnext/stock/doctype/warehouse/warehouse.js                                     |   19 +-
 erpnext/stock/doctype/warehouse/warehouse.json                                   |   12 +-
 erpnext/stock/doctype/warehouse/warehouse.py                                     |  120 +-
 erpnext/stock/report/batch_item_expiry_status/batch_item_expiry_status.js        |    2 +-
 erpnext/stock/report/batch_wise_balance_history/batch_wise_balance_history.js    |    2 +-
 erpnext/stock/report/batch_wise_balance_history/batch_wise_balance_history.py    |    9 +-
 erpnext/stock/report/delivery_note_trends/delivery_note_trends.js                |    2 +-
 .../itemwise_recommended_reorder_level/itemwise_recommended_reorder_level.js     |    4 +-
 erpnext/stock/report/purchase_receipt_trends/purchase_receipt_trends.js          |    2 +-
 erpnext/stock/report/stock_balance/stock_balance.js                              |    2 +-
 erpnext/stock/report/stock_balance/stock_balance.py                              |    5 +-
 erpnext/stock/stock_ledger.py                                                    |    7 +-
 erpnext/stock/utils.py                                                           |    2 +-
 erpnext/support/page/support_analytics/support_analytics.js                      |    9 +-
 erpnext/templates/generators/item.html                                           |    2 +-
 erpnext/templates/includes/cart.js                                               |   23 +-
 erpnext/templates/includes/order/order_taxes.html                                |    2 +
 erpnext/templates/includes/product_list.js                                       |    5 +-
 erpnext/templates/includes/product_page.js                                       |   29 +-
 erpnext/templates/pages/order.html                                               |   20 +-
 erpnext/templates/pages/order.py                                                 |    8 +
 erpnext/templates/pages/projects.js                                              |    7 +-
 erpnext/templates/print_formats/includes/taxes.html                              |    4 +-
 erpnext/templates/utils.py                                                       |   14 +-
 erpnext/translations/am.csv                                                      |  805 ++++----
 erpnext/translations/ar.csv                                                      | 1093 +++++------
 erpnext/translations/bg.csv                                                      |  813 ++++----
 erpnext/translations/bn.csv                                                      |  837 ++++----
 erpnext/translations/bs.csv                                                      |  805 ++++----
 erpnext/translations/ca.csv                                                      |  805 ++++----
 erpnext/translations/cs.csv                                                      |  805 ++++----
 erpnext/translations/da-DK.csv                                                   |   30 +
 erpnext/translations/da.csv                                                      | 2002 +++++++++----------
 erpnext/translations/de.csv                                                      |  861 ++++-----
 erpnext/translations/el.csv                                                      |  805 ++++----
 erpnext/translations/es-AR.csv                                                   |    2 +-
 erpnext/translations/es-CL.csv                                                   |   17 +-
 erpnext/translations/es-GT.csv                                                   |    2 +-
 erpnext/translations/es-MX.csv                                                   |    2 +-
 erpnext/translations/es-NI.csv                                                   |    2 +-
 erpnext/translations/es-PE.csv                                                   |  144 +-
 erpnext/translations/es.csv                                                      | 1351 ++++++-------
 erpnext/translations/et.csv                                                      |  805 ++++----
 erpnext/translations/fa.csv                                                      |  805 ++++----
 erpnext/translations/fi.csv                                                      |  805 ++++----
 erpnext/translations/fr-CA.csv                                                   |    2 +-
 erpnext/translations/fr.csv                                                      |  957 +++++-----
 erpnext/translations/gu.csv                                                      |  805 ++++----
 erpnext/translations/he.csv                                                      |  586 +++---
 erpnext/translations/hi.csv                                                      |  805 ++++----
 erpnext/translations/hr.csv                                                      |  805 ++++----
 erpnext/translations/hu.csv                                                      |  811 ++++----
 erpnext/translations/id.csv                                                      |  805 ++++----
 erpnext/translations/is.csv                                                      |  805 ++++----
 erpnext/translations/it.csv                                                      | 1137 +++++------
 erpnext/translations/ja.csv                                                      |  805 ++++----
 erpnext/translations/km.csv                                                      |  811 ++++----
 erpnext/translations/kn.csv                                                      |  823 ++++----
 erpnext/translations/ko.csv                                                      |  823 ++++----
 erpnext/translations/ku.csv                                                      |  823 ++++----
 erpnext/translations/lo.csv                                                      |  823 ++++----
 erpnext/translations/lt.csv                                                      |  823 ++++----
 erpnext/translations/lv.csv                                                      |  823 ++++----
 erpnext/translations/mk.csv                                                      |  823 ++++----
 erpnext/translations/ml.csv                                                      |  823 ++++----
 erpnext/translations/mr.csv                                                      |  823 ++++----
 erpnext/translations/ms.csv                                                      |  823 ++++----
 erpnext/translations/my.csv                                                      |  823 ++++----
 erpnext/translations/nl.csv                                                      |  827 ++++----
 erpnext/translations/no.csv                                                      |  818 ++++----
 erpnext/translations/pl.csv                                                      |  823 ++++----
 erpnext/translations/ps.csv                                                      |  823 ++++----
 erpnext/translations/pt-BR.csv                                                   |  550 +++---
 erpnext/translations/pt.csv                                                      |  884 ++++-----
 erpnext/translations/ro.csv                                                      |  821 ++++----
 erpnext/translations/ru.csv                                                      |  827 ++++----
 erpnext/translations/si.csv                                                      |  823 ++++----
 erpnext/translations/sk.csv                                                      |  823 ++++----
 erpnext/translations/sl.csv                                                      |  820 ++++----
 erpnext/translations/sq.csv                                                      |  817 ++++----
 erpnext/translations/sr.csv                                                      |  822 ++++----
 erpnext/translations/sv.csv                                                      |  820 ++++----
 erpnext/translations/ta.csv                                                      |  820 ++++----
 erpnext/translations/te.csv                                                      |  817 ++++----
 erpnext/translations/th.csv                                                      |  823 ++++----
 erpnext/translations/tr.csv                                                      |  860 ++++-----
 erpnext/translations/uk.csv                                                      |  824 ++++----
 erpnext/translations/ur.csv                                                      |  791 ++++----
 erpnext/translations/vi.csv                                                      |  847 +++++----
 erpnext/translations/zh-TW.csv                                                   | 3434 ++++++++++++++++++++-------------
 erpnext/translations/zh.csv                                                      |  832 ++++----
 erpnext/utilities/page/__init__.py                                               |    0
 erpnext/utilities/page/leaderboard/__init__.py                                   |    0
 erpnext/utilities/page/leaderboard/leaderboard.css                               |   54 +
 erpnext/utilities/page/leaderboard/leaderboard.html                              |   23 +
 erpnext/utilities/page/leaderboard/leaderboard.js                                |  248 +++
 erpnext/utilities/page/leaderboard/leaderboard.json                              |   19 +
 erpnext/utilities/page/leaderboard/leaderboard.py                                |  182 ++
 erpnext/utilities/page/leaderboard/leaderboard_main_head.html                    |    8 +
 erpnext/utilities/page/leaderboard/leaderboard_row_head.html                     |    3 +
 erpnext/utilities/transaction_base.py                                            |    4 +-
 544 files changed, 35375 insertions(+), 31697 deletions(-)
 create mode 100644 .eslintrc
 create mode 100644 erpnext/commands/__init__.py
 create mode 100644 erpnext/demo/data/assessment_criteria.json
 create mode 100644 erpnext/demo/data/grading_scale.json
 create mode 100644 erpnext/demo/data/student_batch_name.json
 create mode 100644 erpnext/docs/assets/img/accounts/bank-reconciliation-2.png
 create mode 100644 erpnext/docs/assets/img/accounts/chart-of-cost-center.png
 delete mode 100644 erpnext/docs/assets/img/accounts/perpetual-2.png
 delete mode 100644 erpnext/docs/assets/img/accounts/perpetual-3.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-dn-gl-5.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-dn-sl-4.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-inv-gl-7.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-inv-sl-6.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-pinv-gl-3.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-receipt-gl-2.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-receipt-sl-1.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-st-issue-gl.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-st-issue-sl.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-st-receipt-gl.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-st-receipt-sl.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-st-transfer-gl.png
 create mode 100644 erpnext/docs/assets/img/accounts/perpetual-st-transfer-sl.png
 delete mode 100644 erpnext/docs/assets/img/collaboration-tools/calendar-5.png
 delete mode 100644 erpnext/docs/assets/img/collaboration-tools/calendar-7.png
 rename erpnext/docs/assets/{old_images/erpnext => img/collaboration-tools}/calender-email-digest.png (76%)
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/delete-a-doc.png
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/deleted-docs-list.gif
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/enable-versioning.png
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/restore-a-doc.png
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/restored-doc.png
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/version-details.png
 create mode 100644 erpnext/docs/assets/img/collaboration-tools/version-links.png
 create mode 100644 erpnext/docs/assets/img/human-resources/holiday-list-1.png
 create mode 100644 erpnext/docs/assets/img/human-resources/holiday-list-2.gif
 create mode 100644 erpnext/docs/assets/img/human-resources/holiday-list-3.png
 create mode 100644 erpnext/docs/assets/img/human-resources/holiday-list-4.png
 delete mode 100644 erpnext/docs/assets/img/human-resources/holiday-list.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/__init__.py
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-criteria.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-group-details.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-group-term.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-plan-criteria.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-plan-details.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-result-tool.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/assessment-result.png
 create mode 100644 erpnext/docs/assets/img/schools/assessment/grading-scale.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-actions.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-domain.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-folders.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-inbox.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-password.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-service.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-user-link.png
 create mode 100644 erpnext/docs/assets/img/setup/email/email-user.png
 create mode 100644 erpnext/docs/assets/img/setup/email/make-from-email.png
 rename erpnext/docs/assets/{old_images/erpnext => img/setup}/implementation-image.png (100%)
 create mode 100644 erpnext/docs/assets/img/setup/integrations/dropbox_redirect_uri.png
 create mode 100644 erpnext/docs/assets/img/setup/users/user-login-email.png
 create mode 100644 erpnext/docs/assets/img/setup/users/user-login-mobile.png
 rename erpnext/docs/assets/{old_images/erpnext => img/stock}/fifo.png (100%)
 create mode 100644 erpnext/docs/assets/img/stock/item-manufacturing-and-website.png
 create mode 100644 erpnext/docs/assets/img/stock/item-purchase.png
 create mode 100644 erpnext/docs/assets/img/stock/item-reorder.png
 create mode 100644 erpnext/docs/assets/img/stock/item-sales.png
 create mode 100644 erpnext/docs/assets/img/stock/item-supplier.png
 create mode 100644 erpnext/docs/assets/img/stock/item-warranty.png
 create mode 100644 erpnext/docs/assets/img/website/customer-portal-order.png
 create mode 100644 erpnext/docs/assets/img/website/invoice-paid.png
 create mode 100644 erpnext/docs/assets/img/website/invoice-unpaid.png
 create mode 100644 erpnext/docs/assets/img/website/portal-menu.png
 create mode 100644 erpnext/docs/assets/img/website/website-signup-details.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-10.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-11.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-12.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-13.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-14.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-4.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-5.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-6.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-7.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-8.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/accounting-for-stock-9.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/auto-notification.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/backup-manager.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/bank-reconciliation-2.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/budgeting-4.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/budgeting.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/calender-event-lead.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/calender-event-manually.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/calender-event-notification.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/calender-event-permission.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/calender-event-recurring.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/chart-of-cost-centers.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/custom-field-document.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/custom-field-insert.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/customer-portal-login.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/customer-portal-orders-1.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/customer-portal-sign-up-1.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/customer-portal-sign-up-2.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/customer-portal-sign-up-3.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/customize-form-custom-field.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/dropbox-access.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/email-settings1.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/email-settings2.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/faq-manufacturer-part-no.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/faq-reorder-level.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/faq-reorder-qty.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/faq-warranty.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/holiday-list-1.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/holiday-list-2.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/item-manufacturing-website.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/item-purchase.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/item-sales.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/portal-invoice-paid.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/portal-menu.png
 delete mode 100644 erpnext/docs/assets/old_images/erpnext/portal-order-billed.png
 delete mode 100644 erpnext/docs/user/manual/de/setting-up/third-party-backups.md
 delete mode 100644 erpnext/docs/user/manual/en/human-resources/setup/holiday-list.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/__init__.py
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/assessment_criteria.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/assessment_group.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/assessment_plan.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/assessment_result.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/assessment_result_tool.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/grading_scale.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/index.md
 create mode 100644 erpnext/docs/user/manual/en/schools/Assessment/index.txt
 create mode 100644 erpnext/docs/user/manual/en/setting-up/email/email-inbox.md
 delete mode 100644 erpnext/docs/user/manual/en/setting-up/third-party-backups.md
 create mode 100644 erpnext/docs/user/manual/en/using-erpnext/document-versioning.md
 create mode 100644 erpnext/docs/user/manual/en/using-erpnext/restore-deleted-docs.md
 create mode 100644 erpnext/patches/v8_0/create_domain_docs.py
 create mode 100644 erpnext/patches/v8_0/move_account_head_from_account_to_warehouse_for_inventory.py
 create mode 100644 erpnext/patches/v8_0/move_perpetual_inventory_setting.py
 create mode 100644 erpnext/patches/v8_0/save_system_settings.py
 create mode 100644 erpnext/patches/v8_0/set_sales_invoice_serial_number_from_delivery_note.py
 create mode 100644 erpnext/patches/v8_0/update_sales_cost_in_project.py
 create mode 100644 erpnext/patches/v8_1/__init__.py
 create mode 100644 erpnext/patches/v8_1/delete_deprecated_reports.py
 delete mode 100644 erpnext/stock/doctype/delivery_note/test_records.json
 create mode 100644 erpnext/translations/da-DK.csv
 create mode 100644 erpnext/utilities/page/__init__.py
 create mode 100644 erpnext/utilities/page/leaderboard/__init__.py
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard.css
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard.html
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard.js
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard.json
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard.py
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard_main_head.html
 create mode 100644 erpnext/utilities/page/leaderboard/leaderboard_row_head.html
INFO:bench.utils:find . -name "*.pyc" -delete
INFO:bench.app:pulling dashboard
INFO:bench.utils:git pull  upstream master
From https://github.com/Athenolabs/dashboard
 * branch            master     -> FETCH_HEAD
Already up-to-date.
INFO:bench.utils:find . -name "*.pyc" -delete
Updating Python libraries...
INFO:bench.utils:./env/bin/pip install --upgrade pip
Requirement already up-to-date: pip in ./env/lib/python2.7/site-packages
INFO:bench.utils:./env/bin/pip install -q -r /home/frappe/.bench/requirements.txt
INFO:bench.utils:./env/bin/pip install -q -r ./apps/frappe/requirements.txt
INFO:bench.utils:./env/bin/pip install -q -r ./apps/erpnext/requirements.txt
INFO:bench.utils:./env/bin/pip install -q -r ./apps/dashboard/requirements.txt
Updating node libraries...
INFO:bench.utils:npm install

> chromedriver@2.30.1 install /home/frappe/frappe-bench/node_modules/chromedriver
> node install.js

Downloading https://chromedriver.storage.googleapis.com/2.30/chromedriver_linux64.zip
Saving to /tmp/chromedriver/chromedriver_linux64.zip
Received 781K...
Received 1568K...
Received 2352K...
Received 3136K...
Received 3774K total.
Extracting zip contents
Copying to target path /home/frappe/frappe-bench/node_modules/chromedriver/lib/chromedriver
Fixing file permissions
Done. ChromeDriver binary available at /home/frappe/frappe-bench/node_modules/chromedriver/lib/chromedriver/chromedriver
frappe@ /home/frappe/frappe-bench
├─┬ chromedriver@2.30.1
│ ├─┬ extract-zip@1.6.5
│ │ ├─┬ concat-stream@1.6.0
│ │ │ └── typedarray@0.0.6
│ │ ├─┬ debug@2.2.0
│ │ │ └── ms@0.7.1
│ │ ├── mkdirp@0.5.0
│ │ └─┬ yauzl@2.4.1
│ │   └─┬ fd-slicer@1.0.1
│ │     └── pend@1.2.0
│ ├── kew@0.7.0
│ └─┬ rimraf@2.6.1
│   └─┬ glob@7.1.2
│     ├── fs.realpath@1.0.0
│     ├─┬ inflight@1.0.6
│     │ └── wrappy@1.0.2
│     └── once@1.4.0
└─┬ nightwatch@0.9.16
  ├─┬ chai-nightwatch@0.1.1
  │ ├── assertion-error@1.0.0
  │ └─┬ deep-eql@0.1.3
  │   └── type-detect@0.1.1
  ├── ejs@0.8.3
  ├─┬ lodash.clone@3.0.3
  │ ├─┬ lodash._baseclone@3.3.0
  │ │ ├── lodash._arraycopy@3.0.0
  │ │ ├── lodash._arrayeach@3.0.0
  │ │ ├─┬ lodash._baseassign@3.2.0
  │ │ │ └── lodash._basecopy@3.0.1
  │ │ ├── lodash._basefor@3.0.3
  │ │ ├── lodash.isarray@3.0.4
  │ │ └─┬ lodash.keys@3.1.2
  │ │   ├── lodash._getnative@3.9.1
  │ │   └── lodash.isarguments@3.1.0
  │ ├── lodash._bindcallback@3.0.1
  │ └── lodash._isiterateecall@3.0.9
  ├─┬ lodash.defaultsdeep@4.3.2
  │ ├── lodash._baseclone@4.5.7
  │ ├── lodash._stack@4.1.3
  │ ├── lodash.keysin@4.2.0
  │ ├── lodash.mergewith@4.6.0
  │ └── lodash.rest@4.0.5
  ├── minimatch@3.0.3
  ├── mkpath@1.0.0
  ├─┬ mocha-nightwatch@3.2.2
  │ ├── browser-stdout@1.3.0
  │ ├─┬ commander@2.9.0
  │ │ └── graceful-readlink@1.0.1
  │ ├─┬ debug@2.2.0
  │ │ └── ms@0.7.1
  │ ├── diff@1.4.0
  │ ├── glob@7.0.5
  │ ├── growl@1.9.2
  │ ├── json3@3.3.2
  │ ├─┬ lodash.create@3.1.1
  │ │ └── lodash._basecreate@3.0.3
  │ └─┬ supports-color@3.1.2
  │   └── has-flag@1.0.0
  ├─┬ optimist@0.6.1
  │ └── wordwrap@0.0.3
  ├─┬ proxy-agent@2.0.0
  │ ├─┬ agent-base@2.1.1
  │ │ └── semver@5.0.3
  │ ├── http-proxy-agent@1.0.0
  │ ├── https-proxy-agent@1.0.0
  │ ├── lru-cache@2.6.5
  │ ├─┬ pac-proxy-agent@1.1.0
  │ │ ├─┬ get-uri@2.0.0
  │ │ │ ├── data-uri-to-buffer@0.0.4
  │ │ │ ├── file-uri-to-path@0.0.2
  │ │ │ └─┬ ftp@0.3.10
  │ │ │   ├─┬ readable-stream@1.1.14
  │ │ │   │ ├── isarray@0.0.1
  │ │ │   │ └── string_decoder@0.10.31
  │ │ │   └── xregexp@2.0.0
  │ │ ├─┬ pac-resolver@2.0.0
  │ │ │ ├── co@3.0.6
  │ │ │ ├─┬ degenerator@1.0.4
  │ │ │ │ ├── ast-types@0.9.12
  │ │ │ │ ├─┬ escodegen@1.8.1
  │ │ │ │ │ ├── esprima@2.7.3
  │ │ │ │ │ ├── estraverse@1.9.3
  │ │ │ │ │ ├─┬ optionator@0.8.2
  │ │ │ │ │ │ ├── deep-is@0.1.3
  │ │ │ │ │ │ ├── fast-levenshtein@2.0.6
  │ │ │ │ │ │ ├── levn@0.3.0
  │ │ │ │ │ │ ├── prelude-ls@1.1.2
  │ │ │ │ │ │ ├── type-check@0.3.2
  │ │ │ │ │ │ └── wordwrap@1.0.0
  │ │ │ │ │ └─┬ source-map@0.2.0
  │ │ │ │ │   └── amdefine@1.0.1
  │ │ │ │ └── esprima@3.1.3
  │ │ │ ├── ip@1.0.1
  │ │ │ ├── netmask@1.0.6
  │ │ │ └── thunkify@2.1.2
  │ │ └─┬ raw-body@2.2.0
  │ │   ├── bytes@2.4.0
  │ │   └── iconv-lite@0.4.15
  │ └─┬ socks-proxy-agent@2.1.1
  │   └─┬ socks@1.1.10
  │     ├── ip@1.1.5
  │     └── smart-buffer@1.1.15
  └── q@1.4.1

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN frappe@ No description
Backing up sites...
Patching sites...
Migrating site1.local
Executing frappe.patches.v8_0.update_gender_and_salutation in site1.local (1bd3e0294da19198)
Success
Executing erpnext.patches.v8_0.move_perpetual_inventory_setting in site1.local (1bd3e0294da19198)
Success
Executing execute:frappe.reload_doc('stock', 'doctype', 'warehouse') # 2017-04-24 in site1.local (1bd3e0294da19198)
Success
Executing erpnext.patches.v8_0.set_sales_invoice_serial_number_from_delivery_note in site1.local (1bd3e0294da19198)
Success
Executing erpnext.patches.v8_0.move_account_head_from_account_to_warehouse_for_inventory in site1.local (1bd3e0294da19198)
Success
Executing erpnext.patches.v8_0.create_domain_docs       #16-05-2017 in site1.local (1bd3e0294da19198)
Traceback (most recent call last):
  File "/usr/lib64/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib64/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 91, in <module>
    main()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 17, in main
    click.Group(commands=commands)(prog_name='bench')
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/commands/__init__.py", line 24, in _func
    ret = f(frappe._dict(ctx.obj), *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/commands/site.py", line 216, in migrate
    migrate(context.verbose, rebuild_website=rebuild_website)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py", line 31, in migrate
    frappe.modules.patch_handler.run_all()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py", line 29, in run_all
    if not run_single(patchmodule = patch):
  File "/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py", line 63, in run_single
    return execute_patch(patchmodule, method, methodargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py", line 83, in execute_patch
    frappe.get_attr(patchmodule.split()[0] + ".execute")()
  File "/home/frappe/frappe-bench/apps/erpnext/erpnext/patches/v8_0/create_domain_docs.py", line 26, in execute
    domains = frappe.db.sql_list("select distinct domain from `tabCompany` where domain != 'Other' {0}".format(condition))
  File "/home/frappe/frappe-bench/apps/frappe/frappe/database.py", line 210, in sql_list
    return [r[0] for r in self.sql(query, values, debug=debug)]
  File "/home/frappe/frappe-bench/apps/frappe/frappe/database.py", line 153, in sql
    self._cursor.execute(query)
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/MySQLdb/cursors.py", line 250, in execute
    self.errorhandler(self, exc, value)
  File "/home/frappe/frappe-bench/env/lib/python2.7/site-packages/MySQLdb/connections.py", line 42, in defaulterrorhandler
    raise errorvalue
_mysql_exceptions.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 's IT'' at line 1")
mbauskar commented 7 years ago

fixed in https://github.com/frappe/erpnext/pull/9463