The Trunk: Collections-dtl.548.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
41 messages Options
123
Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

David T. Lewis
On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
>
> On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]> wrote:
>
> > I cannot open a file list (world -> open... -> file list) in a fully updated trunk image.
> >
> > Is it just me?
>
> Possibly; my latest was -297 which worked ok and I just updated to 321 and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only thing I noticed was a merge dialog popping up relating to some ST80 packages stuff.
>

It is indeed my image. I took another much older image and updated it fully
to trunk, and the file list works fine.

Sorry for the noise.

Dave


Reply | Threaded
Open this post in threaded view
|

Emergency Evaluator (was: [squeak-dev] The Trunk: Collections-dtl.548.mcz)

David T. Lewis
In reply to this post by Chris Muller-3
On Fri, Dec 13, 2013 at 01:26:19PM -0600, Chris Muller wrote:

> >
> >
> > > Because there has been no concrete vision/requirement for a Morphic-based
> > > emergency evaluator (EE).  EE is a relatively rare occurrence (one would
> > > hope!) and for developers only.  But developers typically use
> > _development
> > > images_ which tend to be fat, not "Stripped", and so might probably
> > include
> > > ST80 anyway..?  The cases seem pretty uncertain and so that's why I'm
> > > questioning engineering new stuff like this into the image.
> >
> > This is a bug. It needs to be fixed. It's not new functionality,
> > unless by "new" you mean "it actually works in Morphic".
> >
>
> By new I meant, "it works when ST80 is unloaded."
>
>
> > > Particularly we're at a time when I want to get 4.5 out the door, so that
> > > may be contributing to my aversion to new engineerings.  I ask you to at
> > > least consider simple stub error-handling in situations where
> > > packages/functionality would be unfulfilled.  We can fill in
> > implementations
> > > later, if needed, but at least you'll have made the structure.
> >
> > So you'll be happy with
> >
> > * move the current EE to ST-80,
> > * fix the EE for Morphic (at some point),
> > * add an AppRegistry for the EE (which is just a hook like ToolSet and
> > friends, so we don't tangle the two UI frameworks we have so carefully
> > untangled)
> >
> > ? If there's a simpler solution, I'm all ears.
> >
> >
> I too swamped to dig in today and know.  If its small and no potential
> issue for 4.5, I probably won't complain anymore.  But, in general, I do
> hope extreme TSTTCPW will be considered for cases during the detangling
> process.  We have a dynamic programming system.  We wax about developing in
> the debugger.  It's ok to leave some things simply stubbed if there's a
> chance they may never be encountered.

Background:

The emergency evaluator is implemented by class Transcripter in package
Collections. Transcripter uses Paragraph, which is an MVC class in ST80.
That means that if MVC is unloaded from the image, the emergency evaluator
will not work.

Refering to Cuis for inspiration:

In Cuis, the distinction between Paragraph (MVC) and NewParagraph (Morphic)
has been eliminanted, and class Paragraph is used. The Transcripter uses
Paragraph (same as Squeak), and Paragraph works in Morphic.

For Squeak:

Juan's approach of eliminating the distinction between Paragraph and
NewParagraph is probably the right thing to do, but it would be a large
change, so save that idea for later. In the near term, the paragraph
initialization in the Transcripter will need to use the right flavor
of paragraph. Possibly this should be vectored through the UI manager
or the current project, or it may be sufficient to just use Paragraph
if it exists in the image, otherwise use NewParagraph. I'm not sure of
the best approach yet, but I'll try to do some experimenting with it
over the next few days and propose a solution.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: Emergency Evaluator (was: [squeak-dev] The Trunk: Collections-dtl.548.mcz)

timrowledge

On 14-12-2013, at 8:22 AM, David T. Lewis <[hidden email]> wrote:
>
> In Cuis, the distinction between Paragraph (MVC) and NewParagraph (Morphic)
> has been eliminanted, and class Paragraph is used. The Transcripter uses
> Paragraph (same as Squeak), and Paragraph works in Morphic.

Dang - didn’t nice & I go that far? I thought we’d ended up unifying the whole lot. Obviously, we should finish the job sometime soon.

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Never test for an error condition you don't know how to handle.



Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

Frank Shearar-3
In reply to this post by Eliot Miranda-2
On 13 December 2013 20:21, Eliot Miranda <[hidden email]> wrote:

