From a71134ee2b2f020cd3e99fb43dd68bd4ea598e23 Mon Sep 17 00:00:00 2001 From: Kerolles Fathy Date: Mon, 23 Feb 2026 07:38:20 +0200 Subject: [PATCH] fix(DX): Add patches folder when generating new app boilerplate (#37352) * fix(DX): add patches folder creation when generating new app boilerplate * test: add patches folder to paths_inside_app --- frappe/tests/test_boilerplate.py | 1 + frappe/utils/boilerplate.py | 1 + 2 files changed, 2 insertions(+) diff --git a/frappe/tests/test_boilerplate.py b/frappe/tests/test_boilerplate.py index 4f41e178a2..4df09293e2 100644 --- a/frappe/tests/test_boilerplate.py +++ b/frappe/tests/test_boilerplate.py @@ -64,6 +64,7 @@ class TestBoilerPlate(unittest.TestCase): "__init__.py", "hooks.py", "patches.txt", + "patches", "templates", "www", "config", diff --git a/frappe/utils/boilerplate.py b/frappe/utils/boilerplate.py index 937bd5cbdd..42916d3ef0 100644 --- a/frappe/utils/boilerplate.py +++ b/frappe/utils/boilerplate.py @@ -147,6 +147,7 @@ def _create_app_boilerplate(dest, hooks, no_git=False): frappe.create_folder(os.path.join(dest, hooks.app_name, hooks.app_name, "config"), with_init=True) frappe.create_folder(os.path.join(dest, hooks.app_name, hooks.app_name, "public", "css")) frappe.create_folder(os.path.join(dest, hooks.app_name, hooks.app_name, "public", "js")) + frappe.create_folder(os.path.join(dest, hooks.app_name, hooks.app_name, "patches"), with_init=True) # add .gitkeep file so that public folder is committed to git # this is needed because if public doesn't exist, bench build doesn't symlink the apps assets