Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

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

Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

David T. Lewis
Marcel,

This is a great batch of improvements, and I think it will make the projects
mechanism much easier to work with in the future.

Thanks!
Dave


On Mon, May 09, 2016 at 11:41:08AM +0000, [hidden email] wrote:

> Marcel Taeumel uploaded a new version of System to project The Trunk:
> http://source.squeak.org/trunk/System-mt.827.mcz
>
> ==================== Summary ====================
>
> Name: System-mt.827
> Author: mt
> Time: 9 May 2016, 1:41:03.140729 pm
> UUID: e7d678e1-e245-0a49-b449-faca6c947a76
> Ancestors: System-mt.826
>
> REFACTORING THE PROJECTS MECHANISM
> - Reduce and clean-up the footprint of new project kinds: saveState/loadState, finalEnterActions:/finalExitActions:, startResourceLoading/abortResourceLoading, aboutToLeaveWorld/aboutToEnterWorld (object events), scheduleProcessForEnter/terminateProcessForLeave
> - Reduce full display restoring to #invalidate and #restore, which gives projects the chance to 1) clear their drawing caches and 2) redraw all their graphical objects.
> - Clean-up project add/remove wrt. sub-projects and the whole project hierarchy. See #isTopProject, #beTopProject, #addProject:, #liftSubProjects, #removeProjectsFromSystem
> - Provide a second way -- in addition to the Emergency Evaluator -- for recovering from recursive errors by trying a parent project of a different kind first. See #handlePrimitiveError:. This allows for more convenient recovery of such errors.
> - For shrinking images, make MVCProject class >> #unloadMVC work again. This also applies to MorphicProject class >> #unloadMorphic in the near future.
>
> =============== Diff against System-mt.826 ===============
>

tty
Reply | Threaded
Open this post in threaded view
|

Re: Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

tty
Have you tried it on the latest 64 bit Trunk?

I tried it on my 64 bit boot and got some errors. If you don't have a 64 bit cogspur running, I will get back to you with the errors later today.




---- On Mon, 09 May 2016 08:20:52 -0400 David T. Lewis <[hidden email]> wrote ----
Marcel,

This is a great batch of improvements, and I think it will make the projects
mechanism much easier to work with in the future.

Thanks!
Dave


On Mon, May 09, 2016 at 11:41:08AM +0000, [hidden email] wrote:

> Marcel Taeumel uploaded a new version of System to project The Trunk:
> http://source.squeak.org/trunk/System-mt.827.mcz
>
> ==================== Summary ====================
>
> Name: System-mt.827
> Author: mt
> Time: 9 May 2016, 1:41:03.140729 pm
> UUID: e7d678e1-e245-0a49-b449-faca6c947a76
> Ancestors: System-mt.826
>
> REFACTORING THE PROJECTS MECHANISM
> - Reduce and clean-up the footprint of new project kinds: saveState/loadState, finalEnterActions:/finalExitActions:, startResourceLoading/abortResourceLoading, aboutToLeaveWorld/aboutToEnterWorld (object events), scheduleProcessForEnter/terminateProcessForLeave
> - Reduce full display restoring to #invalidate and #restore, which gives projects the chance to 1) clear their drawing caches and 2) redraw all their graphical objects.
> - Clean-up project add/remove wrt. sub-projects and the whole project hierarchy. See #isTopProject, #beTopProject, #addProject:, #liftSubProjects, #removeProjectsFromSystem
> - Provide a second way -- in addition to the Emergency Evaluator -- for recovering from recursive errors by trying a parent project of a different kind first. See #handlePrimitiveError:. This allows for more convenient recovery of such errors.
> - For shrinking images, make MVCProject class >> #unloadMVC work again. This also applies to MorphicProject class >> #unloadMorphic in the near future.
>
> =============== Diff against System-mt.826 ===============
>





Reply | Threaded
Open this post in threaded view
|

Re: Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

marcel.taeumel
Hi,

those changes should not affect 64-bits at all. I don't have a 64-bits image at hand.

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

David T. Lewis
In reply to this post by tty
I updated my working trunk image, which is 32 bit Spur with lots of other
stuff loaded. I had no problems, but it's possible we might need to do
something with update maps, so please do report back if you see errors.

I would not expect any issues related to 64 bit image, but you never know.

Dave