>
>
>
> On Fri, Dec 13, 2013 at 11:38 AM, David T. Lewis <[hidden email]>
> wrote:
>>
>> On Fri, Dec 13, 2013 at 06:37:19PM +0000, Frank Shearar wrote:
>> > On 13 December 2013 16:59, Chris Muller <[hidden email]> wrote:
>> > >> > Dave, the only thing I don't like about this change is I thought we
>> > >> > said
>> > >> > we
>> > >> > were going to migrate away from using the Dictionary API on
>> > >> > Smalltalk.
>> > >> > This
>> > >> > was back when Andreas and community came up with the idea of the
>> > >> > wrapped
>> > >> > 'globals'.
>> > >> >
>> > >> > I think it would be better to use
>> > >> >
>> > >> >     (Smalltalk classNamed: #Paragraph) ifNotNil: [ : classParagraph
>> > >> > |
>> > >> > ... ]
>> > >> >
>> > >> > otherwise we can never find all the places where we try to do
>> > >> > logical
>> > >> > access
>> > >> > to class.
>> > >>
>> > >> In which case we should have #bindingOf:ifPresent, or similar. An API
>> > >> that forces you to acknowledge the potential not-there-ness of a
>> > >> thing
>> > >> is far preferable, in my book, to a separate-check-then-use. The
>> > >> latter also have fun time-of-check-time-of-use issues in a
>> > >> multiprocessing environment... which we happen to have.
>> > >
>> > >
>> > > I used to prefer Potential-not-thereness API's in "my book" too until
>> > > one
>> > > day I found it unnecessarily expanding and complicating API's.  Users
>> > > of
>> > > API's must write defensive code anyway.  The ifNotNil: approach allows
>> > > a
>> > > simpler API that can provide either existence-testing OR access via
>> > > one
>> > > simple message rather than two.
>> > >
>> > > As for "fun time-of-check-time-of-use issues" that's just bunk.  You
>> > > think
>> > > the ifPresent: method doesn't do the same ifNotNil: check or could not
>> > > be
>> > > interrupted?  Unless you're thinking to put a Mutex into
>> > > SmalltalkImage to
>> > > make it "thread safe".  What, for background unloading?  If you need
>> > > that
>> > > guard it from the outside.
>> > >
>> > >>
>> > >>
>> > >> >> >> Well, that definitely stops a DNU and such when running in
>> > >> >> >> Morphic
>> > >> >> >> (yay!) but it still won't work in a non-MVC/Morphic world.
>> > >> >> >> That's
>> > >> >> >> when
>> > >> >> >> you accused me of overengineering, David :)
>> > >> >> >
>> > >> >> > Yes you're right, I meant that with a smiley, sorry :)
>> > >> >>
>> > >> >> I knew there was something of a smiley in there :) I just meant
>> > >> >> that
>> > >> >> if we want to preserve the Transcripter's emergencyEvaluator we
>> > >> >> would
>> > >> >> need this "complexity" because we'd need an emergencyEvaluator per
>> > >> >> UI
>> > >> >> framework.
>> > >> >
>> > >> >
>> > >> > -1.  Please be more conservative and lazy about putting new
>> > >> > code/elements
>> > >> > into the system.  TSTTCPW demands that we don't start building out
>> > >> > infrastructure for new UI frameworks until those frameworks are
>> > >> > being
>> > >> > pushed
>> > >> > into existence and such a factoring is actually NEEDED.  Please
>> > >> > only
>> > >> > write
>> > >> > code for the "now" not for some "potential future".  10 years could
>> > >> > go
>> > >> > by
>> > >> > with no new graphical frameworks and then someone looking at your
>> > >> > class-hierarchy will regard it as "cruft".
>> > >>
>> > >> (a) The emergency evaluator's there _for good reason_.
>> > >> (b) We HAVE two UI frameworks right now. They're part of the standard
>> > >> image.
>> > >> (c) "Stripped" 4.5 base images do not have ST80, so this code is
>> > >> broken.
>> > >> (d) To fix it _requires_ two separate UI implementations because of
>> > >> point
>> > >> (b).
>> > >>
>> > >> Unless you're specifically saying "we should not have an emergency
>> > >> evaluator". But then say that, not -1 me suggesting a way to fix
>> > >> something broken. (Please feel free to suggest a simpler way of
>> > >> solving the problem that works for all CURRENT UI frameworks.)
>> > >
>> > >
>> > > Ok, all I'm saying is, part of your work is about reorganizing, and
>> > > other
>> > > parts are about engineering new functionality just to accomodate the
>> > > reorganizations.  (What's worse is when you want to remove
>> > > functionality
>> > > just to accomodate but I'll be lazy about addressing that).
>> > >
>> > > Whenever there's an arbitrary piece of new functionality (e.g.,
>> > > Morphic-based emergency evaluator) just to avoid crossing package
>> > > boundaries
>> > > you don't want to cross, then engineering "solutions" to that I think
>> > > could
>> > > end up being code for ghost situations.
>> > >
>> > > Because there has been no concrete vision/requirement for a
>> > > Morphic-based
>> > > emergency evaluator (EE).  EE is a relatively rare occurrence (one
>> > > would
>> > > hope!) and for developers only.  But developers typically use
>> > > _development
>> > > images_ which tend to be fat, not "Stripped", and so might probably
>> > > include
>> > > ST80 anyway..?  The cases seem pretty uncertain and so that's why I'm
>> > > questioning engineering new stuff like this into the image.
>> >
>> > This is a bug. It needs to be fixed. It's not new functionality,
>> > unless by "new" you mean "it actually works in Morphic".
>> >
>> > > Particularly we're at a time when I want to get 4.5 out the door, so
>> > > that
>> > > may be contributing to my aversion to new engineerings.  I ask you to
>> > > at
>> > > least consider simple stub error-handling in situations where
>> > > packages/functionality would be unfulfilled.  We can fill in
>> > > implementations
>> > > later, if needed, but at least you'll have made the structure.
>> >
>> > So you'll be happy with
>> >
>> > * move the current EE to ST-80,
>> > * fix the EE for Morphic (at some point),
>> > * add an AppRegistry for the EE (which is just a hook like ToolSet and
>> > friends, so we don't tangle the two UI frameworks we have so carefully
>> > untangled)
>> >
>>
>> No.
>>
>> > ? If there's a simpler solution, I'm all ears.
>> >
>>
>> Hopefully there is a simpler solution, aalthough I cannot look into it
>> right now.
>
>
> Do we have a place-holder?  It is much better to have a string appear in
> top-left that says "The Morphic emergency evaluator is current;y
> unimplemented.  this is an oversight it is intended to fix." than have the
> system lock-up silently.  I'm worried that in a few weeks or months we'll
> have completely orgotten about the Morphic EE and it'll present a mystery
> when it is needed.

