Skip to content

Failed to install from SVN with caret character ^ in the path. #3307

Closed
@ivan-alles

Description

@ivan-alles

Issue description

For investigating of this problem I created a public SVN repository. It contains a ^ character in the path: https://eu-subversion.assembla.com/svn/testuuu^testuuu-first-space/test_pyenv/trunk/test_package_1

I tried to install a package from it using pipenv:

pipenv install -e svn+https://eu-subversion.assembla.com/svn/testuuu^testuuu-first-space/test_pyenv/trunk/test_package_1#egg=test-package1

This fails because the pipenv misses the ^ character (see below).

Expected result

The package should be installed. It works with pip, if I quote the path:
pip install -e "svn+https://eu-subversion.assembla.com/svn/testuuu^testuuu-first-space/test_pyenv/trunk/test_package_1#egg=test-package1"

Quoting does not help with pipenv.

Actual result

c:\Python36\Scripts\pipenv --verbose install -e svn+https://eu-subversion.assemb
la.com/svn/testuuu^testuuu-first-space/test_pyenv/trunk/test_package_1#egg=test-package1
Installing -e svn+https://eu-subversion.assembla.com/svn/testuuutestuuu-first-space/test_pyenv/trunk/test_package_1#egg=test-package1…
[    ] Installing...Installing 'test-package1'
$ ['C:\\Users\\ivan\\.virtualenvs\\test_pipenv-4FKtD8uM\\Scripts\\pip.exe', 'install', '--src', 'C:\\Users\\ivan\\.virtualenvs\\test_pipenv-4FKtD8uM\\src', '--v
erbose', '--upgrade', '-e', 'svn+https://eu-subversion.assembla.com/svn/testuuutestuuu-first-space/test_pyenv/trunk/test_package_1#egg=test-package1', '-i', 'ht
tps://pypi.org/simple']
Adding test-package1 to Pipfile's [packages]…
Installation Succeeded
Pipfile.lock (c58142) out of date, updating to (6c5ddb)…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
[    ] Pinning VCS Packages...INFO:pipenv.patched.notpip._internal.vcs.subversion:Checking out https://eu-subversion.assembla.com/svn/testuuutestuuu-first-space
/test_pyenv/trunk/test_package_1 to c:\users\ivan\appdata\local\temp\requirementslibqlbhaoiy\test-package1
[=   ] Pinning VCS Packages...svn: E170013: Unable to connect to a repository at URL 'https://eu-subversion.assembla.com/svn/testuuutestuuu-first-space/test_pye
nv/trunk/test_package_1'
svn: E175009: The XML response contains invalid XML
svn: E130003: Malformed XML: no element found
Traceback (most recent call last):
  File "c:\Python36\Scripts\pipenv-script.py", line 11, in <module>
    load_entry_point('pipenv', 'console_scripts', 'pipenv')()
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\core.py", line 717, in main
    rv = self.invoke(ctx)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\decorators.py", line 64, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\click\decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "c:\python36\scripts\src\pipenv\pipenv\cli\command.py", line 250, in install
    editable_packages=state.installstate.editables,
  File "c:\python36\scripts\src\pipenv\pipenv\core.py", line 2005, in do_install
    skip_lock=skip_lock,
  File "c:\python36\scripts\src\pipenv\pipenv\core.py", line 1214, in do_init
    pypi_mirror=pypi_mirror,
  File "c:\python36\scripts\src\pipenv\pipenv\core.py", line 1061, in do_lock
    lockfile=lockfile
  File "c:\python36\scripts\src\pipenv\pipenv\utils.py", line 612, in venv_resolve_deps
    dev=dev,
  File "c:\python36\scripts\src\pipenv\pipenv\utils.py", line 1294, in get_vcs_deps
    with locked_repository(requirement) as repo:
  File "c:\python36\lib\contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "c:\python36\scripts\src\pipenv\pipenv\utils.py", line 1430, in locked_repository
    with requirement.req.locked_vcs_repo(src_dir=src_dir) as repo:
  File "c:\python36\lib\contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\requirementslib\models\requirements.py", line 840, in locked_vcs_repo
    vcsrepo = self.get_vcs_repo(src_dir=src_dir)
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\requirementslib\models\requirements.py", line 802, in get_vcs_repo
    vcsrepo.obtain()
  File "c:\python36\scripts\src\pipenv\pipenv\vendor\requirementslib\models\vcs.py", line 37, in obtain
    self.repo_instance.obtain(self.checkout_directory)
  File "c:\python36\scripts\src\pipenv\pipenv\patched\notpip\_internal\vcs\__init__.py", line 332, in obtain
    self.fetch_new(dest, url, rev_options)
  File "c:\python36\scripts\src\pipenv\pipenv\patched\notpip\_internal\vcs\subversion.py", line 54, in fetch_new
    self.run_command(cmd_args)
  File "c:\python36\scripts\src\pipenv\pipenv\patched\notpip\_internal\vcs\__init__.py", line 456, in run_command
    spinner=spinner)
  File "c:\python36\scripts\src\pipenv\pipenv\patched\notpip\_internal\utils\misc.py", line 705, in call_subprocess
    % (command_desc, proc.returncode, cwd))
