bitter-ability-32190
01/04/2022, 9:33 PMlint-per-file-process use repository.pex directly?bitter-ability-32190
01/04/2022, 9:35 PMhundreds-father-404
01/04/2022, 9:45 PMbitter-ability-32190
01/04/2022, 9:49 PMhundreds-father-404
01/04/2022, 9:50 PMbitter-ability-32190
01/04/2022, 9:52 PMbitter-ability-32190
01/04/2022, 9:53 PMrepository.pex can be (and is) remotely cached between 2 disperate systemshundreds-father-404
01/04/2022, 10:00 PMI wonder ifĀ repository.pexĀ can be (and is) remotely cached between 2 disperate systemsRemote caching works awesome currently in CI, where you have multiple distinct machines but all with the same PATH and setup etc It doesn't work as well with desktop usage because systems tend to diverge in ways that invalidate the cache. https://github.com/pantsbuild/pants/issues/12203 tracks how we might improve that
witty-crayon-22786
01/04/2022, 10:10 PM2.9.0rc2 : see https://github.com/pantsbuild/requirements-perf/issues/2hundreds-father-404
01/04/2022, 10:12 PMwitty-crayon-22786
01/04/2022, 10:14 PMrepository.pex should definitely be one. https://github.com/pantsbuild/pants/issues/14070bitter-ability-32190
01/04/2022, 10:29 PMwitty-crayon-22786
01/04/2022, 10:30 PMbitter-ability-32190
01/04/2022, 10:30 PMwitty-crayon-22786
01/04/2022, 10:31 PMbitter-ability-32190
01/04/2022, 10:33 PMbitter-ability-32190
01/06/2022, 5:39 PMrun-against-entire-lockfile is possibly incorrectly implemented. That or pylint just sucks. The more files I throw at it, the longer it takes w.r.t. turning it off.bitter-ability-32190
01/06/2022, 5:40 PMbitter-ability-32190
01/06/2022, 5:43 PMwitty-crayon-22786
01/06/2022, 5:43 PMwitty-crayon-22786
01/06/2022, 5:44 PMbitter-ability-32190
01/06/2022, 5:44 PMbitter-ability-32190
01/06/2022, 5:45 PMwitty-crayon-22786
01/06/2022, 5:45 PMrun-against-entire-lockfile means materializing all of your requirements for each lint processbitter-ability-32190
01/06/2022, 5:45 PMwitty-crayon-22786
01/06/2022, 5:45 PMpylint is actually consuming all of them�hundreds-father-404
01/06/2022, 5:45 PMbitter-ability-32190
01/06/2022, 5:46 PMwitty-crayon-22786
01/06/2022, 5:46 PMsetup_sandboxwitty-crayon-22786
01/06/2022, 5:46 PMbitter-ability-32190
01/06/2022, 5:46 PMwitty-crayon-22786
01/06/2022, 5:46 PMwitty-crayon-22786
01/06/2022, 5:48 PMbitter-ability-32190
01/06/2022, 5:50 PMbitter-ability-32190
01/06/2022, 5:51 PMmypy will play too.
Otherwise, I know flake8 allows custom reporters, could implement one of those...witty-crayon-22786
01/06/2022, 5:52 PM@rule is able to consume when the feature is enabled⦠weāll see how feasible that is.melodic-thailand-99227
01/06/2022, 8:48 PMwitty-crayon-22786
01/06/2022, 9:26 PM--pex-verbosity setting (https://www.pantsbuild.org/docs/reference-pex#section-verbosity) can render what PEX is actually doing there⦠could try with 3 or so, and see if it highlights how time is being spent. but as mentioned, it should all just be time spent in pip.witty-crayon-22786
01/06/2022, 9:30 PMwitty-crayon-22786
01/06/2022, 9:35 PMbitter-ability-32190
01/07/2022, 3:37 PM-per-file-caching.
E.g.
If I wanted to run fmt with isort and black and I have a 64 core machine. Running with --black-args='-W 64' --isort-args='--jobs=64' is always the fastest option.
Whereas with lint (which runs in parallel) you probably want to take N cores and divide by M checkers... --black-args='-W 16' --isort-args='--jobs=16' --flake8-args='--jobs=16' --pylint-args='--jobs=16' .
Depending on how long fixing the issue might take, it might be worth finding/writing clever little plugins to set the num jobs smartly based on CPU countbitter-ability-32190
01/07/2022, 3:40 PMwitty-crayon-22786
01/07/2022, 4:58 PMwitty-crayon-22786
01/07/2022, 4:59 PMbitter-ability-32190
01/07/2022, 5:04 PMbitter-ability-32190
01/07/2022, 5:11 PMwitty-crayon-22786
01/07/2022, 5:11 PMwitty-crayon-22786
01/07/2022, 5:16 PMbitter-ability-32190
01/07/2022, 5:18 PM