It seems pip distinguishes paths with .. or extra / for constraints.
For example, the following directories are considered different.
/path/to/dir
/path/to//dir
/path/to/dir/subdir/..
This commit tries to normalize the given directory name to avoid
"Could not satisfy constraints for 'xxxx': installation from path
or url cannot be constrained to a version" error due to directory
name mismatch.
Reference: https://github.com/pypa/pip/pull/3582
Closes-Bug: #1542545
Change-Id: Iae9d58c27d3b10bca16e4a471507c4d5c16439a0
... | ... |
@@ -300,6 +300,13 @@ function _setup_package_with_constraints_edit { |
300 | 300 |
local flags=$2 |
301 | 301 |
local extras=$3 |
302 | 302 |
|
303 |
+ # Normalize the directory name to avoid |
|
304 |
+ # "installation from path or url cannot be constrained to a version" |
|
305 |
+ # error. |
|
306 |
+ # REVISIT(yamamoto): Remove this when fixed in pip. |
|
307 |
+ # https://github.com/pypa/pip/pull/3582 |
|
308 |
+ project_dir=$(cd $project_dir && pwd) |
|
309 |
+ |
|
303 | 310 |
if [ -n "$REQUIREMENTS_DIR" ]; then |
304 | 311 |
# Constrain this package to this project directory from here on out. |
305 | 312 |
local name |