Hi Keith. I've been trying to reach you on IRC for the past couple of days with this issue, but I couldn't. Perhaps I should have just sent this email to start with. Anyway...
Monticello has a kinda funky infrastructure for making its UI's. It uses ToolBuilder when it is available, and when it is not, it falls back to a half-clone of ToolBuilder implemented in MCTool and MCToolBuilder.
This was made in (I believe) the Squeak 3.6 days, when ToolBuilder was new. Now, you can hardly get an image without ToolBuilder. 3.9, 3.10, Pharo, and Croquet all have ToolBuilder. 3.8 and Etoys do not.
I discovered this by tracing a bug with the dual repo browser in my Etoys image. The center pane of the tool uses a ToolBuilder "panel", which is not implemented by MCTool. So, the dual repo browser does not work in images without ToolBuilder. I installed the Croquet version of ToolBuilder into my Etoys image, and everything worked fine. (I had the croquet version handy).
So, there are two ways to fix the issue with the dual repo browser. One is to expand the emulation done by MCTool to cover "panel". The other is to make MC depend on ToolBuilder, add ToolBuilder to LPF, and start deleting MCTool's emulation.
I like the second option the best. ToolBuilder (especially the existence or non-existence of UIManager) is one of the bigger API differences between 3.8 and 3.9 images, so I think putting ToolBuilder in LPF makes it a bit more "leveling". What do you think?
The other is to make MC depend on ToolBuilder, add ToolBuilder to LPF, and start deleting MCTool's emulation.
I like the second option the best. ToolBuilder (especially the existence or non-existence of UIManager) is one of the bigger API differences between 3.8 and 3.9 images, so I think putting ToolBuilder in LPF makes it a bit more "leveling". What do you think?
I agree that the second option makes sense
Keith
release@lists.squeakfoundation.org