Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in
Toggle navigation
H
heroku-buildpack-python
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Python-Dev
heroku-buildpack-python
Commits
d047f26a
Commit
d047f26a
authored
Jun 02, 2016
by
Ed Morley
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Import upstream pip-pop fix for pip 8 support
Is the fix from kennethreitz/pip-pop#12.
parent
998f996a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
32 deletions
+21
-32
pip-diff
vendor/pip-pop/pip-diff
+10
-13
pip-grep
vendor/pip-pop/pip-grep
+11
-19
No files found.
vendor/pip-pop/pip-diff
View file @
d047f26a
...
...
@@ -18,6 +18,7 @@ from pip._vendor.requests import session
requests
=
session
()
class
Requirements
(
object
):
def
__init__
(
self
,
reqfile
=
None
):
super
(
Requirements
,
self
)
.
__init__
()
...
...
@@ -31,13 +32,15 @@ class Requirements(object):
return
'<Requirements
\'
{}
\'
>'
.
format
(
self
.
path
)
def
load
(
self
,
reqfile
):
if
not
os
.
path
.
exists
(
reqfile
):
raise
ValueError
(
'The given requirements file does not exist.'
)
finder
=
PackageFinder
([],
[],
session
=
requests
)
for
requirement
in
parse_requirements
(
reqfile
,
finder
=
finder
,
session
=
requests
):
if
requirement
.
req
:
if
not
getattr
(
requirement
.
req
,
'name'
,
None
):
# Prior to pip 8.1.2 the attribute `name` did not exist.
requirement
.
req
.
name
=
requirement
.
req
.
project_name
self
.
requirements
.
append
(
requirement
.
req
)
...
...
@@ -48,24 +51,24 @@ class Requirements(object):
# Generate fresh packages.
other_reqs
=
(
[
r
.
project_
name
for
r
in
r1
.
requirements
]
[
r
.
name
for
r
in
r1
.
requirements
]
if
ignore_versions
else
r1
.
requirements
)
for
req
in
r2
.
requirements
:
r
=
req
.
project_
name
if
ignore_versions
else
req
r
=
req
.
name
if
ignore_versions
else
req
if
r
not
in
other_reqs
and
r
not
in
excludes
:
results
[
'fresh'
]
.
append
(
req
)
# Generate stale packages.
other_reqs
=
(
[
r
.
project_
name
for
r
in
r2
.
requirements
]
[
r
.
name
for
r
in
r2
.
requirements
]
if
ignore_versions
else
r2
.
requirements
)
for
req
in
r1
.
requirements
:
r
=
req
.
project_
name
if
ignore_versions
else
req
r
=
req
.
name
if
ignore_versions
else
req
if
r
not
in
other_reqs
and
r
not
in
excludes
:
results
[
'stale'
]
.
append
(
req
)
...
...
@@ -73,11 +76,7 @@ class Requirements(object):
return
results
def
diff
(
r1
,
r2
,
include_fresh
=
False
,
include_stale
=
False
,
excludes
=
None
):
include_versions
=
True
if
include_stale
else
False
excludes
=
excludes
if
len
(
excludes
)
else
[]
...
...
@@ -92,12 +91,11 @@ def diff(r1, r2, include_fresh=False, include_stale=False, excludes=None):
if
include_fresh
:
for
line
in
results
[
'fresh'
]:
print
(
line
.
project_
name
if
include_versions
else
line
)
print
(
line
.
name
if
include_versions
else
line
)
if
include_stale
:
for
line
in
results
[
'stale'
]:
print
(
line
.
project_name
if
include_versions
else
line
)
print
(
line
.
name
if
include_versions
else
line
)
def
main
():
...
...
@@ -114,6 +112,5 @@ def main():
diff
(
**
kwargs
)
if
__name__
==
'__main__'
:
main
()
vendor/pip-pop/pip-grep
View file @
d047f26a
...
...
@@ -15,6 +15,7 @@ from pip._vendor.requests import session
requests
=
session
()
class
Requirements
(
object
):
def
__init__
(
self
,
reqfile
=
None
):
super
(
Requirements
,
self
)
.
__init__
()
...
...
@@ -28,38 +29,31 @@ class Requirements(object):
return
'<Requirements
\'
{}
\'
>'
.
format
(
self
.
path
)
def
load
(
self
,
reqfile
):
if
not
os
.
path
.
exists
(
reqfile
):
raise
ValueError
(
'The given requirements file does not exist.'
)
finder
=
PackageFinder
([],
[],
session
=
requests
)
for
requirement
in
parse_requirements
(
reqfile
,
finder
=
finder
,
session
=
requests
):
self
.
requirements
.
append
(
requirement
)
if
requirement
.
req
:
if
not
getattr
(
requirement
.
req
,
'name'
,
None
):
# Prior to pip 8.1.2 the attribute `name` did not exist.
requirement
.
req
.
name
=
requirement
.
req
.
project_name
self
.
requirements
.
append
(
requirement
.
req
)
def
grep
(
reqfile
,
packages
,
silent
=
False
):
try
:
r
=
Requirements
(
reqfile
)
except
ValueError
:
if
not
silent
:
print
(
'There was a problem loading the given requirement file.'
)
exit
(
os
.
EX_NOINPUT
)
for
requirement
in
r
.
requirements
:
if
requirement
.
req
:
if
requirement
.
req
.
project_name
in
packages
:
if
not
silent
:
print
(
'Package {} found!'
.
format
(
requirement
.
req
.
project_name
))
exit
(
0
)
for
req
in
r
.
requirements
:
if
req
.
name
in
packages
:
if
not
silent
:
print
(
'Package {} found!'
.
format
(
req
.
name
))
exit
(
0
)
if
not
silent
:
print
(
'Not found.'
)
...
...
@@ -72,10 +66,8 @@ def main():
kwargs
=
{
'reqfile'
:
args
[
'<reqfile>'
],
'packages'
:
args
[
'<package>'
],
'silent'
:
args
[
'-s'
]}
grep
(
**
kwargs
)
if
__name__
==
'__main__'
:
main
()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment