@@ -48,7 +48,7 @@ class InstallRequirement(object):
48
48
49
49
def __init__ (self , req , comes_from , source_dir = None , editable = False ,
50
50
link = None , as_egg = False , update = True , editable_options = None ,
51
- pycompile = True , markers = None , isolated = False , options = {} ):
51
+ pycompile = True , markers = None , isolated = False , options = None ):
52
52
self .extras = ()
53
53
if isinstance (req , six .string_types ):
54
54
req = pkg_resources .Requirement .parse (req )
@@ -86,15 +86,14 @@ def __init__(self, req, comes_from, source_dir=None, editable=False,
86
86
self .uninstalled = None
87
87
self .use_user_site = False
88
88
self .target_dir = None
89
- self .options = options
90
-
89
+ self .options = options if options else {}
91
90
self .pycompile = pycompile
92
91
93
92
self .isolated = isolated
94
93
95
94
@classmethod
96
95
def from_editable (cls , editable_req , comes_from = None , default_vcs = None ,
97
- isolated = False ):
96
+ isolated = False , options = None ):
98
97
from pip .index import Link
99
98
100
99
name , url , extras_override , editable_options = parse_editable (
@@ -108,7 +107,8 @@ def from_editable(cls, editable_req, comes_from=None, default_vcs=None,
108
107
editable = True ,
109
108
link = Link (url ),
110
109
editable_options = editable_options ,
111
- isolated = isolated )
110
+ isolated = isolated ,
111
+ options = options if options else {})
112
112
113
113
if extras_override is not None :
114
114
res .extras = extras_override
@@ -181,6 +181,7 @@ def from_line(cls, name, comes_from=None, isolated=False, options=None):
181
181
else :
182
182
req = name
183
183
184
+ options = options if options else {}
184
185
return cls (req , comes_from , link = link , markers = markers ,
185
186
isolated = isolated , options = options )
186
187
0 commit comments