view tests/test-check-pylint.t @ 50400:95acba2c29f6

encoding: avoid quadratic time complexity when json-encoding non-UTF8 strings Apparently the code uses "+=" with a bytes object, which is linear-time, so the whole encoding is quadratic-time. This patch makes us use a bytearray object, instead, which has a(n amortized-)constant-time append operation. The encoding is still not particularly fast, but at least a 10MB file takes tens of seconds, not many hours to encode.
author Arseniy Alekseyev <aalekseyev@janestreet.com>
date Mon, 06 Mar 2023 11:27:57 +0000
parents 4658f5e67e4e
children
line wrap: on
line source

#require test-repo pylint

Run pylint for known rules we care about.
-----------------------------------------

There should be no recorded failures; fix the codebase before introducing a
new check.

Current checks:
- W0102: no mutable default argument
- C0321: only one statement on a single line

  $ touch $TESTTMP/fakerc
  $ pylint --rcfile=$TESTTMP/fakerc --disable=all \
  >   --enable=W0102,C0321 \
  >   --reports=no \
  >   --ignore=thirdparty \
  >   mercurial hgdemandimport hgext hgext3rd | sed 's/\r$//'
  Using config file *fakerc (glob) (?)
   (?)
  ------------------------------------* (glob) (?)
  Your code has been rated at 10.00/10* (glob) (?)
   (?)