[Release Notes] ERPNext Version 13 has been released

That’s great!

Upgrade to v13 , I see that GST is now showing , yet my default country does not use GST.
How do I disable this feature ?

hi guys,
am trying to update my system but when I typed the first command it threwan error below and I cant continue with any other command… kindly help

Traceback (most recent call last):
File “/usr/local/bin/bench”, line 11, in
sys.exit(cli())
File “/usr/local/lib/python2.7/dist-packages/bench/cli.py”, line 48, in cli
if sys.argv[1] in get_frappe_commands() + [“–site”, “–verbose”, “–force”, “–profile”]:
TypeError: unsupported operand type(s) for +: ‘NoneType’ and ‘list’

this command solved…

./env/bin/pip install psutil

2 Likes

wow wow… awesome and professional UX!! Am happy now…


Than you erpnext team…!!

2 Likes

This has been addressed in v13

1 Like

GST implementation is specific to India. If your company is not based on India, then it should not be shown.
Which documents or reports you can see which are unexpected?
For an immediate fix, you can remove the permission for that document.

It will soon be available on frappe cloud.

2 Likes

Hi

@nabinhait

I am getting below error when I use command bench update

Patching sites…
Migrating site1.local
Executing erpnext.patches.v13_0.create_uae_pos_invoice_fields in site1.local (_1bd3e0294da19198)
Traceback (most recent call last):
File “/usr/lib/python3.6/runpy.py”, line 193, in _run_module_as_main
main”, mod_spec)
File “/usr/lib/python3.6/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py”, line 101, 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/lib/python3.6/site-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/home/frappe/frappe-bench/env/lib/python3.6/site-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/home/frappe/frappe-bench/env/lib/python3.6/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 27, in func
ret = f(frappe.dict(ctx.obj), *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/commands/site.py”, line 300, in migrate
skip_search_index=skip_search_index
File “/home/frappe/frappe-bench/apps/frappe/frappe/migrate.py”, line 67, in migrate
frappe.modules.patch_handler.run_all(skip_failing)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 41, in run_all
run_patch(patch)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 30, in run_patch
if not run_single(patchmodule = patch):
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 71, in run_single
return execute_patch(patchmodule, method, methodargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/modules/patch_handler.py”, line 91, in execute_patch
frappe.get_attr(patchmodule.split()[0] + “.execute”)()
File “/home/frappe/frappe-bench/apps/erpnext/erpnext/patches/v13_0/create_uae_pos_invoice_fields.py”, line 14, in execute
make_custom_fields()
File “/home/frappe/frappe-bench/apps/erpnext/erpnext/regional/united_arab_emirates/setup.py”, line 130, in make_custom_fields
create_custom_fields(custom_fields)
File “/home/frappe/frappe-bench/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 151, in create_custom_fields
create_custom_field(doctype, df, ignore_validate=ignore_validate)
File “/home/frappe/frappe-bench/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 135, in create_custom_field
custom_field.insert()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 230, in insert
self.run_method(“before_insert”)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 847, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 1136, in composer
return composed(self, method, *args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 1119, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 841, in
fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 36, in before_insert
meta = frappe.get_meta(self.dt, cached=False)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 852, in get_meta
return frappe.model.meta.get_meta(doctype, cached=cached)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py”, line 43, in get_meta
return load_meta(doctype)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py”, line 46, in load_meta
return Meta(doctype)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py”, line 83, in init
super(Meta, self).init(“DocType”, doctype)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 112, in init
self.load_from_db()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py”, line 88, in load_from_db
super(Meta, self).load_from_db()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 155, in load_from_db
frappe.throw(
(“{0} {1} not found”).format(
(self.doctype), self.name), frappe.DoesNotExistError)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 424, in throw
msgprint(msg, raise_exception=exc, title=title, indicator=‘red’, is_minimizable=is_minimizable, wide=wide, as_list=as_list)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 403, in msgprint
_raise_exception()
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 357, in _raise_exception
raise raise_exception(msg)
frappe.exceptions.DoesNotExistError: DocType POS Invoice not found

also get internal server error when try to test it

image

Note that I am upgrading from ERPNext:** v12.19.0 (version-12) installed on VirtualBox machine and and my backup is restored from ERP cloud to virtualBox machine

I’m having the same error. Submitted a bug:

Thanks for reporting.

We will push a fix as soon as possible.

But for now, you can run the following from the console to fix the issue.

frappe.reload_doc('accounts', 'doctype', 'pos_invoice')

To access the console, run bench --site <your-site-name> console

2 Likes
In [1]: frappe.reload_doc('accounts', 'doctype', 'pos_invoice')
   ...: 
Out[1]: True

re-ran bench update, still got a different error:

Executing erpnext.patches.v13_0.create_uae_pos_invoice_fields in erp.hakengineering.org (_c5b6d1c07f7eafbe)
Traceback (most recent call last):
File “/usr/lib64/python3.7/runpy.py”, line 193, in _run_module_as_main
main”, mod_spec)
File “/usr/lib64/python3.7/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py”, line 101, in
main()
File “/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py”, line 18, in main
click.Group(commands=commands)(prog_name=‘bench’)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/decorators.py”, line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/commands/init.py”, line 27, in func
ret = f(frappe.dict(ctx.obj), *args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/commands/site.py”, line 300, in migrate
skip_search_index=skip_search_index
File “/opt/bench/erpnext/apps/frappe/frappe/migrate.py”, line 67, in migrate
frappe.modules.patch_handler.run_all(skip_failing)
File “/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py”, line 41, in run_all
run_patch(patch)
File “/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py”, line 30, in run_patch
if not run_single(patchmodule = patch):
File “/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py”, line 71, in run_single
return execute_patch(patchmodule, method, methodargs)
File “/opt/bench/erpnext/apps/frappe/frappe/modules/patch_handler.py”, line 91, in execute_patch
frappe.get_attr(patchmodule.split()[0] + “.execute”)()
File “/opt/bench/erpnext/apps/erpnext/erpnext/patches/v13_0/create_uae_pos_invoice_fields.py”, line 14, in execute
make_custom_fields()
File “/opt/bench/erpnext/apps/erpnext/erpnext/regional/united_arab_emirates/setup.py”, line 130, in make_custom_fields
create_custom_fields(custom_fields)
File “/opt/bench/erpnext/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 151, in create_custom_fields
create_custom_field(doctype, df, ignore_validate=ignore_validate)
File “/opt/bench/erpnext/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 135, in create_custom_field
custom_field.insert()
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 267, in insert
self.run_post_save_methods()
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 982, in run_post_save_methods
self.run_method(“on_update”)
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 847, in run_method
out = Document.hook(fn)(self, *args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 1136, in composer
return composed(self, method, *args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 1119, in runner
add_to_return_value(self, fn(self, *args, **kwargs))
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 841, in
fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/custom/doctype/custom_field/custom_field.py”, line 69, in on_update
validate_fields_for_doctype(self.dt)
File “/opt/bench/erpnext/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 686, in validate_fields_for_doctype
validate_fields(meta)
File “/opt/bench/erpnext/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 993, in validate_fields
check_child_table_option(d)
File “/opt/bench/erpnext/apps/frappe/frappe/core/doctype/doctype/doctype.py”, line 959, in check_child_table_option
meta = frappe.get_meta(doctype)
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 852, in get_meta
return frappe.model.meta.get_meta(doctype, cached=cached)
File “/opt/bench/erpnext/apps/frappe/frappe/model/meta.py”, line 37, in get_meta
meta = Meta(doctype)
File “/opt/bench/erpnext/apps/frappe/frappe/model/meta.py”, line 83, in init
super(Meta, self).init(“DocType”, doctype)
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 112, in init
self.load_from_db()
File “/opt/bench/erpnext/apps/frappe/frappe/model/meta.py”, line 88, in load_from_db
super(Meta, self).load_from_db()
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 155, in load_from_db
frappe.throw(
(“{0} {1} not found”).format(
(self.doctype), self.name), frappe.DoesNotExistError)
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 424, in throw
msgprint(msg, raise_exception=exc, title=title, indicator=‘red’, is_minimizable=is_minimizable, wide=wide, as_list=as_list)
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 403, in msgprint
_raise_exception()
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 357, in _raise_exception
raise raise_exception(msg)
frappe.exceptions.DoesNotExistError: DocType POS Invoice Item not found

Then I ran

frappe.reload_doc(‘accounts’, ‘doctype’, ‘pos_invoice_item’)

that solved the issue

@nabinhait Now a new error:

Updating customizations for Contact
Traceback (most recent call last):
File “/usr/lib64/python3.7/runpy.py”, line 193, in _run_module_as_main
main”, mod_spec)
File “/usr/lib64/python3.7/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py”, line 101, in
main()
File “/opt/bench/erpnext/apps/frappe/frappe/utils/bench_helper.py”, line 18, in main
click.Group(commands=commands)(prog_name=‘bench’)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 764, in call
return self.main(*args, **kwargs)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 717, in main
rv = self.invoke(ctx)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/core.py”, line 555, in invoke
return callback(*args, **kwargs)
File “/opt/bench/erpnext/env/lib/python3.7/site-packages/click/decorators.py”, line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/commands/init.py”, line 27, in func
ret = f(frappe.dict(ctx.obj), *args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/commands/site.py”, line 300, in migrate
skip_search_index=skip_search_index
File “/opt/bench/erpnext/apps/frappe/frappe/migrate.py”, line 89, in migrate
frappe.get_attr(fn)()
File “/opt/bench/erpnext/apps/frappe/frappe/website/doctype/website_theme/website_theme.py”, line 184, in after_migrate
doc = frappe.get_doc(‘Website Theme’, website_theme)
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 821, in get_doc
doc = frappe.model.document.get_doc(*args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 74, in get_doc
return controller(*args, **kwargs)
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 112, in init
self.load_from_db()
File “/opt/bench/erpnext/apps/frappe/frappe/model/document.py”, line 155, in load_from_db
frappe.throw(
(“{0} {1} not found”).format(
(self.doctype), self.name), frappe.DoesNotExistError)
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 424, in throw
msgprint(msg, raise_exception=exc, title=title, indicator=‘red’, is_minimizable=is_minimizable, wide=wide, as_list=as_list)
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 403, in msgprint
_raise_exception()
File “/opt/bench/erpnext/apps/frappe/frappe/init.py”, line 357, in _raise_exception
raise raise_exception(msg)
frappe.exceptions.DoesNotExistError: Website Theme None not found

same after applying it.

After upgrade , and update – patch

ModuleNotFoundError: No module named ‘erpnext.hr.doctype.salary_component.salary_component’

bench_manager 0.0.1
erpnext 13.0.0
frappe 13.0.0

Tried in console:

frappe.reload_doc(“hr”,“doctype”,“salary_component”)

with result:

/home/frappe/frappe-bench/apps/erpnext/erpnext/hr/doctype/salary_component/salary_component.json missing

And

rappe@ubuntu:~/frappe-bench/apps/erpnext$ git pull
remote: Enumerating objects: 31, done.
remote: Counting objects: 100% (26/26), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 7 (delta 6), reused 1 (delta 1), pack-reused 0
Unpacking objects: 100% (7/7), done.
From GitHub - frappe/erpnext: Free and Open Source Enterprise Resource Planning (ERP)
8aacd341c7…b7436a04c3 develop → upstream/develop
Already up to date.
frappe@ubuntu:~/frappe-bench/apps/erpnext$ git status
On branch version-13
Your branch is up to date with ‘upstream/version-13’.

nothing to commit, working tree clean

how to remove it?

If I update, the customisations I have made to doctypes and print formats I have created will be removed ?

Awsome job. Thank you for keep doing it!

What will happen to hided chat feature? Could you share your plan, please? Should we wait for it, or its dropped and it’s time to find a chat software and start to integrate with ERPNext?

thank you

Started a you channel for #frappeframework

Will be covering

  1. Introduction, Installation and setup

  2. Scripting(js&python)

  3. Doctype(models)

  4. Report Building (script report)

  5. Custom App, hooks, plugins

  6. Web portals

  7. Commands

  8. Backup, migration, upgrade, debugging…

As time goes on, more videos will be uploaded and my recording will improve.

13 Likes

anyone has issue with Item Variants which is missing Attribute Value?