Dear Pharoers,
thank you all for your time and great contributions!
Here is a quick performance fix for Nautilus.
In Pharo2.0a #20581 and previous versions, selecting the package menu with
my right mouse button lasts too long;
here is why:
95.4% {564ms} NautilusUI(AbstractNautilusUI)>>packageMenuBuilder
95.4% {564ms} PragmaMenuBuilder class>>withAllPragmaKeywords:model:
95.4% {564ms} PragmaMenuBuilder>>buildTree
95.4% {564ms} PragmaMenuBuilder>>collectRegistrations
*90.3%* {534ms} CriticBrowser class>>packagesMenu:
Solution, only call CriticsBrowser initialization when this exact menu item
is selected.
CriticsBrowser>>packagesMenu: aBuilder
<nautilusGlobalPackageMenu>
(aBuilder item: #'Critics Browser')
action: [ | packages target env rules |
target := aBuilder model.
packages := OrderedCollection new.
target selectedPackages do: [:p | MCWorkingCopy managersForCategory: p
packageName do: [:package | packages add: package]].
rules := RBCompositeLintRule allGoodRules.
env := (RBPackageEnvironment new packages: packages ).
self openOnRule: rules onEnvironment: env];
help: 'Running critics rules on this package'.
Maybe there are more