pipenv.patched.notpip._internal.exceptions.InstallationError: Command "svn checkout -q https://eu-subversion.assembla.com/svn/testuuutestuuu-first-space/test_py
env/trunk/test_package_1 C:\Users\ivan\AppData\Local\Temp\requirementslibqlbhaoiy\test-package1" failed with error code 1 in None

The ^ charachter is missing in the path pipenv is trying to check out.

Steps to replicate

See actual result.

Provide the steps to replicate (which usually at least includes the commands and the Pipfile).


$ pipenv --support

Pipenv version: '2018.11.15.dev0'

Pipenv location: 'c:\\python36\\scripts\\src\\pipenv\\pipenv'

Python location: 'c:\\python36\\python.exe'

Python installations found:

  • 5.2.0: C:\Anaconda3-5.2.0-64\python.exe
  • 4.2.0: C:\Anaconda3-4.2.0-64\python.exe
  • 4.1.1: C:\Anaconda3-4.1.1-64\python.exe
  • 3.6.6: C:\Python36\python.exe
  • 3.5: d:\Anaconda3\Scripts\python.exe
  • 2.7: d:\Program Files\Anaconda2\Scripts\python.exe

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '3.6.6',
 'os_name': 'nt',
 'platform_machine': 'AMD64',
 'platform_python_implementation': 'CPython',
 'platform_release': '7',
 'platform_system': 'Windows',
 'platform_version': '6.1.7601',
 'python_full_version': '3.6.6',
 'python_version': '3.6',
 'sys_platform': 'win32'}

System environment variables:

  • ACML_FMA
  • ALLUSERSPROFILE
  • APPDATA
  • BOOST_INCLUDE_PATH
  • BOOST_LIB_PATH
  • CNTK_MKL
  • CNTK_MKL_PATH
  • COGNEX_CCF_PATH
  • COMMONPROGRAMFILES
  • COMMONPROGRAMFILES(X86)
  • COMMONPROGRAMW6432
  • COMPUTERNAME
  • COMSPEC
  • CUB_PATH
  • CUDA_PATH
  • CUDA_PATH_V7_5
  • CUDA_PATH_V8_0
  • CUDA_PATH_V9_0
  • CUDA_PATH_V9_1
  • CUDNN_PATH
  • FARHOME
  • FARLANG
  • FARLOCALPROFILE
  • FARPROFILE
  • FP_NO_HOST_CHECK
  • HALCONARCH
  • HALCONEXAMPLES
  • HALCONIMAGES
  • HALCONROOT
  • HOMEDRIVE
  • HOMEPATH
  • IMAGEMAGICK_BINARY
  • INTEL_DEV_REDIST
  • IVANROOT
  • IVAN_BACKUP
  • IVP_3D_CAMERA
  • KINECTSDK10_DIR
  • LANG
  • LOCALAPPDATA
  • LOGONSERVER
  • MIC_LD_LIBRARY_PATH
  • MOZ_PLUGIN_PATH
  • MSMPI_BIN
  • MSMPI_INC
  • MSMPI_LIB32
  • MSMPI_LIB64
  • NUMBER_OF_PROCESSORS
  • NVCUDASAMPLES7_5_ROOT
  • NVCUDASAMPLES8_0_ROOT
  • NVCUDASAMPLES9_0_ROOT
  • NVCUDASAMPLES9_1_ROOT
  • NVCUDASAMPLES_ROOT
  • NVTOOLSEXT_PATH
  • OPENCV_PATH_V31
  • OPENNI2_INCLUDE64
  • OPENNI2_LIB64
  • OPENNI2_REDIST64
  • OS
  • PATH
  • PATHEXT
  • PIPENV_ACTIVE
  • PIP_DISABLE_PIP_VERSION_CHECK
  • PIP_PYTHON_PATH
  • POSTGRESQL_DIR
  • PROCESSOR_ARCHITECTURE
  • PROCESSOR_IDENTIFIER
  • PROCESSOR_LEVEL
  • PROCESSOR_REVISION
  • PROGRAMDATA
  • PROGRAMFILES
  • PROGRAMFILES(X86)
  • PROGRAMW6432
  • PROMPT
  • PSMODULEPATH
  • PUBLIC
  • PUREGEV_ROOT
  • PYTHONDONTWRITEBYTECODE
  • QTMSBUILD
  • SESSIONNAME
  • SICK_EASYRANGER_ROOT
  • SYSTEMDRIVE
  • SYSTEMROOT
  • TEMP
  • TESSDATA_PREFIX
  • TMP
  • UR_BLOB_DIR
  • UR_LIB_DIR
  • UR_PYTHON3_DIR
  • UR_UEYE_DIR
  • USERDOMAIN
  • USERNAME
  • USERPROFILE
  • VBOX_MSI_INSTALL_PATH
  • VIRTUAL_ENV
  • VS110COMNTOOLS
  • VS120COMNTOOLS
  • VS140COMNTOOLS
  • VSSDK140INSTALL
  • WINDIR
  • ZLIB_PATH
  • PIP_SHIMS_BASE_MODULE
  • PYTHONFINDER_IGNORE_UNSUPPORTED

Pipenvûspecific environment variables:

  • PIPENV_ACTIVE: 1

Debugûspecific environment variables:

  • PATH: C:\Users\ivan\.virtualenvs\test_pipenv-4FKtD8uM\Scripts;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\libnvvp;C:\Program Files\ImageMagick-7.0.7-Q16;C:\Program Files (x86)\SICK\3D Cameras\icon\lib;C:\ProgramData\Oracle\Java\javapath;D:\Program Files\Microsoft MPI\Bin\;C:\Program Files\PostgreSQL\9.5\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Program Files\SlikSvn\bin;C:\Program Files\WinRAR;C:\Program Files (x86)\Araxis\Araxis Merge 2001 Professional;D:\tools;C:\Program Files (x86)\DATEV\SiPacompact;C:\Program Files (x86)\CMake\bin;d:\Program Files\MVTec\HALCON-13.0\bin\x64-win64;D:\Program Files (x86)\Graphviz2.38\bin;D:\Program Files\OpenNI2\Redist;C:\Program Files (x86)\Common Files\Pleora\eBUS SDK;C:\Program Files\Common Files\Pleora\eBUS SDK;C:\Program Files (x86)\SICK\EasyRanger\;C:\Program Files\Git\cmd;D:\tools\TortoiseSVN\bin;D:\lib\NVIDIA\cudnn-9.0-windows7-x64-v7\bin;D:\Program Files\MVTec\HALCON-13.0\bin\x64-win64;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Users\ivan\AppData\Local\GitHubDesktop\bin;C:\Users\ivan\AppData\Local\Programs\Microsoft VS Code\bin
  • LANG: en_US
  • VIRTUAL_ENV: C:\Users\ivan\.virtualenvs\test_pipenv-4FKtD8uM

Contents of Pipfile ('D:\ivan\dev\sandbox\test_pyenv\test_pyenv_wf\test_pipenv\Pipfile'):

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]
test-package1 = {editable = true,svn = "https://eu-subversion.assembla.com/svn/testuuutestuuu-first-space/test_pyenv/trunk/test_package_1"}
rbose = {editable = true,version = "*"}

[requires]
python_version = "3.6"

Contents of Pipfile.lock ('D:\ivan\dev\sandbox\test_pyenv\test_pyenv_wf\test_pipenv\Pipfile.lock'):

