diff --git a/frappe/__init__.py b/frappe/__init__.py index 1bb150c8d6..7c74557347 100644 --- a/frappe/__init__.py +++ b/frappe/__init__.py @@ -17,7 +17,7 @@ from faker import Faker from .exceptions import * from .utils.jinja import get_jenv, get_template, render_template, get_email_from_template -__version__ = '10.1.22' +__version__ = '10.1.23' __title__ = "Frappe Framework" local = Local() diff --git a/frappe/public/js/frappe/views/treeview.js b/frappe/public/js/frappe/views/treeview.js index f51aeea0f1..832e193aa6 100644 --- a/frappe/public/js/frappe/views/treeview.js +++ b/frappe/public/js/frappe/views/treeview.js @@ -176,7 +176,7 @@ frappe.views.TreeView = Class.extend({ return !node.is_root && me.can_read; }, click: function(node) { - frappe.set_route("Form", me.doctype, node.label); + frappe.set_route("Form", me.doctype, encodeURIComponent(node.label)); } }, { diff --git a/frappe/utils/boilerplate.py b/frappe/utils/boilerplate.py index 54cba7802b..48b06ab359 100755 --- a/frappe/utils/boilerplate.py +++ b/frappe/utils/boilerplate.py @@ -269,15 +269,18 @@ def get_data(): setup_template = """# -*- coding: utf-8 -*- from setuptools import setup, find_packages -from pip.req import parse_requirements +try: # for pip >= 10 + from pip._internal.req import parse_requirements +except ImportError: # for pip <= 9.0.3 + from pip.req import parse_requirements import re, ast # get version from __version__ variable in {app_name}/__init__.py _version_re = re.compile(r'__version__\s+=\s+(.*)') with open('{app_name}/__init__.py', 'rb') as f: - version = str(ast.literal_eval(_version_re.search( - f.read().decode('utf-8')).group(1))) + version = str(ast.literal_eval(_version_re.search( + f.read().decode('utf-8')).group(1))) requirements = parse_requirements("requirements.txt", session="") diff --git a/setup.py b/setup.py index 466449e956..dae1ef24f1 100644 --- a/setup.py +++ b/setup.py @@ -3,42 +3,45 @@ import os, shutil from distutils.command.clean import clean as Clean from setuptools import setup, find_packages -from pip.req import parse_requirements +try: # for pip >= 10 + from pip._internal.req import parse_requirements +except ImportError: # for pip <= 9.0.3 + from pip.req import parse_requirements import re, ast # get version from __version__ variable in frappe/__init__.py _version_re = re.compile(r'__version__\s+=\s+(.*)') with open('frappe/__init__.py', 'rb') as f: - version = str(ast.literal_eval(_version_re.search( - f.read().decode('utf-8')).group(1))) + version = str(ast.literal_eval(_version_re.search( + f.read().decode('utf-8')).group(1))) requirements = parse_requirements("requirements.txt", session="") class CleanCommand(Clean): - def run(self): - Clean.run(self) + def run(self): + Clean.run(self) - basedir = os.path.abspath(os.path.dirname(__file__)) + basedir = os.path.abspath(os.path.dirname(__file__)) - for relpath in ['build', '.cache', '.coverage', 'dist', 'frappe.egg-info']: - abspath = os.path.join(basedir, relpath) - if os.path.exists(abspath): - if os.path.isfile(abspath): - os.remove(abspath) - else: - shutil.rmtree(abspath) + for relpath in ['build', '.cache', '.coverage', 'dist', 'frappe.egg-info']: + abspath = os.path.join(basedir, relpath) + if os.path.exists(abspath): + if os.path.isfile(abspath): + os.remove(abspath) + else: + shutil.rmtree(abspath) - for dirpath, dirnames, filenames in os.walk(basedir): - for filename in filenames: - _, extension = os.path.splitext(filename) - if extension in ['.pyc']: - abspath = os.path.join(dirpath, filename) - os.remove(abspath) - for dirname in dirnames: - if dirname in ['__pycache__']: - abspath = os.path.join(dirpath, dirname) - shutil.rmtree(abspath) + for dirpath, dirnames, filenames in os.walk(basedir): + for filename in filenames: + _, extension = os.path.splitext(filename) + if extension in ['.pyc']: + abspath = os.path.join(dirpath, filename) + os.remove(abspath) + for dirname in dirnames: + if dirname in ['__pycache__']: + abspath = os.path.join(dirpath, dirname) + shutil.rmtree(abspath) setup( name='frappe',