From 8ce6426c752516e13eae46e68f075a0df5e0c106 Mon Sep 17 00:00:00 2001 From: Ankush Menat Date: Sun, 3 Sep 2023 21:24:12 +0530 Subject: [PATCH] refactor: Drop `frappe.local` for proxies --- frappe/api/v1.py | 48 ++++++++++++++++++++++++------------------------ frappe/api/v2.py | 42 +++++++++++++++++++++--------------------- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/frappe/api/v1.py b/frappe/api/v1.py index 44496c82f2..9ce7b9bd71 100644 --- a/frappe/api/v1.py +++ b/frappe/api/v1.py @@ -11,31 +11,31 @@ def handle_rpc_call(method: str): import frappe.handler # TODO: inline this weird circular calls - frappe.local.form_dict.cmd = method + frappe.form_dict.cmd = method return frappe.handler.handle() def get_doc_list(doctype: str): - if frappe.local.form_dict.get("fields"): - frappe.local.form_dict["fields"] = json.loads(frappe.local.form_dict["fields"]) + if frappe.form_dict.get("fields"): + frappe.form_dict["fields"] = json.loads(frappe.form_dict["fields"]) # set limit of records for frappe.get_list - frappe.local.form_dict.setdefault( + frappe.form_dict.setdefault( "limit_page_length", - frappe.local.form_dict.limit or frappe.local.form_dict.limit_page_length or 20, + frappe.form_dict.limit or frappe.form_dict.limit_page_length or 20, ) # convert strings to native types - only as_dict and debug accept bool for param in ["as_dict", "debug"]: - param_val = frappe.local.form_dict.get(param) + param_val = frappe.form_dict.get(param) if param_val is not None: - frappe.local.form_dict[param] = sbool(param_val) + frappe.form_dict[param] = sbool(param_val) # evaluate frappe.get_list - data = frappe.call(frappe.client.get_list, doctype, **frappe.local.form_dict) + data = frappe.call(frappe.client.get_list, doctype, **frappe.form_dict) # set frappe.get_list result to response - frappe.local.response.update({"data": data}) + frappe.response.update({"data": data}) def create_doc(doctype: str): @@ -46,12 +46,12 @@ def create_doc(doctype: str): doc = frappe.get_doc(data).insert() # set response data - frappe.local.response.update({"data": doc.as_dict()}) + frappe.response.update({"data": doc.as_dict()}) def read_doc(doctype: str, name: str): # Backward compatiblity - if "run_method" in frappe.local.form_dict: + if "run_method" in frappe.form_dict: execute_doc_method(doctype, name) return @@ -59,7 +59,7 @@ def read_doc(doctype: str, name: str): if not doc.has_permission("read"): raise frappe.PermissionError doc.apply_fieldlevel_read_permissions() - frappe.local.response.update({"data": doc}) + frappe.response.update({"data": doc}) def update_doc(doctype: str, name: str): @@ -73,7 +73,7 @@ def update_doc(doctype: str, name: str): # Not checking permissions here because it's checked in doc.save doc.update(data) - frappe.local.response.update({"data": doc.save().as_dict()}) + frappe.response.update({"data": doc.save().as_dict()}) # check for child table doctype if doc.get("parenttype"): @@ -83,37 +83,37 @@ def update_doc(doctype: str, name: str): def delete_doc(doctype: str, name: str): # Not checking permissions here because it's checked in delete_doc frappe.delete_doc(doctype, name, ignore_missing=False) - frappe.local.response.http_status_code = 202 - frappe.local.response.message = "ok" + frappe.response.http_status_code = 202 + frappe.response.message = "ok" def execute_doc_method(doctype: str, name: str, method: str | None = None): - method = method or frappe.local.form_dict.pop("run_method") + method = method or frappe.form_dict.pop("run_method") doc = frappe.get_doc(doctype, name) doc.is_whitelisted(method) - if frappe.local.request.method == "GET": + if frappe.request.method == "GET": if not doc.has_permission("read"): frappe.throw(_("Not permitted"), frappe.PermissionError) - frappe.local.response.update({"data": doc.run_method(method, **frappe.local.form_dict)}) + frappe.response.update({"data": doc.run_method(method, **frappe.form_dict)}) - elif frappe.local.request.method == "POST": + elif frappe.request.method == "POST": if not doc.has_permission("write"): frappe.throw(_("Not permitted"), frappe.PermissionError) - frappe.local.response.update({"data": doc.run_method(method, **frappe.local.form_dict)}) + frappe.response.update({"data": doc.run_method(method, **frappe.form_dict)}) def get_request_form_data(): - if frappe.local.form_dict.data is None: - data = frappe.safe_decode(frappe.local.request.get_data()) + if frappe.form_dict.data is None: + data = frappe.safe_decode(frappe.request.get_data()) else: - data = frappe.local.form_dict.data + data = frappe.form_dict.data try: return frappe.parse_json(data) except ValueError: - return frappe.local.form_dict + return frappe.form_dict url_rules = [ diff --git a/frappe/api/v2.py b/frappe/api/v2.py index a36d422311..18417022f2 100644 --- a/frappe/api/v2.py +++ b/frappe/api/v2.py @@ -29,26 +29,26 @@ def handle_rpc_call(method: str, doctype: str | None = None): def get_doc_list(doctype: str): - if frappe.local.form_dict.get("fields"): - frappe.local.form_dict["fields"] = json.loads(frappe.local.form_dict["fields"]) + if frappe.form_dict.get("fields"): + frappe.form_dict["fields"] = json.loads(frappe.form_dict["fields"]) # set limit of records for frappe.get_list - frappe.local.form_dict.setdefault( + frappe.form_dict.setdefault( "limit_page_length", - frappe.local.form_dict.limit or frappe.local.form_dict.limit_page_length or 20, + frappe.form_dict.limit or frappe.form_dict.limit_page_length or 20, ) # convert strings to native types - only as_dict and debug accept bool for param in ["as_dict", "debug"]: - param_val = frappe.local.form_dict.get(param) + param_val = frappe.form_dict.get(param) if param_val is not None: - frappe.local.form_dict[param] = sbool(param_val) + frappe.form_dict[param] = sbool(param_val) # evaluate frappe.get_list - data = frappe.call(frappe.client.get_list, doctype, **frappe.local.form_dict) + data = frappe.call(frappe.client.get_list, doctype, **frappe.form_dict) # set frappe.get_list result to response - frappe.local.response.update({"data": data}) + frappe.response.update({"data": data}) def create_doc(doctype: str): @@ -59,7 +59,7 @@ def create_doc(doctype: str): doc = frappe.get_doc(data).insert() # set response data - frappe.local.response.update({"data": doc.as_dict()}) + frappe.response.update({"data": doc.as_dict()}) def read_doc(doctype: str, name: str): @@ -67,7 +67,7 @@ def read_doc(doctype: str, name: str): if not doc.has_permission("read"): raise frappe.PermissionError doc.apply_fieldlevel_read_permissions() - frappe.local.response.update({"data": doc}) + frappe.response.update({"data": doc}) def update_doc(doctype: str, name: str): @@ -81,7 +81,7 @@ def update_doc(doctype: str, name: str): # Not checking permissions here because it's checked in doc.save doc.update(data) - frappe.local.response.update({"data": doc.save().as_dict()}) + frappe.response.update({"data": doc.save().as_dict()}) # check for child table doctype if doc.get("parenttype"): @@ -90,36 +90,36 @@ def update_doc(doctype: str, name: str): def delete_doc(doctype: str, name: str): frappe.delete_doc(doctype, name, ignore_missing=False) - frappe.local.response.http_status_code = 202 + frappe.response.http_status_code = 202 def execute_doc_method(doctype: str, name: str, method: str | None = None): - method = method or frappe.local.form_dict.pop("run_method") + method = method or frappe.form_dict.pop("run_method") doc = frappe.get_doc(doctype, name) doc.is_whitelisted(method) - if frappe.local.request.method == "GET": + if frappe.request.method == "GET": if not doc.has_permission("read"): frappe.throw(_("Not permitted"), frappe.PermissionError) - frappe.local.response.update({"data": doc.run_method(method, **frappe.local.form_dict)}) + frappe.response.update({"data": doc.run_method(method, **frappe.form_dict)}) - elif frappe.local.request.method == "POST": + elif frappe.request.method == "POST": if not doc.has_permission("write"): frappe.throw(_("Not permitted"), frappe.PermissionError) - frappe.local.response.update({"data": doc.run_method(method, **frappe.local.form_dict)}) + frappe.response.update({"data": doc.run_method(method, **frappe.form_dict)}) def get_request_form_data(): - if frappe.local.form_dict.data is None: - data = frappe.safe_decode(frappe.local.request.get_data()) + if frappe.form_dict.data is None: + data = frappe.safe_decode(frappe.request.get_data()) else: - data = frappe.local.form_dict.data + data = frappe.form_dict.data try: return frappe.parse_json(data) except ValueError: - return frappe.local.form_dict + return frappe.form_dict url_rules = [