diff --git a/m2r.py b/m2r.py index a4e43c2..6c1e6e0 100644 --- a/m2r.py +++ b/m2r.py @@ -5,21 +5,13 @@ import os import os.path import re -import sys from argparse import ArgumentParser, Namespace from docutils import statemachine, nodes, io, utils from docutils.parsers import rst -from docutils.core import ErrorString -from docutils.utils import SafeString, column_width +from docutils.utils import column_width import mistune - -if sys.version_info < (3, ): - from codecs import open as _open - from urlparse import urlparse -else: - _open = open - from urllib.parse import urlparse +from urllib.parse import urlparse __version__ = '0.2.1' _is_sphinx = False @@ -609,10 +601,10 @@ def run(self): raise self.severe('Problems with "%s" directive path:\n' 'Cannot encode input file path "%s" ' '(wrong locale?).' % - (self.name, SafeString(path))) + (self.name, path)) except IOError as error: raise self.severe('Problems with "%s" directive path:\n%s.' % - (self.name, ErrorString(error))) + (self.name, io.error_string(error))) # read from the file startline = self.options.get('start-line', None) @@ -625,7 +617,7 @@ def run(self): rawtext = include_file.read() except UnicodeError as error: raise self.severe('Problem with "%s" directive:\n%s' % - (self.name, ErrorString(error))) + (self.name, io.error_string(error))) config = self.state.document.settings.env.config converter = M2R( @@ -670,7 +662,7 @@ def convert(text, **kwargs): def parse_from_file(file, encoding='utf-8', **kwargs): if not os.path.exists(file): raise OSError('No such file exists: {}'.format(file)) - with _open(file, encoding=encoding) as f: + with open(file, encoding=encoding) as f: src = f.read() output = convert(src, **kwargs) return output @@ -684,7 +676,7 @@ def save_to_file(file, src, encoding='utf-8', **kwargs): if confirm.upper() not in ('Y', 'YES'): print('skip {}'.format(file)) return - with _open(target, 'w', encoding=encoding) as f: + with open(target, 'w', encoding=encoding) as f: f.write(src) diff --git a/setup.py b/setup.py index a5768ad..bbc01b0 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,6 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -import sys from os import path try: @@ -19,8 +18,6 @@ install_requires = ['mistune', 'docutils'] test_requirements = ['pygments'] -if sys.version_info < (3, 3): - test_requirements.append('mock') setup( name='m2r', @@ -42,12 +39,8 @@ 'Intended Audience :: Developers', 'License :: OSI Approved :: MIT License', 'Natural Language :: English', - 'Programming Language :: Python :: 2', - 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + 'Programming Language :: Python :: 3.7', 'Topic :: Text Processing', ], install_requires=install_requires,