[squeak-dev] The Trunk: Tools-mt.939.mcz

Thiede, Christoph Christoph.Thiede at student.hpi.uni-potsdam.de
Sun Feb 16 23:03:21 UTC 2020


Hi Marcel,


I would like to isolate packages early before everything is totally coupled :-)

Here are all alternative options I can imagine:


Option 1:

Help-Squeak-Project overrides #offerVersionsHelp. If Help is absent, the "native" version that uses #versionsHelpString will be used. If Help is present, a HelpBrowser will be opened.

Pro: Works in any situation as well as possible.

Contra: Overridden methods cause confusion when committing to the original package. (There is a similar issue with ToolIcons-Plus.)


Option 2:

#offerVersionsHelp looks like this:

Smalltalk at: #SqueakToolsVersionsBrowserHelp

    ifPresent: [:help | HelpBrowser openOn: help]

    ifAbsent: [self versionsHelpString editWithLabel: 'Versions Browsers' translated]

Pro: No overridden methods.

Contra: Slight dependency from Tools on Help.


Option 3:

Drop any help support if help is not installed. In this case, we should also remove #versionsHelpString and ClassCommentVersionsBrowser >> #offerVersionsHelp. It's not consistent at the moment.

Pro: No duplicate help content.

Contra: If help is not loaded, no help is available. (However, shouldn't this be a tautology?)

Option 3a:

Again, provide access to help via an extension method. If we are consistent, we should also create the menu item via another extension method (Pragmas should make this possible). But then Help would depend on implementation details of the Versions Browser ...

Option 3b:

Again, scan SmalltalkImage for the help topic like in Option 2. This would be my favored choice because it sounds most easy to maintain.


So, what would you recommend? :-)


Best,

Christoph

________________________________
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von Taeumel, Marcel
Gesendet: Sonntag, 16. Februar 2020 12:52 Uhr
An: Javier Diaz-Reinoso via Squeak-dev; packages at lists.squeakfoundation.org
Betreff: Re: [squeak-dev] The Trunk: Tools-mt.939.mcz

Hi Christoph.

Not sure to what you are referring to. A "move method" between packages requires two commits. The one in the package "Help-Squeak-Project", which was the target, did already happen. The one in "Tools", which was the source, was forgotten.

> What's the best way to refer to the help package? Do we want a dangling menu reference if help isn't installed?

I suppose this would require a better extension mechanism for menus. For now it is okay because Help is always loaded. ;-)

Best,
Marcel

Am 15.02.2020 15:09:58 schrieb Thiede, Christoph <christoph.thiede at student.hpi.uni-potsdam.de>:

Hi Marcel,


> (Also completes a move-method from that merge in Help-Squeak-Project-mt.74)

I already addressed this issue here: http://forum.world.st/The-Inbox-Help-Squeak-Project-ct-72-mcz-td5106990.html#a5109121
What's the best way to refer to the help package? Do we want a dangling menu reference if help isn't installed?

Best,
Christoph
________________________________
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von commits at source.squeak.org <commits at source.squeak.org>
Gesendet: Donnerstag, 13. Februar 2020 13:37:03
An: squeak-dev at lists.squeakfoundation.org; packages at lists.squeakfoundation.org
Betreff: [squeak-dev] The Trunk: Tools-mt.939.mcz

Marcel Taeumel uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-mt.939.mcz

==================== Summary ====================

Name: Tools-mt.939
Author: mt
Time: 13 February 2020, 1:37:00.539714 pm
UUID: 21f18a61-361d-5348-9980-f95b1aa13203
Ancestors: Tools-ct.938

In debuggers, fixes the bug that occurred when fullStackSize is smaller than notifierStackSize.

Such a configuration is not useful but can happen when those preferences are changed independently for different reasons.

(Also completes a move-method from that merge in Help-Squeak-Project-mt.74)

=============== Diff against Tools-ct.938 ===============

Item was changed:
  ----- Method: Debugger>>expandStack (in category 'context stack - message list') -----
  expandStack
         "Show a substantial amount of stack in the context pane."

         self okToChange ifFalse: [^ self].
+        self newStack: (self contextStackTop stackOfSize: (self class fullStackSize max: self class notifierStackSize)).
-        self newStack: (self contextStackTop stackOfSize: self class fullStackSize).
         self changed: #contextStackList.
  !

Item was removed:
- ----- Method: VersionsBrowser>>offerVersionsHelp (in category 'menu') -----
- offerVersionsHelp
-        (StringHolder new contents: self versionsHelpString)
-                openLabel: 'Versions Browsers'!


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200216/071f2794/attachment.html>


More information about the Squeak-dev mailing list