Commit Graph

10 Commits

Author SHA1 Message Date
Pierre Sassoulas
867d61b234 Bump pylint to 2.9.4, update changelog 2021-07-20 19:23:47 +02:00
Pierre Sassoulas
aa688de05e Bump pylint to 2.9.3, update changelog 2021-07-01 14:54:36 +02:00
Marc Mueller
21290866a2
Fix copyright links (#4647)
* Fix link in license header
* Update link to astroid bump_changelog
2021-07-01 12:47:58 +02:00
Pierre Sassoulas
0f08e2e52b Bump pylint to 2.9.0-dev1, update changelog 2021-06-17 13:24:47 +02:00
Pierre Sassoulas
091cb92314 Update copyrite notice 2021-04-26 17:57:12 +02:00
Marc Mueller
a4fac223df Changes after black update 2021-04-26 14:39:28 +02:00
Pierre Sassoulas
af52033971
Rename copying to license and upgrade the setup.cfg (#4338) 2021-04-11 15:29:34 +02:00
Pierre Sassoulas
391c8aa96c Update copyright notice with copyrite 2021-02-28 22:33:34 +01:00
Pierre Sassoulas
ac85223e5b Apply copyrite --contribution-threshold 2021-02-21 16:56:19 +01:00
Frank Harrison
b41e8d940d mapreduce| Fixes -jN for map/reduce Checkers (e.g. SimilarChecker)
This integrate the map/reduce functionality into lint.check_process().

We previously had `map` being invoked, here we add `reduce` support.

We do this by collecting the map-data by worker and then passing it to a
reducer function on the Checker object, if available - determined by
whether they confirm to the `mapreduce_checker.MapReduceMixin` mixin
interface or nor.

This allows Checker objects to function across file-streams when using
multiprocessing/-j2+. For example SimilarChecker needs to be able to
compare data across all files.

The tests, that we also add here, check that a Checker instance returns
and reports expected data and errors, such as error-messages and stats -
at least in a exit-ok (0) situation.

On a personal note, as we are copying more data across process
boundaries, I suspect that the memory implications of this might cause
issues for large projects already running with -jN and duplicate code
detection on. That said, given that it takes a long time to perform
lints of large code bases that is an issue for the [near?] future and
likely to be part of the performance work. Either way but let's get it
working first and deal with memory and perforamnce considerations later
- I say this as there are many quick wins we can make here, e.g.
file-batching, hashing lines, data compression and so on.
2021-01-02 09:56:39 +01:00