[ 
https://issues.apache.org/jira/browse/LIBCLOUD-946?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16171972#comment-16171972
 ] 

ASF GitHub Bot commented on LIBCLOUD-946:
-----------------------------------------

GitHub user Kami opened a pull request:

    https://github.com/apache/libcloud/pull/1112

    [WIP] Make sure we don't have any files with names longer than 143 
characters

    It looks like 2.2.0 broke installation on some systems, because we now ship 
files with names longer than 143 characters.
    
    Most modern operating systems and file systems support file names with 
lengths up to 255 characters, but it looks like using an encrypted file system 
(layering ecryptfs on top of ext3/4) drops this limit to 143 characters.
    
    This pull request fixes that and add a CI check which will catch issues 
like that in the future.
    
    Resolves https://issues.apache.org/jira/browse/LIBCLOUD-946.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/Kami/libcloud use_shorter_fixture_file_names

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/libcloud/pull/1112.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1112
    
----
commit 60701af4e610b9eeb4e3c60034300148933d69ba
Author: Tomaz Muraus <to...@tomaz.me>
Date:   2017-09-19T16:00:09Z

    Add a tox check which verifies we don't have any file which name is
    longer than 143 characters.
    
    143 characters seems to be the limit for ecryptfs file system layered on
    top of ext4.
    
    Source: 
https://askubuntu.com/questions/361976/find-files-with-a-minimum-filename-length
    
    Part of LIBCLOUD-946.

commit 942255a6998c37d73cffba8ad90516b34f520c19
Author: Tomaz Muraus <to...@tomaz.me>
Date:   2017-09-19T16:14:44Z

    Run checks step on Travis CI.

----


> Can't install apache-libcloud (file name too long)
> --------------------------------------------------
>
>                 Key: LIBCLOUD-946
>                 URL: https://issues.apache.org/jira/browse/LIBCLOUD-946
>             Project: Libcloud
>          Issue Type: Bug
>            Reporter: Cyrille Verrier
>            Assignee: Tomaz Muraus
>
> h2. Environment
> OS: Ubuntu
> Python version: 3
> h2. Steps to reproduce
> {code}
> ➜  ~ $ mkdir test-apache-libcloud
> ➜  ~ $ cd test-apache-libcloud 
> ➜  test-apache-libcloud $ virtualenv .venvs
> ➜  test-apache-libcloud $ source .venvs/bin/activate 
> (.venvs) ➜  test-apache-libcloud $ pip install apache-libcloud==2.2.0
> {code}
> h2. Expected result
> libcloud is installed correctly
> h2. Actual result
> {code}
> Collecting apache-libcloud
>   Using cached apache_libcloud-2.2.0-py2.py3-none-any.whl
> Collecting requests (from apache-libcloud)
>   Using cached requests-2.18.4-py2.py3-none-any.whl
> Collecting urllib3<1.23,>=1.21.1 (from requests->apache-libcloud)
>   Using cached urllib3-1.22-py2.py3-none-any.whl
> Collecting idna<2.7,>=2.5 (from requests->apache-libcloud)
>   Using cached idna-2.6-py2.py3-none-any.whl
> Collecting chardet<3.1.0,>=3.0.2 (from requests->apache-libcloud)
>   Using cached chardet-3.0.4-py2.py3-none-any.whl
> Collecting certifi>=2017.4.17 (from requests->apache-libcloud)
>   Using cached certifi-2017.7.27.1-py2.py3-none-any.whl
> Installing collected packages: urllib3, idna, chardet, certifi, requests, 
> apache-libcloud
> Exception:
> Traceback (most recent call last):
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/basecommand.py",
>  line 215, in main
>     status = self.run(options, args)
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/commands/install.py",
>  line 342, in run
>     prefix=options.prefix_path,
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/req/req_set.py",
>  line 784, in install
>     **kwargs
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/req/req_install.py",
>  line 851, in install
>     self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/req/req_install.py",
>  line 1064, in move_wheel_files
>     isolated=self.isolated,
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/wheel.py",
>  line 345, in move_wheel_files
>     clobber(source, lib_dir, True)
>   File 
> "/home/cyrille/test-apache-libcloud/.venvs/local/lib/python2.7/site-packages/pip/wheel.py",
>  line 323, in clobber
>     shutil.copyfile(srcfile, destfile)
>   File "/usr/lib/python2.7/shutil.py", line 83, in copyfile
>     with open(dst, 'wb') as fdst:
> IOError: [Errno 36] File name too long: 
> '/home/cyrille/test-apache-libcloud/.venvs/lib/python2.7/site-packages/libcloud/test/compute/fixtures/azure_arm/_subscriptions_99999999_9999_9999_9999_999999999999_resourceGroups_000000_providers_Microsoft_Compute_virtualMachines_test_node_1_InstanceView.json'
> {code}
> Test files with long names added by commit:
> https://git-wip-us.apache.org/repos/asf?p=libcloud.git;a=commit;h=4bd4af926e42f255296b0611dd7215a607633b91
> h2. Remark
> Version *2.1.0* works fine
> {code}
> (.venvs) ➜  test-apache-libcloud pip install apache-libcloud==2.1.0
> Collecting apache-libcloud==2.1.0
>   Using cached apache_libcloud-2.1.0-py2.py3-none-any.whl
> Requirement already satisfied: requests in 
> ./.venvs/lib/python2.7/site-packages (from apache-libcloud==2.1.0)
> Requirement already satisfied: urllib3<1.23,>=1.21.1 in 
> ./.venvs/lib/python2.7/site-packages (from requests->apache-libcloud==2.1.0)
> Requirement already satisfied: idna<2.7,>=2.5 in 
> ./.venvs/lib/python2.7/site-packages (from requests->apache-libcloud==2.1.0)
> Requirement already satisfied: chardet<3.1.0,>=3.0.2 in 
> ./.venvs/lib/python2.7/site-packages (from requests->apache-libcloud==2.1.0)
> Requirement already satisfied: certifi>=2017.4.17 in 
> ./.venvs/lib/python2.7/site-packages (from requests->apache-libcloud==2.1.0)
> Installing collected packages: apache-libcloud
> Successfully installed apache-libcloud-2.1.0
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to