> Have you tried it on the latest 64 bit Trunk?
>
> I tried it on my 64 bit boot and got some errors. If you don't have a 64
> bit cogspur running, I will get back to you with the errors later today.
>
>
>
>
> ---- On Mon, 09 May 2016 08:20:52 -0400 David T. Lewis
> &lt;[hidden email]&gt; wrote ----
>
> Marcel,
>
> This is a great batch of improvements, and I think it will make the
> projects
> mechanism much easier to work with in the future.
>
> Thanks!
> Dave
>
>
> On Mon, May 09, 2016 at 11:41:08AM +0000, [hidden email] wrote:
> &gt; Marcel Taeumel uploaded a new version of System to project The Trunk:
> &gt; http://source.squeak.org/trunk/System-mt.827.mcz
> &gt;
> &gt; ==================== Summary ====================
> &gt;
> &gt; Name: System-mt.827
> &gt; Author: mt
> &gt; Time: 9 May 2016, 1:41:03.140729 pm
> &gt; UUID: e7d678e1-e245-0a49-b449-faca6c947a76
> &gt; Ancestors: System-mt.826
> &gt;
> &gt; REFACTORING THE PROJECTS MECHANISM
> &gt; - Reduce and clean-up the footprint of new project kinds:
> saveState/loadState, finalEnterActions:/finalExitActions:,
> startResourceLoading/abortResourceLoading,
> aboutToLeaveWorld/aboutToEnterWorld (object events),
> scheduleProcessForEnter/terminateProcessForLeave
> &gt; - Reduce full display restoring to #invalidate and #restore, which
> gives projects the chance to 1) clear their drawing caches and 2) redraw
> all their graphical objects.
> &gt; - Clean-up project add/remove wrt. sub-projects and the whole project
> hierarchy. See #isTopProject, #beTopProject, #addProject:,
> #liftSubProjects, #removeProjectsFromSystem
> &gt; - Provide a second way -- in addition to the Emergency Evaluator --
> for recovering from recursive errors by trying a parent project of a
> different kind first. See #handlePrimitiveError:. This allows for more
> convenient recovery of such errors.
> &gt; - For shrinking images, make MVCProject class &gt;&gt; #unloadMVC
> work again. This also applies to MorphicProject class &gt;&gt;
> #unloadMorphic in the near future.
> &gt;
> &gt; =============== Diff against System-mt.826 ===============
> &gt;
>
>
>
>
>
>
>
>



tty
Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

tty
Download image and changes.

http://www.mirandabanda.org/files/Cog/SpurImages/
trunk50-64-15711.image

Built my 64 bit VM locally (Thanks Eliot!)

Cog/build.linux64x64/squeak.cog.spur/build

~usr/bin/cogspur64linuxht/squeak -version

5.0-3692  Sat May  7 17:32:00 EDT 2016 gcc 4.8.2 [Production Spur 64-bit VM]
CoInterpreter VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May  7 2016
StackToRegisterMappingCogit VMMaker.oscog-nice.1853 uuid: 3ff63b2d-9dc9-4d6a-b3ff-fb6d37f1085e May  7 2016
VM: r3692 http://www.squeakvm.org/svn/squeak/branches/Cog Date: 2016-05-02 01:12:46 -0400
Plugins: r3688 http://squeakvm.org/svn/squeak/trunk/platforms/Cross/plugins
Linux muriel 3.10.17 #2 SMP Wed Oct 23 16:34:38 CDT 2013 x86_64 AMD Phenom(tm) II X4 965 Processor AuthenticAMD GNU/Linux
plugin path: /home/wm/usr/bin/cogspur64linuxht/lib/squeak/5.0-3692 [default: /home/wm/usr/bin/cogspur64linuxht/lib/squeak/5.0-3692/]



Launch squeak....


Create project, enter it, exit it.

Tools->File List->projects-refactoring-may.cs

'From Squeak5.1 of 30 April 2016 [latest update: #15862] on 1 May 2016 at 6:49:39 pm'!

INSTALL button clicked.

Mouse click->World menu->Save

Debugger launches with title bar:  MessageNotUnderstood: MorphicProject>>isMVC

I don't know how to print the stack trace for you, but the method that threw  DNU is

CrontrolManager class >>shutDown

shutDown
    Project current isMVC
        ifTrue: [Project current invalidate]


Exit the debugger. Attempt to enter the project I created successfully fails and launches a debugger: MessageNotUnderstood: SoundService clas >>stop



Let me know if I can be of help.

cheers.









---- On Mon, 09 May 2016 10:55:57 -0400 David T. Lewis <[hidden email]> wrote ----
I updated my working trunk image, which is 32 bit Spur with lots of other
stuff loaded. I had no problems, but it's possible we might need to do
something with update maps, so please do report back if you see errors.

I would not expect any issues related to 64 bit image, but you never know.


Dave