At the moment it ought to tell you that the emergency evaluator's
kicked in, but that could be amended to give a better error message,
along the lines of what you suggest.

frank

>> Dave
>>
>> > frank
>>
>
>
>
> --
> best,
> Eliot

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

Colin Putney-3
In reply to this post by Frank Shearar-3



On Fri, Dec 13, 2013 at 11:06 AM, Frank Shearar <[hidden email]> wrote:

(a) The emergency evaluator's there _for good reason_.
(b) We HAVE two UI frameworks right now. They're part of the standard image.
(c) "Stripped" 4.5 base images do not have ST80, so this code is broken.
(d) To fix it _requires_ two separate UI implementations because of point (b).

I thought the point of the emergency evaluator was that it the fewest dependencies possible. Since it scribbles directly on the Display, it should work independently of any UI, and thus be useful when the UI is broken. 

If the EE currently depends on MVC, then we remove that dependency, rather than just generalize the dependency to MVC-or-Morphic. We could either rewrite the bit that depends on MVC, or move the functionality that it does depend on out of MVC and into a lower-level part of the system.

Colin


Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

Chris Muller-3
In reply to this post by David T. Lewis
Dave just FYI I recently posted a new alpha image at http://ftp.squeak.org/4.5-alpha.  Filelist works there and it is currently basis for moving toward a release.


On Sat, Dec 14, 2013 at 8:23 AM, David T. Lewis <[hidden email]> wrote:
On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
>
> On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]> wrote:
>
> > I cannot open a file list (world -> open... -> file list) in a fully updated trunk image.
> >
> > Is it just me?
>
> Possibly; my latest was -297 which worked ok and I just updated to 321 and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only thing I noticed was a merge dialog popping up relating to some ST80 packages stuff.
>

It is indeed my image. I took another much older image and updated it fully
to trunk, and the file list works fine.

Sorry for the noise.

Dave





Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

Chris Muller-3
The alpha image is nothing more than an updated 4.4 image (clicking through all the merge requests), trimming MC cache, save image, done.


On Sat, Dec 14, 2013 at 2:20 PM, Chris Muller <[hidden email]> wrote:
Dave just FYI I recently posted a new alpha image at http://ftp.squeak.org/4.5-alpha.  Filelist works there and it is currently basis for moving toward a release.


On Sat, Dec 14, 2013 at 8:23 AM, David T. Lewis <[hidden email]> wrote:
On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
>
> On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]> wrote:
>
> > I cannot open a file list (world -> open... -> file list) in a fully updated trunk image.
> >
> > Is it just me?
>
> Possibly; my latest was -297 which worked ok and I just updated to 321 and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only thing I noticed was a merge dialog popping up relating to some ST80 packages stuff.
>

