diff --git a/README.md b/README.md
index efa3e33..f2b628e 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,7 @@
 # ERPNext - Open source ERP for small and medium-size business [![Build Status](https://travis-ci.org/frappe/erpnext.png)](https://travis-ci.org/frappe/erpnext)
 
+[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/frappe/erpnext?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
 [https://erpnext.com](https://erpnext.com)
 
 Includes: Accounting, Inventory, CRM, Sales, Purchase, Projects, HRMS. Requires MariaDB.
diff --git a/erpnext/__version__.py b/erpnext/__version__.py
index 75c77f1..884d464 100644
--- a/erpnext/__version__.py
+++ b/erpnext/__version__.py
@@ -1 +1 @@
-__version__ = '4.20.0'
+__version__ = '4.20.1'
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index 90ac2e7..6f90675 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -4,7 +4,7 @@
 app_description = "Open Source Enterprise Resource Planning for Small and Midsized Organizations"
 app_icon = "icon-th"
 app_color = "#e74c3c"
-app_version = "4.20.0"
+app_version = "4.20.1"
 
 error_report_email = "support@erpnext.com"
 
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 8978a3b..bfce346 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -92,4 +92,4 @@
 erpnext.patches.v4_2.recalculate_bom_costs
 erpnext.patches.v4_2.discount_amount
 erpnext.patches.v4_2.update_landed_cost_voucher
-erpnext.patches.v4_2.set_item_batch
+erpnext.patches.v4_2.set_item_has_batch
diff --git a/erpnext/patches/v4_2/set_item_batch.py b/erpnext/patches/v4_2/set_item_has_batch.py
similarity index 94%
rename from erpnext/patches/v4_2/set_item_batch.py
rename to erpnext/patches/v4_2/set_item_has_batch.py
index 3e84a59..35ed2e0 100644
--- a/erpnext/patches/v4_2/set_item_batch.py
+++ b/erpnext/patches/v4_2/set_item_has_batch.py
@@ -44,7 +44,7 @@
 def get_sle_with_batch():
 	sle_with_batch = {}
 	for d in frappe.db.sql("""select item_code, count(name) as cnt from `tabStock Ledger Entry` 
-		where batch_no != '' group by item_code""", as_dict=1):
+		where ifnull(batch_no, '') != '' group by item_code""", as_dict=1):
 			sle_with_batch.setdefault(d.item_code, d.cnt)
 		
 	return sle_with_batch
@@ -53,7 +53,7 @@
 def get_sle_with_serial():
 	sle_with_serial = {}
 	for d in frappe.db.sql("""select item_code, count(name) as cnt from `tabStock Ledger Entry` 
-		where serial_no != '' group by item_code""", as_dict=1):
+		where ifnull(serial_no, '') != '' group by item_code""", as_dict=1):
 			sle_with_serial.setdefault(d.item_code, d.cnt)
 	
 	return sle_with_serial
diff --git a/erpnext/selling/report/customer_acquisition_and_loyalty/customer_acquisition_and_loyalty.js b/erpnext/selling/report/customer_acquisition_and_loyalty/customer_acquisition_and_loyalty.js
index ce19f51..5e74431 100644
--- a/erpnext/selling/report/customer_acquisition_and_loyalty/customer_acquisition_and_loyalty.js
+++ b/erpnext/selling/report/customer_acquisition_and_loyalty/customer_acquisition_and_loyalty.js
@@ -8,19 +8,22 @@
 			"label": __("Company"),
 			"fieldtype": "Link",
 			"options": "Company",
-			"default": frappe.defaults.get_user_default("company")
+			"default": frappe.defaults.get_user_default("company"),
+			"reqd": 1
 		},
 		{
 			"fieldname":"from_date",
 			"label": __("From Date"),
 			"fieldtype": "Date",
-			"default": frappe.defaults.get_user_default("year_start_date")
+			"default": frappe.defaults.get_user_default("year_start_date"),
+			"reqd": 1
 		},
 		{
 			"fieldname":"to_date",
 			"label": __("To Date"),
 			"fieldtype": "Date",
-			"default": frappe.defaults.get_user_default("year_end_date")
+			"default": frappe.defaults.get_user_default("year_end_date"),
+			"reqd": 1
 		},
 	]
-}
\ No newline at end of file
+}
diff --git a/erpnext/stock/doctype/packing_slip/packing_slip.py b/erpnext/stock/doctype/packing_slip/packing_slip.py
index bd79835..1916cef 100644
--- a/erpnext/stock/doctype/packing_slip/packing_slip.py
+++ b/erpnext/stock/doctype/packing_slip/packing_slip.py
@@ -166,4 +166,4 @@
 	 			and %s like "%s" %s
 	 			limit  %s, %s """ % ("%s", searchfield, "%s",
 	 			get_match_cond(doctype), "%s", "%s"),
-	 			(filters["delivery_note"], "%%%s%%" % txt, start, page_len))
+	 			((filters or {}).get("delivery_note"), "%%%s%%" % txt, start, page_len))
diff --git a/setup.py b/setup.py
index f2c3988..f093f55 100644
--- a/setup.py
+++ b/setup.py
@@ -1,7 +1,7 @@
 from setuptools import setup, find_packages
 import os
 
-version = "4.20.0"
+version = "4.20.1"
 
 with open("requirements.txt", "r") as f:
 	install_requires = f.readlines()
