Re: The Trunk: Help-Squeak-Project-ct.115.mcz
Christoph Thiede via Squeak-dev <[email protected]> Sun, 2 Aug 2026 20:37:25 +0200
| Newsgroups | gmane.comp.lang.smalltalk.squeak.general |
|---|---|
| Message-ID | <a6f14093-61fe-404a-8ab7-b4e3f6919b8d@MX2025-DAG1.hpi.uni-potsdam.de> |
--===============0002691743948064223== Content-Type: multipart/alternative; boundary="==CelesteAttachment24461==" --==CelesteAttachment24461== Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="UTF-8" Hi Marcel, I apologize if "unorthodox" sounded violent to you. It was obviously (?) = not meant that way and probably the wrong word. I like the fine-tuned hel= p browser you built for the release image. :-) You're right, this composition should not have broken the outline tool. U= nfortunately, some coupling between a help topic and its parent is alread= y there (see all the "subtopic" selectors in AbstractHelpTopic, which lar= gely I am to be blamed for), or also #usesCodeStylingForPages and its sen= ders. By the way, I just noticed that trying to drag "What is New?" into = the release notes gives you an MNU for a similar reason ... this is proba= bly not worth fixing prior to the release ... Maybe we should add an expl= icit reference from each help topic to its parent? We should discuss this further after the release, and I'd be happy to dis= cuss revisions to the current API of the outline tool, too. :-) Best, Christoph -- Sent from Squeak Inbox Talk On 2026-08-02T10:32:07+02:00, [email protected] wrote: > Hi Christoph, hi all -- > > I think that the case of re-use (or re-composition) of help topics such= > as this case here with "What is New?" is quite normal and should be > expected in a modular and robust system. Any reliance on outside > composition structures seems rather surprising and disregarding the "La= w > of Demeter" (i.e., "only talk to your direct neighours"). While we can = > still write this kind of code (here: #outlineRoots), we should be extra= > careful and prefer "simpler" solutions if they seem feasible. > > In general, we should also be attentive when writing commit messages (o= r > any message to the community) to use non-violent phrasing whenever > possible. In this case, a simple omission of the word "unorthodox" woul= d > not have done this message any harm. > > Kind regards, > Marcel > > Am 02.08.2026 um 03:07 schrieb commits(a)source.squeak.org: > > Christoph Thiede uploaded a new version of Help-Squeak-Project to pro= ject The Trunk: > > http://source.squeak.org/trunk/Help-Squeak-Project-ct.115.mcz > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Summary =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > > > > Name: Help-Squeak-Project-ct.115 > > Author: ct > > Time: 2 August 2026, 3:07:08.816874 am > > UUID: 36b81c10-c8c3-43e4-ae42-a25885794d0e > > Ancestors: Help-Squeak-Project-mt.114 > > > > Fixes release notes outline viewer for the unorthodox composition of = the release notes under the "What is New?" page in the welcome contents. = Also fixes a stupid slip in a #detect:ifNone:. > > > > This was urgent. :-) > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Diff against Help-Squeak-Project-mt.114 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D > > > > Item was changed: > > ----- Method: SqueakHelpOutlineTool>>outlineRoots (in category 'acces= sing') ----- > > outlineRoots > > > > =C2=A0=C2=A0=C2=A0=C2=A0| parentTopic topic | > > =C2=A0=C2=A0=C2=A0=C2=A0outlineRoots ifNotNil: [^ outlineRoots]. > > =C2=A0=C2=A0=C2=A0=C2=A0 > > =C2=A0=C2=A0=C2=A0=C2=A0parentTopic :=3D self helpBrowser currentParentTopic. > > =C2=A0=C2=A0=C2=A0=C2=A0topic :=3D self helpBrowser currentTopic. > > =C2=A0=C2=A0=C2=A0=C2=A0(parentTopic isNil or: [topic isNil]) ifTrue: [^ outlineRoots= :=3D #()]. > > + =C2=A0=C2=A0=C2=A0=C2=A0(parentTopic respondsTo: #outlineRootsFor:in:) ifFalse: > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0["See ReleaseBuilder class>>#openWelcomeWorkspacesW= ith:" > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0topic title asString asLowercase =3D 'What is New?' a= sLowercase ifTrue: > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0[parentTopic :=3D SqueakReleaseNotes]]. > > =C2=A0=C2=A0=C2=A0=C2=A0(parentTopic respondsTo: #outlineRootsFor:in:) ifFalse: [^ ou= tlineRoots :=3D #()]. > > =C2=A0=C2=A0=C2=A0=C2=A0^ outlineRoots :=3D parentTopic > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0outlineRootsFor: topic > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0in: self editedTopicContents! > > > > Item was changed: > > ----- Method: SqueakReleaseNotes class>>findHelpBrowser (in category = 'examples - support') ----- > > findHelpBrowser > > > > + =C2=A0=C2=A0=C2=A0=C2=A0| windows | > > + =C2=A0=C2=A0=C2=A0=C2=A0windows :=3D (SystemWindow windowsIn: Project current world) > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0select: [:ea | ea model isKindOf: HelpBrowser]. > > + =C2=A0=C2=A0=C2=A0=C2=A0windows > > - =C2=A0=C2=A0=C2=A0=C2=A0^ ((SystemWindow windowsIn: Project current world) > > - =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0select: [:ea | ea model isKindOf: HelpBrowser]) > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0detect: [:ea | > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0ea model currentParentTopic isClassBasedHelpT= opic > > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0and: [ea model currentParentTopic hel= pClass =3D SqueakReleaseNotes]] > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0ifFound: [:ea | ^ ea]. > > + =C2=A0=C2=A0=C2=A0=C2=A0^ windows > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0ifNotEmpty: [windows anyOne] > > + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0ifEmpty: [nil]! > > - =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0ifNone: [:ea | (ea ifEmpty: [^ nil]) first]! > > > > Squeak-dev mailing list -- squeak-dev(a)lists.squeakfoundation.org > > To unsubscribe send an email to squeak-dev-leave(a)lists.squeakfounda= tion.org --==CelesteAttachment24461== Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="UTF-8" Hi Marcel,<br> <br> I apologize if "unorthodox" sounded violent to you. It was obvi= ously (?) not meant that way and probably the wrong word. I like the fine= -tuned help browser you built for the release image. :-)<br> <br> You're right, this composition should not have broken the outline to= ol. Unfortunately, some coupling between a help topic and its parent is a= lready there (see all the "subtopic" selectors in AbstractHelpT= opic, which largely I am to be blamed for), or also #usesCodeStylingForPa= ges and its senders. By the way, I just noticed that trying to drag "= ;What is New?" into the release notes gives you an MNU for a similar= reason ... this is probably not worth fixing prior to the release ... Ma= ybe we should add an explicit reference from each help topic to its paren= t?<br> <br> We should discuss this further after the release, and I'd be happy t= o discuss revisions to the current API of the outline tool, too. :-)<br> <br> Best,<br> Christoph<br> <br> <font color=3D"#808080">-- <br> </font><font color=3D"#808080"><i>Sent from </i></font><font color=3D"#808080= "><i><a href=3D"https://github.com/hpi-swa-lab/squeak-inbox-talk"><font col= or=3D"#808080">Squeak Inbox Talk</font></a></i></font><br> <br> On 2026-08-02T10:32:07+02:00, [email protected] wrote:<br> <br> <blockquote>Hi Christoph, hi all --<br> <br> I think that the case of re-use (or re-composition) of help topics such <= br> as this case here with "What is New?" is quite normal and shoul= d be <br> expected in a modular and robust system. Any reliance on outside <br> composition structures seems rather surprising and disregarding the "= ;Law <br> of Demeter" (i.e., "only talk to your direct neighours"). = While we can <br> still write this kind of code (here: #outlineRoots), we should be extra <= br> careful and prefer "simpler" solutions if they seem feasible.<b= r> <br> In general, we should also be attentive when writing commit messages (or = <br> any message to the community) to use non-violent phrasing whenever <br> possible. In this case, a simple omission of the word "unorthodox&qu= ot; would <br> not have done this message any harm.<br> <br> Kind regards,<br> Marcel<br> <br> Am 02.08.2026 um 03:07 schrieb commits(a)source.squeak.org:<br> > Christoph Thiede uploaded a new version of Help-Squeak-Project to pr= oject The Trunk:<br> > http://source.squeak.org/trunk/Help-Squeak-Project-ct.115.mcz<br> ><br> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Summary =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br> ><br> > Name: Help-Squeak-Project-ct.115<br> > Author: ct<br> > Time: 2 August 2026, 3:07:08.816874 am<br> > UUID: 36b81c10-c8c3-43e4-ae42-a25885794d0e<br> > Ancestors: Help-Squeak-Project-mt.114<br> ><br> > Fixes release notes outline viewer for the unorthodox composition of= the release notes under the "What is New?" page in the welcome= contents. Also fixes a stupid slip in a #detect:ifNone:.<br> ><br> > This was urgent. :-)<br> ><br> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Diff against Help-Squeak-Project-mt.114 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D<br> ><br> > Item was changed:<br> > ----- Method: SqueakHelpOutlineTool>>outlineRoots (in category= 'accessing') -----<br> > outlineRoots<br> > <br> > | parentTopic topic |<br> > outlineRoots ifNotNil: [^ outlineRoots].<br>= > <br> > parentTopic :=3D self helpBrowser currentParen= tTopic.<br> > topic :=3D self helpBrowser currentTopic.<br> > (parentTopic isNil or: [topic isNil]) ifTrue= : [^ outlineRoots :=3D #()].<br> > + (parentTopic respondsTo: #outlineRootsFor:= in:) ifFalse:<br> > + ["See Release= Builder class>>#openWelcomeWorkspacesWith:"<br> > + topic title asStri= ng asLowercase =3D 'What is New?' asLowercase ifTrue:<br> > + = [parentTopic :=3D SqueakReleaseNotes]].<br> > (parentTopic respondsTo: #outlineRootsFor:in= :) ifFalse: [^ outlineRoots :=3D #()].<br> > ^ outlineRoots :=3D parentTopic<br> > outlineRootsFor: top= ic<br> > in: self editedTopic= Contents!<br> ><br> > Item was changed:<br> > ----- Method: SqueakReleaseNotes class>>findHelpBrowser (in ca= tegory 'examples - support') -----<br> > findHelpBrowser<br> > <br> > + | windows |<br> > + windows :=3D (SystemWindow windowsIn: Projec= t current world)<br> > + select: [:ea | ea = model isKindOf: HelpBrowser].<br> > + windows<br> > - ^ ((SystemWindow windowsIn: Project curren= t world)<br> > - select: [:ea | ea = model isKindOf: HelpBrowser])<br> > detect: [:ea |<br> > &n= bsp;ea model currentParentTopic isClassBasedHelpTopic<br> > &n= bsp; and: [ea model currentParentTopic helpClass =3D= SqueakReleaseNotes]]<br> > + ifFound: [:ea | ^ = ea].<br> > + ^ windows<br> > + ifNotEmpty: [windo= ws anyOne]<br> > + ifEmpty: [nil]!<br= > > - ifNone: [:ea | (ea= ifEmpty: [^ nil]) first]!<br> ><br> > Squeak-dev mailing list -- squeak-dev(a)lists.squeakfoundation.org<b= r> > To unsubscribe send an email to squeak-dev-leave(a)lists.squeakfound= ation.org</blockquote> --==CelesteAttachment24461==-- --===============0002691743948064223== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline Squeak-dev mailing list -- [email protected] To unsubscribe send an email to [email protected] --===============0002691743948064223==--