Fresh v10 Install Errors

Hi Everyone,

I’m having trouble trying to figure out Bench, Frappe and ERPNext installations. Even by following the guides that I found in the forum, it comes with tons of error either at installation, or when in production.

Take for example, by following the official manual installation guide @ https://frappe.io/docs/user/en/bench/guides/manual-setup, it gives me the following versions. I was expecting it to be at the stable master branch but it doesn’t.

erpnext 12.x.x-develop
foundation 0.0.1
frappe 12.x.x-develop

I did try adding --branch master to the commands below but lots of errors due to incompatibility between them.

git clone --branch master --depth 1 https://github.com/frappe/bench bench-repo

bench init --frappe-branch master frappe-bench

bench get-app --branch master erpnext https://github.com/frappe/erpnext

Could anyone provide me the commands for installing a stable ERPNext v10?

Thank you in advance!

You are facing issues because you have chosen manual setup method with unstable (bleeding edge branch) of ERPNext and Frappe for version 12

So I assume, you have all dependencies installed correctly with working bench. Then running following command will fix your version related issue then feel free to create

bench switch-to-master --upgrade
bench migrate
# bench new-site --install-app erpnext yoursitename
# Presently version 10 is hosted at master branch, it may change in future when next version releases.
# For future reference, instead running following will do the magic:
# bench switch-to-branch v10.x.x
# available branches 
# v4.x.x
# v5.x.x
# v6.x.x
# v7.x.x
# v7.0.x
# v8.x.x
# v9.x.x
# v11

image

Hi @yashodhan,

Here are the issues I faced with your commands.

frappe@Ubuntu-VirtualBox:~/frappe-bench$ bench switch-to-master --upgrade
Usage: bench switch-to-master [OPTIONS]
Try “bench switch-to-master --help” for help.
Error: no such option: --upgrade

If I were to omit “–upgrade” it gives me the following result

frappe@Ubuntu-VirtualBox:~/frappe-bench$ bench switch-to-master
Switching for frappe
INFO:bench.utils:git config --unset-all remote.upstream.fetch
INFO:bench.utils:git config --add remote.upstream.fetch ‘+refs/heads/:refs/remotes/upstream/
INFO:bench.utils:git fetch upstream
INFO:bench.utils:git checkout master
Branch master set up to track remote branch master from upstream.
Switched to a new branch ‘master’
INFO:bench.utils:git merge upstream/master
Already up-to-date.
Branch master does not exist in Upstream for erpnext
Successfully switched branches for:
frappe
()
Switched to master
Please run bench update --patch to be safe from any differences in database schema

Looks cool, now my versioning is correct.

frappe@Ubuntu-VirtualBox:~/frappe-bench$ bench version
erpnext 10.1.70
foundation 0.0.1
frappe 10.1.60

However, when I do a “bench update” it gives me the following errors:

frappe 10.1.60 has requirement dropbox==9.1.0, but you’ll have dropbox 7.3.1 which is incompatible.

and also

Migrating site1.local
Executing execute:frappe.reload_doc(‘core’, ‘doctype’, ‘docfield’, force=True) #2017-03-03 in site1.local (_1bd3e0294da19198)
Success
Executing execute:frappe.reload_doc(‘core’, ‘doctype’, ‘docperm’) #2017-03-03 in site1.local (_1bd3e0294da19198)
Traceback (most recent call last):
File “/usr/lib/python2.7/runpy.py”, line 174, in _run_module_as_main
main”, fname, loader, pkg_name)
File “/usr/lib/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 94, in
main()
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 18, in main
click.Group(commands=commands)(prog_name=‘bench’)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/home/frappe/frappe-bench/env/local/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 222, 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 81, in execute_patch
exec(patchmodule.split(“execute:”)[1],globals())
File “”, line 1, in
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 695, in reload_doc
return frappe.modules.reload_doc(module, dt, dn, force=force, reset_permissions=reset_permissions)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/utils.py”, line 155, in reload_doc
return import_files(module, dt, dn, force=force, reset_permissions=reset_permissions)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py”, line 19, in import_files
reset_permissions=reset_permissions)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py”, line 24, in import_file
ret = import_file_by_path(path, force, pre_process=pre_process, reset_permissions=reset_permissions)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py”, line 58, in import_file_by_path
ignore_version=ignore_version, reset_permissions=reset_permissions)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py”, line 132, in import_doc
doc.insert()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 240, in insert
d.db_insert()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/base_document.py”, line 303, in db_insert
), list(d.values()))
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 166, in sql
self._cursor.execute(query, values)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/cursors.py”, line 170, in execute
result = self._query(query)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/cursors.py”, line 328, in _query
conn.query(q)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 516, in query
self._affected_rows = self._read_query_result(unbuffered=unbuffered)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 727, in _read_query_result
result.read()
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 1066, in read
first_packet = self.connection._read_packet()
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/connections.py”, line 683, in _read_packet
packet.check_error()
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/protocol.py”, line 220, in check_error
err.raise_mysql_exception(self._data)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/pymysql/err.py”, line 109, in raise_mysql_exception
raise errorclass(errno, errval)
pymysql.err.IntegrityError: (1048, u"Column ‘translatable’ cannot be null")

