Upgrade strategies v8 -> v14

This is running on “Ubuntu 16.04.3 LTS”

I have had some success getting updated to V11; here’s the process for updating the system “in-situ” using bench. I suspect some steps are redundant, and some are specific to my system.

  • Upgrading ERPNext
    • to the latest v8.x.x release
      • cd ~/.bench ; git checkout – .
      • cd ~/frappe-bench
      • bench update
      • (cd apps/erpnext ; git checkout --)
      • bench switch-to-branch v8.x.x
      • source env/bin/activate
      • pip install PyPDF2 pyotp==2.2.5 pyqrcode
      • bench update --patch --no-backup
      • bench update --no-backup
    • v9.x.x
      • bench switch-to-branch v9.x.x --upgrade
      • sudo apt-get -f install
      • sudo apt-get install postgresql
      • pip install boto3==1.9.45 urllib3==1.23 chardet==3.0.4 psycopg2==2.7.7
      • bench update --patch --no-backup
      • bench update --no-backup
    • v10.x.x
      • bench switch-to-branch v10.x.x --upgrade
      • bench update --patch --no-backup
      • bench update --no-backup
    • v11.x.x
      • bench switch-to-branch version-11 --upgrade
      • bench update --patch --no-backup
      • bench update --no-backup

From V11, I think I will need to export the site (db and files) and import it into a fresh install using bench and docker. The current OS is outdated, and I believe v12 switched to Python 3.x.

My work is all on a copy of the system, so my experiments are strictly in the testing phase.

Presently, I’m getting some JS errors when trying to save some doctypes; for example when trying to save a Material Request doc, I get this error:

Uncaught (in promise) TypeError: erpnext.utils.copy_value_in_all_rows is not a function
    at set_schedule_date (eval at setup (form.min.js?ver=1683840486.0:2687:14), <anonymous>:1188:17)
    at Class.schedule_date (eval at setup (form.min.js?ver=1683840486.0:2687:14), <anonymous>:1179:3)
    at runner (form.min.js?ver=1683840486.0:2624:41)
    at form.min.js?ver=1683840486.0:2651:13

Someone else reported this issue here, but there was no solution posted. Any tips are welcome.