# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4

PortSystem          1.0
PortGroup           github 1.0
PortGroup           python 1.0
PortGroup           select 1.0

github.setup        palantir python-language-server 0.17.1
name                py-language-server
categories-append   devel
license             Apache-2
maintainers         {sean @seanfarley} openmaintainer
description         An implementation of the Language Server Protocol for Python
long_description    ${description}

platforms           darwin
supported_archs     noarch

checksums           rmd160  3f9a52e5ae7f17a4bd5d51232f00c497f6c7e6f9 \
                    sha256  8d4e862c53871f5bc36f0cea651bc725f17cfe813575fc865bb7f12488320227 \
                    size    443625

python.versions     27 35 36

if {$subport ne $name} {
    depends_lib     port:py${python.version}-future \
                    port:py${python.version}-jedi \
                    port:py${python.version}-json-rpc \
                    port:py${python.version}-flake8-mccabe \
                    port:py${python.version}-codestyle \
                    port:py${python.version}-docstyle \
                    port:py${python.version}-pyflakes \
                    port:py${python.version}-rope \
                    port:py${python.version}-yapf \
                    port:py${python.version}-pluggy
    depends_run     port:python-language-server_select

    if {${python.version} == 27} {
        # back-port needed for python < 3.5
        depends_lib-append port:py${python.version}-configparser
    }

    select.group    python-language-server
    select.file     ${filespath}/py${python.version}-pyls

    notes "
To make the Python ${python.branch} version of python language server the one \
that is run when you execute the commands without a version suffix, e.g. \
'pyls', run:

port select --set ${select.group} [file tail ${select.file}]
"

    livecheck.type  none
}