Alternatively, are there commands to install v10 fresh, instead of switching after installation?

if your installation is new, feel free to drop the site.

bench drop-site site1.local

then create new site, it should fix your issue.

After switching to master branch, I tried dropping site, creating new site and then install ErpNext but still there are errors.

 Installing erpnext...
Updating DocTypes for erpnext       : [                                        ]Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/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 94, in <module>
    main()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 18, in main
    click.Group(commands=commands)(prog_name='bench')
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/frappe/frappe-bench/env/local/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 165, in install_app
    _install_app(app, verbose=context.verbose)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/installer.py", line 141, in install_app
    sync_for(name, force=True, sync_everything=True, verbose=verbose, reset_permissions=True)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/sync.py", line 45, in sync_for
    reset_permissions=reset_permissions, for_sync=True)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py", line 58, in import_file_by_path
    ignore_version=ignore_version, reset_permissions=reset_permissions)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/modules/import_file.py", line 132, in import_doc
    doc.insert()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 248, in insert
    self.run_post_save_methods()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 889, in run_post_save_methods
    self.run_method("on_update")
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 757, in run_method
    out = Document.hook(fn)(self, *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 1026, in composer
    return composed(self, method, *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 1009, in runner
    add_to_return_value(self, fn(self, *args, **kwargs))
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 751, in <lambda>
    fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py", line 238, in on_update
    self.run_module_method("on_doctype_update")
  File "/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/doctype/doctype.py", line 302, in run_module_method
    module = load_doctype_module(self.name, self.module)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/modules/utils.py", line 187, in load_doctype_module
    raise ImportError('Module import failed for {0} ({1})'.format(doctype, module_name + ' Error: ' + str(e)))
ImportError: Module import failed for Exchange Rate Revaluation (erpnext.accounts.doctype.exchange_rate_revaluation.exchange_rate_revaluation Error: No module named cache_manager)

Does anyone has a more straightforward method to install v10 fresh manually?

Thank you.

wget https://raw.githubusercontent.com/frappe/bench/master/playbooks/install.py
sudo python install.py --production --user frappe2 --bench-branch master --frappe-branch master --erpnext-branch master --mysql-root-password PASSWORD --admin-password PASSWORD
history -c #clear passwords from cli history

start fresh with new user frappe2
you may also remove mysql/mariadb server to ensure install doesn’t fail

Hi @yashodhan,

I know the Easy Install script works for production environment, tried using it for development environment and it will fail. Thus looking for manual installation commands. Maybe let me start it off. Below are the few commands which I believe I’m requesting for the master branch, which is v10 installation.

git clone --branch master --depth 1 https://github.com/frappe/bench bench-repo

bench init --frappe-branch master frappe-bench

bench get-app --branch master erpnext https://github.com/frappe/erpnext

Ideally it should work since i’m requesting the stable version of Bench, Frappe & ERPNext. But it doesn’t work once I bench init --frappe-branch master frappe-bench as there are errors as shown below.

/home/frappe/frappe-bench/apps/frappe/frappe/build.py:106: UserWarning: Source /home/frappe/frappe-bench/apps/frappe_io/frappe_io/docs does not exists.
warnings.warn(‘Source {source} does not exists.’.format(source = source))
SyntaxError: Unexpected end of JSON input
at JSON.parse ()
at make_build_map (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:193:22)
at Object. (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:22:17)
at Module._compile (module.js:653:30)
at Object.Module._extensions…js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)

If I choose to ignore this warning and move on to get-app erpnext, I will be met with the below errors.

/home/frappe/frappe-bench/apps/frappe/frappe/build.py:106: UserWarning: Source /home/frappe/frappe-bench/apps/frappe_io/frappe_io/docs does not exists.
warnings.warn(‘Source {source} does not exists.’.format(source = source))
/home/frappe/frappe-bench/apps/frappe/frappe/build.py:106: UserWarning: Source /home/frappe/frappe-bench/apps/foundation/foundation/docs does not exists.
warnings.warn(‘Source {source} does not exists.’.format(source = source))
SyntaxError: Unexpected end of JSON input
at JSON.parse ()
at make_build_map (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:193:22)
at Object. (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:22:17)
at Module._compile (module.js:653:30)
at Object.Module._extensions…js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)
SyntaxError: Unexpected end of JSON input
at JSON.parse ()
at make_build_map (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:193:22)
at Object. (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:22:17)
at Module._compile (module.js:653:30)
at Object.Module._extensions…js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)