It is indeed my image. I took another much older image and updated it fully
to trunk, and the file list works fine.

Sorry for the noise.

Dave






Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

David T. Lewis
In reply to this post by Colin Putney-3
On Sat, Dec 14, 2013 at 03:10:32PM -0500, Colin Putney wrote:

> On Fri, Dec 13, 2013 at 11:06 AM, Frank Shearar <[hidden email]>wrote:
>
> (a) The emergency evaluator's there _for good reason_.
> > (b) We HAVE two UI frameworks right now. They're part of the standard
> > image.
> > (c) "Stripped" 4.5 base images do not have ST80, so this code is broken.
> > (d) To fix it _requires_ two separate UI implementations because of point
> > (b).
> >
>
> I thought the point of the emergency evaluator was that it the fewest
> dependencies possible. Since it scribbles directly on the Display, it
> should work independently of any UI, and thus be useful when the UI is
> broken.
>
> If the EE currently depends on MVC, then we remove that dependency, rather
> than just generalize the dependency to MVC-or-Morphic. We could either
> rewrite the bit that depends on MVC, or move the functionality that it does
> depend on out of MVC and into a lower-level part of the system.

Exactly right.

I have a working implementation right now, please give me a day or so to
play around with it.

Whatever I post can go away if someone gets around to unifying NewParagraph
with Paragraph (this is what Juan did in Cuis, and I am borrowing his code
shamelessly).

Dave


Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

Frank Shearar-3
In reply to this post by Chris Muller-3
That's great for easing David's pain - something well worth doing
(especially since I'm almost certainly a large contributing factor) -
but as a general rule, if we can't use the automated builds to do
this, I need to know, so I can fix it. Because we should, in a later
version than 4.4, be producing and publishing artifacts in a
completely automated fashion. We're not _quite_ there yet, but I need
to know any shortcomings in the process if we're ever to reach that
happy day.

frank

On 14 December 2013 20:21, Chris Muller <[hidden email]> wrote:

> The alpha image is nothing more than an updated 4.4 image (clicking through
> all the merge requests), trimming MC cache, save image, done.
>
>
> On Sat, Dec 14, 2013 at 2:20 PM, Chris Muller <[hidden email]> wrote:
>>
>> Dave just FYI I recently posted a new alpha image at
>> http://ftp.squeak.org/4.5-alpha.  Filelist works there and it is currently
>> basis for moving toward a release.
>>
>>
>> On Sat, Dec 14, 2013 at 8:23 AM, David T. Lewis <[hidden email]>
>> wrote:
>>>
>>> On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
>>> >
>>> > On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]> wrote:
>>> >
>>> > > I cannot open a file list (world -> open... -> file list) in a fully
>>> > > updated trunk image.
>>> > >
>>> > > Is it just me?
>>> >
>>> > Possibly; my latest was -297 which worked ok and I just updated to 321
>>> > and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only thing I
>>> > noticed was a merge dialog popping up relating to some ST80 packages stuff.
>>> >
>>>
>>> It is indeed my image. I took another much older image and updated it
>>> fully
>>> to trunk, and the file list works fine.
>>>
>>> Sorry for the noise.
>>>
>>> Dave
>>>
>>>
>>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

David T. Lewis
In reply to this post by Chris Muller-3
Thanks Chris,

I still have not figured out what went wrong in updating my image, but
it is somehow specific to my image and not a concern with respect to the
upcoming release.

Dave


On Sat, Dec 14, 2013 at 02:20:49PM -0600, Chris Muller wrote:

> Dave just FYI I recently posted a new alpha image at
> http://ftp.squeak.org/4.5-alpha.  Filelist works there and it is currently
> basis for moving toward a release.
>
>
> On Sat, Dec 14, 2013 at 8:23 AM, David T. Lewis <[hidden email]> wrote:
>
> > On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
> > >
> > > On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]> wrote:
> > >
> > > > I cannot open a file list (world -> open... -> file list) in a fully
> > updated trunk image.
> > > >
> > > > Is it just me?
> > >
> > > Possibly; my latest was -297 which worked ok and I just updated to 321
> > and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only thing I
> > noticed was a merge dialog popping up relating to some ST80 packages stuff.
> > >
> >
> > It is indeed my image. I took another much older image and updated it fully
> > to trunk, and the file list works fine.
> >
> > Sorry for the noise.
> >
> > Dave
> >
> >
> >

>


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

Nicolas Cellier
In reply to this post by David T. Lewis
But Cuis is Morphic only and does not support MVC, so this is more a rename than unification...
Cuis Paragraph is not a subclass of DisplayObject for example.


