Auto merge of #2575 - micbou:remove-install-aliases, r=Valloric

[READY] Do not install aliases from future

Depends on PR https://github.com/Valloric/ycmd/pull/722. This improves startup time on Python 2:

<table>
  <tr>
    <th rowspan="2">Platform</th>
    <th colspan="2">First run (ms)</th>
    <th colspan="2">Subsequent runs (ms)</th>
  </tr>
  <tr>
    <td>Before</td>
    <td>After</td>
    <td>Before</td>
    <td>After</td>
  </tr>
  <tr>
    <td>Ubuntu 16.04 64-bit</td>
    <td>245</td>
    <td>162</td>
    <td>134</td>
    <td>103</td>
  </tr>
  <tr>
    <td>macOS 10.12</td>
    <td>314</td>
    <td>202</td>
    <td>192</td>
    <td>136</td>
  </tr>
  <tr>
    <td>Windows 10 64-bit</td>
    <td>659</td>
    <td>384</td>
    <td>257</td>
    <td>154</td>
  </tr>
</table>

*Results obtained by running the `prof.py` script from [this branch](https://github.com/micbou/YouCompleteMe/tree/profiling-startup).*

Fixes #2332.
Fixes #2467.
Fixes #2568.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/valloric/youcompleteme/2575)
<!-- Reviewable:end -->
This commit is contained in:
Homu 2017-03-19 07:02:11 +09:00
commit 46ee48432d
35 changed files with 39 additions and 74 deletions

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import iteritems from future.utils import iteritems

View File

@ -19,14 +19,13 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
import contextlib import contextlib
import logging import logging
import urllib.parse
import json import json
from future.moves.urllib.parse import urljoin, urlparse
from future.utils import native from future.utils import native
from base64 import b64decode, b64encode from base64 import b64decode, b64encode
from ycm import vimsupport from ycm import vimsupport
@ -120,7 +119,7 @@ class BaseRequest( object ):
headers = dict( _HEADERS ) headers = dict( _HEADERS )
headers[ _HMAC_HEADER ] = b64encode( headers[ _HMAC_HEADER ] = b64encode(
CreateRequestHmac( ToBytes( method ), CreateRequestHmac( ToBytes( method ),
ToBytes( urllib.parse.urlparse( request_uri ).path ), ToBytes( urlparse( request_uri ).path ),
request_body, request_body,
BaseRequest.hmac_secret ) ) BaseRequest.hmac_secret ) )
return headers return headers
@ -263,8 +262,7 @@ def _ValidateResponseObject( response ):
def _BuildUri( handler ): def _BuildUri( handler ):
return native( ToBytes( urllib.parse.urljoin( BaseRequest.server_location, return native( ToBytes( urljoin( BaseRequest.server_location, handler ) ) )
handler ) ) )
def MakeServerException( data ): def MakeServerException( data ):

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.client.base_request import ( BaseRequest, BuildRequestData, from ycm.client.base_request import ( BaseRequest, BuildRequestData,

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.client.base_request import ( BaseRequest, BuildRequestData, from ycm.client.base_request import ( BaseRequest, BuildRequestData,

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycmd.utils import ToUnicode from ycmd.utils import ToUnicode

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.client.base_request import ( BaseRequest, BuildRequestData, from ycm.client.base_request import ( BaseRequest, BuildRequestData,

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.client.base_request import ( BaseRequest, BuildRequestData, from ycm.client.base_request import ( BaseRequest, BuildRequestData,

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.client.completion_request import CompletionRequest from ycm.client.completion_request import CompletionRequest

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.client.base_request import BaseRequest, HandleServerException from ycm.client.base_request import BaseRequest, HandleServerException

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
import time import time

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import iterkeys, iteritems from future.utils import iterkeys, iteritems

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import itervalues, iteritems from future.utils import itervalues, iteritems

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
import vim import vim

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
import os import os

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import itervalues from future.utils import itervalues

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import MockVimModule from ycm.tests.test_utils import MockVimModule

View File

@ -22,8 +22,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
import contextlib import contextlib

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import ExtendedMock, MockVimModule from ycm.tests.test_utils import ExtendedMock, MockVimModule

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from nose.tools import eq_ from nose.tools import eq_

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from copy import deepcopy from copy import deepcopy

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from mock import MagicMock from mock import MagicMock

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import ( MockVimModule, MockVimBuffers, VimBuffer ) from ycm.tests.test_utils import ( MockVimModule, MockVimBuffers, VimBuffer )

View File

@ -21,8 +21,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import ( CurrentWorkingDirectory, ExtendedMock, from ycm.tests.test_utils import ( CurrentWorkingDirectory, ExtendedMock,

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import MockVimModule from ycm.tests.test_utils import MockVimModule

View File

@ -21,8 +21,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import ( CurrentWorkingDirectory, ExtendedMock, from ycm.tests.test_utils import ( CurrentWorkingDirectory, ExtendedMock,

View File

@ -21,11 +21,10 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import PY2
from future.utils import PY2
from mock import patch, call from mock import patch, call
from nose.tools import eq_ from nose.tools import eq_
from hamcrest import contains_string from hamcrest import contains_string

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import MockVimModule from ycm.tests.test_utils import MockVimModule

View File

@ -21,8 +21,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import MockVimModule from ycm.tests.test_utils import MockVimModule

View File

@ -20,8 +20,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import MockVimModule from ycm.tests.test_utils import MockVimModule

View File

@ -20,8 +20,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from mock import MagicMock, patch from mock import MagicMock, patch

View File

@ -21,8 +21,7 @@
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests import PathToTestFile from ycm.tests import PathToTestFile

View File

@ -19,8 +19,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from ycm.tests.test_utils import ( ExtendedMock, MockVimBuffers, MockVimModule, from ycm.tests.test_utils import ( ExtendedMock, MockVimBuffers, MockVimModule,

View File

@ -20,8 +20,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import iterkeys from future.utils import iterkeys

View File

@ -20,8 +20,7 @@ from __future__ import unicode_literals
from __future__ import print_function from __future__ import print_function
from __future__ import division from __future__ import division
from __future__ import absolute_import from __future__ import absolute_import
from future import standard_library # Not installing aliases from python-future; it's unreliable and slow.
standard_library.install_aliases()
from builtins import * # noqa from builtins import * # noqa
from future.utils import iteritems from future.utils import iteritems

2
third_party/ycmd vendored

@ -1 +1 @@
Subproject commit 60c5bba489a24148afe501216a6a37d4fa669e15 Subproject commit e709629389e7fe524e3c18e6896026956d968d16