I recently updated my frappe and erpnext working trees, ran bench build
, and since then, my ERPNext dev instance has been completely unusable.
<div class="main-section">
is not visible on the webpage and has fallen below .body-sidebar-container
:-
This is using frappe_docker
on a Macbook, with develop
branches of frappe
, erpnext,
webshop` and a custom app.
The only 404 errors when running bench serve
appear to be of no concern:-
192.168.65.1 - - [13/May/2025 06:06:06] "GET /socket.io/?EIO=4&transport=polling&t=PR8G1iS HTTP/1.1" 404 - 192.168.65.1 - - [13/May/2025 06:24:09] "GET /supplier_feeds/icons/icons.svg?v=1747117399.205631 HTTP/1.1" 404 -
Creating a new site works initially:-
frappe@b3f6b97346bf:/workspace/development/frappe-bench $ bench new-site dev.localhost --install-app erpnext
Enter mysql super user [root]:
MySQL root password:
Installing frappe...
Updating DocTypes for frappe : [========================================] 100%
Set Administrator password:
Updating Dashboard for frappe
Installing erpnext...
Updating DocTypes for erpnext : [========================================] 100%
Updating customizations for Address
Updating customizations for Contact
Updating Dashboard for erpnext
dev.localhost: SystemSettings.enable_scheduler is UNSET
*** Scheduler is disabled ***
frappe@b3f6b97346bf:/workspace/development/frappe-bench $
frappe@b3f6b97346bf:/workspace/development/frappe-bench $ bench build
Assets for Commit e0df5ee076a4640f3a8bcd01899730e2cf7a67c2 don't exist
✔ Application Assets Linked
yarn run v1.22.22
$ node esbuild --run-build-command
Browserslist: caniuse-lite is outdated. Please run:
npx update-browserslist-db@latest
Why you should do it regularly: https://github.com/browserslist/update-db#readme
File Size
erpnext/dist/js/
├─ bank-reconciliation-tool.bundle.G7MHMAFO.js 28.11 Kb
├─ erpnext-web.bundle.253I7LT4.js 0.43 Kb
├─ erpnext.bundle.4C5SZQQF.js 397.99 Kb
├─ item-dashboard.bundle.KEKUE5QA.js 14.73 Kb
├─ point-of-sale.bundle.WUOF2JXA.js 160.06 Kb
└─ bom_configurator.bundle.WTULZBXN.js 17.92 Kb
frappe/dist/js/
├─ billing.bundle.3M2NKQ7F.js 5.41 Kb
├─ bootstrap-4-web.bundle.AZ67VXZX.js 2.10 Kb
├─ calendar.bundle.CUFNYKMX.js 511.13 Kb
├─ controls.bundle.C5QQ6JTC.js 1638.07 Kb
├─ data_import_tools.bundle.H3V7DA22.js 243.40 Kb
├─ desk.bundle.N76FLDP6.js 1898.74 Kb
├─ dialog.bundle.J6RP27MV.js 97.73 Kb
├─ form.bundle.QPQCSN6F.js 282.31 Kb
├─ frappe-web.bundle.DYF2IWOI.js 1609.89 Kb
├─ libs.bundle.LLRFRX7M.js 1048.03 Kb
├─ list.bundle.HIZ2R3FB.js 331.54 Kb
├─ logtypes.bundle.FWKQ24YH.js 1.14 Kb
├─ onboarding_tours.bundle.P7QYMXLW.js 13.43 Kb
├─ photoswipe.bundle.2BDW3PAH.js 118.97 Kb
├─ report.bundle.2TI7GTFV.js 371.88 Kb
├─ sentry.bundle.SI3DB3BY.js 184.79 Kb
├─ telemetry.bundle.ZJBT5ETW.js 3.90 Kb
├─ video_player.bundle.IOEIXC2G.js 267.96 Kb
├─ web_form.bundle.5NREPDAO.js 1985.67 Kb
├─ form_builder.bundle.H2G5DFCY.js 1930.03 Kb
├─ form_builder.bundle.JDO65LGS.css 28.86 Kb
├─ print_format_builder.bundle.YICCC6TB.js 1668.50 Kb
├─ print_format_builder.bundle.TWXPKSFQ.css 7.75 Kb
├─ workflow_builder.bundle.WNDNW5TJ.js 962.60 Kb
├─ workflow_builder.bundle.5YSHMRH7.css 15.04 Kb
├─ build_events.bundle.DVQJUGGD.js 399.10 Kb
├─ build_events.bundle.3J3GYADH.css 1.85 Kb
├─ file_uploader.bundle.MJHUMKDJ.js 641.10 Kb
├─ file_uploader.bundle.ZJMANHXN.css 8.95 Kb
└─ kanban_board.bundle.L56XYUZN.js 1417.99 Kb
webshop/dist/js/
└─ web.bundle.UWGVC23C.js 51.71 Kb
erpnext/dist/css/
├─ erpnext-web.bundle.VPE4GYDV.css 3.54 Kb
├─ erpnext.bundle.EEDJQURB.css 55.38 Kb
└─ erpnext_email.bundle.NI4XEXFI.css 0.75 Kb
frappe/dist/css/
├─ desk.bundle.UJ67DYIG.css 702.80 Kb
├─ email.bundle.TWYKSEI2.css 7.37 Kb
├─ login.bundle.QNYRY6J5.css 35.35 Kb
├─ print.bundle.IWETE72D.css 249.09 Kb
├─ print_format.bundle.SBRDSYMP.css 228.77 Kb
├─ report.bundle.LDHDPZPR.css 6.80 Kb
├─ web_form.bundle.EVE24RXN.css 17.93 Kb
└─ website.bundle.3JN5SHK3.css 553.10 Kb
webshop/dist/css/
└─ webshop-web.bundle.JKAKZXX5.css 26.94 Kb
erpnext/dist/css-rtl/
├─ erpnext-web.bundle.IVQWNL2L.css 3.54 Kb
├─ erpnext.bundle.SFSHH4DS.css 55.37 Kb
└─ erpnext_email.bundle.TBV47ZAE.css 0.75 Kb
frappe/dist/css-rtl/
├─ desk.bundle.B4RVMIXJ.css 703.34 Kb
├─ email.bundle.HDCZOWWO.css 7.38 Kb
├─ login.bundle.ACSQM3DR.css 35.35 Kb
├─ print.bundle.HCMOARXC.css 249.25 Kb
├─ print_format.bundle.ZFACZV3V.css 228.89 Kb
├─ report.bundle.2JY3NHZQ.css 6.79 Kb
├─ web_form.bundle.4YLXXM5S.css 17.92 Kb
└─ website.bundle.QD3UZ75X.css 553.27 Kb
webshop/dist/css-rtl/
└─ webshop-web.bundle.FPA4IQWV.css 26.93 Kb
DONE Total Build Time: 8.298s
Done in 9.04s.
Compiling translations for frappe
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/bs/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/fr/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/hu/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/tr/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/sv/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/nl/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/zh/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/zh_TW/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/pt_BR/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/it/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/ar/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/fa/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/eo/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/es/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/de/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/sr_CS/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/vi/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/id/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/pt/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/hr/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/pl/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/af/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/fi/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/ru/LC_MESSAGES/frappe.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/th/LC_MESSAGES/frappe.mo
Compiling translations for payments
Compiling translations for supplier_feeds
Compiling translations for erpnext
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/hu/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/fr/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/tr/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/bs/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/zh/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/nl/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/sv/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/zh_TW/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/pt_BR/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/ar/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/it/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/fa/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/eo/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/sr_CS/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/es/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/de/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/id/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/vi/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/pt/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/hr/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/af/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/pl/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/ru/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/fi/LC_MESSAGES/erpnext.mo
MO file already up to date at /workspace/development/frappe-bench/sites/assets/locale/th/LC_MESSAGES/erpnext.mo
Compiling translations for webshop
Actually, in writing this post, I’ve just pinned this down, since trying to figure it out since Thursday…
In my hooks.py
, I have an Svg Icons section:-
# Svg Icons
# ------------------
# include app icons in desk
app_include_icons = "supplier_feeds/public/icons.svg"
I’ve just seen that commenting out app_include_icons
, uninstalling and reinstalling my app and suddenly I get the main content back, but of course, without any icons…
I note there is no documentation at Hooks regarding app_include_icons
, but in frappe’s hooks.py
, it uses both app_include_icons
and web_include_icons
.
Further, I’ve just created a new app (bench new-app test
), and it includes the same section. So, it’s not something I made up!
# Svg Icons
# ------------------
# include app icons in desk
# app_include_icons = "test/public/icons.svg"
Okay, questions!
- This worked fine before, when I was on a
version-15
branch. There must be a breaking change ondevelop
regardingapp_include_icons
. What changed, and how can I useapp_include_icons
now? - Is there any documentation for
app_include_icons
? Why isapp_include_icons
included in the templatehooks.py
, but not documented online? - Is there a new way to include SVG icons in frappe apps? The only vaguely relevant page I could find in the docs is: Custom Module Icon. This suggests I need to create a
desktop/config.py
file now? - Debugging this has been immensely time-consuming and frustrating. I’ve not yet fixed it yet, but I struggle to understand why my site completely fell over, just because frappe has suddenly forgotten how to find this svg file? Can we improve this for anyone else in a similar situation?