From d92af06f229376fa2d85a104e641d1326d975e58 Mon Sep 17 00:00:00 2001 From: Hugo Date: Mon, 4 Dec 2017 17:20:07 +0200 Subject: [PATCH 1/3] Fix flake8 --- .gitignore | 1 + git/compat.py | 2 +- git/diff.py | 10 +++---- git/exc.py | 2 +- git/refs/log.py | 2 +- git/remote.py | 8 +++--- git/repo/base.py | 2 +- git/test/lib/helper.py | 4 +-- git/test/test_commit.py | 4 +-- git/test/test_submodule.py | 2 +- git/test/test_util.py | 54 +++++++++++++++++++------------------- git/util.py | 6 ++--- 12 files changed, 50 insertions(+), 47 deletions(-) diff --git a/.gitignore b/.gitignore index d35cddebd..1773f8747 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ nbproject .DS_Store /*egg-info /.tox +.idea diff --git a/git/compat.py b/git/compat.py index b80458576..b63768f3d 100644 --- a/git/compat.py +++ b/git/compat.py @@ -309,5 +309,5 @@ def register_surrogateescape(): try: b"100644 \x9f\0aaa".decode(defenc, "surrogateescape") -except: +except Exception: register_surrogateescape() diff --git a/git/diff.py b/git/diff.py index 16c782f3a..103281a13 100644 --- a/git/diff.py +++ b/git/diff.py @@ -313,16 +313,16 @@ def __str__(self): h %= self.b_blob.path msg = '' - l = None # temp line + temp_line = None ll = 0 # line length for b, n in zip((self.a_blob, self.b_blob), ('lhs', 'rhs')): if b: - l = "\n%s: %o | %s" % (n, b.mode, b.hexsha) + temp_line = "\n%s: %o | %s" % (n, b.mode, b.hexsha) else: - l = "\n%s: None" % n + temp_line = "\n%s: None" % n # END if blob is not None - ll = max(len(l), ll) - msg += l + ll = max(len(temp_line), ll) + msg += temp_line # END for each blob # add headline diff --git a/git/exc.py b/git/exc.py index a737110c8..0dc4ad563 100644 --- a/git/exc.py +++ b/git/exc.py @@ -48,7 +48,7 @@ def __init__(self, command, status=None, stderr=None, stdout=None): else: try: status = u'exit code(%s)' % int(status) - except: + except Exception: s = safe_decode(str(status)) status = u"'%s'" % s if isinstance(status, string_types) else s diff --git a/git/refs/log.py b/git/refs/log.py index 623a63db1..1c085ef18 100644 --- a/git/refs/log.py +++ b/git/refs/log.py @@ -246,7 +246,7 @@ def to_file(self, filepath): try: self._serialize(fp) lfd.commit() - except: + except Exception: # on failure it rolls back automatically, but we make it clear lfd.rollback() raise diff --git a/git/remote.py b/git/remote.py index 35460f5a8..5d876eb32 100644 --- a/git/remote.py +++ b/git/remote.py @@ -542,9 +542,11 @@ def urls(self): if ' Push URL:' in line: yield line.split(': ')[-1] except GitCommandError as ex: - if any([msg in str(ex) for msg in ['correct access rights','cannot run ssh']]): - # If ssh is not setup to access this repository, see issue 694 - result = Git().execute(['git','config','--get','remote.%s.url' % self.name]) + if any([msg in str(ex) for msg in ['correct access rights', + 'cannot run ssh']]): + # If ssh is not setup to access this repository, see issue 694 + result = Git().execute(['git', 'config', '--get', + 'remote.%s.url' % self.name]) yield result else: raise ex diff --git a/git/repo/base.py b/git/repo/base.py index 990def64c..2fbae0122 100644 --- a/git/repo/base.py +++ b/git/repo/base.py @@ -203,7 +203,7 @@ def __exit__(self, exc_type, exc_value, traceback): def __del__(self): try: self.close() - except: + except Exception: pass def close(self): diff --git a/git/test/lib/helper.py b/git/test/lib/helper.py index 729c76a4f..27e053d81 100644 --- a/git/test/lib/helper.py +++ b/git/test/lib/helper.py @@ -139,7 +139,7 @@ def repo_creator(self): try: try: return func(self, rw_repo) - except: + except Exception: log.info("Keeping repo after failure: %s", repo_dir) repo_dir = None raise @@ -296,7 +296,7 @@ def remote_repo_creator(self): with cwd(rw_repo.working_dir): try: return func(self, rw_repo, rw_daemon_repo) - except: + except Exception: log.info("Keeping repos after failure: \n rw_repo_dir: %s \n rw_daemon_repo_dir: %s", rw_repo_dir, rw_daemon_repo_dir) rw_repo_dir = rw_daemon_repo_dir = None diff --git a/git/test/test_commit.py b/git/test/test_commit.py index fbb1c244e..e6bda6eb5 100644 --- a/git/test/test_commit.py +++ b/git/test/test_commit.py @@ -169,8 +169,8 @@ def test_traversal(self): # at some point, both iterations should stop self.assertEqual(list(bfirst)[-1], first) stoptraverse = self.rorepo.commit("254d04aa3180eb8b8daf7b7ff25f010cd69b4e7d").traverse(as_edge=True) - l = list(stoptraverse) - self.assertEqual(len(l[0]), 2) + traverse_list = list(stoptraverse) + self.assertEqual(len(traverse_list[0]), 2) # ignore self self.assertEqual(next(start.traverse(ignore_self=False)), start) diff --git a/git/test/test_submodule.py b/git/test/test_submodule.py index f970dd2c0..5c8a2798a 100644 --- a/git/test/test_submodule.py +++ b/git/test/test_submodule.py @@ -920,4 +920,4 @@ class Repo(object): submodule_path = 'D:\\submodule_path' relative_path = Submodule._to_relative_path(super_repo, submodule_path) msg = '_to_relative_path should be "submodule_path" but was "%s"' % relative_path - assert relative_path == 'submodule_path', msg \ No newline at end of file + assert relative_path == 'submodule_path', msg diff --git a/git/test/test_util.py b/git/test/test_util.py index 525c86092..2126c5413 100644 --- a/git/test/test_util.py +++ b/git/test/test_util.py @@ -217,49 +217,49 @@ def test_actor(self): @ddt.data(('name', ''), ('name', 'prefix_')) def test_iterable_list(self, case): name, prefix = case - l = IterableList(name, prefix) + iter_list = IterableList(name, prefix) name1 = "one" name2 = "two" m1 = TestIterableMember(prefix + name1) m2 = TestIterableMember(prefix + name2) - l.extend((m1, m2)) + iter_list.extend((m1, m2)) - self.assertEqual(len(l), 2) + self.assertEqual(len(iter_list), 2) # contains works with name and identity - self.assertIn(name1, l) - self.assertIn(name2, l) - self.assertIn(m2, l) - self.assertIn(m2, l) - self.assertNotIn('invalid', l) + self.assertIn(name1, iter_list) + self.assertIn(name2, iter_list) + self.assertIn(m2, iter_list) + self.assertIn(m2, iter_list) + self.assertNotIn('invalid', iter_list) # with string index - self.assertIs(l[name1], m1) - self.assertIs(l[name2], m2) + self.assertIs(iter_list[name1], m1) + self.assertIs(iter_list[name2], m2) # with int index - self.assertIs(l[0], m1) - self.assertIs(l[1], m2) + self.assertIs(iter_list[0], m1) + self.assertIs(iter_list[1], m2) # with getattr - self.assertIs(l.one, m1) - self.assertIs(l.two, m2) + self.assertIs(iter_list.one, m1) + self.assertIs(iter_list.two, m2) # test exceptions - self.failUnlessRaises(AttributeError, getattr, l, 'something') - self.failUnlessRaises(IndexError, l.__getitem__, 'something') + self.failUnlessRaises(AttributeError, getattr, iter_list, 'something') + self.failUnlessRaises(IndexError, iter_list.__getitem__, 'something') # delete by name and index - self.failUnlessRaises(IndexError, l.__delitem__, 'something') - del(l[name2]) - self.assertEqual(len(l), 1) - self.assertNotIn(name2, l) - self.assertIn(name1, l) - del(l[0]) - self.assertNotIn(name1, l) - self.assertEqual(len(l), 0) - - self.failUnlessRaises(IndexError, l.__delitem__, 0) - self.failUnlessRaises(IndexError, l.__delitem__, 'something') + self.failUnlessRaises(IndexError, iter_list.__delitem__, 'something') + del(iter_list[name2]) + self.assertEqual(len(iter_list), 1) + self.assertNotIn(name2, iter_list) + self.assertIn(name1, iter_list) + del(iter_list[0]) + self.assertNotIn(name1, iter_list) + self.assertEqual(len(iter_list), 0) + + self.failUnlessRaises(IndexError, iter_list.__delitem__, 0) + self.failUnlessRaises(IndexError, iter_list.__delitem__, 'something') diff --git a/git/util.py b/git/util.py index 5baeee918..96a1f163f 100644 --- a/git/util.py +++ b/git/util.py @@ -190,7 +190,7 @@ def assure_directory_exists(path, is_file=False): def _get_exe_extensions(): try: winprog_exts = tuple(p.upper() for p in os.environ['PATHEXT'].split(os.pathsep)) - except: + except Exception: winprog_exts = ('.BAT', 'COM', '.EXE') return winprog_exts @@ -200,7 +200,7 @@ def py_where(program, path=None): # From: http://stackoverflow.com/a/377028/548792 try: winprog_exts = tuple(p.upper() for p in os.environ['PATHEXT'].split(os.pathsep)) - except: + except Exception: winprog_exts = is_win and ('.BAT', 'COM', '.EXE') or () def is_exec(fpath): @@ -347,7 +347,7 @@ def expand_path(p, expand_vars=True): if expand_vars: p = osp.expandvars(p) return osp.normpath(osp.abspath(p)) - except: + except Exception: return None #} END utilities From 0b8ada695a925c3111735b653f93d71295e1452a Mon Sep 17 00:00:00 2001 From: Hugo Date: Mon, 4 Dec 2017 16:54:23 +0200 Subject: [PATCH 2/3] Specify Python 3.6 support --- README.md | 4 ++-- setup.py | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 456763754..68c7a3c3e 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ If it is not in your `PATH`, you can help GitPython find it by setting the `GIT_PYTHON_GIT_EXECUTABLE=` environment variable. * Git (1.7.x or newer) -* Python 2.7 to 3.5, while python 2.6 is supported on a *best-effort basis*. +* Python 2.7 to 3.6, while python 2.6 is supported on a *best-effort basis*. The list of dependencies are listed in `./requirements.txt` and `./test-requirements.txt`. The installer takes care of installing them for you. @@ -125,7 +125,7 @@ Please have a look at the [contributions file][contributing]. ### How to verify a release -Please only use releases from `pypi` as you can verify the respective source +Please only use releases from `pypi` as you can verify the respective source tarballs. This script shows how to verify the tarball was indeed created by the authors of diff --git a/setup.py b/setup.py index 585a9e29c..47523e033 100755 --- a/setup.py +++ b/setup.py @@ -101,6 +101,7 @@ def _stamp_version(filename): package_data={'git.test': ['fixtures/*']}, package_dir={'git': 'git'}, license="BSD License", + python_requires='>=2.6, !=3.0.*, !=3.1.*, !=3.2.*', requires=['gitdb2 (>=2.0.0)'], install_requires=install_requires, test_requirements=test_requires + install_requires, From ceacc6fcd827dc19748cdd4909cb98c297c3d190 Mon Sep 17 00:00:00 2001 From: Hugo Date: Tue, 5 Dec 2017 10:40:00 +0200 Subject: [PATCH 3/3] Remove redundant Python 2.4 code --- git/repo/base.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/git/repo/base.py b/git/repo/base.py index 2fbae0122..a477bf38a 100644 --- a/git/repo/base.py +++ b/git/repo/base.py @@ -8,7 +8,6 @@ import logging import os import re -import sys import warnings from git.cmd import ( @@ -40,11 +39,6 @@ log = logging.getLogger(__name__) -DefaultDBType = GitCmdObjectDB -if sys.version_info[:2] < (2, 5): # python 2.4 compatibility - DefaultDBType = GitCmdObjectDB -# END handle python 2.4 - BlameEntry = namedtuple('BlameEntry', ['commit', 'linenos', 'orig_path', 'orig_linenos']) @@ -88,7 +82,7 @@ class Repo(object): # Subclasses may easily bring in their own custom types by placing a constructor or type here GitCommandWrapperType = Git - def __init__(self, path=None, odbt=DefaultDBType, search_parent_directories=False, expand_vars=True): + def __init__(self, path=None, odbt=GitCmdObjectDB, search_parent_directories=False, expand_vars=True): """Create a new Repo instance :param path: @@ -869,7 +863,7 @@ def blame(self, rev, file, incremental=False, **kwargs): return blames @classmethod - def init(cls, path=None, mkdir=True, odbt=DefaultDBType, expand_vars=True, **kwargs): + def init(cls, path=None, mkdir=True, odbt=GitCmdObjectDB, expand_vars=True, **kwargs): """Initialize a git repository at the given path if specified :param path: pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy