[squeak-dev] [Squeak 4.0] MVC Controller context menu lock up bug

David T. Lewis lewis at mail.msen.com
Wed Mar 17 03:37:47 UTC 2010


On Tue, Mar 16, 2010 at 09:40:26PM -0400, Sam Adams wrote:
> Yep, I've not been involved for a long time.
> But I am willing to help keep MVC alive and well as Squeak moves forward.
> Happy to learn the new process.  Where do I start?
> Is there a master issue/bug list from the MVC side I can attack, or do I
> need to discover them via use?
> I can already see the class/instance/comment buttons in the MVC browser are
> in need of repair.
> I imagine there are many of the newer tools that have no support in MVC
> either.  Priorities?

Sam,

Thanks for your interest. The Squeak community development process is
described here:

  http://squeakboard.wordpress.com/category/development/

Progress over the last year or so has been rapid, and the evolving
Squeak image is referred to as the "Squeak trunk", which is maintained
using the Monticello version control system here:

  http://source.squeak.org/@vaeYlRCfuCGzQQS2/VUsLzpdo
or:
  http://source.squeak.org/trunk/

The official bug tracking system is a Mantis system at bugs.squeak.org.
This has an issue category for "MVC", but is haphazardly updated and is
not the best place to begin (but it is still important for reporting
issues, posting fixes, and tracking issues to resolution).

The best place to start is with a recent snapshot of the trunk development
image:

  ftp://ftp.squeak.org/trunk/Squeak3.11-9622-alpha.zip

This image opens in Morphic, but you can open an MVC project to be
back in familiar, if not fully functional, territory. You will quickly
discover some opportunities for improvement ;)

The traditional update stream (based on change sets) is replaced by
an newer update stream wired in to the trunk repository. You will
see a "Load Code Updates" button to trigger the update, or just
evaluate "Utilities updateFromServer". This brings your image up
to the latest trunk development. This is safe to do at any time;
in the occasional cases where someone's update breaks the system,
it is usually fixed within hours.

Overall, MVC has suffered some bit rot over the last few years.
The things that I would judge to be highest priority concerns are:

1) "self halt" hangs the system because of failure to open a debugger
window. This may be related to changes in process scheduling that
somehow were not updated to keep the controller loop working correctly,
or it may be related to changes to debugger view construction. Whatever
the cause, it is a catch-22 for MVC debugging, because you can't
debug much of anything without a working debugger.

2) Keystroke input processing is slow and erratic, particularly
when running under a Unix VM. This is probably related to various
changes to input event processing for which MVC has not been properly
updated.

3) ToolBuilder support. Construction of views for some of the basic
tools is now done with ToolBuilder, which generalizes the construction
of views under MVC and Morphic (and hopefully other frameworks). Some
of the tool support for MVC may be incompletely implemented.

I would note also that work has been under way to partition Squeak
into reloadable packages, such that (for example) you could unload
all of MVC or all of Morphic to achieve a reduced image, and reload
these packages as needed. It is currently possible to unload and
reload all of MVC (hence achieving a Morphic-only environment), and
it hopefully will be possible in the future to similarly unload
and reload all of Morphic to obtain an MVC-only environment.

If you are able to address any problems with MVC in Squeak trunk,
change sets posted to the squeak-dev list will be gratefully received.
Posting to bug reports on Mantis is even better, and contributing
directly to the Squeak trunk is best of all. But a change set is
fine, and very welcome indeed.

Thanks,
Dave




More information about the Squeak-dev mailing list