Yes I was thinking the same. Stef
On Thu, Aug 31, 2017 at 8:54 PM, PBKResearch <pe...@pbkresearch.co.uk> wrote: > Stef > > Done - > https://pharo.fogbugz.com/f/cases/20363/ThemeIcons-downloadTo-has-an-argument-which-is-never-referenced-in-code > > What really puzzled me is that this situation was not picked up by a code > critic. 'Local variable declared and not referenced' is a common critic > message, and this looks like a parallel situation. But I don't think this can > be called a bug in the code critic system - can it? > > Peter Kenny > > -----Original Message----- > From: Pharo-users [mailto:pharo-users-boun...@lists.pharo.org] On Behalf Of > Stephane Ducasse > Sent: 31 August 2017 19:16 > To: Any question about pharo is welcome <pharo-users@lists.pharo.org> > Subject: Re: [Pharo-users] Code mystery > > Can you open a bug entry? > I can tell you that we clean a lot but human activity will always leads to > glitches. > > On Tue, Aug 29, 2017 at 1:23 AM, Dimitris Chloupis <kilon.al...@gmail.com> > wrote: >> You are not going crazy that's an ugly method. Probably the author >> intended to use dir and the forgot about it and instead hard coded the >> dir path inside a class method. A mistake that can happen to anyone. >> >> The method will have to be updated anyway because name is to be >> removed, so it won't work. >> >> As always too much code too few people. If you think that's bad >> embrace yourself if you try to read Morphic code. Huge suffering for >> me when I tried to learn how the task bar works and apparently using >> it wrong it freezes the image. >> >> Tons of Pharo code needs a clean but needs also a lot more people. >> On Tue, 29 Aug 2017 at 01:52, PBKResearch <pe...@pbkresearch.co.uk> wrote: >>> >>> Hello All >>> >>> >>> >>> Following the discussion on dark mode, I was browsing the code on >>> themes (in Moose 6.1 = Pharo 6.0, Latest update: #60486). In Class >>> ThemeIcons, I found this method: >>> >>> >>> >>> downloadTo: dir >>> >>> | zipArchive | >>> >>> >>> >>> zipArchive := self class destinationPath / (self name, >>> '.zip'). >>> >>> zipArchive exists >>> >>> ifFalse: [ >>> >>> ZnClient new >>> >>> url: self >>> url; >>> >>> downloadTo: >>> zipArchive ]. >>> >>> >>> >>> ^ zipArchive >>> >>> >>> >>> The mystery is that the argument dir is not referred to anywhere in >>> the code. It probably works, because the only invocation of the >>> method is from >>> ThemeIcons>>downloadFromUrl, which sets the argument from self class >>> destinationPath, and the code above recreates this as the path to >>> zipArchive. >>> >>> >>> >>> I thought I understood Smalltalk coding fairly well, but this really >>> puzzles me. Why would anyone code like this? Shouldn’t it be picked >>> up by a code critic? Or am I going crazy? >>> >>> >>> >>> Any help gratefully received >>> >>> >>> >>> Peter Kenny > >