[tahoe-lafs-trac-stream] [Tahoe-LAFS] #1848: write a static analysis tool to catch places where a Deferred is dropped

Tahoe-LAFS trac at tahoe-lafs.org
Fri Jan 17 14:16:41 UTC 2020


#1848: write a static analysis tool to catch places where a Deferred is dropped
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  davidsarah
  davidsarah             |
         Type:  defect   |     Status:  closed
     Priority:  normal   |  Milestone:  undecided
    Component:  dev-     |    Version:  1.9.2
  infrastructure         |   Keywords:  coding_tools deferred static-
   Resolution:  wontfix  |  analysis
Launchpad Bug:           |
-------------------------+-------------------------------------------------
Changes (by exarkun):

 * status:  new => closed
 * resolution:   => wontfix


Old description:

> If a Deferred goes out of scope without being returned (or passed into a
> method that is intended to consume it such as
> {{{deferredutil.eventual_chain}}}), that's usually a bug. Write a static
> analysis using {{{compiler.ast}}} to catch such bugs.

New description:

 If a Deferred goes out of scope without being returned (or passed into a
 method that is intended to consume it such as
 {{{deferredutil.eventual_chain}}}), that's usually a bug. Write a static
 analysis using {{{compiler.ast}}} to catch such bugs.

--

Comment:

 Intriguing but probably not.  Static analysis of Python is really hard.
 Such a tool would likely produce false positives and be annoying.
 Instead, have comprehensive unit test coverage.

--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1848#comment:2>
Tahoe-LAFS <https://Tahoe-LAFS.org>
secure decentralized storage


More information about the tahoe-lafs-trac-stream mailing list