And if I choose to ignore again and move on to install erpnext and bench start it, I will be met with the empty screen when accessing ERPNext for the first time

And on terminal, the errors are as follow

11:59:34 system | schedule.1 started (pid=30199)
11:59:34 system | watch.1 started (pid=30187)
11:59:34 system | worker_short.1 started (pid=30201)
11:59:34 system | web.1 started (pid=30196)
11:59:35 socketio.1 | listening on *: 9000
11:59:41 web.1 | * Running on http://0.0.0.0:8000/ (Press CTRL+C to quit)
11:59:41 web.1 | * Restarting with inotify reloader
11:59:42 watch.1 | SyntaxError: Unexpected end of JSON input
11:59:42 watch.1 | at JSON.parse ()
11:59:42 watch.1 | at make_build_map (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:193:22)
11:59:42 watch.1 | at Object. (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:22:17)
11:59:42 watch.1 | at Module._compile (module.js:653:30)
11:59:42 watch.1 | at Object.Module._extensions…js (module.js:664:10)
11:59:42 watch.1 | at Module.load (module.js:566:32)
11:59:42 watch.1 | at tryModuleLoad (module.js:506:12)
11:59:42 watch.1 | at Function.Module._load (module.js:498:3)
11:59:42 watch.1 | at Function.Module.runMain (module.js:694:10)
11:59:42 watch.1 | at startup (bootstrap_node.js:204:16)
11:59:42 watch.1 | SyntaxError: Unexpected end of JSON input
11:59:42 watch.1 | at JSON.parse ()
11:59:42 watch.1 | at make_build_map (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:193:22)
11:59:42 watch.1 | at Object. (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:22:17)
11:59:42 watch.1 | at Module._compile (module.js:653:30)
11:59:42 watch.1 | at Object.Module._extensions…js (module.js:664:10)
11:59:42 watch.1 | at Module.load (module.js:566:32)
11:59:42 watch.1 | at tryModuleLoad (module.js:506:12)
11:59:42 watch.1 | at Function.Module._load (module.js:498:3)
11:59:42 watch.1 | at Function.Module.runMain (module.js:694:10)
11:59:42 watch.1 | at startup (bootstrap_node.js:204:16)
11:59:42 watch.1 | compiling avatar.less
11:59:42 watch.1 | compiling calendar.less
11:59:42 watch.1 | compiling common.less
11:59:42 web.1 | * Debugger is active!
11:59:42 web.1 | * Debugger PIN: 444-007-798
11:59:42 watch.1 | compiling controls.less
11:59:42 watch.1 | compiling desk.less
11:59:42 watch.1 | compiling desktop.less
11:59:42 watch.1 | compiling docs.less
11:59:42 watch.1 | compiling email.less
11:59:42 watch.1 | compiling form.less
11:59:42 watch.1 | compiling form_grid.less
11:59:42 watch.1 | compiling gantt.less
11:59:42 watch.1 | compiling indicator.less
11:59:42 watch.1 | compiling kanban.less
11:59:43 watch.1 | compiling list.less
11:59:43 watch.1 | compiling mixins.less
11:59:43 watch.1 | compiling mobile.less
11:59:43 watch.1 | compiling module.less
11:59:43 watch.1 | compiling navbar.less
11:59:43 watch.1 | compiling page.less
11:59:43 watch.1 | compiling report.less
11:59:43 watch.1 | compiling role_editor.less
11:59:43 watch.1 | compiling sidebar.less
11:59:43 watch.1 | compiling slickgrid.less
11:59:43 watch.1 | compiling tags.less
11:59:43 watch.1 | compiling tree.less
11:59:43 watch.1 | compiling website.less
11:59:43 watch.1 | compiling email.less
11:59:43 watch.1 | compiling erpnext.less
11:59:43 watch.1 | compiling hub.less
11:59:43 watch.1 | compiling pos.less
11:59:43 watch.1 | compiling website.less
11:59:43 watch.1 | file watching on *: 6787
11:59:44 watch.1 | Less files compiled
11:59:44 watch.1 | Wrote css/frappe-web.css - 65.43 KB
11:59:44 watch.1 | Wrote js/frappe-web.min.js - 135.26 KB
11:59:44 watch.1 | Wrote js/control.min.js - 81.7 KB
11:59:44 watch.1 | Wrote js/dialog.min.js - 124.34 KB
11:59:44 watch.1 | Wrote css/desk.min.css - 310.94 KB
11:59:44 watch.1 | Wrote css/frappe-rtl.css - 32.73 KB
11:59:44 watch.1 | Wrote js/libs.min.js - 1.13 MB
11:59:44 watch.1 | Wrote js/desk.min.js - 481.11 KB
11:59:44 watch.1 | Wrote css/module.min.css - 2.16 KB
11:59:44 watch.1 | Wrote css/form.min.css - 4.55 KB
11:59:44 watch.1 | Wrote js/form.min.js - 205.97 KB
11:59:44 watch.1 | Wrote css/list.min.css - 13.67 KB
11:59:44 watch.1 | Wrote js/list.min.js - 161.79 KB
11:59:44 watch.1 | Wrote css/report.min.css - 8.31 KB
11:59:44 watch.1 | Wrote js/report.min.js - 263.25 KB
11:59:44 watch.1 | Wrote js/web_form.min.js - 248.66 KB
11:59:44 watch.1 | Wrote css/web_form.css - 24.69 KB
11:59:44 watch.1 | Wrote js/print_format_v3.min.js - 25.87 KB
11:59:44 watch.1 | Wrote css/erpnext.css - 8.17 KB
11:59:44 watch.1 | Wrote js/erpnext-web.min.js - 4.23 KB
11:59:44 watch.1 | Wrote js/erpnext.min.js - 170.8 KB
11:59:44 watch.1 | Wrote js/item-dashboard.min.js - 8.48 KB

