From dev-return-49918-archive-asf-public=cust-asf.ponee.io@mesos.apache.org Thu Jan 11 15:33:46 2018 Return-Path: X-Original-To: archive-asf-public@eu.ponee.io Delivered-To: archive-asf-public@eu.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by mx-eu-01.ponee.io (Postfix) with ESMTP id E0B4B180656 for ; Thu, 11 Jan 2018 15:33:46 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id D0DB8160C20; Thu, 11 Jan 2018 14:33:46 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id EF828160C1F for ; Thu, 11 Jan 2018 15:33:45 +0100 (CET) Received: (qmail 72039 invoked by uid 500); 11 Jan 2018 14:33:44 -0000 Mailing-List: contact dev-help@mesos.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@mesos.apache.org Delivered-To: mailing list dev@mesos.apache.org Received: (qmail 72023 invoked by uid 99); 11 Jan 2018 14:33:44 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 11 Jan 2018 14:33:44 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id D31031A0886 for ; Thu, 11 Jan 2018 14:33:43 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.529 X-Spam-Level: * X-Spam-Status: No, score=1.529 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd2-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=mesosphere-com.20150623.gappssmtp.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id WBxWqkSJeyTB for ; Thu, 11 Jan 2018 14:33:41 +0000 (UTC) Received: from mail-wm0-f70.google.com (mail-wm0-f70.google.com [74.125.82.70]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 42E535F3BA for ; Thu, 11 Jan 2018 14:33:41 +0000 (UTC) Received: by mail-wm0-f70.google.com with SMTP id n11so1566077wmg.8 for ; Thu, 11 Jan 2018 06:33:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mesosphere-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=9+HbhlLYiQdLfsYRPU1yhc7kb/zayqelgT9ULJJ6zd4=; b=Xo3Rtj4Y/+8PzGegv2TwewF62TWddDK1OJGBlKY+NZn5vgXYaw6hcC6sV8ePBlUFt5 eZ2lXMNFNvWDZtehssnfru0R5TUSZ4v8DEPcdAFOogOtsSYZqlw2ngZtlXvzD/gz7hVo OUPEzk8Rw76lDKjeLeqSAGuOziWglBNidKUqpfOJDbj2oqRN2am+WY7OHd5/PGWL5Pob LE8d8vwSWvnvK/bHf/QPNxmUo6SPNa2eMjgsUgBZ0U0wTiBPrQCyFSBuLiNpl7issBLV i+BtBqXfc4A7BzcvaKPoP4i3GXMijld2Z4vS1p7Kf51lUV8AWqJqrkz67rRv+CBld0Db WWuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=9+HbhlLYiQdLfsYRPU1yhc7kb/zayqelgT9ULJJ6zd4=; b=MWNP15Vl+N3tv/UetVdA9ONUxZYo9M6Qkihx9Ci4KTZRXt6Yd1BIrcE3EzMOY45IMP WDiK2VctC5kEgN1uEbi8fidnhI0v54D5hS0C3+rhCFRKgh9gdcXrRKMZKJa2xpAajKUR arNj4a8urYK1VSEouELfvDD+my7mJak/oJUuZ1La6GWS/gup2fBXJbwAzJZH0sM18W4M OKj27lwlVZT59+mTl/fXNxbL3RV013XKwhZdtVnYsma+5qlgOUflfZQN/WP445CH6Il2 suECkOtIENt98hN9AN5zyLiwsCxd34uQu4WrtqnEWPajw215SxvX/a4/bSIGtWIttImQ /Ikw== X-Gm-Message-State: AKwxytfw0CN1+QCGrerUuBaxF1Oc1JdtFyZ/IWaVDwir9X5hKZrv3vK/ XaI3tScxn5FjNoDPFAtBpySIyeJeNmbjxb+5PcAnBA== X-Google-Smtp-Source: ACJfBoupfOu1VBoKO48TRy/O7/IQu+8vtlqfBUEHo7EIH8p51u/9uB5xh2yDT9FVc74PZa2mwNud6RIYvTE3xPydpYU= X-Received: by 10.28.153.79 with SMTP id b76mr1368694wme.47.1515681220177; Thu, 11 Jan 2018 06:33:40 -0800 (PST) MIME-Version: 1.0 Received: by 10.223.197.210 with HTTP; Thu, 11 Jan 2018 06:33:39 -0800 (PST) In-Reply-To: References: From: Benno Evers Date: Thu, 11 Jan 2018 15:33:39 +0100 Message-ID: Subject: Re: Replacing ad hoc virtualenvs for testing and linting with tox To: Armand Grillet Cc: Kevin Klues , Benjamin Mahler , dev , echung@uber.com Content-Type: multipart/alternative; boundary="001a114b7608b8c51a0562810859" --001a114b7608b8c51a0562810859 Content-Type: text/plain; charset="UTF-8" Hi Eric, Do I understand correctly that you want to require all developers to install tox so that it can be called from a post-commit hook to create a virtualenv in which it will then install pylint with all its dependencies and use that to lint the changed python files? Would it be possible to just require all developers to install pylint instead? Also, since you mention that you want to use tox to run unit tests in src/python, do you plan to integrate this with the existing mesos build system(s)? E.g., would it respect the python-related configuration settings like `PYTHON`, `PYTHON_VERSION`, `--disable-python`, `--disable-python-dependency-install`. Or is this change unrelated to building the python bindings? Best regards, Benno On Tue, Jan 9, 2018 at 3:29 PM, Armand Grillet wrote: > Having distributed tox.ini files and being able to run tests for multiple > environments will be helpful to develop the new Mesos CLI thus I support > this change. > > Requiring developers to install tox is indeed the biggest concern with > this change; however, this process should be straightforward as it uses pip. > > 2018-01-09 10:03 GMT+01:00 Kevin Klues : > >> I'm the one who asked Eric to send this email. I've been meaning to >> comment on it and haven't gotten around to it. I support it. We just need >> to make sure and update our CI appropriately for the new dependency (and >> make devs aware of it). >> >> >> On Tue, Jan 9, 2018 at 4:03 AM Benjamin Mahler >> wrote: >> >>> +armand, benno, kevin >>> >>> On Fri, Jan 5, 2018 at 12:04 PM, Eric Chung wrote: >>> >>>> Hello mesos devs, >>>> >>>> I'd like to propose that we replace some of our bash scripts for >>>> building >>>> ad hoc virtualenvs with tox , a >>>> tool >>>> for automating lifecycle management of virtualenvs using declarative >>>> configuration files. >>>> >>>> Specifically, virtualenvs created for the purpose of linting >>>> (support/.virtaulenv) and unit testing (in src/python) can be managed by >>>> tox, which provide the following benefits: >>>> >>>> 1. Eliminate the need for maintaining shell scripts for managing >>>> virtualenvs >>>> 2. We will no longer need to install *ALL* dependencies into the same >>>> virtualenv for the purpose of linting -- we can have distributed tox.ini >>>> files in wherever python linting is required, and just run tox there. >>>> 3. Easily run tests for multiple environments, e.g. python3 vs python2. >>>> This will make migration to python3 much easier, which we are facing >>>> increasing pressure to address. >>>> >>>> The biggest concern here would probably the change in dependencies, >>>> since >>>> it may seem like we're adding an additional dependency to mesos. However >>>> since virtualenv is a dependency of tox, we will not break any existing >>>> dependencies, as requiring tox will automatically require virtualenv. >>>> Otherwise I don't really see any downside in making the switch. >>>> >>>> Please let me know what you think! >>>> >>>> Eric >>>> >>> >>> > > > -- > Armand Grillet > Software Engineer, Mesosphere > -- Benno Evers Software Engineer, Mesosphere --001a114b7608b8c51a0562810859--