mirror of
https://github.com/wting/autojump
synced 2024-10-27 20:34:07 +00:00
Merge branch 'wting_fix_and_run_precommit'
This commit is contained in:
commit
a876bc1f39
1
.gitignore
vendored
1
.gitignore
vendored
@ -5,5 +5,6 @@ __pycache__
|
|||||||
*~
|
*~
|
||||||
*.tar.gz
|
*.tar.gz
|
||||||
*.patch
|
*.patch
|
||||||
|
.pytest_cache
|
||||||
.tox
|
.tox
|
||||||
tags
|
tags
|
||||||
|
@ -1,35 +1,51 @@
|
|||||||
|
repos:
|
||||||
- repo: git@github.com:pre-commit/pre-commit-hooks.git
|
- repo: git@github.com:pre-commit/pre-commit-hooks.git
|
||||||
sha: v0.9.1
|
rev: v1.4.0
|
||||||
hooks:
|
hooks:
|
||||||
- id: autopep8-wrapper
|
- id: autopep8-wrapper
|
||||||
|
language_version: python2
|
||||||
args:
|
args:
|
||||||
- --in-place
|
- --in-place
|
||||||
- --aggressive
|
- --aggressive
|
||||||
- --aggressive
|
- --aggressive
|
||||||
|
- --ignore=E731
|
||||||
- --max-line-length=131
|
- --max-line-length=131
|
||||||
- --ignore=E126,E128,E402,E731
|
|
||||||
- id: check-added-large-files
|
- id: check-added-large-files
|
||||||
|
language_version: python2
|
||||||
- id: check-ast
|
- id: check-ast
|
||||||
|
language_version: python2
|
||||||
- id: check-case-conflict
|
- id: check-case-conflict
|
||||||
|
language_version: python2
|
||||||
- id: check-docstring-first
|
- id: check-docstring-first
|
||||||
|
language_version: python2
|
||||||
- id: debug-statements
|
- id: debug-statements
|
||||||
|
language_version: python2
|
||||||
- id: double-quote-string-fixer
|
- id: double-quote-string-fixer
|
||||||
|
language_version: python2
|
||||||
- id: end-of-file-fixer
|
- id: end-of-file-fixer
|
||||||
|
language_version: python2
|
||||||
|
exclude_types: [batch, lua]
|
||||||
- id: fix-encoding-pragma
|
- id: fix-encoding-pragma
|
||||||
|
language_version: python2
|
||||||
- id: flake8
|
- id: flake8
|
||||||
|
language_version: python2
|
||||||
args:
|
args:
|
||||||
- --max-complexity=10
|
- --max-complexity=10
|
||||||
- --max-line-length=131
|
- --max-line-length=131
|
||||||
- --ignore=E126,E128,E402,E731
|
- --ignore=E402,E731
|
||||||
- --exclude=bin/autojump_argparse.py
|
- --exclude=bin/autojump_argparse.py
|
||||||
|
- id: name-tests-test
|
||||||
|
language_version: python2
|
||||||
- id: requirements-txt-fixer
|
- id: requirements-txt-fixer
|
||||||
|
language_version: python2
|
||||||
- id: trailing-whitespace
|
- id: trailing-whitespace
|
||||||
|
language_version: python2
|
||||||
- repo: git@github.com:asottile/reorder_python_imports.git
|
- repo: git@github.com:asottile/reorder_python_imports.git
|
||||||
sha: v0.3.5
|
rev: v1.1.1
|
||||||
hooks:
|
hooks:
|
||||||
- id: reorder-python-imports
|
- id: reorder-python-imports
|
||||||
language_version: python2.7
|
language_version: python2
|
||||||
- repo: https://github.com/asottile/add-trailing-comma
|
- repo: git@github.com:asottile/add-trailing-comma
|
||||||
sha: v0.6.1
|
rev: v0.7.0
|
||||||
hooks:
|
hooks:
|
||||||
- id: add-trailing-comma
|
- id: add-trailing-comma
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
## Summary of release changes, see commit history for more details:
|
## Summary of release changes, see commit history for more details:
|
||||||
## https://github.com/joelthelion/autojump/commits/master/
|
## https://github.com/wting/autojump/commits/master/
|
||||||
|
|
||||||
### Release v22.4.0:
|
### Release v22.4.0:
|
||||||
- minor zsh performance improvement
|
- minor zsh performance improvement
|
||||||
|
12
Makefile
12
Makefile
@ -1,14 +1,15 @@
|
|||||||
VERSION = $(shell grep -oE "[0-9]+\.[0-9]+\.[0-9]+" bin/autojump)
|
VERSION = $(shell grep -oE "[0-9]+\.[0-9]+\.[0-9]+" bin/autojump)
|
||||||
TAGNAME = release-v$(VERSION)
|
TAGNAME = release-v$(VERSION)
|
||||||
|
|
||||||
.PHONY: clean docs install uninstall pre-commit lint tar test
|
.PHONY: install
|
||||||
|
|
||||||
install:
|
install:
|
||||||
./install.py
|
./install.py
|
||||||
|
|
||||||
|
.PHONY: uninstall
|
||||||
uninstall:
|
uninstall:
|
||||||
./uninstall.py
|
./uninstall.py
|
||||||
|
|
||||||
|
.PHONY: docs
|
||||||
docs:
|
docs:
|
||||||
pandoc -s -w man docs/manpage_header.md docs/header.md docs/body.md -o docs/autojump.1
|
pandoc -s -w man docs/manpage_header.md docs/header.md docs/body.md -o docs/autojump.1
|
||||||
pandoc -s -w markdown docs/header.md docs/install.md docs/body.md -o README.md
|
pandoc -s -w markdown docs/header.md docs/install.md docs/body.md -o README.md
|
||||||
@ -17,9 +18,11 @@ docs:
|
|||||||
lint: pre-commit
|
lint: pre-commit
|
||||||
@tox -e pre-commit -- run --all-files
|
@tox -e pre-commit -- run --all-files
|
||||||
|
|
||||||
|
.PHONY: pre-commit
|
||||||
pre-commit:
|
pre-commit:
|
||||||
@tox -e pre-commit -- install -f --install-hooks
|
@tox -e pre-commit -- install -f --install-hooks
|
||||||
|
|
||||||
|
.PHONY: release
|
||||||
release: docs
|
release: docs
|
||||||
# Check for tag existence
|
# Check for tag existence
|
||||||
# git describe release-$(VERSION) 2>&1 >/dev/null || exit 1
|
# git describe release-$(VERSION) 2>&1 >/dev/null || exit 1
|
||||||
@ -37,20 +40,25 @@ release: docs
|
|||||||
git archive --format=tar --prefix autojump_v$(VERSION)/ $(TAGNAME) | gzip > autojump_v$(VERSION).tar.gz
|
git archive --format=tar --prefix autojump_v$(VERSION)/ $(TAGNAME) | gzip > autojump_v$(VERSION).tar.gz
|
||||||
sha1sum autojump_v$(VERSION).tar.gz
|
sha1sum autojump_v$(VERSION).tar.gz
|
||||||
|
|
||||||
|
.PHONY: tar
|
||||||
tar:
|
tar:
|
||||||
# Create tagged archive
|
# Create tagged archive
|
||||||
git archive --format=tar --prefix autojump_v$(VERSION)/ $(TAGNAME) | gzip > autojump_v$(VERSION).tar.gz
|
git archive --format=tar --prefix autojump_v$(VERSION)/ $(TAGNAME) | gzip > autojump_v$(VERSION).tar.gz
|
||||||
sha1sum autojump_v$(VERSION).tar.gz
|
sha1sum autojump_v$(VERSION).tar.gz
|
||||||
|
|
||||||
|
.PHONY: test
|
||||||
test: pre-commit
|
test: pre-commit
|
||||||
@tox
|
@tox
|
||||||
|
|
||||||
|
.PHONY: test-xfail
|
||||||
test-xfail: pre-commit
|
test-xfail: pre-commit
|
||||||
@tox -- --runxfail
|
@tox -- --runxfail
|
||||||
|
|
||||||
|
.PHONY: test-fast
|
||||||
test-fast: pre-commit
|
test-fast: pre-commit
|
||||||
@tox -e py27
|
@tox -e py27
|
||||||
|
|
||||||
|
.PHONY: clean
|
||||||
clean:
|
clean:
|
||||||
@find . -type f -iname '*.py[co]' -delete
|
@find . -type f -iname '*.py[co]' -delete
|
||||||
@find . -type d -iname '__pycache__' -delete
|
@find . -type d -iname '__pycache__' -delete
|
||||||
|
@ -79,7 +79,7 @@ autojump is included in the following distro repositories, please use
|
|||||||
relevant package management utilities to install (e.g. yum, apt-get,
|
relevant package management utilities to install (e.g. yum, apt-get,
|
||||||
etc):
|
etc):
|
||||||
|
|
||||||
- Debian testing/unstable, Ubuntu, Linux Mint
|
- Debian, Ubuntu, Linux Mint
|
||||||
|
|
||||||
All Debian-derived distros require manual activation for policy
|
All Debian-derived distros require manual activation for policy
|
||||||
reasons, please see `/usr/share/doc/autojump/README.Debian`.
|
reasons, please see `/usr/share/doc/autojump/README.Debian`.
|
||||||
|
@ -311,9 +311,11 @@ class HelpFormatter(object):
|
|||||||
return help
|
return help
|
||||||
|
|
||||||
def _join_parts(self, part_strings):
|
def _join_parts(self, part_strings):
|
||||||
return ''.join([part
|
return ''.join([
|
||||||
|
part
|
||||||
for part in part_strings
|
for part in part_strings
|
||||||
if part and part is not SUPPRESS])
|
if part and part is not SUPPRESS
|
||||||
|
])
|
||||||
|
|
||||||
def _format_usage(self, usage, actions, groups, prefix):
|
def _format_usage(self, usage, actions, groups, prefix):
|
||||||
if prefix is None:
|
if prefix is None:
|
||||||
@ -1526,9 +1528,11 @@ class _ActionsContainer(object):
|
|||||||
|
|
||||||
def _handle_conflict_error(self, action, conflicting_actions):
|
def _handle_conflict_error(self, action, conflicting_actions):
|
||||||
message = _('conflicting option string(s): %s')
|
message = _('conflicting option string(s): %s')
|
||||||
conflict_string = ', '.join([option_string
|
conflict_string = ', '.join([
|
||||||
|
option_string
|
||||||
for option_string, action
|
for option_string, action
|
||||||
in conflicting_actions])
|
in conflicting_actions
|
||||||
|
])
|
||||||
raise ArgumentError(action, message % conflict_string)
|
raise ArgumentError(action, message % conflict_string)
|
||||||
|
|
||||||
def _handle_conflict_resolve(self, action, conflicting_actions):
|
def _handle_conflict_resolve(self, action, conflicting_actions):
|
||||||
@ -1760,14 +1764,18 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
|
|||||||
return action
|
return action
|
||||||
|
|
||||||
def _get_optional_actions(self):
|
def _get_optional_actions(self):
|
||||||
return [action
|
return [
|
||||||
|
action
|
||||||
for action in self._actions
|
for action in self._actions
|
||||||
if action.option_strings]
|
if action.option_strings
|
||||||
|
]
|
||||||
|
|
||||||
def _get_positional_actions(self):
|
def _get_positional_actions(self):
|
||||||
return [action
|
return [
|
||||||
|
action
|
||||||
for action in self._actions
|
for action in self._actions
|
||||||
if not action.option_strings]
|
if not action.option_strings
|
||||||
|
]
|
||||||
|
|
||||||
# =====================================
|
# =====================================
|
||||||
# Command line argument parsing methods
|
# Command line argument parsing methods
|
||||||
@ -1991,7 +1999,8 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
|
|||||||
next_option_string_index = min([
|
next_option_string_index = min([
|
||||||
index
|
index
|
||||||
for index in option_string_indices
|
for index in option_string_indices
|
||||||
if index >= start_index])
|
if index >= start_index
|
||||||
|
])
|
||||||
if start_index != next_option_string_index:
|
if start_index != next_option_string_index:
|
||||||
positionals_end_index = consume_positionals(start_index)
|
positionals_end_index = consume_positionals(start_index)
|
||||||
|
|
||||||
@ -2040,9 +2049,11 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
|
|||||||
|
|
||||||
# if no actions were used, report the error
|
# if no actions were used, report the error
|
||||||
else:
|
else:
|
||||||
names = [_get_action_name(action)
|
names = [
|
||||||
|
_get_action_name(action)
|
||||||
for action in group._group_actions
|
for action in group._group_actions
|
||||||
if action.help is not SUPPRESS]
|
if action.help is not SUPPRESS
|
||||||
|
]
|
||||||
msg = _('one of the arguments %s is required')
|
msg = _('one of the arguments %s is required')
|
||||||
self.error(msg % ' '.join(names))
|
self.error(msg % ' '.join(names))
|
||||||
|
|
||||||
@ -2106,8 +2117,10 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
|
|||||||
result = []
|
result = []
|
||||||
for i in range(len(actions), 0, -1):
|
for i in range(len(actions), 0, -1):
|
||||||
actions_slice = actions[:i]
|
actions_slice = actions[:i]
|
||||||
pattern = ''.join([self._get_nargs_pattern(action)
|
pattern = ''.join([
|
||||||
for action in actions_slice])
|
self._get_nargs_pattern(action)
|
||||||
|
for action in actions_slice
|
||||||
|
])
|
||||||
match = _re.match(pattern, arg_strings_pattern)
|
match = _re.match(pattern, arg_strings_pattern)
|
||||||
if match is not None:
|
if match is not None:
|
||||||
result.extend([len(string) for string in match.groups()])
|
result.extend([len(string) for string in match.groups()])
|
||||||
|
Loading…
Reference in New Issue
Block a user