Am I doing something wrong, or the various components of Bench, Frappe and ERPNext are just not working together nicely?

Thank you.

Use following steps for manual setup

git clone https://github.com/frappe/bench bench-repo
pip install --user -e bench-repo
bench init frappe-bench && cd frappe-bench
bench new-site test1.local
bench get-app erpnext https://github.com/frappe/erpnext
bench --site test1.local install-app erpnext
sudo bench disable-production
bench start
# To login to Frappe / ERPNext, open your browser and go to [your-external-ip]:8000, probably localhost:8000

Install seems OK, just run following:

sudo bench disable-production
sudo service nginx stop
sudo service supervisor stop
bench setup procfile
bench update --requirements
bench update --patch
bench start

Hi @yashodhan,

Thanks for your patience.

Used your commands but the result is still on develop branch

erpnext 12.x.x-develop
foundation 0.0.1
frappe 12.x.x-develop

image

Did you get master branch’s V10 using these commands?

When running bench init, you can specify the frappe-branch as master so that the frappe version retrieved is from the master branch (and not develop).
eg:

bench init frappe-folder-name --frappe-branch master

For ERPNEXT:
You can add the --branch option to bench get-app so that you’ll get the master branch instead of develop.

EG:

bench get-app erpnext https://github.com/frappe/erpnext --branch master

Just used this on a development setup and am running on :

erpnext 10.1.71
frappe 10.1.61

Hope it helps . :slight_smile:

1 Like

Hi @littlehera,

I have been using the commands you recommended. While it does install the correct branch and version, I had errors/warnings when installing and bench starting it.

Did you have the same warnings as I mentioned a few posts above?

Thank you.

I faced an ENOSPC error which I managed to fix, but I wasn’t able to encounter the same errors/warnings that you encountered.

I used similar steps to the ones @yashodhan shared but added the branch and frappe-branch option when doing init and get-app:

bench init frappe-bench --frappe-branch master && cd frappe-bench
bench new-site test1.local
bench get-app erpnext https://github.com/frappe/erpnext --branch master
bench --site test1.local install-app erpnext

Have you tried doing git checkout then running pip install -e ./apps/the_app?

eg:

//assuming that you're in the apps/erpnext folder
git checkout master
cd ~/frappe-bench
./env/bin/pip install -e ./apps/erpnext

Hi @littehera,

Seems like there were 2 issues initially but I somehow manage to bypass it. Hopefully the Frappe team will fix it in times to come.

Error 1

/home/frappe/frappe-bench/apps/frappe/frappe/build.py:106: UserWarning: Source /home/frappe/frappe-bench/apps/frappe_io/frappe_io/docs does not exists.
warnings.warn(‘Source {source} does not exists.’.format(source = source))
SyntaxError: Unexpected end of JSON input
at JSON.parse ()
at make_build_map (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:193:22)
at Object. (/home/frappe/frappe-bench/apps/frappe/frappe/build.js:22:17)
at Module._compile (module.js:653:30)
at Object.Module._extensions…js (module.js:664:10)
at Module.load (module.js:566:32)
at tryModuleLoad (module.js:506:12)
at Function.Module._load (module.js:498:3)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)

This error will only appear when you run in development environment, meaning via bench start. It appears for both Easy Install and Manual Install. As it says, it’s just a warning, not sure how it will affect me in the future.

Error 2
image
This empty screen is caused by cookie issue. Clear cookies and it works again.

Encountered the
warnings.warn(‘Source {source} does not exists.’.format(source = source))
in v9 and ignored it. :laughing: I think there’s a thread here in discuss tackling how to fix it.

Either way, congrats!