{
    "_meta": {
        "hash": {
            "sha256": "b59210558139e4cbe83b9a066e242b2ae504a68377c334c9cfccd1d86c6c5ddb"
        },
        "pipfile-spec": 6,
        "requires": {
            "python_version": "3.6"
        },
        "sources": [
            {
                "name": "pypi",
                "url": "https://pypi.org/simple",
                "verify_ssl": true
            }
        ]
    },
    "default": {
        "numpy": {
            "hashes": [
                "sha256:0df89ca13c25eaa1621a3f09af4c8ba20da849692dcae184cb55e80952c453fb",
                "sha256:154c35f195fd3e1fad2569930ca51907057ae35e03938f89a8aedae91dd1b7c7",
                "sha256:18e84323cdb8de3325e741a7a8dd4a82db74fde363dce32b625324c7b32aa6d7",
                "sha256:1e8956c37fc138d65ded2d96ab3949bd49038cc6e8a4494b1515b0ba88c91565",
                "sha256:23557bdbca3ccbde3abaa12a6e82299bc92d2b9139011f8c16ca1bb8c75d1e95",
                "sha256:24fd645a5e5d224aa6e39d93e4a722fafa9160154f296fd5ef9580191c755053",
                "sha256:36e36b6868e4440760d4b9b44587ea1dc1f06532858d10abba98e851e154ca70",
                "sha256:3d734559db35aa3697dadcea492a423118c5c55d176da2f3be9c98d4803fc2a7",
                "sha256:416a2070acf3a2b5d586f9a6507bb97e33574df5bd7508ea970bbf4fc563fa52",
                "sha256:4a22dc3f5221a644dfe4a63bf990052cc674ef12a157b1056969079985c92816",
                "sha256:4d8d3e5aa6087490912c14a3c10fbdd380b40b421c13920ff468163bc50e016f",
                "sha256:4f41fd159fba1245e1958a99d349df49c616b133636e0cf668f169bce2aeac2d",
                "sha256:561ef098c50f91fbac2cc9305b68c915e9eb915a74d9038ecf8af274d748f76f",
                "sha256:56994e14b386b5c0a9b875a76d22d707b315fa037affc7819cda08b6d0489756",
                "sha256:73a1f2a529604c50c262179fcca59c87a05ff4614fe8a15c186934d84d09d9a5",
                "sha256:7da99445fd890206bfcc7419f79871ba8e73d9d9e6b82fe09980bc5bb4efc35f",
                "sha256:99d59e0bcadac4aa3280616591fb7bcd560e2218f5e31d5223a2e12a1425d495",
                "sha256:a4cc09489843c70b22e8373ca3dfa52b3fab778b57cf81462f1203b0852e95e3",
                "sha256:a61dc29cfca9831a03442a21d4b5fd77e3067beca4b5f81f1a89a04a71cf93fa",
                "sha256:b1853df739b32fa913cc59ad9137caa9cc3d97ff871e2bbd89c2a2a1d4a69451",
                "sha256:b1f44c335532c0581b77491b7715a871d0dd72e97487ac0f57337ccf3ab3469b",
                "sha256:b261e0cb0d6faa8fd6863af26d30351fd2ffdb15b82e51e81e96b9e9e2e7ba16",
                "sha256:c857ae5dba375ea26a6228f98c195fec0898a0fd91bcf0e8a0cae6d9faf3eca7",
                "sha256:cf5bb4a7d53a71bb6a0144d31df784a973b36d8687d615ef6a7e9b1809917a9b",
                "sha256:db9814ff0457b46f2e1d494c1efa4111ca089e08c8b983635ebffb9c1573361f",
                "sha256:df04f4bad8a359daa2ff74f8108ea051670cafbca533bb2636c58b16e962989e",
                "sha256:ecf81720934a0e18526177e645cbd6a8a21bb0ddc887ff9738de07a1df5c6b61",
                "sha256:edfa6fba9157e0e3be0f40168eb142511012683ac3dc82420bee4a3f3981b30e"
            ],
            "version": "==1.15.4"
        },
        "test-package1": {
            "editable": true,
            "ref": 7,
            "svn": "https://eu-subversion.assembla.com/svn/testuuu^testuuu-first-space/test_pyenv/trunk/test_package_1"
        }
    },
    "develop": {}
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions