Bug 42480 - ucslint should ignore temp files
ucslint should ignore temp files
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: ucslint
UCS 4.2
Other Linux
: P5 normal (vote)
: UCS 4.4-0-errata
Assigned To: Philipp Hahn
Sönke Schwardt-Krummrich
:
Depends on:
Blocks: 49130 49588
  Show dependency treegraph
 
Reported: 2016-09-22 18:27 CEST by Florian Best
Modified: 2019-06-03 15:24 CEST (History)
3 users (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:
hahn: Patch_Available+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2016-09-22 18:27:21 CEST
ucslint also detects vim .foo.sw? files as well as de.po~ and probably some more (e.g. .git / .svn directories, emacs files?).
They should be ignored.
Comment 1 Lukas Oyen univentionstaff 2016-09-23 15:29:32 CEST
*.pyc files should be ignored aswell, otherwise building `ucs-test` may fail:

./lint
FAIL: BASHism 'source'
Übereinstimmungen in Binärdatei ./univention/testing/coverage.pyc.
Comment 2 Philipp Hahn univentionstaff 2019-05-14 16:30:13 CEST
Several files/directories are already ignored by packaging/ucslint/ucslint/base.py:354
  self.ignore_dirs = ['.git', '.svn', 'CVS']
  self.ignore_suffixes = ['~', '.bak']
  self.ignore_files = ('config.guess', 'configure', 'libtool', 'depcomp', 'install-sh', 'config.sub', 'missing', 'config.status')

More more need to be ignored:
E:0010-2: .pybuild/pythonX.Y_2.7/build/tests/test_py: file contains no copyright text block
E:0010-2: .pybuild/pythonX.Y_2.7/build/tests/test_debug.py: file contains no copyright text block
E:0010-2: .pybuild/pythonX.Y_3.5/build/tests/test_py: file contains no copyright text block
E:0010-2: .pybuild/pythonX.Y_3.5/build/tests/test_debug.py: file contains no copyright text block
E:0009-2: .pybuild/pythonX.Y_2.7/build/tests/test_debug.py: file does not specify python version in hashbang
E:0009-2: .pybuild/pythonX.Y_3.5/build/tests/test_debug.py: file does not specify python version in hashbang
Comment 4 Philipp Hahn univentionstaff 2019-05-17 17:18:56 CEST
Needed to build package using dh_python2 with Python3 support (Bug #49130)

[4.4-0] 54a12b1919 Bug #42480 ucslint: Ignore more files
[4.4-0] 4c6ff3c8cc Bug #28499 ucslint: Fix DEP5 test
 packaging/ucslint/ucslint-univention/0010-Copyright.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

[4.4-0] 8ca5d6d0f3 Bug #42480 ucslint: Re-implement 0014
 packaging/ucslint/debian/control                   |  1 -
 packaging/ucslint/testframework/0015-2.correct     |  3 +-
 .../testframework/0015-2/LIST-OF-WRONG-ENTRIES     |  1 +
 packaging/ucslint/ucslint/0015-FuzzyNames.py       | 69 +++++++++++++++-------
 4 files changed, 51 insertions(+), 23 deletions(-)

[4.4-0] 441e3185a0 Bug #42480 ucslint: Ignore more files
 packaging/ucslint/debian/changelog           |  6 +++++
 packaging/ucslint/ucslint/0013-bashism.py    |  2 +-
 packaging/ucslint/ucslint/0015-FuzzyNames.py |  2 +-
 packaging/ucslint/ucslint/0016-Deprecated.py |  4 +--
 packaging/ucslint/ucslint/base.py            | 40 ++++++++++++++++++++++------
 5 files changed, 42 insertions(+), 12 deletions(-)

[4.4-0] c737afc2ba Bug #42480 ucslint: Simplify prefix/suffix checking
 packaging/ucslint/ucslint/base.py | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

[4.4-0] 13c9bc077b Bug #42480 ucslint: Simplify module initialization
 packaging/ucslint/ucslint-univention/0007-Changelog.py | 4 ----
 packaging/ucslint/ucslint-univention/0010-Copyright.py | 3 ---
 packaging/ucslint/ucslint-univention/0011-Control.py   | 4 ----
 packaging/ucslint/ucslint/0001-CheckJoinScript.py      | 4 ----
 packaging/ucslint/ucslint/0002-CopyPasteErrors.py      | 4 ----
 packaging/ucslint/ucslint/0004-CheckUCR.py             | 6 +-----
 packaging/ucslint/ucslint/0006-CheckPostinst.py        | 4 ----
 packaging/ucslint/ucslint/0008-Translations.py         | 4 ----
 packaging/ucslint/ucslint/0009-Python.py               | 4 ----
 packaging/ucslint/ucslint/0013-bashism.py              | 4 ----
 packaging/ucslint/ucslint/0014-Depends.py              | 1 -
 packaging/ucslint/ucslint/0015-FuzzyNames.py           | 4 ----
 packaging/ucslint/ucslint/0016-Deprecated.py           | 4 ----
 packaging/ucslint/ucslint/0017-Shell.py                | 1 -
 packaging/ucslint/ucslint/0018-Debian.py               | 4 ----
 packaging/ucslint/ucslint/0020-flake8.py               | 2 --
 packaging/ucslint/ucslint/base.py                      | 2 +-
 17 files changed, 2 insertions(+), 57 deletions(-)

[4.4-0] 699de0c2bf Bug #42480 ucslint: Simplify assignments
 packaging/ucslint/ucslint/base.py | 22 ++++------------------
 1 file changed, 4 insertions(+), 18 deletions(-)

[4.4-0] d09f1773bb Bug #42480 ucslint: Remove dead statements
 packaging/ucslint/ucslint/base.py | 4 ----
 1 file changed, 4 deletions(-)

[4.4-0] 456acbd6f9 Bug #42480 ucslint: Prepare for Python3
 packaging/ucslint/bin/ucslint              | 26 +++++++++++++-------------
 packaging/ucslint/ucslint-sort-output.py   |  5 +++--
 packaging/ucslint/ucslint/0004-CheckUCR.py |  6 +++---
 packaging/ucslint/ucslint/0014-Depends.py  |  3 ++-
 packaging/ucslint/ucslint/0020-flake8.py   |  3 ++-
 packaging/ucslint/ucslint/base.py          | 11 ++++++-----
 6 files changed, 29 insertions(+), 25 deletions(-)

[4.4-0] bbd65c8544 Bug #42480 ucslint: Add typing annotations
 packaging/ucslint/bin/ucslint     | 41 ++++++++++++++++----------
 packaging/ucslint/ucslint/base.py | 61 +++++++++++++++++++++++++++++++--------
 2 files changed, 75 insertions(+), 27 deletions(-)

[4.4-0] 49a9e20ead Bug #42480 ucslint: PyDoc
 packaging/ucslint/bin/ucslint     |  86 +++++++++++++++---
 packaging/ucslint/ucslint/base.py | 184 +++++++++++++++++++++++++++-----------
 2 files changed, 207 insertions(+), 63 deletions(-)

[4.4-0] 537eb49447 Bug #42480 ucslint: Fix mixed space/tab
 packaging/ucslint/ucslint-sort-output.py     |  45 +--
 packaging/ucslint/ucslint/0014-Depends.py    | 474 ++++++++++++++-------------
 packaging/ucslint/ucslint/0016-Deprecated.py |  87 +++--
 packaging/ucslint/ucslint/0018-Debian.py     |  62 ++--
 packaging/ucslint/ucslint/base.py            |  20 +-
 5 files changed, 347 insertions(+), 341 deletions(-)

Package: ucslint
Version: 8.0.0-8A~4.4.0.201905171712
Branch: ucs_4.4-0
Scope: errata4.4-0

[4.4-0] ac23b2832b Bug #42480: ucslint 8.0.0-8A~4.4.0.201905171712
 doc/errata/staging/ucslint.yaml | 10 ++++++++++
 1 file changed, 10 insertions(+)
Comment 5 Philipp Hahn univentionstaff 2019-05-20 10:28:18 CEST
[4.4-0] edad7a96c4 Bug #42480 ucslint: Ignore more files.
 packaging/ucslint/debian/changelog           | 6 ++++++
 packaging/ucslint/ucslint/0015-FuzzyNames.py | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

 regular expression matching in binary files is abyssal slow :-(

Package: ucslint
Version: 8.0.0-9A~4.4.0.201905201027
Branch: ucs_4.4-0
Scope: errata4.4-0
Comment 6 Philipp Hahn univentionstaff 2019-05-20 15:57:36 CEST
[4.4-0] b145aada44 Bug #42480 ucslint: Speed-up spelling detection
 packaging/ucslint/debian/changelog           |  6 +++++
 packaging/ucslint/ucslint/0015-FuzzyNames.py | 37 ++++++++++++++++++++++++++--
 2 files changed, 41 insertions(+), 2 deletions(-)

Package: ucslint
Version: 8.0.0-10A~4.4.0.201905201554
Branch: ucs_4.4-0
Scope: errata4.4-0

[4.4-0] 2bd03cb156 Bug #42480: ucslint 8.0.0-10A~4.4.0.201905201554
 doc/errata/staging/ucslint.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Comment 7 Florian Best univentionstaff 2019-05-21 10:01:09 CEST
Is it possible to further speed it up?

ucslint 8.0.0-12A~4.4.0.201905210840

root@master100:~/build/ucs-test-tools# time ucslint -m 15

real    7m15,213s
user    7m10,064s
sys     0m0,456s

root@master100:~/build/ucs-test# time ucslint -m 15                                                                                                                                                                                                                              
W:0015-2: tests/43_proxy/07_basic_auth_encoding:66: univention is incorrectly spelled: nivention

real    2m6,417s
user    2m5,468s
sys     0m0,100s
Comment 8 Philipp Hahn univentionstaff 2019-05-21 15:06:32 CEST
[4.4-0] 1a2d653aeb Bug #42480 ucslint: Speed-up spelling detection
 packaging/ucslint/debian/changelog           |  6 +++
 packaging/ucslint/ucslint/0015-FuzzyNames.py | 76 ++++++++++++++++++++++++++--
 2 files changed, 79 insertions(+), 3 deletions(-)

Package: ucslint
Version: 8.0.0-13A~4.4.0.201905211505
Branch: ucs_4.4-0
Scope: errata4.4-0

[4.4-0] fbc68f4d7e Bug #42480: ucslint 8.0.0-13A~4.4.0.201905211505
 doc/errata/staging/ucslint.yaml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
Comment 9 Sönke Schwardt-Krummrich univentionstaff 2019-05-27 14:12:55 CEST
OK: code change
OK: functional change
OK: installation
OK: update
OK: changelog entry
OK: advisory
OK: package built and installable

Note: starting with this version, all ucslint modules now have to use "print(x)" instead of "print x"! Since only developers have written a user-defined ucslint module according to the current state of knowledge, this should not be a real problem.
Comment 10 Arvid Requate univentionstaff 2019-05-29 13:24:07 CEST
<http://errata.software-univention.de/ucs/4.4/118.html>