On Tue, Mar 3, 2020 at 11:10 AM Robert Bradshaw <rober...@google.com> wrote:

> Nice.
>
> I still think we should enable it in jenkins and get some experience
> with it before we add it to the default pre-commit-hook territory.
>

+1. Also would not running dmypy would require all contributors to run a
process all the time? I do not know if this is desired by existing
contributors, and I am not sure if it will be friendly to new contributors.


>
> On Tue, Mar 3, 2020 at 10:38 AM Chad Dombrova <chad...@gmail.com> wrote:
> >
> > I tested out dmypy (the mypy daemon) last night and it was completing in
> under a second after editing a file and rerunning (usually around 0.6s),
> which puts it into pre-commit-hook territory.
> >
> > -chad
> >
> >
> >
> >
> > On Tue, Mar 3, 2020 at 1:54 AM Ismaël Mejía <ieme...@gmail.com> wrote:
> >>
> >> +1 to do it by default. Great to see the typing work arrive to this
> >> maturity milestone.
> >> We can also refer to some of the mypy typing docs for newbies on the
> subject.
> >>
> >> On Tue, Mar 3, 2020 at 10:15 AM Kamil Wasilewski
> >> <kamil.wasilew...@polidea.com> wrote:
> >> >
> >> > +1 for enabling mypy as a precommit job
> >> >
> >> > This however could be a good occasion to rework the current
> PythonLint job. Since yapf has been introduced, some of the checks made by
> pylint/flake are now unnecessary and could be dismantled. This would
> speed-up PythonLint quite a lot.
> >> > I volunteer to help with anything as well.
> >> >
> >> > On Tue, Mar 3, 2020 at 1:43 AM Robert Bradshaw <rober...@google.com>
> wrote:
> >> >>
> >> >> It seems people are conflating git pre-commit hooks (which IMHO
> should
> >> >> ideally be in the sub-second range, and run when an author does "git
> >> >> commit") with jenkins pre-commit tests (for which minutes is nothing
> >> >> compared to what we already do). I am +1 to adding mypy to the latter
> >> >> for sure, and think we should probably hold off for the former.
> >> >>
> >> >> On Mon, Mar 2, 2020 at 4:38 PM Udi Meiri <eh...@google.com> wrote:
> >> >> >
> >> >> > Off-topic: Python lint via pre-commit should be much faster. (I
> wrote my own modified-file-only lint in the past)
> >> >> >
> >> >> > On Mon, Mar 2, 2020 at 2:08 PM Kyle Weaver <kcwea...@google.com>
> wrote:
> >> >> >>
> >> >> >> > Python lint takes 4-5mins to complete. I think if the mypy
> analysis is really on the order of 10s, the additional time won't matter
> and could always be enabled.
> >> >> >>
> >> >> >> +1 of course it would be nice to make mypy as fast as possible,
> but I don't think speed needs to be a blocker. The productivity gains we'd
> get from reliable type analysis more than offset the cost IMO.
> >> >> >>
> >> >> >> On Mon, Mar 2, 2020 at 2:03 PM Luke Cwik <lc...@google.com>
> wrote:
> >> >> >>>
> >> >> >>> Python lint takes 4-5mins to complete. I think if the mypy
> analysis is really on the order of 10s, the additional time won't matter
> and could always be enabled.
> >> >> >>>
> >> >> >>> On Mon, Mar 2, 2020 at 1:21 PM Chad Dombrova <chad...@gmail.com>
> wrote:
> >> >> >>>>>
> >> >> >>>>> I believe that mypy via pre-commit hook will be faster than
> 10s since it only applies to modified files.
> >> >> >>>>
> >> >> >>>>
> >> >> >>>> Correct, with a few caveats:
> >> >> >>>>
> >> >> >>>> pre-commit can be setup to only run if a python file changes.
> so modifying a java file won't trigger mypy to run.
> >> >> >>>> if *any* python file changes mypy has to run on the whole
> codebase, because a change to one file can affect the others (i.e. a
> function arg type changes).  it's not really meaningful to run mypy on a
> single file.
> >> >> >>>> the mypy daemon tracks which files have changed, and runs
> incremental updates.  so if we setup the precommit hook to run the daemon,
> we should see that get appreciably faster.  I'll do some tests and report
> back.
>

Reply via email to