2013/12/14 David T. Lewis <[hidden email]>
On Sat, Dec 14, 2013 at 03:10:32PM -0500, Colin Putney wrote:
> On Fri, Dec 13, 2013 at 11:06 AM, Frank Shearar <[hidden email]>wrote:
>
> (a) The emergency evaluator's there _for good reason_.
> > (b) We HAVE two UI frameworks right now. They're part of the standard
> > image.
> > (c) "Stripped" 4.5 base images do not have ST80, so this code is broken.
> > (d) To fix it _requires_ two separate UI implementations because of point
> > (b).
> >
>
> I thought the point of the emergency evaluator was that it the fewest
> dependencies possible. Since it scribbles directly on the Display, it
> should work independently of any UI, and thus be useful when the UI is
> broken.
>
> If the EE currently depends on MVC, then we remove that dependency, rather
> than just generalize the dependency to MVC-or-Morphic. We could either
> rewrite the bit that depends on MVC, or move the functionality that it does
> depend on out of MVC and into a lower-level part of the system.

Exactly right.

I have a working implementation right now, please give me a day or so to
play around with it.

Whatever I post can go away if someone gets around to unifying NewParagraph
with Paragraph (this is what Juan did in Cuis, and I am borrowing his code
shamelessly).

Dave





Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

David T. Lewis
In reply to this post by Chris Muller-3
On Fri, Dec 13, 2013 at 09:57:25AM -0600, Chris Muller wrote:

>
> Dave, the only thing I don't like about this change is I thought we said we
> were going to migrate away from using the Dictionary API on Smalltalk.
>  This was back when Andreas and community came up with the idea of the
> wrapped 'globals'.
>
> I think it would be better to use
>
>     (Smalltalk classNamed: #Paragraph) ifNotNil: [ : classParagraph | ... ]
>
> otherwise we can never find all the places where we try to do logical
> access to class.
>

Thanks, I had forgotten about this. I will use this idiom in the future.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

Chris Muller-3
In reply to this post by Frank Shearar-3
Hi Frank!  I actually put this message out to lure you into this discussion.  :)  Because, I want to move on 4.5 and I knew you had _something_ out there, but couldn't remember all the details.

The issues I faced with needing to get a new image were:

- I had to research the mailing list to find out where to download it.  An automated build server is great for doing continuous *testing* and reporting, but it seems like for end-user downloads we should have a copy available at the usual place (ftp.squeak.org).
- When I downloaded the image from CI, updated, and ran the tests, I found there were more tests failing than in another image that was simply updated from 4.4.  Something seemed to be wrong with the image state.
- Since I was not really certain what all was done in that image, I could not trust putting it on the squeak.org FTP site.  The only way I could be SURE enough about the state of an image put there was to take the archive release image (4.4) and simply update it myself and save it.

So, the overarching requirements:

  - Downloadable from squeak.org domains.
  - A way to know exactly how it was built:  This means knowing which prior _full release image_ was started with, and what changes (both code and objects) were made.
  - Reproducible build.  My idea since 4.2 was to have a utility method on ReleaseBuilder do all of this so it would be visible straight in the trunk repository.  I guess I always thought of the CI's responsibility as a on-going "test-status reporting" mechanism more than a deployment tool.

 - Chris


On Sat, Dec 14, 2013 at 2:24 PM, Frank Shearar <[hidden email]> wrote:
That's great for easing David's pain - something well worth doing
(especially since I'm almost certainly a large contributing factor) -
but as a general rule, if we can't use the automated builds to do
this, I need to know, so I can fix it. Because we should, in a later
version than 4.4, be producing and publishing artifacts in a
completely automated fashion. We're not _quite_ there yet, but I need
to know any shortcomings in the process if we're ever to reach that
happy day.

frank

On 14 December 2013 20:21, Chris Muller <[hidden email]> wrote:
> The alpha image is nothing more than an updated 4.4 image (clicking through
> all the merge requests), trimming MC cache, save image, done.
>
>
> On Sat, Dec 14, 2013 at 2:20 PM, Chris Muller <[hidden email]> wrote:
>>
>> Dave just FYI I recently posted a new alpha image at
>> http://ftp.squeak.org/4.5-alpha.  Filelist works there and it is currently
>> basis for moving toward a release.
>>
>>
>> On Sat, Dec 14, 2013 at 8:23 AM, David T. Lewis <[hidden email]>
>> wrote:
>>>
>>> On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
>>> >
>>> > On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]> wrote:
>>> >
>>> > > I cannot open a file list (world -> open... -> file list) in a fully
>>> > > updated trunk image.
>>> > >
>>> > > Is it just me?
>>> >
>>> > Possibly; my latest was -297 which worked ok and I just updated to 321
>>> > and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only thing I
>>> > noticed was a merge dialog popping up relating to some ST80 packages stuff.
>>> >
>>>
>>> It is indeed my image. I took another much older image and updated it
>>> fully
>>> to trunk, and the file list works fine.
>>>
>>> Sorry for the noise.
>>>
>>> Dave
>>>
>>>
>>
>
>
>
>




Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