> Have you tried it on the latest 64 bit Trunk?
>
> I tried it on my 64 bit boot and got some errors. If you don't have a 64
> bit cogspur running, I will get back to you with the errors later today.
>
>
>
>
> ---- On Mon, 09 May 2016 08:20:52 -0400 David T. Lewis
> &lt;[hidden email]&gt; wrote ----
>
> Marcel,
>
> This is a great batch of improvements, and I think it will make the
> projects
> mechanism much easier to work with in the future.
>
> Thanks!
> Dave
>
>
> On Mon, May 09, 2016 at 11:41:08AM +0000, [hidden email] wrote:
> &gt; Marcel Taeumel uploaded a new version of System to project The Trunk:
> &gt; http://source.squeak.org/trunk/System-mt.827.mcz
> &gt;
> &gt; ==================== Summary ====================
> &gt;
> &gt; Name: System-mt.827
> &gt; Author: mt
> &gt; Time: 9 May 2016, 1:41:03.140729 pm
> &gt; UUID: e7d678e1-e245-0a49-b449-faca6c947a76
> &gt; Ancestors: System-mt.826
> &gt;
> &gt; REFACTORING THE PROJECTS MECHANISM
> &gt; - Reduce and clean-up the footprint of new project kinds:
> saveState/loadState, finalEnterActions:/finalExitActions:,
> startResourceLoading/abortResourceLoading,
> aboutToLeaveWorld/aboutToEnterWorld (object events),
> scheduleProcessForEnter/terminateProcessForLeave
> &gt; - Reduce full display restoring to #invalidate and #restore, which
> gives projects the chance to 1) clear their drawing caches and 2) redraw
> all their graphical objects.
> &gt; - Clean-up project add/remove wrt. sub-projects and the whole project
> hierarchy. See #isTopProject, #beTopProject, #addProject:,
> #liftSubProjects, #removeProjectsFromSystem
> &gt; - Provide a second way -- in addition to the Emergency Evaluator --
> for recovering from recursive errors by trying a parent project of a
> different kind first. See #handlePrimitiveError:. This allows for more
> convenient recovery of such errors.
> &gt; - For shrinking images, make MVCProject class &gt;&gt; #unloadMVC
> work again. This also applies to MorphicProject class &gt;&gt;
> #unloadMorphic in the near future.
> &gt;
> &gt; =============== Diff against System-mt.826 ===============
> &gt;
>
>
>
>
>
>
>
>







Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk: System-mt.827.mcz)

marcel.taeumel
Hi, Timothy.

Your image is too old. Trunk update number is #15923 at the moment.

Do not load the change set I gave you several days ago but update from the update stream.

What happens then?

Best,
Marcel
tty
Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk:    System-mt.827.mcz)

tty
Hi Marcel

Where do you get the latest 64 Spur trunk #15923 image?

I have been using Eliots Cog Blog here->http://www.mirandabanda.org/files/Cog/SpurImages/

thx





---- On Mon, 09 May 2016 11:32:12 -0400 marcel.taeumel<[hidden email]> wrote ----
Hi, Timothy.

Your image is too old. Trunk update number is #15923 at the moment.

Do not load the change set I gave you several days ago but update from the
update stream.

What happens then?

Best,
Marcel



--
View this message in context: http://forum.world.st/Project-Refactorings-was-squeak-dev-The-Trunk-System-mt-827-mcz-tp4894057p4894080.html
Sent from the Squeak - Dev mailing list archive at Nabble.com.





Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk:    System-mt.827.mcz)

marcel.taeumel
Hi Timothy,

Dave mentioned that there may be a separate update map for 64-bit images? Even if there is, the update button should load the latest code.

Did you try updating your downloaded image? Via "Squeak" -> "Update" or by do-it "MCMcmUpdater updateFromServer".

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk:    System-mt.827.mcz)

Levente Uzonyi
On Mon, 9 May 2016, marcel.taeumel wrote:

> Hi Timothy,
>
> Dave mentioned that there may be a separate update map for 64-bit images?
> Even if there is, the update button should load the latest code.

No, it's the same.

Levente

>
> Did you try updating your downloaded image? Via "Squeak" -> "Update" or by
> do-it "MCMcmUpdater updateFromServer".
>
> Best,
> Marcel
>
>
>
> --
> View this message in context: http://forum.world.st/Project-Refactorings-was-squeak-dev-The-Trunk-System-mt-827-mcz-tp4894057p4894084.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>
>

tty
Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk:    System-mt.827.mcz)

tty
In reply to this post by marcel.taeumel
Hi Marcel.

Thanks. I ran Squeak->Update Squeak.

I have not loaded the changeset you provided. I assume it is included in the update.

Save image works fine.

The Project >> is MVC method exists.

Thanks for your help.





---- On Mon, 09 May 2016 11:32:12 -0400 marcel.taeumel<[hidden email]> wrote ----
Hi, Timothy.

Your image is too old. Trunk update number is #15923 at the moment.

Do not load the change set I gave you several days ago but update from the
update stream.

What happens then?

Best,
Marcel



--
View this message in context: http://forum.world.st/Project-Refactorings-was-squeak-dev-The-Trunk-System-mt-827-mcz-tp4894057p4894080.html
Sent from the Squeak - Dev mailing list archive at Nabble.com.





Reply | Threaded
Open this post in threaded view
|

Re: Re: Project Refactorings (was: [squeak-dev] The Trunk:    System-mt.827.mcz)

David T. Lewis
In reply to this post by Levente Uzonyi
> On Mon, 9 May 2016, marcel.taeumel wrote:
>
>> Hi Timothy,
>>
>> Dave mentioned that there may be a separate update map for 64-bit
>> images?
>> Even if there is, the update button should load the latest code.
>
> No, it's the same.
>
> Levente
>


Yes, they are definitely the same. I only meant to say that if someone
/does/ find a problem doing a trunk update for some reason, then we would
probably want to check the update maps. But I did not see any problems
myself, and I see no reason for concern.

Dave