View Issue Details

IDProjectCategoryView StatusLast Update
0005020Talerobsolete componentpublic2017-11-20 11:14
ReporterChristian Grothoff Assigned ToMarcello Stanisci Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritytweakReproducibilityN/A
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product Versiongit (master) 
Target Version0.5 
Summary0005020: taler bank should be subjected to static analysis
DescriptionThere are a bunch of tools for Python static analysis:

https://blog.codacy.com/review-of-python-static-analysis-tools-ff8e7e27f972

We should integrate those into our development process, including running some either as part of normal build targets (i.e. 'make pylint') and/or as part of the buildbot (depending on the tool).
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2017-05-22 12:21

manager   ~0012143

pylint3 seems useful. We should run (as part of buildbot):

pylint3 --load-plugins pylint_django talerbank/

and non-empty output should cause failures of the test. Note that this requires:

$ pip3 install pylint-django

(and that we may need a custom configuration to disable warnings we find acceptable).

Marcello Stanisci

2017-07-30 08:11

reporter   ~0012372

'make pylint' is available (from 54cc782); however, this doesn't mean the code is cleaned! Can we close this, or keep it open as a reminder to clean the code?

Florian Dold

2017-08-14 09:26

manager   ~0012376

There's also mypy (http://mypy-lang.org/), which is to Python kind of like TypeScript is to JavaScript.

Python already supports type annotations, this project checks them.

Christian Grothoff

2017-10-23 08:39

manager   ~0012505

Setting this up should also be beneficial for the Saleor/django-payments logic.

Marcello Stanisci

2017-11-20 11:14

reporter   ~0012588

Closing this becasue all the machinery (code checker / BB worker) has been set up, and now it's only a matter of addressing the various code imperfections.

However, I'm going to append note 12376 under the 0005021, that addresses doxygen for Python.

Issue History

Date ModifiedUsernameFieldChange
2017-05-20 18:36Christian GrothoffNew Issue
2017-05-20 18:36Christian GrothoffStatusnew => assigned
2017-05-20 18:36Christian GrothoffAssigned To => Marcello Stanisci
2017-05-22 12:21Christian GrothoffNote Added: 0012143
2017-07-30 08:11Marcello StanisciNote Added: 0012372
2017-08-14 09:26Florian DoldNote Added: 0012376
2017-10-23 08:39Christian GrothoffTarget Version => 0.5
2017-10-23 08:39Christian GrothoffNote Added: 0012505
2017-11-20 11:14Marcello StanisciStatusassigned => closed
2017-11-20 11:14Marcello StanisciResolutionopen => fixed
2017-11-20 11:14Marcello StanisciNote Added: 0012588
2022-08-23 18:26Christian GrothoffCategorybank (demonstrator) => py bank (demonstrator, obsolete)
2023-12-03 00:23Christian GrothoffCategorypy bank (demonstrator, obsolete) => obsolete componet
2023-12-11 19:08Florian DoldCategoryobsolete componet => obsolete component