David T. Lewis
In reply to this post by Nicolas Cellier
On Sat, Dec 14, 2013 at 09:38:27PM +0100, Nicolas Cellier wrote:
> But Cuis is Morphic only and does not support MVC, so this is more a rename
> than unification...
> Cuis Paragraph is not a subclass of DisplayObject for example.
>

Yes I understand. As with other MVC/Morphic differences, the solution is
to let either the current project or the current UI manager handle the
differences. In this case it should be the project, because Transcripter
is not a part of either the MVC or Morphic user interface. But to figure
out how the Morphic parts should, Cuis is the reference.

I have it down to three methods that need to be resolved through the
current project. I want to see if I can simplify in any more, but in
any case I'll post soon.

Dave

>
> 2013/12/14 David T. Lewis <[hidden email]>
>
> > On Sat, Dec 14, 2013 at 03:10:32PM -0500, Colin Putney wrote:
> > > On Fri, Dec 13, 2013 at 11:06 AM, Frank Shearar <[hidden email]
> > >wrote:
> > >
> > > (a) The emergency evaluator's there _for good reason_.
> > > > (b) We HAVE two UI frameworks right now. They're part of the standard
> > > > image.
> > > > (c) "Stripped" 4.5 base images do not have ST80, so this code is
> > broken.
> > > > (d) To fix it _requires_ two separate UI implementations because of
> > point
> > > > (b).
> > > >
> > >
> > > I thought the point of the emergency evaluator was that it the fewest
> > > dependencies possible. Since it scribbles directly on the Display, it
> > > should work independently of any UI, and thus be useful when the UI is
> > > broken.
> > >
> > > If the EE currently depends on MVC, then we remove that dependency,
> > rather
> > > than just generalize the dependency to MVC-or-Morphic. We could either
> > > rewrite the bit that depends on MVC, or move the functionality that it
> > does
> > > depend on out of MVC and into a lower-level part of the system.
> >
> > Exactly right.
> >
> > I have a working implementation right now, please give me a day or so to
> > play around with it.
> >
> > Whatever I post can go away if someone gets around to unifying NewParagraph
> > with Paragraph (this is what Juan did in Cuis, and I am borrowing his code
> > shamelessly).
> >
> > Dave
> >
> >
> >

>


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

Chris Muller-4
In reply to this post by Colin Putney-3
> I thought the point of the emergency evaluator was that it the fewest
> dependencies possible. Since it scribbles directly on the Display, it should
> work independently of any UI, and thus be useful when the UI is broken.
>
> If the EE currently depends on MVC, then we remove that dependency, rather
> than just generalize the dependency to MVC-or-Morphic. We could either
> rewrite the bit that depends on MVC, or move the functionality that it does
> depend on out of MVC and into a lower-level part of the system.

This makes perfect sense!

Reply | Threaded
Open this post in threaded view
|

Re: Emergency Evaluator (was: [squeak-dev] The Trunk: Collections-dtl.548.mcz)

David T. Lewis
In reply to this post by timrowledge
On Sat, Dec 14, 2013 at 11:13:10AM -0800, tim Rowledge wrote:
>
> On 14-12-2013, at 8:22 AM, David T. Lewis <[hidden email]> wrote:
> >
> > In Cuis, the distinction between Paragraph (MVC) and NewParagraph (Morphic)
> > has been eliminanted, and class Paragraph is used. The Transcripter uses
> > Paragraph (same as Squeak), and Paragraph works in Morphic.
>
> Dang - didn?t nice & I go that far? I thought we?d ended up unifying the whole lot. Obviously, we should finish the job sometime soon.
>

It's hard to know when you have reached the other side of a swamp.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

Frank Shearar-3
In reply to this post by Chris Muller-3
On 14 December 2013 20:53, Chris Muller <[hidden email]> wrote:
> Hi Frank!  I actually put this message out to lure you into this discussion.
> :)  Because, I want to move on 4.5 and I knew you had _something_ out there,
> but couldn't remember all the details.

You used the right kind of bait, that's for sure :)

> The issues I faced with needing to get a new image were:
>
 > - I had to research the mailing list to find out where to download it.  An

