mirror of
https://github.com/kennethreitz/pipenv.git
synced 2026-06-05 22:50:18 +00:00
Merge pull request #4915 from oz123/remove-dep-first
Remove vendored first
This commit is contained in:
+2
-2
@@ -2525,7 +2525,6 @@ def do_check(
|
||||
args=None,
|
||||
pypi_mirror=None
|
||||
):
|
||||
from pipenv.vendor.first import first
|
||||
from pipenv.vendor.vistir.compat import JSONDecodeError
|
||||
|
||||
if not system:
|
||||
@@ -2569,7 +2568,8 @@ def do_check(
|
||||
if not system:
|
||||
python = project._which("python")
|
||||
else:
|
||||
python = first(system_which(p) for p in ("python", "python3", "python2"))
|
||||
interpreters = [system_which(p) for p in ("python", "python3", "python2")]
|
||||
python = interpreters[0] if interpreters else None
|
||||
if not python:
|
||||
click.echo(crayons.red("The Python interpreter can't be found."), err=True)
|
||||
sys.exit(1)
|
||||
|
||||
Vendored
-19
@@ -1,19 +0,0 @@
|
||||
Copyright (c) 2012 Hynek Schlawack
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
|
||||
of the Software, and to permit persons to whom the Software is furnished to do
|
||||
so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
Vendored
-78
@@ -1,78 +0,0 @@
|
||||
## -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
first
|
||||
=====
|
||||
|
||||
first is the function you always missed in Python.
|
||||
|
||||
In the simplest case, it returns the first true element from an iterable:
|
||||
|
||||
>>> from first import first
|
||||
>>> first([0, False, None, [], (), 42])
|
||||
42
|
||||
|
||||
Or None if there is none:
|
||||
|
||||
>>> from first import first
|
||||
>>> first([]) is None
|
||||
True
|
||||
>>> first([0, False, None, [], ()]) is None
|
||||
True
|
||||
|
||||
It also supports the passing of a key argument to help selecting the first
|
||||
match in a more advanced way.
|
||||
|
||||
>>> from first import first
|
||||
>>> first([1, 1, 3, 4, 5], key=lambda x: x % 2 == 0)
|
||||
4
|
||||
|
||||
:copyright: (c) 2012 by Hynek Schlawack.
|
||||
:license: MIT, see LICENSE for more details.
|
||||
|
||||
"""
|
||||
|
||||
__title__ = 'first'
|
||||
__version__ = '2.0.2'
|
||||
__author__ = 'Hynek Schlawack'
|
||||
__license__ = 'MIT'
|
||||
__copyright__ = 'Copyright 2012 Hynek Schlawack'
|
||||
|
||||
|
||||
def first(iterable, default=None, key=None):
|
||||
"""
|
||||
Return first element of `iterable` that evaluates true, else return None
|
||||
(or an optional default value).
|
||||
|
||||
>>> first([0, False, None, [], (), 42])
|
||||
42
|
||||
|
||||
>>> first([0, False, None, [], ()]) is None
|
||||
True
|
||||
|
||||
>>> first([0, False, None, [], ()], default='ohai')
|
||||
'ohai'
|
||||
|
||||
>>> import re
|
||||
>>> m = first(re.match(regex, 'abc') for regex in ['b.*', 'a(.*)'])
|
||||
>>> m.group(1)
|
||||
'bc'
|
||||
|
||||
The optional `key` argument specifies a one-argument predicate function
|
||||
like that used for `filter()`. The `key` argument, if supplied, must be
|
||||
in keyword form. For example:
|
||||
|
||||
>>> first([1, 1, 3, 4, 5], key=lambda x: x % 2 == 0)
|
||||
4
|
||||
|
||||
"""
|
||||
if key is None:
|
||||
for el in iterable:
|
||||
if el:
|
||||
return el
|
||||
else:
|
||||
for el in iterable:
|
||||
if key(el):
|
||||
return el
|
||||
|
||||
return default
|
||||
Vendored
-1
@@ -10,7 +10,6 @@ colorama==0.4.4
|
||||
distlib==0.3.2
|
||||
docopt==0.6.2
|
||||
dparse==0.5.1
|
||||
first==2.0.2
|
||||
funcsigs==1.0.2
|
||||
idna==3.2
|
||||
importlib-metadata==4.6.1
|
||||
|
||||
Reference in New Issue
Block a user