anchor.diff:      "test_matplotlib_completions"
       "test_snippet_parsing"
       "test_numpy_hover"
  +    "test_symbols"
     ] ++ stdenv.lib.optional isPy27 "test_flake8_lint";
  -
  -  propagatedBuildInputs = [ setuptools jedi pluggy future python-jsonrpc-server flake8 ujson ]
  -    ++ stdenv.lib.optional (withProvider "autopep8") autopep8
  -    ++ stdenv.lib.optional (withProvider "mccabe") mccabe
  -    ++ stdenv.lib.optional (withProvider "pycodestyle") pycodestyle
  -    ++ stdenv.lib.optional (withProvider "pydocstyle") pydocstyle
  -    ++ stdenv.lib.optional (withProvider "pyflakes") pyflakes
  -    ++ stdenv.lib.optional (withProvider "pylint") pylint
  -    ++ stdenv.lib.optional (withProvider "rope") rope
  -    ++ stdenv.lib.optional (withProvider "yapf") yapf
  -    ++ stdenv.lib.optional isPy27 configparser
  -    ++ stdenv.lib.optionals (pythonOlder "3.2") [ backports_functools_lru_cache futures ];
   
     meta = with lib; {
       homepage = "https://github.com/palantir/python-language-server";
  
positive.code: { lib, stdenv, buildPythonPackage, fetchFromGitHub, fetchpatch, pythonOlder, isPy27
  , backports_functools_lru_cache, configparser, futures, future, jedi, pluggy, python-jsonrpc-server, flake8
  , pytestCheckHook, mock, pytestcov, coverage, setuptools, ujson
  , # Allow building a limited set of providers, e.g. ["pycodestyle"].
    providers ? ["*"]
    # The following packages are optional and
  
negative.code: 
  buildPythonPackage rec {
    pname = "python-language-server";
    version = "0.36.2";
  
    src = fetchFromGitHub {
      owner = "palantir";
      repo = "python-language-server";
      rev = version;
      sha256 = "07x6jr4z20jxn03bxblwc8vk0ywha492cgwfhj7q97nb5cm7kx0q";
    };
  
    propagatedBuildInputs = [ setuptools jedi pluggy future python-jsonrpc-server flake8 ujson ]
      ++ stdenv.lib.optional (withProvider "autopep8") autopep8
      ++ stdenv.lib.optional (withProvider "mccabe") mccabe
      ++ stdenv.lib.optional (withProvider "pycodestyle") pycodestyle
      ++ stdenv.lib.optional (withProvider "pydocstyle") pydocstyle
      ++ stdenv.lib.optional (withProvider "pyflakes") pyflakes
      ++ stdenv.lib.optional (withProvider "pylint") pylint
      ++ stdenv.lib.optional (withProvider "rope") rope
      ++ stdenv.lib.optional (withProvider "yapf") yapf
      ++ stdenv.lib.optional isPy27 configparser
      ++ stdenv.lib.optionals (pythonOlder "3.2") [ backports_functools_lru_cache futures ];
  
  
    # The tests require all the providers, disable otherwise.
    doCheck = providers == ["*"];
  
    checkInputs = [
      pytestCheckHook mock pytestcov coverage flaky
      # rope is technically a dependency, but we don't add it by default since we
      # already have jedi, which is the preferred option
      rope
  