> automated build server is great for doing continuous *testing* and
> reporting, but it seems like for end-user downloads we should have a copy
> available at the usual place (ftp.squeak.org).
> - When I downloaded the image from CI, updated, and ran the tests, I found
> there were more tests failing than in another image that was simply updated
> from 4.4.  Something seemed to be wrong with the image state.
> - Since I was not really certain what all was done in that image, I could
> not trust putting it on the squeak.org FTP site.  The only way I could be
> SURE enough about the state of an image put there was to take the archive
> release image (4.4) and simply update it myself and save it.
>
> So, the overarching requirements:
>
>   - Downloadable from squeak.org domains.
>   - A way to know exactly how it was built:  This means knowing which prior
> _full release image_ was started with, and what changes (both code and
> objects) were made.
>   - Reproducible build.  My idea since 4.2 was to have a utility method on
> ReleaseBuilder do all of this so it would be visible straight in the trunk
> repository.  I guess I always thought of the CI's responsibility as a
> on-going "test-status reporting" mechanism more than a deployment tool.

Yep, yep, yep. I agree with all the above.

There is something wrong with the base image state at the moment,
partly because I'm incapable of pulling out ToolBuilder-Tests in less
than at least three attempts (sigh!). (*)

So the idea I've always had with CI was this:
* take a known-good base image (not happening right now :( )
* update it
* run a battery of tests on a copy of the image
* run the release process on the image (ReleaseSqueakTrunk)

Every now and then, someone can take the latest ReleaseSqueakTrunk
artifact, takes a look at the test results on build.squeak.org, plays
around with it. If it's fit for purpose, he or she pushes the artifact
up to ftp.squeak.org as a release candidate. Everyone else bangs on
it, and if the release manager's happy, it ships.

I do think that manual verification is important, because we don't
want random broken builds on ftp.squeak.org, even if they're declared
as alpha quality.

Additionally, as you rightly point out we need someone to advertise
build.squeak.org. Not just that it's there and we use it, but how to
get a bleeding-edge image, for instance.

frank

(*) This causes problems like this guy -
http://build.squeak.org/job/SqueakTrunk/678/testReport/junit/Morphic.ToolBuilder/MorphicToolBuilderTests/testWindowDynamicLabel/
- because that TestCase's superclass is obsolete.

>  - Chris
>
>
> On Sat, Dec 14, 2013 at 2:24 PM, Frank Shearar <[hidden email]>
> wrote:
>>
>> That's great for easing David's pain - something well worth doing
>> (especially since I'm almost certainly a large contributing factor) -
>> but as a general rule, if we can't use the automated builds to do
>> this, I need to know, so I can fix it. Because we should, in a later
>> version than 4.4, be producing and publishing artifacts in a
>> completely automated fashion. We're not _quite_ there yet, but I need
>> to know any shortcomings in the process if we're ever to reach that
>> happy day.
>>
>> frank
>>
>> On 14 December 2013 20:21, Chris Muller <[hidden email]> wrote:
>> > The alpha image is nothing more than an updated 4.4 image (clicking
>> > through
>> > all the merge requests), trimming MC cache, save image, done.
>> >
>> >
>> > On Sat, Dec 14, 2013 at 2:20 PM, Chris Muller <[hidden email]>
>> > wrote:
>> >>
>> >> Dave just FYI I recently posted a new alpha image at
>> >> http://ftp.squeak.org/4.5-alpha.  Filelist works there and it is
>> >> currently
>> >> basis for moving toward a release.
>> >>
>> >>
>> >> On Sat, Dec 14, 2013 at 8:23 AM, David T. Lewis <[hidden email]>
>> >> wrote:
>> >>>
>> >>> On Fri, Dec 13, 2013 at 05:05:27PM -0800, tim Rowledge wrote:
>> >>> >
>> >>> > On 13-12-2013, at 4:50 PM, David T. Lewis <[hidden email]>
>> >>> > wrote:
>> >>> >
>> >>> > > I cannot open a file list (world -> open... -> file list) in a
>> >>> > > fully
>> >>> > > updated trunk image.
>> >>> > >
>> >>> > > Is it just me?
>> >>> >
>> >>> > Possibly; my latest was -297 which worked ok and I just updated to
>> >>> > 321
>> >>> > and opening the filelist works ok. OS X 10.9, iMac, Cog vm. Only
>> >>> > thing I
>> >>> > noticed was a merge dialog popping up relating to some ST80 packages
>> >>> > stuff.
>> >>> >
>> >>>
>> >>> It is indeed my image. I took another much older image and updated it
>> >>> fully
>> >>> to trunk, and the file list works fine.
>> >>>
>> >>> Sorry for the noise.
>> >>>
>> >>> Dave
>> >>>
>> >>>
>> >>
>> >
>> >
>> >
>> >
>>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Emergency Evaluator (was: [squeak-dev] The Trunk: Collections-dtl.548.mcz)

timrowledge
In reply to this post by David T. Lewis

On 14-12-2013, at 1:49 PM, David T. Lewis <[hidden email]> wrote:

> On Sat, Dec 14, 2013 at 11:13:10AM -0800, tim Rowledge wrote:
>>
>> On 14-12-2013, at 8:22 AM, David T. Lewis <[hidden email]> wrote:
>>>
>>> In Cuis, the distinction between Paragraph (MVC) and NewParagraph (Morphic)
>>> has been eliminanted, and class Paragraph is used. The Transcripter uses
>>> Paragraph (same as Squeak), and Paragraph works in Morphic.
>>
>> Dang - didn?t nice & I go that far? I thought we?d ended up unifying the whole lot. Obviously, we should finish the job sometime soon.
>>
>
> It's hard to know when you have reached the other side of a swamp.

Nah. You can tell by the Alligator density function drop-off.

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Useful random insult:- S  p  a  c  e  d   o  u  t .



Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Collections-dtl.548.mcz

timrowledge
In reply to this post by Nicolas Cellier
Surely an ideal to aim at would be for the EE to not use anything as high level as Paragraph?  Might we be able to just use the string display prim(s) at as low a level as possible?
I suppose we have to use the input sensor events these days, but do we need to let them go through all the morphic stuff? When using the EE *only* the EE should be doing anything, so intercept right at the bottom of the stack. Just how little of the system can be used to provide this?

tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
Oxymorons: Legally drunk



Reply | Threaded
Open this post in threaded view
|

Re: Is the FileList broken in trunk?

Chris Muller-3
In reply to this post by Frank Shearar-3
On Sat, Dec 14, 2013 at 5:13 PM, Frank Shearar <[hidden email]> wrote:
On 14 December 2013 20:53, Chris Muller <[hidden email]> wrote:
> Hi Frank!  I actually put this message out to lure you into this discussion.
> :)  Because, I want to move on 4.5 and I knew you had _something_ out there,
> but couldn't remember all the details.

You used the right kind of bait, that's for sure :)

> The issues I faced with needing to get a new image were:
>
 > - I had to research the mailing list to find out where to download it.  An
> automated build server is great for doing continuous *testing* and
> reporting, but it seems like for end-user downloads we should have a copy
> available at the usual place (ftp.squeak.org).
> - When I downloaded the image from CI, updated, and ran the tests, I found
> there were more tests failing than in another image that was simply updated
> from 4.4.  Something seemed to be wrong with the image state.
> - Since I was not really certain what all was done in that image, I could
> not trust putting it on the squeak.org FTP site.  The only way I could be
> SURE enough about the state of an image put there was to take the archive
> release image (4.4) and simply update it myself and save it.
>
> So, the overarching requirements:
>
>   - Downloadable from squeak.org domains.
>   - A way to know exactly how it was built:  This means knowing which prior
> _full release image_ was started with, and what changes (both code and
> objects) were made.
>   - Reproducible build.  My idea since 4.2 was to have a utility method on
> ReleaseBuilder do all of this so it would be visible straight in the trunk
> repository.  I guess I always thought of the CI's responsibility as a
> on-going "test-status reporting" mechanism more than a deployment tool.

Yep, yep, yep. I agree with all the above.

There is something wrong with the base image state at the moment,
partly because I'm incapable of pulling out ToolBuilder-Tests in less
than at least three attempts (sigh!). (*)

So the idea I've always had with CI was this:
* take a known-good base image (not happening right now :( )
* update it
* run a battery of tests on a copy of the image
* run the release process on the image (ReleaseSqueakTrunk) 

Perfect.  (I assume you meant ReleaseBuilder).
 

Every now and then, someone can take the latest ReleaseSqueakTrunk
artifact, takes a look at the test results on build.squeak.org, plays
around with it. If it's fit for purpose, he or she pushes the artifact
up to ftp.squeak.org as a release candidate. Everyone else bangs on
it, and if the release manager's happy, it ships.

I do think that manual verification is important, because we don't
want random broken builds on ftp.squeak.org, even if they're declared
as alpha quality.

Absolutely.
 

Additionally, as you rightly point out we need someone to advertise
build.squeak.org. Not just that it's there and we use it, but how to
get a bleeding-edge image, for instance.

A link from the main web-site and also from an appropriate page(s) in the wiki would be a start.  We should have a page on the wiki dedicated to explaining the CI server overview anyway.



123