[Pharo-dev] Fwd: [Esug-list] 2nd Visualization Contest with Roassal

2014-04-10 Thread Pharo4Stef


Begin forwarded message:

 From: Alexandre Bergel aber...@dcc.uchile.cl
 Subject: [Esug-list] 2nd Visualization Contest with Roassal
 Date: 9 Apr 2014 23:46:52 GMT+2
 To: ESUG Mailing list esug-l...@lists.esug.org
 
 Dear colleagues and friends,
 
 We are happy to announce the Second Visualization Contest with Roassal.
 
 What can I win?
 - 150 euros, sponsored by ObjectProfile
 - a über-cool ObjectProfile T-shirt and some wonderful stickers
 - maximum publicity of your work
 - a nice award certificate, delivered during ESUG
 
 How can I win?
 - you have to produce a visualization with Roassal. You can use the Pharo, 
 VisualWorks or VAST version of Roassal. Here is an example of what we expect 
 http://bit.ly/sunburstDemo or http://bit.ly/GraphET
 - making a video is mandatory. The video will weight the most in our 
 decision. The video could be of any length and has to include your name and 
 say that is was made (partly or completely) with Roassal. No need to talk, 
 just show off!
 - making your code available and easy to install will help you get more points
 
 How can I submit?
 - send the links of your video and other material (if needed) to 
 i...@objectprofile.com Every email you will send to this email will be 
 acknowledged. If you do not receive a 'Ok' from us, it means we haven't read 
 it, in that case send your email again after a few days.
 - the deadline for submitting is August 11, 2014
 
 Mini FAQ?
 - Is the object-profile team allowed to participate? No
 - Should my visualization or code be open source? No need for this, whatever 
 license is fine. However your video has to be public.
 - How can I get more information? Just comment on the facebook 
 https://www.facebook.com/ObjectProfile or using Twitter @ObjectProfile or 
 send email to i...@objectprofile.com or the pharo or moose mailing list
 - What I submit two different videos? Yes, no problem with that
 - How will judge the videos? both the esug community and the object profile 
 team. The Esug community will have 30% of the final grade, object profile the 
 remaining 70%
 
 Cheers,
 The profilers
 
 -- 
 _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
 Alexandre Bergel  http://www.bergel.eu
 ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
 
 
 ___
 Esug-list mailing list
 esug-l...@lists.esug.org
 http://lists.esug.org/mailman/listinfo/esug-list_lists.esug.org



Re: [Pharo-dev] Absolute and relative directories

2014-04-10 Thread Pharo4Stef
on Mac OS

'.' asFileReference absolutePath isAbsolute - true 


 '.' asFileReference absolutePath isAbsolute 

On 10 Apr 2014, at 09:59, Nicolai Hess nicolaih...@web.de wrote:

 Which OS?
 
 for windows:
 '.' asFileReference absolutePath isAbsolute  - true 
 
 
 
 2014-04-10 9:44 GMT+02:00 Damien Cassou damien.cas...@gmail.com:
 '.' asFileReference absolutePath isAbsolute === false
 
 
 Is that desirable? It seems wrong to me.
 
 --
 Damien Cassou
 http://damiencassou.seasidehosting.st
 
 Success is the ability to go from one failure to another without
 losing enthusiasm.
 Winston Churchill
 
 



Re: [Pharo-dev] MongoGB GridFS driver for Pharo

2014-04-10 Thread Pharo4Stef

 Ok, thanks Esteban.
 
 Do you plan to integrate it in Voyage or should we look into it?

The agenda of Esteban is getting full so if you can push a first version this 
will help/

 Any starting point? Never done something similar.
 
 Cheers,
 R



[Pharo-dev] What about a Pharo day in May-June?

2014-04-09 Thread Pharo4Stef
Hi guys

I think that it would be great to organize a gathering/talks/show me your 
stuff/networking day before spring.
What do you think that this idea?
We could host it at Lille.

Stef


Re: [Pharo-dev] bugette in script file-in

2014-04-09 Thread Pharo4Stef
https://pharo.fogbugz.com/default.asp?13191
so that we do not forget


On 09 Apr 2014, at 20:43, Eliot Miranda eliot.mira...@gmail.com wrote:

 Hi All,
 
 again noticed in the simulator:
 
 If one files-in a script via the command line (myvm myimage script.st) then 
 the CodeImporter evaluates an extra empty string after filing n the chunks in 
 the script, which creates an extra empty compiled method and executes it.
 -- 
 best,
 Eliot



[Pharo-dev] Log of actions now on github and in markDown

2014-04-08 Thread Pharo4Stef
Hi guys

I moved the changeLog of Pharo30 (and I will move all the other ones too).

https://github.com/pharo-project/ChangeLogs/blob/master/Pharo30ChangeLogs.md

Stef

PS: do not ask me why…. better markdown than a broken click and play wiki.


Re: [Pharo-dev] Case 13007 Cannot-integrate-a-slice-with-monticello-red-square-in-the-UI

2014-04-08 Thread Pharo4Stef
super!


On 08 Apr 2014, at 02:28, Ben Coman b...@openinworld.com wrote:

 Pharo4Stef wrote:
 
 Hi
 
 I did not check the latest submission but to me putting a mutex on list 
 looks like a bad decision. 
 May be the original forking of the project list is the problem.
 
 What is the point of view of the people that work on the issue.
 Forking to get speed is often a way to pay high price after. Synchronisation 
 points are important. 
 
 Stef
 On 07 Apr 2014, at 18:36, Ben Coman b...@openinworld.com wrote:
 
   
 Priority 2 fix ready for review. Please come pick it apart.
 https://pharo.fogbugz.com/f/cases/13007/Cannot-integrate-a-slice-with-monticello-red-square-in-the-UI
 cheers -ben
 
 
 
 
 
   
 The fix no longer uses the mutex idea.  We've refactored the per-keypress 
 update from 2500ms down to 200ms.  As well the fork has been moved within the 
 calculation method such that object state is not updated until after the 
 calculation, and is then the instance variable assignment is wrapped by a 
 #defer: which should take care of the race condition with the #drawOn:
 
 Its now been reviewed by Nicolai.  Just need one more.
 cheers -ben



Re: [Pharo-dev] Pharo Consortium: New Bronze Member Ta Mère

2014-04-08 Thread Pharo4Stef


 This is great news!
 
 I would vote for “Ta Mère” as the best company name ever. 

In fact I’m not that sure :)
For the non french even if this is normally spelled french it can be 
interpreted as slang as nearly an insult.
So this is quite provocative.

 Alexandre
 
 
 On Apr 8, 2014, at 2:53 PM, Marcus Denker marcus.den...@inria.fr wrote:
 
 The Pharo Consortium is very happy to announce that Ta Mère has joined the 
 Consortium 
 as a Bronze Industrial Member. 
 
 More about
 - Ta Mère: http://tamere.eu
 - Pharo Consortium: http://consortium.pharo.org
 
 
 The goal of the Pharo Consortium is to allow companies to support the 
 ongoing development and future of Pharo.
 
 Individuals can support Pharo via the Pharo Association:  
 http://association.pharo.org
 
 -- 
 _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
 Alexandre Bergel  http://www.bergel.eu
 ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
 
 
 
 




Re: [Pharo-dev] [Vm-dev] Pharo VM bug 11130

2014-04-07 Thread Pharo4Stef

On 06 Apr 2014, at 23:08, Nicolas Cellier nicolas.cellier.aka.n...@gmail.com 
wrote:

 
 2014-04-06 22:29 GMT+02:00 Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com:
 Good news,
 I've managed to make your issue apparently vanish in Pharo3.0 VM.
 For this, I:
 - cleaned up unecessary differences with Eliot's VMMaker.oscog branch,
 - removed unecessary changes ahead of VMMaker.oscog-eem.333 version (those 
 stamped LucFabresse)
 - carefully applied changes from VMMaker.oscog-eem.333 that were not applied
   Note that this version was marked as merged, which it was obviously not
   Please, if you do not fully merge, but just cherry pick some changes, it's 
 better to not merge.
 - upgraded to (merged) VMMaker.oscog-eem.335 because it fixes a snafu
 - integrated the issues for which I emitted a pull request
 
 All this work can be found publicly at 
 https://github.com/nicolas-cellier-aka-nice/pharo-vm/compare/fixMergeWithEliotVersion333
 
 I cannot tell which missing change exactly was the root cause, and I cannot 
 dissect either, but I saw several + LiteralStart missing... Or it could be 
 related to cogit method/block native code generation...
 The changes are most probably here
 https://github.com/nicolas-cellier-aka-nice/pharo-vm/commit/af718618eee516d15c0b362123e3a77c8b6fd2e8
 
 Bad news,
 the structures at beginning of src/cm/cogit.c are generated out of order, and 
 I didn't find the cause yet.
 Once solved, I think my branch should be carefully reviewed and integrated.
 
 
 Haha! this is Class classsuperclassOrder: which break things...
 The order of structures passed on input was mostly good but ruined on 
 output...
 
 The Squeak ChangeSet classsuperclassOrder: does not convert the list of 
 classes asSet, thus somehow preserves provided order.
 The Pharo version does not take so much care it seems...
 Apparently the method was changed again in Pharo3.0, but neither does it 
 preserve order.

Can you publish the change for the superclassOrder: as a bug entry?
we should add a test

 
 After fixing it, compilation went well...
 
 
 
 2014-04-03 4:13 GMT+02:00 Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com:
 
 
 
 
 2014-04-02 23:59 GMT+02:00 Stephan Eggermont step...@stack.nl:
 
 
 Nicolas wrote:
 Hmm, don't waste too much time.
 All these methods are unchanged in github pharo-vm head revision 
 (VMMaker-oscog-StefanMarr.313)
 The cause must be completely different in latest pharo vms.
 
 Uhm, why? They haven’t changed.
 
 Sorry, haven't changed means that there's no diff with the corrected version.
 IOW, the fixes from Eliot have been integrated for a long time already.
 You are seeing another symptom, probably another bug impacting the same code.
 There are many diffs between pharo's and Eliot's branch, but not where you're 
 looking at.
 
 Pharo vms 105 and later no longer crash, but all reliably show the bug.
 And 236 is the last Squeak one to show the problem.
 
 I might take a look at Esteban’s versions from the same time,
 228 and 229
 
 Stephan
 
 
 



Re: [Pharo-dev] WhatsUp from: 2014-04-07 until: 2014-04-20

2014-04-07 Thread Pharo4Stef

On 07 Apr 2014, at 07:00, seas...@rmod.lille.inria.fr wrote:

 Hi! We're sending this automatic email twice a month, to give the community 
 an opportunity to easily know what's happening and to coordinate efforts.  
 Just answer informally, and feel free to spawn discussions thereafter!
 
 ### Here's what I've been up to since the last WhatsUp:
 


- Presented Pharo to a well known group doing HCI in france. Kind of planting 
seed.

- Working on new chapter or old chapters

- Preparing release

 
 ### What's next, until 2014-04-20 (*):
 
 - $NEXT_STEPS_TOWARDS_WORLD_DOMINATION
 
 (*) we'll be expecting results by then ;)
 




Re: [Pharo-dev] ghost windows

2014-04-07 Thread Pharo4Stef
Yes it happens to me form time to time but it is difficult to debug the 
situation. 
On 07 Apr 2014, at 08:53, Johan Brichau jo...@inceptive.be wrote:

 Hi there,
 
 I often get in a situation where 'ghost windows' remain in the Pharo window 
 (see screenshot).
 These windows are closed (see taskbar) and I cannot select nor click these 
 ghost windows to remove them.
 
 Is there a way to remove them programmatically?
 They cause visual clutter when working with multiple real windows and I do 
 not want to rebuild an entire development image each time this occurs.
 
 Though this is in Pharo3, I think I occassionally had these in Pharo1.4 as 
 well.
 
 cheers
 Johan
 
 PharoScreenshot.png




Re: [Pharo-dev] [Vm-dev] Pharo VM bug 11130

2014-04-07 Thread Pharo4Stef
 
 
 
 Yes, I did:
 https://pharo.fogbugz.com/f/cases/13180/Class-class-superclassOrder-should-preserve-classes-order
  
 
 Of course, those kind of expectations should be asserted by a test (I didn't).


TX!
 
 
 After fixing it, compilation went well...
 
 
 
 2014-04-03 4:13 GMT+02:00 Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com:
 
 
 
 
 2014-04-02 23:59 GMT+02:00 Stephan Eggermont step...@stack.nl:
 
 
 Nicolas wrote:
 Hmm, don't waste too much time.
 All these methods are unchanged in github pharo-vm head revision 
 (VMMaker-oscog-StefanMarr.313)
 The cause must be completely different in latest pharo vms.
 
 Uhm, why? They haven’t changed.
 
 Sorry, haven't changed means that there's no diff with the corrected version.
 IOW, the fixes from Eliot have been integrated for a long time already.
 You are seeing another symptom, probably another bug impacting the same code.
 There are many diffs between pharo's and Eliot's branch, but not where 
 you're looking at.
 
 Pharo vms 105 and later no longer crash, but all reliably show the bug.
 And 236 is the last Squeak one to show the problem.
 
 I might take a look at Esteban’s versions from the same time,
 228 and 229
 
 Stephan



Re: [Pharo-dev] Case 13007 Cannot-integrate-a-slice-with-monticello-red-square-in-the-UI

2014-04-07 Thread Pharo4Stef
Hi

I did not check the latest submission but to me putting a mutex on list looks 
like a bad decision. 
May be the original forking of the project list is the problem.

What is the point of view of the people that work on the issue.
Forking to get speed is often a way to pay high price after. Synchronisation 
points are important. 

Stef
On 07 Apr 2014, at 18:36, Ben Coman b...@openinworld.com wrote:

 Priority 2 fix ready for review. Please come pick it apart.
 https://pharo.fogbugz.com/f/cases/13007/Cannot-integrate-a-slice-with-monticello-red-square-in-the-UI
 cheers -ben
 




Re: [Pharo-dev] Build process of Pharo image

2014-04-06 Thread Pharo4Stef

On 05 Apr 2014, at 21:48, Hilaire Fernandes hilaire.fernan...@gmail.com wrote:

 Still, I do not get why the newer packages are not loadable with
 configurations instead of been carved in the image. Why can't packages
 developers provide such configurations?

sure give us a list?
- RB
- Nautilus
- spec 
- Keychain
- key mapping
- smart suggestions
- …..
- and many more

do you want an image by default without any tools? I do but we need time.

So what we want to do is
- to have a core mage that the one people use is based on the core + 
the loading of the components
and now we are arriving to this situation because before we did not 
have 
command-line
jenkins
- for Pharo 4.0 we will get there. Now since it is not easy to unload 
tools, and I’m busy with other aspects of work 
we could not do it the way you describe it but this is what we want.

= why did we fail
ok you have a core and some nice configurations
then a guy report a bug and a fixe
from this 
core and configuration we should create a new core AND correctly 
loading configurations and this is not fully automated yet.
have a look at Pharo/SystemConfigurations
You take unReloader you run the scripts and you load the configurations.
when they fail you fix them and restart. I have been doing that a lot 
and we will continue but this is booring.
So we should build tools and so far I do not see many people 
**Helping** beside pavel on this task

so you are right we are concious about it but no resources. 

 Why don't we have an image
 without those packages? Then public images built with. Is it not what
 Jenkins is supposed to do?
 I am afraid the situation looks like Etoys carved in Squeak.

We are fighting against it.
 
 Hilaire
 
 Le 05/04/2014 18:32, Marcus Denker a écrit :
 Yes, we need to look into a more modular build in Pharo4… to not just load 
 updates
 on the server but instead build from a small core (and possibly even from a 
 bootstrap).
 
 -- 
 Dr. Geo http://drgeo.eu
 
 




Re: [Pharo-dev] MC diffs are seriously broken in Pharo2.0

2014-04-06 Thread Pharo4Stef

On 06 Apr 2014, at 17:36, Nicolas Cellier nicolas.cellier.aka.n...@gmail.com 
wrote:

 I'm trying to fix some Pharo VM issues (11330), but have awfully bad 
 experience with Pharo2.0 tools.
 
 The autocompletion stuff is a joke, it moves the input cursor randomly and 
 spoils my input. That's the first thing I disable.
Do you have the same with 30?
Because I know that there were some problems when we merged OC and EC but this 
is nearly more than a year ago.

 The pharo's PolyMorphDiffTool is good looking but awfully slw
 It clearly does not scale (10 minutes or so to diff Eliot's branch) so I 
 reverted to the old diff tool.
 But of course, someone broke MCMethodDefinitionsummary (gratuitously?) and 
 I had to revert this method to have class names displayed again.

Nicolas this is probably not gratuitoulsy and you know it. Doing imply doing 
mistakes. Give me a fully tested system and you will see that we
will not break it.

So can you open a bug entry so that we do not forget to fix it. 

 But worse than all, there are insane caches operating in MCVersion that drove 
 me crazy.
 Here is the scenario:
 1) I diff working copy against package.branchA-version.mcz
 2) I cherry pick and install a few methods
 3) I diff against package.branchA-version.mcz again to check if I missed 
 smthing
 4) Huh? it looks like my cherry pick have not been installed???
 Yes they were installed, but the completePackageSnapshot has been cached in 
 MCVersion!!!
 What a mistake! The working copy is going to evolve, caching a snapshot of it 
 is a DUMB thing.It means that methods that I further change in the working 
 copy will NEVER be taken into account next time I'll do a diff.
 So I had to change MCVersionchanges
 ^ self completeSnapshot patchRelativeToBase: self 
 loadCompletePackageSnapshot
 
 This is so broken that I have to report here.

Thanks this is the best things to do. 
You see probably one guy tried to speed up the system and this happens. 

 Note that I did not check if symptoms are still in Pharo 3.0, but the working 
 copy scnapshot cache still is for sure!
 
 Guys, it makes me wonder, who is eating the dog food?

We are constantly using Pharo alpha the complete moose and pharo 

 Did anyone progress into developing VM in Pharo 3.0, because if I must eat 
 it, I'd prefer the freshest ;)

I guess so. Esteban does not look like using Pharo2.0 but I will let him reply.

 Or if I fix some more bug, I'd like my efforts to not apply to an obsolete 
 version.

Us too. :)

Thanks for reporting problems. Can you open bug entries so that we can handle 
these problems?

Stef






Re: [Pharo-dev] Puzzled

2014-04-05 Thread Pharo4Stef
In fact there was an error in the debugger code = endless loop in another 
thread it was strange because the test was not returning 


On 05 Apr 2014, at 19:30, Eliot Miranda eliot.mira...@gmail.com wrote:

 Hi Stef,
 
 I think it is because forContext:priority: does not schedule the process, 
 just creates it.  The debugger code steps the process but after stepping the 
 process is still not runnable.  So the process terminate is unnecessary; the 
 process should not have been added to the run queue and should juts be GCed.  
 Since it is not the question is what refers to the process after the test has 
 run.
 
 To debug, I would rewrite the test as such:
 
 testBasic
 | process debugger printedString |
 process := Process
 forContext: [ 20 factorial ] asContext
 priority: Processor activePriority.
 
 debugger := Smalltalk tools debugger new
 process: process
 controller: nil
 context: context.
 debugger stack expand.
 
 self assert: debugger stack selectedIndex = 1.
 printedString := OpalCompiler isActive
 ifTrue: [   '[ 20 factorial ] in DebuggerTesttestBasic']
 ifFalse: [  '[...] in DebuggerTesttestBasic' ].
 self assert: debugger stack selectedItem printString = printedString.
 
 debugger send.
 debugger send.
 self assert: debugger code getText = (Integer#factorial) sourceCode.
 self assert: debugger stack selectedItem printString =  
 'SmallInteger(Integer)factorial'.
 
 ^process
 
 and then chase pointers on the result to see what is holding onto the 
 process.  Sicne the process is never runnable there's no need to set its 
 priority to anything special.
 
 However, one should also be able to replace the process terminate with 
 process resume to get it to run to termination (provided its priority stays 
 at Processor userInterruptPriority).
 
 HTH
 
 
 On Thu, Apr 3, 2014 at 10:41 AM, Pharo4Stef pharo4s...@free.fr wrote:
 Hi guys
 
 I need your brain cells.
 
 When I execute the test
 
 testBasic
 | context process debugger printedString |
 context := [ 20 factorial ] asContext.
 
 process := Process
 forContext: context
 priority: Processor userInterruptPriority.
 
 debugger := Smalltalk tools debugger new
 process: process
 controller: nil
 context: context.
 debugger stack expand.
 
 self assert: debugger stack selectedIndex = 1.
 printedString := OpalCompiler isActive
 ifTrue: [   '[ 20 factorial ] in DebuggerTesttestBasic']
 ifFalse: [  '[...] in DebuggerTesttestBasic' ].
 self assert: debugger stack selectedItem printString = printedString.
 
 debugger send.
 debugger send.
 self assert: debugger code getText = (Integer#factorial) sourceCode.
 self assert: debugger stack selectedItem printString =  
 'SmallInteger(Integer)factorial'.
 
 two times my image (latest get totally unusable).
 I thought that may be the process should be terminated
 so I added
 
 process terminate
 
 But nothing changes. I tried to debug the code but not chance.
 I tried self halt after [ 20 factorial ] asContext.
 
 I tried to execute the beginning in a workspace and not as a test to 
 eliminate problem.
 But again no chance.
 
 
 So did I miss something obvious?
 
 Stef
 
 
 
 
 
 
 
 
 -- 
 best,
 Eliot



Re: [Pharo-dev] [Moose-dev] Re: Re: Re: Fwd: Font problem is still there

2014-04-04 Thread Pharo4Stef
Igor 

I was wondering the following: ? But TextStyle is not about strikefont?

Stef

On 04 Apr 2014, at 02:55, Igor Stasenko siguc...@gmail.com wrote:

 Okay, i think i got it..
 
 Here is what happens:
 - the font size is usually specified in points, not x@y points, but 
 typographical points,
 which is 
 1/72 inch
 
 
 TextStyle pointsToPixels: 14
 
 TextStyle pointsToPixels: 14 = 18.668
 
 pointsToPixels: points
 ^points * self pixelsPerInch / 72.0
 
 
 but in Athens, i , stupid idiot, completely forgot about that, 
 and use point size directly, to scale up font ..
 but the point is that this scaling performed in font units (EMs).
 
 so, to actually scale font correctly, i must use same TextStyle 
 pointsToPixels: .. 
 as Freetype package using..
 
 there is one caveat, that if you really want to see exactly , say 16 points 
 sized font on your screen,
 it is not possible without knowing the display resolution - how many pixels 
 in one inch (hence
 #pixelsPerInch ).
 Unfortunately, our VMs don't give us a way to determine DPI of display..
 and so, it is always 96 :/
  
 pheww
 
 fromFreetypeFont: aFont cairoFace: face
 .
 
   -  fontMatrix scaleBy: aFont pointSize.
 
  +  fontMatrix scaleBy: (TextStyle pointsToPixels: aFont pointSize).
 
 problem solved ... (i hope) :)
 
 -- 
 Best regards,
 Igor Stasenko.




Re: [Pharo-dev] [Moose-dev] Re: Re: Re: Fwd: Font problem is still there

2014-04-04 Thread Pharo4Stef
 
 I don't think there is any way for the VM to know the #pixelsPerInch of the
 display, regardless of the display resolution.

There is no api in the OS for that? It would be really strange that we cannot 
know such information.

 Maybe that implies that some
 calibration would be needed in the image to relate font points to the
 physical display.
 
 Dave
 




Re: [Pharo-dev] Puzzled

2014-04-04 Thread Pharo4Stef
Thanks camille apparently I restarted from a clean image but may be I merged.
Could you try loading the latest version of 12460 and let me know?

On 04 Apr 2014, at 09:21, Camille Teruel camille.ter...@gmail.com wrote:

 I tried on my machine in latest image and no matter how many times I run this 
 test, this test still passes and I don't notice any slowdown nor image 
 freeze. 
 But I see the hanging processes.
 Adding 'process terminate' at the end works for me.
 
 
 On 3 avr. 2014, at 19:41, Pharo4Stef pharo4s...@free.fr wrote:
 
 Hi guys
 
 I need your brain cells.
 
 When I execute the test 
 
 testBasic
  | context process debugger printedString |
  context := [ 20 factorial ] asContext.
 
  process := Process 
  forContext: context
  priority: Processor userInterruptPriority.
 
  debugger := Smalltalk tools debugger new
  process: process
  controller: nil
  context: context.
  debugger stack expand.
 
  self assert: debugger stack selectedIndex = 1.
  printedString := OpalCompiler isActive 
  ifTrue: [   '[ 20 factorial ] in DebuggerTesttestBasic']
  ifFalse: [  '[...] in DebuggerTesttestBasic' ]. 
  self assert: debugger stack selectedItem printString = printedString.
  
  debugger send.
  debugger send.
  self assert: debugger code getText = (Integer#factorial) sourceCode.
  self assert: debugger stack selectedItem printString =  
 'SmallInteger(Integer)factorial'.
 
 two times my image (latest get totally unusable). 
 I thought that may be the process should be terminated 
 so I added 
 
  process terminate
 
 But nothing changes. I tried to debug the code but not chance.
 I tried self halt after [ 20 factorial ] asContext.
 
 I tried to execute the beginning in a workspace and not as a test to 
 eliminate problem.
 But again no chance.
 
 
 So did I miss something obvious?
 
 Stef
  
 
 
 
 
 
 




[Pharo-dev] font folder on win7

2014-04-04 Thread Pharo4Stef
Hi guys


I’m trying to understand why people get problems with fonts on windows.
The logic in the font manager is 

 'cdefghijklmnopqrstuvwxyz' 
et pour chaque disc dans  '\windows\fonts' '\winnt\fonts


but I wonder if the location of font on windows 7 is correct.
Can anybody with a window 7 report where the fonts are located?

stef


Re: [Pharo-dev] font folder on win7

2014-04-04 Thread Pharo4Stef
thanks!

On 04 Apr 2014, at 19:44, Vincent BLONDEAU 
vincent.blond...@polytech-lille.net wrote:

 The best is to use environment variables :
 Under W7 it is :
 %SYSTEMROOT%\Fonts
  
 But you can get it under Pharo:
 PlatformResolver forCurrentPlatform directoryFromEnvVariableNamed: 
 'SYSTEMROOT'
  
 Vincent
  
 De : Pharo-dev [mailto:pharo-dev-boun...@lists.pharo.org] De la part de Chris 
 Cunningham
 Envoyé : vendredi 4 avril 2014 19:09
 À : Pharo Development List
 Objet : Re: [Pharo-dev] font folder on win7
  
 It is located in \Windows\Fonts (and window is case-agnostic, so 
 \windows\fonts works as well)
  
 -cbc
  
 
 On Fri, Apr 4, 2014 at 9:48 AM, Pharo4Stef pharo4s...@free.fr wrote:
 Hi guys
 
 
 I’m trying to understand why people get problems with fonts on windows.
 The logic in the font manager is
 
  'cdefghijklmnopqrstuvwxyz'
 et pour chaque disc dans  '\windows\fonts' '\winnt\fonts
 
 
 but I wonder if the location of font on windows 7 is correct.
 Can anybody with a window 7 report where the fonts are located?
 
 stef



Re: [Pharo-dev] font folder on win7

2014-04-04 Thread Pharo4Stef
This is strange because the system is looking for the correct location but does 
not find them.

On 04 Apr 2014, at 19:09, Chris Cunningham cunningham...@gmail.com wrote:

 It is located in \Windows\Fonts (and window is case-agnostic, so 
 \windows\fonts works as well)
 
 -cbc
 
 
 On Fri, Apr 4, 2014 at 9:48 AM, Pharo4Stef pharo4s...@free.fr wrote:
 Hi guys
 
 
 I’m trying to understand why people get problems with fonts on windows.
 The logic in the font manager is
 
  'cdefghijklmnopqrstuvwxyz'
 et pour chaque disc dans  '\windows\fonts' '\winnt\fonts
 
 
 but I wonder if the location of font on windows 7 is correct.
 Can anybody with a window 7 report where the fonts are located?
 
 stef
 



Re: [Pharo-dev] Suggested Syntax Highlighting Features for Beginners

2014-04-04 Thread Pharo4Stef

On 04 Apr 2014, at 19:26, J.F. Rick s...@je77.com wrote:

 On Fri, Apr 4, 2014 at 6:41 PM, Ben Coman b...@openinworld.com wrote:
 For assignment, I would say bold both := and the variable being assigned to.
 
 I like that a lot, especially since it draws the two critical elements of 
 variable and assignment together. On a minor note, both := and = are 
 currently the same color: black. That only furthers the := is a message 
 misconception. It might be worthwhile also giving := its own color, given its 
 uniqueness.



yes this would be nice. And a fix for that. 

Did you also see that what I like is to make a distinction between a possible 
selector and a wrong one? because this is nice.


  
 Underlining sounds interesting, but there are a few choices:
 a. nested underlining - self someMessage: (self otherMessage: arg 1 and: 
 arg2) and: arg3
 b. non-nested underlining - only underline #otherMessage:and: and not 
 #someMessage:and:
 c. dynamically underline only message where cursor is located.
 
 I think you could do nested underlining in the same way that nested blocks 
 and parentheses work. someMessage: and the second and: are underlined in 
 black. otherMessage: and the first and: are underlined in green. That way 
 nesting is clear. This would also be useful for code with nested 
 conditionals, probably the most common occurrence of nested multi-part 
 messages. I also like (c) as a minimally intrusive change that could help 
 novices when they write code. It has the disadvantage that novices couldn't 
 look at a piece of foreign code and get where the multi-part messages were. 
 
 Cheers,
 
 Jeff
 
 -- 
 Jochen Jeff Rick, Ph.D.
 http://www.je77.com/
 Skype ID: jochenrick



[Pharo-dev] left over when resizing window

2014-04-03 Thread Pharo4Stef
Hi all

do you see a glitch when I resize a window? 
Because it is not really nice.
Stef



Re: [Pharo-dev] left over when resizing window

2014-04-03 Thread Pharo4Stef

On 03 Apr 2014, at 16:42, Esteban Lorenzano esteba...@gmail.com wrote:

 that happens in retina displays. 
 I’m aware… no time yet to fix it :(

esteban do you think that this is related to the VM?
I would find that strange.

 
 Esteban, still on holidays
 
 On 03 Apr 2014, at 11:32, Serge Stinckwich serge.stinckw...@gmail.com wrote:
 
 This is this kind of glitches (see screenshot) ?
 I already talk about that some months ago in the mailing-list.
 
 On Thu, Apr 3, 2014 at 3:11 PM, Tudor Girba tu...@tudorgirba.com wrote:
 Funny that you do not see the same issues.
 
 I reproduce it consistently like this:
 - On 10.9.2 on a MacBook Pro with Retina display
 - Download the latest Pharo 3 and the latest VM and run it:
 curl -L get.pharo.org/30+vmLatest | sh
 - Open a workspace or any other window and drag it around
 
 
 Doru
 
 
 Doru
 
 
 On Thu, Apr 3, 2014 at 3:04 PM, Camille Teruel camille.ter...@gmail.com
 wrote:
 
 
 On 3 avr. 2014, at 14:58, Tudor Girba tu...@tudorgirba.com wrote:
 
 Hi,
 
 Here it is on the very latest of Pharo 3:
 
 https://www.dropbox.com/s/hfi5j64e9kyim14/Screenshot%202014-04-03%2014.56.33.png
 
 
 Ok, now I remember that I had that once several months ago, but I don't
 remember under which setting.
 I solved it with 'start drawing/stepping again' as Sergi said.
 We should find a way to reproduce it.
 
 
 Pharo3.0 Latest update: #30811
 'NBCoInterpreter NativeBoost-CogPlugin-GuillermoPolito.19 uuid:
 acc98e51-2fba-4841-a965-2975997bba66 Mar 20 2014
 NBCogit NativeBoost-CogPlugin-GuillermoPolito.19 uuid:
 acc98e51-2fba-4841-a965-2975997bba66 Mar 20 2014
 https://github.com/pharo-project/pharo-vm.git Commit:
 6e08ad296c0df6c1a4215a5dada5380c897dc2fe Date: 2014-03-17 14:45:12 +0100 
 By:
 Esteban Lorenzano esteba...@gmail.com Jenkins build #14812'
 
 
 Cheers,
 Doru
 
 
 
 
 On Thu, Apr 3, 2014 at 2:33 PM, Camille Teruel camille.ter...@gmail.com
 wrote:
 
 
 On 3 avr. 2014, at 14:21, Tudor Girba tu...@tudorgirba.com wrote:
 
 It happens all the time on Mac. It is not so obvious in the default Pharo
 image because of the background. In the Moose image, the background is 
 white
 and you see it immediately when resizing or dragging a window.
 
 
 I tried with many windows in the latest Moose image and I still see
 nothing.
 I'm on mavericks.
 
 Smalltalk vm version --
 
 'NBCoInterpreter NativeBoost-CogPlugin-EstebanLorenzano.18 uuid:
 a53445f9-c0c0-4015-97a3-be7db8d9ed6b Mar 13 2013
 NBCogit NativeBoost-CogPlugin-EstebanLorenzano.18 uuid:
 a53445f9-c0c0-4015-97a3-be7db8d9ed6b Mar 13 2013
 git://gitorious.org/cogvm/blessed.git Commit:
 412abef33cbed05cf1d75329e451d71c0c6aa5a7 Date: 2013-03-13 17:48:50 +0100 
 By:
 Esteban Lorenzano esteba...@gmail.com Jenkins build #14535
 '
 
 
 Doru
 
 
 On Thu, Apr 3, 2014 at 2:16 PM, Camille Teruel camille.ter...@gmail.com
 wrote:
 
 
 On 3 avr. 2014, at 13:54, Pharo4Stef pharo4s...@free.fr wrote:
 
 Hi all
 
 do you see a glitch when I resize a window?
 Because it is not really nice.
 
 Nope, nothing in latest image at least.
 Does it happen in a fresh image?
 
 Stef
 
 
 
 
 
 
 --
 www.tudorgirba.com
 
 Every thing has its own flow
 
 
 
 
 
 --
 www.tudorgirba.com
 
 Every thing has its own flow
 
 
 
 
 
 --
 www.tudorgirba.com
 
 Every thing has its own flow
 
 
 
 -- 
 Serge Stinckwich
 UCBN  UMI UMMISCO 209 (IRD/UPMC)
 Every DSL ends up being Smalltalk
 http://www.doesnotunderstand.org/
 Screen Shot 2014-04-03 at 16.30.05.png
 
 




[Pharo-dev] Puzzled

2014-04-03 Thread Pharo4Stef
Hi guys

I need your brain cells.

When I execute the test 

testBasic
| context process debugger printedString |
context := [ 20 factorial ] asContext.

process := Process 
forContext: context
priority: Processor userInterruptPriority.

debugger := Smalltalk tools debugger new
process: process
controller: nil
context: context.
debugger stack expand.

self assert: debugger stack selectedIndex = 1.
printedString := OpalCompiler isActive 
ifTrue: [   '[ 20 factorial ] in DebuggerTesttestBasic']
ifFalse: [  '[...] in DebuggerTesttestBasic' ]. 
self assert: debugger stack selectedItem printString = printedString.

debugger send.
debugger send.
self assert: debugger code getText = (Integer#factorial) sourceCode.
self assert: debugger stack selectedItem printString =  
'SmallInteger(Integer)factorial'.

two times my image (latest get totally unusable). 
I thought that may be the process should be terminated 
so I added 

process terminate

But nothing changes. I tried to debug the code but not chance.
I tried self halt after [ 20 factorial ] asContext.

I tried to execute the beginning in a workspace and not as a test to eliminate 
problem.
But again no chance.


So did I miss something obvious?

Stef







Re: [Pharo-dev] Puzzled

2014-04-03 Thread Pharo4Stef

even using ensure: to make sure that the process is terminated it is not really 
working.
I have the impression that there is a problem and that the tests does not 
really finishes but this is really difficult to debug.

 Hi guys
 
 I need your brain cells.
 
 When I execute the test 
 
 testBasic
   | context process debugger printedString |
   context := [ 20 factorial ] asContext.
 
   process := Process 
   forContext: context
   priority: Processor userInterruptPriority.
 
   debugger := Smalltalk tools debugger new
   process: process
   controller: nil
   context: context.
   debugger stack expand.
 
   self assert: debugger stack selectedIndex = 1.
   printedString := OpalCompiler isActive 
   ifTrue: [   '[ 20 factorial ] in DebuggerTesttestBasic']
   ifFalse: [  '[...] in DebuggerTesttestBasic' ]. 
   self assert: debugger stack selectedItem printString = printedString.
   
   debugger send.
   debugger send.
   self assert: debugger code getText = (Integer#factorial) sourceCode.
   self assert: debugger stack selectedItem printString =  
 'SmallInteger(Integer)factorial'.
 
 two times my image (latest get totally unusable). 
 I thought that may be the process should be terminated 
 so I added 
 
   process terminate
 
 But nothing changes. I tried to debug the code but not chance.
 I tried self halt after [ 20 factorial ] asContext.
 
 I tried to execute the beginning in a workspace and not as a test to 
 eliminate problem.
 But again no chance.
 
 
 So did I miss something obvious?
 
 Stef
   
 
 
 
 




Re: [Pharo-dev] Puzzled

2014-04-03 Thread Pharo4Stef
When I use 

| context process |
context := [ 20 factorial ] asContext.

process := Process 
forContext: context
priority: Processor userInterruptPriority.
[  
debugger := Smalltalk tools debugger new
process: process
controller: nil
context: context.
debugger stack expand.

] ifCurtailed: [ process terminate]

I do not get any extra process hanging around.

now if I do 



| context process |
context := [ 20 factorial ] asContext.

process := Process 
forContext: context
priority: Processor userInterruptPriority.
[  
debugger := Smalltalk tools debugger new
process: process
controller: nil
context: context.
debugger stack expand.
Transcript show: debugger stack selectedIndex

] ifCurtailed: [ process terminate]


But then when I do 


| context process debuggerg |
context := [ 20 factorial ] asContext.

process := Process 
forContext: context
priority: Processor userInterruptPriority.
[  
debugger := Smalltalk tools debugger new
process: process
controller: nil
context: context.
debugger stack expand.
Transcript show: debugger stack selectedIndex; cr.
] ensure: [ process terminate]

I get processes stuck trying to open the log fiel ro something like that.


Now I do not understand because when I ask the setter to stack (to get what is 
set in this variable) the system 
tells me that there is no store. 

Stef



On 03 Apr 2014, at 20:49, Pharo4Stef pharo4s...@free.fr wrote:

 
 even using ensure: to make sure that the process is terminated it is not 
 really working.
 I have the impression that there is a problem and that the tests does not 
 really finishes but this is really difficult to debug.
 
 Hi guys
 
 I need your brain cells.
 
 When I execute the test 
 
 testBasic
  | context process debugger printedString |
  context := [ 20 factorial ] asContext.
 
  process := Process 
  forContext: context
  priority: Processor userInterruptPriority.
 
  debugger := Smalltalk tools debugger new
  process: process
  controller: nil
  context: context.
  debugger stack expand.
 
  self assert: debugger stack selectedIndex = 1.
  printedString := OpalCompiler isActive 
  ifTrue: [   '[ 20 factorial ] in DebuggerTesttestBasic']
  ifFalse: [  '[...] in DebuggerTesttestBasic' ]. 
  self assert: debugger stack selectedItem printString = printedString.
  
  debugger send.
  debugger send.
  self assert: debugger code getText = (Integer#factorial) sourceCode.
  self assert: debugger stack selectedItem printString =  
 'SmallInteger(Integer)factorial'.
 
 two times my image (latest get totally unusable). 
 I thought that may be the process should be terminated 
 so I added 
 
  process terminate
 
 But nothing changes. I tried to debug the code but not chance.
 I tried self halt after [ 20 factorial ] asContext.
 
 I tried to execute the beginning in a workspace and not as a test to 
 eliminate problem.
 But again no chance.
 
 
 So did I miss something obvious?
 
 Stef
  
 
 
 
 
 
 




Re: [Pharo-dev] Puzzled

2014-04-03 Thread Pharo4Stef

| context process debugger  |
context := [ 20 factorial ] asContext.

process := Process 
forContext: context
priority: Processor userInterruptPriority.
[  
debugger := Smalltalk tools debugger new
process: process
controller: nil
context: context.
Transcript show: debugger stack class ; cr
] ensure: [ process terminate]


When I look at some of the stuck processes

SpecDebuggerinitializePresenter
super initializePresenter.
self flag: 'some of this logic could be moved to the stack widget'.
self flag: 'The toolbar should not be updated when the list changes, 
but when an action is perormed.'.
self stack whenListChanged: [ :aList |
aList isEmpty ifFalse: [ self stack setSelectedItem: aList 
first ].
Updating the toolbar will result in changing the button 
widgets.
If the widget hasn't been opened, there will be no spec, which 
leads to an error.
self spec ifNotNil: [
self updateToolbar ] ].

self stack whenSelectedItemChanged: [:aContext |
self updateCodeFromContext: aContext.
self updateInspectorsFromContext: aContext.
self stack updateForSelectionChanged ].

self contextInspector initializeAutoRefresh.

^^^

And initializeAutoRefresh does not exist in the latest image.
I have no idea why the debugger may work may be this method is not used at all. 

Can somebody else confirm because I have the impression to fall into a rat nest.
stef 


[Pharo-dev] endless number of call to initializePresenter when opening a debugger!!!

2014-04-03 Thread Pharo4Stef
Can one of you do the following experience to let me know if I’m totally mad or 
not?

1 - Add Transcript show:'initializePresenter'; cr.
in the SpecDebuggerinitializePresenter
as below:

initializePresenter
super initializePresenter.
Transcript show:'initializePresenter'; cr.
self flag: 'some of this logic could be moved to the stack widget'.
self flag: 'The toolbar should not be updated when the list changes, 
but when an action is perormed.'.
self stack whenListChanged: [ :aList |
aList isEmpty ifFalse: [ self stack setSelectedItem: aList 
first ].
Updating the toolbar will result in changing the button 
widgets.
If the widget hasn't been opened, there will be no spec, which 
leads to an error.
self spec ifNotNil: [
self updateToolbar ] ].

self stack whenSelectedItemChanged: [:aContext |
self updateCodeFromContext: aContext.
self updateInspectorsFromContext: aContext.
self stack updateForSelectionChanged ].

self contextInspector initializeAutoRefresh.

2- open a transcript 

3- open a workspace and execute 1 halt. 

I get a really large number of initializePresenter in the transcript





Re: [Pharo-dev] endless number of call to initializePresenter when opening a debugger!!!

2014-04-03 Thread Pharo4Stef
Indeed this is normal because initializeAutoRefresh does not exist!
So a nice endless loop.


On 03 Apr 2014, at 21:21, Pharo4Stef pharo4s...@free.fr wrote:

 Can one of you do the following experience to let me know if I’m totally mad 
 or not?
 
 1 - Add   Transcript show:'initializePresenter'; cr.
 in the SpecDebuggerinitializePresenter
 as below:
 
 initializePresenter
   super initializePresenter.
   Transcript show:'initializePresenter'; cr.
   self flag: 'some of this logic could be moved to the stack widget'.
   self flag: 'The toolbar should not be updated when the list changes, 
 but when an action is perormed.'.
   self stack whenListChanged: [ :aList |
   aList isEmpty ifFalse: [ self stack setSelectedItem: aList 
 first ].
   Updating the toolbar will result in changing the button 
 widgets.
   If the widget hasn't been opened, there will be no spec, which 
 leads to an error.
   self spec ifNotNil: [
   self updateToolbar ] ].
 
   self stack whenSelectedItemChanged: [:aContext |
   self updateCodeFromContext: aContext.
   self updateInspectorsFromContext: aContext.
   self stack updateForSelectionChanged ].
   
   self contextInspector initializeAutoRefresh.
 
 2- open a transcript 
 
 3- open a workspace and execute 1 halt. 
 
 I get a really large number of initializePresenter in the transcript
 
 
 




Re: [Pharo-dev] endless number of call to initializePresenter when opening a debugger!!!

2014-04-03 Thread Pharo4Stef
And now I understand because we forgot to remove this message sent when 
removing the polling behavior of inspector.

On 03 Apr 2014, at 21:23, Pharo4Stef pharo4s...@free.fr wrote:

 Indeed this is normal because initializeAutoRefresh does not exist!
 So a nice endless loop.
 
 
 On 03 Apr 2014, at 21:21, Pharo4Stef pharo4s...@free.fr wrote:
 
 Can one of you do the following experience to let me know if I’m totally mad 
 or not?
 
 1 - Add  Transcript show:'initializePresenter'; cr.
 in the SpecDebuggerinitializePresenter
 as below:
 
 initializePresenter
  super initializePresenter.
  Transcript show:'initializePresenter'; cr.
  self flag: 'some of this logic could be moved to the stack widget'.
  self flag: 'The toolbar should not be updated when the list changes, 
 but when an action is perormed.'.
  self stack whenListChanged: [ :aList |
  aList isEmpty ifFalse: [ self stack setSelectedItem: aList 
 first ].
  Updating the toolbar will result in changing the button 
 widgets.
  If the widget hasn't been opened, there will be no spec, which 
 leads to an error.
  self spec ifNotNil: [
  self updateToolbar ] ].
 
  self stack whenSelectedItemChanged: [:aContext |
  self updateCodeFromContext: aContext.
  self updateInspectorsFromContext: aContext.
  self stack updateForSelectionChanged ].
  
  self contextInspector initializeAutoRefresh.
 
 2- open a transcript 
 
 3- open a workspace and execute 1 halt. 
 
 I get a really large number of initializePresenter in the transcript
 
 
 
 
 




Re: [Pharo-dev] Puzzled

2014-04-03 Thread Pharo4Stef
ok now I understand: an endless loop inside the debugger creation. I do not 
understand why we did not address it with clement
because we open the debugger and other when we fixed the logic of the inspector 
(to avoid polling refresh).

Stef
On 03 Apr 2014, at 21:13, Pharo4Stef pharo4s...@free.fr wrote:

 
 | context process debugger  |
 context := [ 20 factorial ] asContext.
 
 process := Process 
   forContext: context
   priority: Processor userInterruptPriority.
 [  
   debugger := Smalltalk tools debugger new
   process: process
   controller: nil
   context: context.
   Transcript show: debugger stack class ; cr
 ] ensure: [ process terminate]
 
 
 When I look at some of the stuck processes
 
 SpecDebuggerinitializePresenter
   super initializePresenter.
   self flag: 'some of this logic could be moved to the stack widget'.
   self flag: 'The toolbar should not be updated when the list changes, 
 but when an action is perormed.'.
   self stack whenListChanged: [ :aList |
   aList isEmpty ifFalse: [ self stack setSelectedItem: aList 
 first ].
   Updating the toolbar will result in changing the button 
 widgets.
   If the widget hasn't been opened, there will be no spec, which 
 leads to an error.
   self spec ifNotNil: [
   self updateToolbar ] ].
 
   self stack whenSelectedItemChanged: [:aContext |
   self updateCodeFromContext: aContext.
   self updateInspectorsFromContext: aContext.
   self stack updateForSelectionChanged ].
   
   self contextInspector initializeAutoRefresh.
 
   ^^^
 
 And initializeAutoRefresh does not exist in the latest image.
 I have no idea why the debugger may work may be this method is not used at 
 all. 
 
 Can somebody else confirm because I have the impression to fall into a rat 
 nest.
 stef 




[Pharo-dev] where is the jenkins monkey job?

2014-04-03 Thread Pharo4Stef
Hi 

I would like to know if the monkey is currently running and not stalled but I 
cannot find the jenkins job doing it.

Stef


Re: [Pharo-dev] where is the jenkins monkey job?

2014-04-03 Thread Pharo4Stef
https://ci.inria.fr/pharo/job/Pharo-3.0-Issue-Validator/


On 03 Apr 2014, at 22:02, Pharo4Stef pharo4s...@free.fr wrote:

 Hi 
 
 I would like to know if the monkey is currently running and not stalled but I 
 cannot find the jenkins job doing it.
 
 Stef




Re: [Pharo-dev] simulator spotted a small problem with initializing stdout for the CommandLineHandler

2014-04-02 Thread Pharo4Stef
Tx

https://pharo.fogbugz.com/default.asp?13165


On 01 Apr 2014, at 19:48, Eliot Miranda eliot.mira...@gmail.com wrote:

 Hi Camillo,
 
 Clément and I are simulating Pharo for Sista and I've spotted the 
 following small problem with the BasicCommandLineHandler's use of stdout.  It 
 looks like a bug in MultiByteFileStreamwantsLineEndConversion:.  
 BasicCommandLineHandlerinitializeStdout sets stdout's line end conventuion, 
 but in doing so MultiByteFileStreamwantsLineEndConversion: sends 
 MultiByteFileStreamdetectLineEndConvention, which is wrong, because stdout 
 is write-only.  I needed to change the simulator to fail as the VM does, but 
 perhaps a better fix is not to try and read from write-only streams.  Anyway, 
 thought I'd point it out.  No biggie.
 
   16r101B18 M MultiByteFileStreamdetectLineEndConvention 16r1F3A7A0: a(n) 
 MultiByteFileStream
   16r101B38 I MultiByteFileStreamwantsLineEndConversion: 16r1F3A7A0: a(n) 
 MultiByteFileStream
   16r101B60 I BasicCommandLineHandler(CommandLineHandler)initializeStdout 
 16r1F3A654: a(n) BasicCommandLineHandler
   16r101B84 I BasicCommandLineHandler(CommandLineHandler)initialize 
 16r1F3A654: a(n) BasicCommandLineHandler
   16r101BA4 I BasicCommandLineHandlerinitialize 16r1F3A654: a(n) 
 BasicCommandLineHandler
   16r101BBC M BasicCommandLineHandler class(Behavior)new 16r5B04CC: a(n) 
 BasicCommandLineHandler class
   16r101BD4 M [] in BasicCommandLineHandler classstartUp: 16r5B04CC: a(n) 
 BasicCommandLineHandler class
 
 -- 
 best,
 Eliot




[Pharo-dev] Was TickingWindow integrated?

2014-04-02 Thread Pharo4Stef
Hi guys

I’m in a train (no internet) and I see that the inspector does not refresh but 
in fact 
we introduced with clement a nice tickingWindow in spec and the goal is that 
the window
refresh its contents. I have the impression it was not integrated.
Note that this change is important because it removes a lot of processes 
hanging in the background.

Stef


Re: [Pharo-dev] Was TickingWindow integrated?

2014-04-02 Thread Pharo4Stef
https://pharo.fogbugz.com/default.asp?12460

this is this issue and we should not let all these processes in the image.

Stef

 Hi guys
 
 I’m in a train (no internet) and I see that the inspector does not refresh 
 but in fact 
 we introduced with clement a nice tickingWindow in spec and the goal is that 
 the window
 refresh its contents. I have the impression it was not integrated.
 Note that this change is important because it removes a lot of processes 
 hanging in the background.
 
 Stef




Re: [Pharo-dev] Thanks to all of you who asked

2014-04-02 Thread Pharo4Stef
great news.

On 02 Apr 2014, at 17:17, Alexandre Bergel alexandre.ber...@me.com wrote:

 As you may know, an earthquake occurred yesterday evening in the north of 
 Chile. It was a strong one. 
 Many of us have asked how well we are. We are all good. 
 
 Luckily, Chile is very well prepared. Whereas a shake of 8.3 is strong enough 
 to swipe away most of countries, Chile almost did not suffer.
 
 It happens in the north of Chile, quite far from Santiago, where most of us 
 are based. We actually did not feel anything. Over the last few months, the 
 Chilean ground has been shaking a lot, around Santiago. 
 
 Thanks for thinking about us. You guys are great! 
 Alexandre (in the name of all the people living in Chile part of this mailing 
 list)
 -- 
 _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
 Alexandre Bergel  http://www.bergel.eu
 ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
 
 
 
 




[Pharo-dev] Where are the monkey rules?

2014-04-02 Thread Pharo4Stef
Hi 

this is really annoying not to be able to run the same rules than the ones in 
the monkey. Why? because the feedback
loop is terrible. So where are defined the monkey rules? How can I load them 
and run them on a slice?
Also this is annoying that a change get rejected because of problem in the 
package but not in the code published by the slice.

Right now this leads to important fixes not been integrated because they were 
flagged automatically by the monkey and passed under the radar. So after a 
month going back again inside the changes is not fun. Luckily there were 
simple. 

Stef


Re: [Pharo-dev] [Spec] whenSelectedItemsChanged: on TreeModel

2014-04-02 Thread Pharo4Stef

 I made a plugin to spy on the NaytimusAnnouncer and in fact there is a storm 
 of announcements flying around all the time.
 

arghh
Thanks for letting us knowing.
 And they do not carry the expected payload ( nil instead of the method for 
 example)
 
 The plugin is in Smalltallhub in philippeback , HOExtras
 
 I'll do a screencast to show you.
 
 Phil
 
 Le 2 avr. 2014 13:30, Martin Dias tinchod...@gmail.com a écrit :
 Hi,
 
 I still can reproduce this issue in Pharo 30807 (last image). I'm trying to 
 workaround it with some problems.
 
 I ignore if this is already reported in fogbugs. Steps to reproduce:
 
 a) do it:
 
   TreeModel new
   roots: (1 to: 2);
   whenSelectedItemsChanged: [ :items |  self logCr: items ];
   openWithSpec.
 
 
 = in Transcript I see:
 
 b) during initial do it:
 
   #()
 
 c) after a click on 2:
 
   #()
   an OrderedCollection(2)
 
 d) after a click on 1:
 
   an OrderedCollection(2)
   an OrderedCollection(2)
   an OrderedCollection(1)
 
 
 Cheers,
 MArtín
 
 
 
 On Wed, Dec 11, 2013 at 6:10 PM, Benjamin 
 benjamin.vanryseghem.ph...@gmail.com wrote:
 As I said to Martin, I will investigate why, but it’s a bit tricky
 Must be some issue in MorphTreeMorph I introduced recently
 
 Ben
 
 On 11 Dec 2013, at 16:46, Roberto Minelli roberto.mine...@usi.ch wrote:
 
 Hi,
 
 I am experiencing problems with #whenSelectedItemsChanged: on a TreeModel.
 
 In particular, the block (i.e., argument of #whenSelectedItemsChanged: gets 
 randomly executed a couple of times (3/4) the second time that the selection 
 happens. The first time is fine. It looks like the registration of the 
 “event” or “announcement” is done multiple times.
 
 Any hint?
 
 Cheers,
 R
 
 



Re: [Pharo-dev] [Moose-dev] Re: Re: Re: Fwd: Font problem is still there

2014-04-02 Thread Pharo4Stef

On 02 Apr 2014, at 14:46, J.F. Rick s...@je77.com wrote:

 Is this supposed to fix the font rendering problem or some other font 
 problem? I tried it and it doesn't seem to help the rendering problem.

normally it should fix the font PrObLem
can you check that you loaded the latest NB?
 
 Cheers,
 
 Jeff
 
 
 On Tue, Apr 1, 2014 at 6:27 PM, Igor Stasenko siguc...@gmail.com wrote:
 okay i uploaded updated configs for NativeBoost and Athens into official 
 repositories for these projects.
 
 Gofer new smalltalkhubUser: 'Pharo' project: 'NativeBoost';
 configuration;
 load.
 
 ConfigurationOfNativeBoost loadDevelopment.
 
 
 
 Gofer new smalltalkhubUser: 'Pharo' project: 'Athens';
 configuration;
 load.
 
 ConfigurationOfAthens loadDevelopment.
 
 
 shall do the trick..
 
 for more details see 
 https://pharo.fogbugz.com/f/cases/13150/Different-memory-alignment-on-different-platforms
 
 
 
 On 28 March 2014 21:13, Pharo4Stef pharo4s...@free.fr wrote:
 thanks Igor.
 I’m trying to look at the font reloading bug.
 
 
 On 28 Mar 2014, at 17:19, Igor Stasenko siguc...@gmail.com wrote:
 
 https://pharo.fogbugz.com/f/cases/13150/Different-memory-alignment-on-different-platforms
 
 
 On 28 March 2014 16:42, Igor Stasenko siguc...@gmail.com wrote:
 so, the quick and dirty fix is to put:
 
 CairoGlyph classbyteAlignment
 
 NativeBoost platformId = NativeBoostConstants win32PlatformId ifTrue: [  
 ^ 8 ].
 ^ super byteAlignment
 
 and then:
 
 CairoGlyph rebuildFieldAccessors 
 CairoGlyphsArray initialize 
 
 (note you must run this snippet each time your image changes platform)..
 
 and i need more time to fix it for real, because it is NB issue, to 
 automatically recalculate the structs size
 if it changes platform.. (which also means you cannot store instances of 
 struct in image which survive the session)
 ... damn.. that's going to be complicated.
 
 ---
 
 
 
 On 28 March 2014 16:27, Igor Stasenko siguc...@gmail.com wrote:
 
 
 
 On 28 March 2014 16:01, Igor Stasenko siguc...@gmail.com wrote:
 
 Ookkayy.. 
 so, current status:
 
  - finally we got an agreement that big red square because of font loading 
 issues and font rendering artifacts is two separate issues.
 Thanks! 
 - i am not going to address font-loading issue here and now.. (because we 
 spent time on it earlier today with Stef already and you should have the 
 report on it in separate mail).
 
 - we seem to be agreed that it is best to use same (up-to-date version) of 
 software when reporting issues to work on them. Thanks again. :)
 
 - while on linux and mac things seem to be working fine, i can confirm that 
 there is rendering artifacts (same as reported by Vincent) on Windows.
 
 so i going to explore what causing this problem..
 
 ... and found the cause:
 
 On windows, for unknown reason, the structure (cairo_glyph_t) uses different 
 memory space alignment than on mac and linux
 
 fieldsDesc
 ^ #(
 ulongindex;
 double   x;
 double   y;
 )
 
 on mac and linux , the size of this structure in memory = 4 + 8 + 8 = 20 
 bytes,
 on windows, however, due to 8-byte alignment, it is  4 + 8 + 8 + (4 
 alignment) bytes...
  
 this causing the effect that if you copy array of glyphs in memory, 
 it does not copying whole array by slightly less  (because it uses wrong 
 struct size which is smaller than it is)..
 and because of that, you got weird artefacts at the tail of string, replaced 
 by misplaced/invalid characters etc..
 because it is basically read from uninitialized part of memory with random 
 data.
 
 i going to fix structure alignment for windows from default 4 bytes to 8 
 bytes.. 
 but this is not very good news.. because this affecting many things... (as 
 you can imagine, not only cairo/athens working with external structures, 
 which need to be properly aligned).
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 Jochen Jeff Rick, Ph.D.
 http://www.je77.com/
 Skype ID: jochenrick



Re: [Pharo-dev] [Inspiration] Toward a better programming

2014-04-02 Thread Pharo4Stef

On 02 Apr 2014, at 13:31, Goubier Thierry thierry.goub...@cea.fr wrote:

 
 
 Le 02/04/2014 08:12, Tudor Girba a écrit :
 The language itself is less interesting for me, but what makes it stand
 out is that it has a coherent and robust philosophy behind and
 phenomenal goals to reach. In Pharo, we have the luxury of building on
 top of coherent and robust philosophy (even if different from the
 Wolfram one) and we should try as much as possible to keep our eyes on
 phenomenal goals that seem unreachable.
 
 I see two barriers in the current Pharo to be able to reach that:
 
 - Lack of clear documentation of the underlying code management structure and 
 facilities. It takes ages to get into the gritty details of things like 
 RPackage and the refactory framework, documentation is very often limited to 
 this is the way Nautilus does it, and no worry about changing it, Nautilus 
 developpers are the same guy which ends up being very painful for someone 
 outside that core group.

I agree but who is writing doc beside me and sven?
Do you think that this is easy to write doc on something that you did not write.
For Rpackage this is not that complex and you do not want to document the part 
that glue inside announcement and other.


 - GUI conservatism. The choice made in Pharo in the overall look is to be 
 conservative and business-like, and so blame the too-advanced, too-fancy 
 Morphic (and at the same time have Roassal pushing the enveloppe, but outside 
 the normal toolkit :) which means someone would find it probably hard to do 
 Roassal-based development tools). Glamour, Spec and GTToolkit are interesting 
 to look at along that conservatism in GUI.

You cannot clean Morphic without removing experimental stuff. 
Once we will have a better morphic then we can be more adventurous. You 
probably did not spend enough time in morphic if
you do not think that I’m right. :) Now this is clear that Roassal is a bit 
reinventing Morphic to some extend but this is like that.



 Another thing I like in Wolfram's work is attention to details:
 http://blog.wolfram.com/2008/01/10/ten-thousand-hours-of-design-reviews/
 
 Details are crucial, and all the effort in Pharo around naming and
 redesigning what already exists is incredibly important. But, it is
 precisely at the moment when we are knee-deep in details that is crucial
 to keep our eyes on the phenomenal long term goals.
 
 I'm less convinced by that. Refining, trying, fiddling, spending hundreds of 
 iterations on making drag and drop or scrolling perfect, yes. Redesigning 
 whole chunks of the low-level facilities without really seeing where we will 
 end up, at at the same time presenting a very conservative view on top of it, 
 not much.
 
 For example, I know of a GTInspector use case which is entirely justified by 
 deficiencies in the standard system browser ;)
 
 There is so much to build. Let's be bold.
 
 +100
 
 Thierry
 -- 
 Thierry Goubier
 CEA list
 Laboratoire des Fondations des Systèmes Temps Réel Embarqués
 91191 Gif sur Yvette Cedex
 France
 Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
 




Re: [Pharo-dev] [Pharo-users] Tiny-social meeting in Buenos Aires

2014-04-01 Thread Pharo4Stef
cool idea.

stef

On 31 Mar 2014, at 16:16, Esteban Lorenzano esteba...@gmail.com wrote:

 Hi, 
 
 As some of you know, I’m on vacations in Buenos Aires. Last days I was 
 talking with the other Esteban of this list and with Hernan about doing a 
 Pharo meeting to talk about the upcoming Pharo3 and well… to socialise a bit 
 :) 
 It cannot be a true sprint or formal event because my times are complicated 
 (also I’m on holidays!) but is good to meet anyway and exchange impressions 
 and news. 
 Anyway, it will be friday 18hs to 20:30hs, in this place: 
 http://www.cervelar.com.ar
 (in the Belgrano location). 
 
 If you are in Buenos Aires and want to come, please send a confirmation (we 
 need to make a reservation). 
 
 Cheers, 
 Esteban
 
 




Re: [Pharo-dev] [Inspiration] Toward a better programming

2014-04-01 Thread Pharo4Stef
Go go go!
Roassal2 (with Athens) can change the face of Pharo.

Stef


 I cannot resist to jump on this. Indeed, we have the moral obligation to 
 promote what we have crafted over the year. 
 Producing a high-quality video has been on my todo list for quite some times 
 already. As you probably know, we did some intent already (videos about 
 Roassal, GraphET, and other tools), but we were too young maybe. 
 
 Within the next few weeks we will work on a cool video to promote Roassal2, 
 and our goal is to reach users beyond the Smalltalk boundary. We have 
 everything so far. The moose distribution is a wonderful toolbox that can 
 literally blow away any example shown in this video. 
 
 As you may have seen, we have worked on Roassal2 which includes a new 
 geographical map builder, tabular table importer, GraphET2, fancy curves, 
 html and amber exporter. A video carefully orchestrated has the potential to 
 kick away Aurora, Light Table, Wolfram and all their friends.
 
 We will soon get there...
 
 Alexandre
 
 
 On Mar 29, 2014, at 2:20 PM, Tudor Girba tu...@tudorgirba.com wrote:
 
 Beautiful demo. This should be our game, yet others are playing it :(.
 
 Doru
 
 
 On Sat, Mar 29, 2014 at 11:31 AM, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 On 29 Mar 2014, at 10:38, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 This is a nice write down:
 
 http://www.chris-granger.com/2014/03/27/toward-a-better-programming/
 
 with a nice demo of a prototype:
 
 https://www.youtube.com/watch?v=L6iUm_Cqx2s
 
 Luckily, the horrible C++ code computing standard deviation in the article 
 can be written quite elegantly and directly in Pharo:
 
 | input |
 input := #(2 4 4 4 5 5 7 9).
 (((input - input average) raisedTo: 2) sum / (input size - 1)) sort.
 
 Sven
 
 Damn spelling correction ;-)
 
 | input |
 input := #(2 4 4 4 5 5 7 9).
 (((input - input average) raisedTo: 2) sum / (input size - 1)) sqrt.
 
 
 
 
 
 -- 
 www.tudorgirba.com
 
 Every thing has its own flow
 
 -- 
 _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
 Alexandre Bergel  http://www.bergel.eu
 ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
 
 
 
 




Re: [Pharo-dev] Font problem identified

2014-04-01 Thread Pharo4Stef
Thanks I will have a look.
I was thinking to put in place a registration mechanism.

Stef

On 30 Mar 2014, at 19:56, Ben Coman b...@openinworld.com wrote:

 Pharo4Stef wrote:
 
 Thanks for you suggestion I will check how to implement a registration 
 mechanism.
 I was wondering if I missed the obvious.
 
 Stef
 
   
 i'd like to point out, that there is of course easy brute-force solution to 
 this problem
 (simply put dirty patch to force re-loading fonts)..
 
 however, i think we should wisely consider, how to deal with it in graceful 
 manner by providing a font-registration mechanism for any potential 3-rd 
 party package(s).
 Like that, we will solve the problem for longer time period than just the 
 single next day.
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 
   
 I've uploaded a possible solution.  I learnt something new today. That is 
 very cool to be able to embed fonts in the image like that.
 cheers -ben




Re: [Pharo-dev] Release Mode

2014-03-29 Thread Pharo4Stef
great mail :)
On 28 Mar 2014, at 23:03, Nicolai Hess nicolaih...@web.de wrote:

 2014-03-28 16:58 GMT+01:00 Marcus Denker marcus.den...@inria.fr:
 
 On 28 Mar 2014, at 16:53, p...@highoctane.be wrote:
 
  The look of nautilus button isn't ok to integrate since there is much 
  more work needed to get this working properly.
 
  Now, the scrollbars in 2.0 really suck if you ask me. So, I'd vote for that 
  one.
 
  Welcome back to the fray.
 
 
 So lets revert all the updates of this week, from the problematic ones 
 onwards.
 
 But I can only work on that next week.
 
 Marcus
 
 
 
 
 Please No :)
 
 I am happy about any work that is done, even if it is some ui enhancement, 
 even if it is in feautre freeze phase. Because, we are 
 a just too small community. Most work is done in developers free time. We are 
 providing some kind of a product (Pharo), but 
 it is OUR product, we are mostly commited to ourself.
 
 So, the most important point isn't a release date, but that we are 
 communicating, discussing, talking about that changes.
 Yes, of course, I know it has to be ready at some point, it won't help if we 
 are working on a pre-release version for years:)
 
 Please let us take that changes, hoping they don't introduced new bugs and 
 discussing now everything where we had missed
 to talk about.
 
 Having said that.
 IF YOU have the time to work on Pharo and would like to do some enhancements 
 now, ok! But try  to step back for one
 minute and think to yourself:
 are there bugs I can resolve instead?
 do some code review instead?
 look at the new or really old (maybe all those forgotten) issues on the 
 buglist.
 
 There are plenty of things that have to be done for the release. But of 
 course any other change may be worthwhile 
 as well (first impressions on UI related things may count ten times more then 
 a handfull fixed bugs).
 
 And if you really want your changes now, make this explicit on the mailing 
 list:
 hey I would include this enhancement now, because ., would do you think?
 
 
 
 Nicolai



Re: [Pharo-dev] Font problem identified

2014-03-29 Thread Pharo4Stef
Thanks for you suggestion I will check how to implement a registration 
mechanism.
I was wondering if I missed the obvious.

Stef

 
 
 i'd like to point out, that there is of course easy brute-force solution to 
 this problem
 (simply put dirty patch to force re-loading fonts)..
 
 however, i think we should wisely consider, how to deal with it in graceful 
 manner by providing a font-registration mechanism for any potential 3-rd 
 party package(s).
 Like that, we will solve the problem for longer time period than just the 
 single next day.
 
 -- 
 Best regards,
 Igor Stasenko.




[Pharo-dev] Fwd: Feedback for Pharo 3

2014-03-28 Thread Pharo4Stef


Begin forwarded message:

 From: Richard Sargent richard.sarg...@gemtalksystems.com
 Subject: Feedback for Pharo 3
 Date: 27 Mar 2014 18:46:11 GMT+1
 To: Stéphane Ducasse stephane.duca...@inria.fr
 
 Hi Stéphane,
 
 Benjamin Pollack @bitquabit just tweeted the features list for 3.0. I have to 
 say that you folks have some really exciting things happening there.
 
 However, the naming of the methods for the Simple Delayed Execution for 
 Blocks needs work. The #value* methods are so named because they return the 
 value from the Block's execution. Neither #valueWithInterval: nor 
 #valueAfterWaiting: answers the result of the Block's evaluation.
 
 The naming of the arguments is questionable, too. The name aDelay suggests 
 an instance of a given class, but the comment suggests the argument is an 
 integer (milliseconds). I can see argument for a Duration as the argument, in 
 the expression [...something...] evaluateEvery: 100 ms. I don't think it can 
 get clearer than that. But for performance, one might want an integer 
 argument. Here the naming gets challenging. #evaluateEveryMilliseconds: is as 
 close as I can come to readable, but I don't really like it either.
 
 
 Thanks for all your hard work (and good work!).
 Richard Sargent
 



Re: [Pharo-dev] [Pharo-users] [ANN] Application Security for your domains

2014-03-28 Thread Pharo4Stef
the linke o your blog leads to 

http://www.smalltalkhub.com/#%21/%7Ehernan/ApplicationSecurity


On 28 Mar 2014, at 00:58, Hernán Morales Durand hernan.mora...@gmail.com 
wrote:

 Hello guys,
 I'm doing a double announcement here.
 
 First, a new blog about development with Pharo, and Smalltalk:
 
 http://80738163270632.blogspot.com.ar/
 
 Second, my first entry contains a post about Application Security, a new 
 package to make Pharo applications more secure. You can start playing with 
 the objects right now, while more documentation is being written for the next 
 release.
 
 Hope you like it and I'm looking forward to hearing from you.
 Cheers,
 
 Hernán
 



Re: [Pharo-dev] DateAndTime#= slow?

2014-03-28 Thread Pharo4Stef
Excellent!
Thanks for all this good and proactive energy.

Stef


 Umbrella issue:
 
 https://pharo.fogbugz.com/f/cases/13139/Speed-Regressions-in-DateAndTime
 
 I rewrote (and simplified) DateAndTime#+ #- #=  
 I added caching for #epoch
 I switched the localTimeZone to an #asFixedTimeZone variant
 
 My benchmark now runs 40x FASTER than in Pharo 1.4
 
 All Chronology tests remain green.
 
 I will upload slices when the funding goal of 1,000,000 USD is reached on 
 https://www.kickstarter.com/projects/1003214829/improve-pharo-dateandtime-performance
 
 PS: Half of the funds will go to Camillo for making DateAndTime work in UTC 
 internally ;-)
 
 PS2: I am not sure I am allowed to fix this so close to release, is it a 
 feature or a bug fix ? ;-)
 
 On 27 Mar 2014, at 12:29, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 
 On 27 Mar 2014, at 11:55, Johan Brichau jo...@inceptive.be wrote:
 
 On 27 Mar 2014, at 11:50, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 It is slow(er) in 2 and fast(er) in 3, according to this discussion and my 
 reading of the code. If you see the inverse, than please provide some 
 details.
 
 We come from Pharo 1.4, where our timing benchmarks that use a lot of 
 DateAndTime operations run 4x faster (in Gemstone too). 
 It is indeed faster in 3 than in 2. (I believe because of a wait in de 
 DateAndTime creation that has to do with clock precision).
 
 Johan
 
 An x4 (400%) slowdown sounds like an unacceptable regression to me.
 
 Could you maybe provide some benchmark ?
 
 I did a quick one (in Pharo 3):
 
 [
 | timestamps |
 timestamps := Array streamContents: [ :out |
  1024 timesRepeat: [ out nextPut: (DateAndTime now - (60*60*24*265) 
 atRandom seconds) ] ].
 64 timesRepeat: [ timestamps sorted ].
 timestamps sort. 
 timestamps collect: [ :each | timestamps includes: each ] ] timeToRun. 
 
 = 0:00:00:09.491
 
 In 1.4, this is indeed about 40 times faster:
 
 [
 | timestamps |
 timestamps := Array streamContents: [ :out |
  1024 timesRepeat: [ out nextPut: (DateAndTime now - (60*60*24*265) 
 atRandom seconds) ] ].
 64 timesRepeat: [ timestamps sorted ].
 timestamps sort. 
 timestamps collect: [ :each | timestamps includes: each ] ] timeToRun 
 milliSeconds.
 
 = 0:00:00:00.228
 
 For this test, ZTimestamp is 100 times faster:
 
 [
 | timestamps |
 timestamps := Array streamContents: [ :out |
  1024 timesRepeat: [ out nextPut: (ZTimestamp now - (60*60*24*265) 
 atRandom seconds) ] ].
 64 timesRepeat: [ timestamps sorted ].
 timestamps sort. 
 timestamps collect: [ :each | timestamps includes: each ] ] timeToRun. 
 
 = 0:00:00:00.07
 
 Looking at this with the Time Profiler, I see that DateAndTime#asSeconds 
 (used in #) takes 95% of the time. I am pretty sure we can fix this. I'll 
 make an issue and slice later on.
 
 Sven
 
 
 
 
 --
 Sven Van Caekenberghe
 Proudly supporting Pharo
 http://pharo.org
 http://association.pharo.org
 http://consortium.pharo.org
 
 
 
 
 




Re: [Pharo-dev] [Moose-dev] Problem with fonts

2014-03-28 Thread Pharo4Stef

On 28 Mar 2014, at 12:38, Stéphane Ducasse stephane.duca...@inria.fr wrote:

Hi 

We found with igor the problems that produced red cross in Moose.
The problem is that the system is looking Source Sans Pro and does not find it.

The logic in findBestFont: does not find it because there is no such font 
registered in font manager
and the default logic is to return TextStyle defaultFont which is a bitmpa one.

So question:
- may be we should have a FT font default loaded in the system?

- Doru we remember that you loaded font in the system? May be you do 
not register well the fonts.
Could you let us know what you did?


can you execute the following 
-0  (LogicalFont familyName: 'Source Sans Pro' pointSize: 12) realFont
you should get a freetype font

- 1 Disable the freetrype in the setting
- 2 Enable again freetype in the setting 
- 3 (LogicalFont familyName: 'Source Sans Pro' pointSize: 12) realFont

because you should get a strikeFont and this is the bug
So it looks like the image level fonts are lost.

Stef and Igor.
___
Moose-dev mailing list
moose-...@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev




Re: [Pharo-dev] DateAndTime#= slow?

2014-03-28 Thread Pharo4Stef
Hi johan

Please let us know because I would be in favor of integrating such speed up if 
your system fully work.

stef


On 28 Mar 2014, at 09:17, Johan Brichau jo...@inceptive.be wrote:

 
 On 28 Mar 2014, at 06:24, Esteban Lorenzano esteba...@gmail.com wrote:
 
 Bugs are errors that prevents the system to run. 
 
 nagging
 Some performance problems make the system impossible to work with
 /nagging
 
 Anyway, going to check in Sven's changes today.
 
 cheers
 Johan
 




Re: [Pharo-dev] New website about Spec - http://spec.st

2014-03-28 Thread Pharo4Stef
Thanks ben
This is really to see my ideas coming to live ;D

 
 I am glad to announce (even if Philippe already let the cat out :P) a website 
 dedicated to Spec: http://spec.st.
 You can find a quick introduction, documentation (mainly what is now in the 
 Pharo For The Enterprise book), and
 a news feed where I will explain the API changes, the news widgets introduce 
 etc.

What is the best github repo to edit the chapter?

 The website contents can be found here 
 (https://github.com/spec-framework/website) so if you want to contribute
 you are welcome :)
 
 Ben
 
 PS: I would like to thank Johan Fabry who helped me a lot writing the 
 documentation,
 Sean P. DeNigris who fixed my english a couple of times and Nicolas Petton who
 helped me on the website look and feel



Re: [Pharo-dev] [Moose-dev] Re: Re: Fwd: Font problem is still there

2014-03-28 Thread Pharo4Stef
yes but if you uncheck and recheck freetype
the embedded fonts are lost
- substition 
- substitution failed.
- get a strike font and boum.

Can you confirm?

On 28 Mar 2014, at 15:26, Tudor Girba tu...@tudorgirba.com wrote:

 Excellent.
 
 I confirm the same result in the latest Moose image (which no longer loads 
 anything related to Athens).
 
 It works out of the box without any resetting of the fonts (by using the 
 already installed Source Sans Pro.
 
 Cheers,
 Doru
 
 
 a WorldMorph(511705088) [wo.png
 
 
 On Fri, Mar 28, 2014 at 3:15 PM, Igor Stasenko siguc...@gmail.com wrote:
 
 
 
 On 28 March 2014 15:01, Tudor Girba tu...@tudorgirba.com wrote:
 I added the code in the mail precisely to leave out any ambiguities :).
 
 The first part of the snippet (as also listed by Vincent) loads the very 
 latest development version of Athens configuration. So, yes, I think I loaded 
 the latest code.
 
 Doru
 
 and that code snippet works only if you have FreeSans font in your system.. 
 which not exists on Mac OS (at least in my installation)..
 
 i took the latest pharo 3.0 image:
 
 curl get.pharo.org/30 | bash
   % Total% Received % Xferd  Average Speed   TimeTime Time  
 Current
  Dload  Upload   Total   SpentLeft  Speed
 100  2587  100  25870 0  70999  0 --:--:-- --:--:-- --:--:--  421k
 Downloading the latest 30 Image:
 http://files.pharo.org/image/30/latest.zip
 Pharo.image
 193-51-236-207:pharo sig$ ./pharo-ui Pharo.image
 
 - went to font settings and updated the font list from system.
 
 
 And then evaluated:
 
 AthensSceneView new scene: [ :canvas | |s| 
  canvas setFont: (LogicalFont familyName: 'Arial' pointSize: 
 20).
 s:= String newFrom: ($A to: $Z),($a to: $z), ($0 to: $9).

 canvas pathTransform restoreAfter: [
canvas pathTransform translateX: 0 Y: 50.
canvas setPaint: Color black.
canvas drawString:s ]

 ];openInWindow
 
  And here's what i got:
 Screen Shot 2014-03-28 at 3.11.25 PM.png
 
 And the screenshot you given cannot be true, because 20 points font size 
 should be much larger than 10 point (the font used for label above with
 zoom/pan metrics).
 
 Note, i did not loaded anything into pharo image.. just evaluated the above 
 snippet..
 on my machine, which is:  10.8.3 mac os
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 www.tudorgirba.com
 
 Every thing has its own flow
 ___
 Moose-dev mailing list
 moose-...@iam.unibe.ch
 https://www.iam.unibe.ch/mailman/listinfo/moose-dev



Re: [Pharo-dev] [Moose-dev] Re: Re: Fwd: Font problem is still there

2014-03-28 Thread Pharo4Stef

On 28 Mar 2014, at 15:01, Tudor Girba tu...@tudorgirba.com wrote:

 I added the code in the mail precisely to leave out any ambiguities :).
 
 The first part of the snippet (as also listed by Vincent) loads the very 
 latest development version of Athens configuration. So, yes, I think I loaded 
 the latest code.

but is it?
Can you check?


 
 Doru
 
 
 On Fri, Mar 28, 2014 at 2:57 PM, Igor Stasenko siguc...@gmail.com wrote:
 
 
 
 On 28 March 2014 14:42, Tudor Girba tu...@tudorgirba.com wrote:
 I also tried based on a Moose 5.0 image on OS X 10.9.2:
 
 Gofer new
 smalltalkhubUser: 'Pharo' project: 'Athens';
 configuration;
 loadDevelopment.
  
 AthensSceneView new scene: [ :canvas | |s| 
  canvas setFont: (LogicalFont familyName: 'FreeSans' 
 pointSize: 20).
 s:= String newFrom: ($A to: $Z),($a to: $z), ($0 to: $9).

 canvas pathTransform restoreAfter: [
canvas pathTransform translateX: 0 Y: 50.
canvas setPaint: Color black.
canvas drawString:s ]

 ];openInWindow
 
 And I still get the problem:
 
 by 'still' you mean you loaded up-to-date version of Athens into your moose 
 image and it still doesn't works?
 because Moose 5.0 image which i downloaded earlier today has very old Athens 
 version. 
 
 
 an AthensSceneView(824442880).png
 
 Doru
 
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 www.tudorgirba.com
 
 Every thing has its own flow
 ___
 Moose-dev mailing list
 moose-...@iam.unibe.ch
 https://www.iam.unibe.ch/mailman/listinfo/moose-dev



Re: [Pharo-dev] DateAndTime#= slow?

2014-03-28 Thread Pharo4Stef

 It is easy. It is called pharo 3.1 or pharo 4.0. The rule is: Don’t change 
 the current release being in freeze. Release it, change then everything you 
 wanted in the next step and make sure you can release the next version pretty 
 soon. IMHO the best solution to this kind of problems is to have small 
 iterations. 

Yes I like your idea.
We can do a 3.1.

May be this is an indication that we should start a 4.0alpha?

Stef




Re: [Pharo-dev] [Moose-dev] Re: Re: Re: Fwd: Font problem is still there

2014-03-28 Thread Pharo4Stef
thanks Igor.
I’m trying to look at the font reloading bug.


On 28 Mar 2014, at 17:19, Igor Stasenko siguc...@gmail.com wrote:

 https://pharo.fogbugz.com/f/cases/13150/Different-memory-alignment-on-different-platforms
 
 
 On 28 March 2014 16:42, Igor Stasenko siguc...@gmail.com wrote:
 so, the quick and dirty fix is to put:
 
 CairoGlyph classbyteAlignment
 
 NativeBoost platformId = NativeBoostConstants win32PlatformId ifTrue: [  
 ^ 8 ].
 ^ super byteAlignment
 
 and then:
 
 CairoGlyph rebuildFieldAccessors 
 CairoGlyphsArray initialize 
 
 (note you must run this snippet each time your image changes platform)..
 
 and i need more time to fix it for real, because it is NB issue, to 
 automatically recalculate the structs size
 if it changes platform.. (which also means you cannot store instances of 
 struct in image which survive the session)
 ... damn.. that's going to be complicated.
 
 ---
 
 
 
 On 28 March 2014 16:27, Igor Stasenko siguc...@gmail.com wrote:
 
 
 
 On 28 March 2014 16:01, Igor Stasenko siguc...@gmail.com wrote:
 
 Ookkayy.. 
 so, current status:
 
  - finally we got an agreement that big red square because of font loading 
 issues and font rendering artifacts is two separate issues.
 Thanks! 
 - i am not going to address font-loading issue here and now.. (because we 
 spent time on it earlier today with Stef already and you should have the 
 report on it in separate mail).
 
 - we seem to be agreed that it is best to use same (up-to-date version) of 
 software when reporting issues to work on them. Thanks again. :)
 
 - while on linux and mac things seem to be working fine, i can confirm that 
 there is rendering artifacts (same as reported by Vincent) on Windows.
 
 so i going to explore what causing this problem..
 
 ... and found the cause:
 
 On windows, for unknown reason, the structure (cairo_glyph_t) uses different 
 memory space alignment than on mac and linux
 
 fieldsDesc
 ^ #(
 ulongindex;
 double   x;
 double   y;
 )
 
 on mac and linux , the size of this structure in memory = 4 + 8 + 8 = 20 
 bytes,
 on windows, however, due to 8-byte alignment, it is  4 + 8 + 8 + (4 
 alignment) bytes...
  
 this causing the effect that if you copy array of glyphs in memory, 
 it does not copying whole array by slightly less  (because it uses wrong 
 struct size which is smaller than it is)..
 and because of that, you got weird artefacts at the tail of string, replaced 
 by misplaced/invalid characters etc..
 because it is basically read from uninitialized part of memory with random 
 data.
 
 i going to fix structure alignment for windows from default 4 bytes to 8 
 bytes.. 
 but this is not very good news.. because this affecting many things... (as 
 you can imagine, not only cairo/athens working with external structures, 
 which need to be properly aligned).
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 Best regards,
 Igor Stasenko.
 
 
 
 -- 
 Best regards,
 Igor Stasenko.



[Pharo-dev] Every class should redefine printOn:

2014-03-28 Thread Pharo4Stef
Hi guys

I’m trying to understand freeType and when I debug I get aBlah aFoo and this is 
frankly annoying
because I’m trying to learn the implementation and it does not help me at all.

I hate the classes that only their implementors understand.
In Pharo 4.0 I will put a strict rule:
- no class will be integrated if they do not redefine printOn:
- I will set a general rules to check printOn: methods.

printOn: methods are the first debugging information. 

Stef


Re: [Pharo-dev] funny TIOBE

2014-03-28 Thread Pharo4Stef

On 28 Mar 2014, at 22:00, Sean P. DeNigris s...@clipperadams.com wrote:

 Pavel Krivanek-3 wrote
 after a very long time I checked the TIOBE index and Smalltalk is not
 listed there at all... :-)
 
 Maybe we died and don't know it... must be heaven, not hot enough for the
 other place ;)

:)

 
 
 
 -
 Cheers,
 Sean
 --
 View this message in context: 
 http://forum.world.st/funny-TIOBE-tp4751510p4751522.html
 Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
 




Re: [Pharo-dev] Every class should redefine printOn:

2014-03-28 Thread Pharo4Stef

On 28 Mar 2014, at 22:08, Sven Van Caekenberghe s...@stfx.eu wrote:

 I am all for that, but I don't think you can make it that strict, what if 
 there are no instance variables ?

ok :)
a smart rule

 I like custom #printOn:'s especially for debugging.
 
 On 28 Mar 2014, at 21:45, Pharo4Stef pharo4s...@free.fr wrote:
 
 Hi guys
 
 I’m trying to understand freeType and when I debug I get aBlah aFoo and this 
 is frankly annoying
 because I’m trying to learn the implementation and it does not help me at 
 all.
 
 I hate the classes that only their implementors understand.
 In Pharo 4.0 I will put a strict rule:
  - no class will be integrated if they do not redefine printOn:
  - I will set a general rules to check printOn: methods.
 
 printOn: methods are the first debugging information. 
 
 Stef
 
 




[Pharo-dev] Font problem identified

2014-03-28 Thread Pharo4Stef
Hi guys

I found the problem now I will think about the solution.

https://pharo.fogbugz.com/default.asp?13149

Stef

Re: [Pharo-dev] New Nautilus side bar buttons

2014-03-28 Thread Pharo4Stef

On 28 Mar 2014, at 17:57, Benjamin benjamin.vanryseghem.ph...@gmail.com wrote:

 Hello guys,
 
 since I do not really like the new buttons introduced in Nautilus,
 and since the previous one were broken, I propose this new set 
 of buttons based on the eclipse theme.
 
 Nautilus new buttons.png
 closeup.png
 
 Tell me what you think about it :)

much nicer!
Tx
 Ben
 



Re: [Pharo-dev] Nicer scrollbars [was RE: Fixing inconsistent buttons look in PharoUI]

2014-03-27 Thread Pharo4Stef
Hi guys

pay attention that igor redesigned a full new class for scrollbar because the 
old one sucks 
so that we can do clever scrolling in TextEditor.

Stef

On 26 Mar 2014, at 13:13, Tudor Girba tu...@tudorgirba.com wrote:

 If you are at it, would you be interested in trying to provide a scrollbar 
 without the arrow buttons, and with half the width? :)
 
 Doru
 
 
 On Wed, Mar 26, 2014 at 12:39 PM, Goubier Thierry thierry.goub...@cea.fr 
 wrote:
 Cool, you're giving me hope that one day I'll switch to the Pharo3 theme :)
 
 Thierry
 
 
 Le 26/03/2014 11:58, Philippe Back a écrit :
 And while I was at it, I made the scrollbars nicer.
 
 
 https://pharo.fogbugz.com/default.asp?13136
 
 All of this made me notice that there are quite a number of little
 glitches all over. Especially when using larger fonts.
 
 Phil
 
 *From:*Philippe Back [mailto:p...@highoctane.be]
 *Sent:* mercredi 26 mars 2014 10:51
 *To:* 'pharo-dev@lists.pharo.org'
 *Subject:* Fixing inconsistent buttons look in PharoUI
 
 
 I’ve made a pass at fixing the buttons look (border in some places, no
 border in others). Spec-generated buttons are using the ButtonModel and
 MorphicButtonAdapter but the defaultSpec fo the the ButtonModel is
 asking the borderWidth and borderColor from the model, which is all nice
 but should be looking like the standard PluggableButtonMorphs, which do
 have a border.
 
 So, aligned now.
 
 https://pharo.fogbugz.com/default.asp?13135
 
 Slice in inbox:
 SLICE-Issue-13135-Inconsistent-look-of-buttons-across-tools-Border-no-border-PhilippeBack.1
 
 Phil
 
 
 
 
 http://www.avast.com/ 
 
 Ce courrier électronique ne contient aucun virus ou logiciel malveillant
 parce que la protection Antivirus avast! http://www.avast.com/ est
 active.
 
 
 
 -- 
 Thierry Goubier
 CEA list
 Laboratoire des Fondations des Systèmes Temps Réel Embarqués
 91191 Gif sur Yvette Cedex
 France
 Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
 
 
 
 
 -- 
 www.tudorgirba.com
 
 Every thing has its own flow



Re: [Pharo-dev] [Help needed] Issuer tracker TODO Pharo3

2014-03-27 Thread Pharo4Stef
I would love to have the time and internet access :(
On 27 Mar 2014, at 13:22, Marcus Denker marcus.den...@inria.fr wrote:

 Hi,
 
 There are 23 issues open for Pharo3
 
   https://pharo.fogbugz.com/f/filters/64/3-0-TODO
 
 
 In general, it would be nice if more people would care about
 
   - testing and reviewing proposed fixes
   - just keeping the issue tracker healthy
 
 
   Marcus
 




Re: [Pharo-dev] Pen back in the image

2014-03-27 Thread Pharo4Stef
build it on top of athens 
On 27 Mar 2014, at 17:33, Hilaire Fernandes hilaire.fernan...@gmail.com wrote:

 I think too it is nice class to introduce to programming
 
 Hilaire
 
 Le 27/03/2014 17:17, p...@highoctane.be a écrit :
 Hello,
 
 I'd like to see the Pen class coming back in the main image.
 
 It really is useful for getting people acquainted with the tools and the
 bluebook uses it.
 
 I am not asking for a form editor (it could be handy though).
 
 Path is dead as it was hijacked by FileSystem. I miss it too.
 
 What do you people think?
 
 Phil
 
 -- 
 Dr. Geo http://drgeo.eu
 
 




Re: [Pharo-dev] Font problem is still there

2014-03-27 Thread Pharo4Stef

 Btw, guys i need some details:
  - what platform you using
Windows and Linux (this is the moose image).

  - what default font you using

No idea. 

We will give you the image of nicolas and the image of the contact I got.
It happens on windows for her. 

Apparently people where putting the same image on a different machines and it 
worked.
Nicolas got a problem on linux.

May be this is just a stupid use of freetype with the settings but since WE DO 
NOT understand font the setting should do it right.

Stef


Re: [Pharo-dev] Crazy Smalltalk code snippets

2014-03-26 Thread Pharo4Stef
Hi frank

It would really great if you send an article on this to the ESUG workshop.
I can help reviewing the draft if you want. 
Stef

 Yes: http://ss3.gemstone.com/ss/Control.html
 
 Last time I checked I did need to add a shim (see the ControlPharo
 package), but it did load cleanly and pass all its own tests.
 
 Control not only provides a convenient way of making partial
 continuations (of the shift/reset sort, if you're familiar with the
 literature), but also _delimited_ dynamic variables. As soon as you
 start stack-slicing with partial continuations, you quickly find that
 standard implementations of dynamic variables fail in all sorts of
 nasty ways. Fundamentally, normal dynamic variables _cannot_ work
 cleanly with partial continuations because they either close over too
 much of the dynamic environment, or too little.
 
 Here's some reading on the topic:
 
 [1] http://okmij.org/ftp/Computation/dynamic-binding.html
 [2] http://www.cs.rutgers.edu/~ccshan/dynscope/DDBinding.pdf
 [3] 
 http://www.lshift.net/blog/2012/06/27/resumable-exceptions-can-macro-express-delimited-dynamic-variables
 
 frank
 
 Cheers,
 -- Pavel
 
 
 
 
 
 --
 best,
 Eliot
 
 
 




Re: [Pharo-dev] Use Spotlight to quickly evaluate and inspect short expressions

2014-03-26 Thread Pharo4Stef
I like the idea

now it is importznt that spotlight
found class , method, package well :)


Stef
On 25 Mar 2014, at 14:30, Sven Van Caekenberghe s...@stfx.eu wrote:

 I had this idea:
 
 https://pharo.fogbugz.com/f/cases/13128/Use-Spotlight-to-quickly-evaluate-and-inspect-short-expressions
 
 now you can do
 
 shift-Enter:42Enter
 
 to inspect the magic number 42
 
 shift-Enter:1500*1.25Enter
 
 to quickly compute your 25% raise
 
 shift-Enter:Float piEnter
 
 to see how many decimals you still remember
 
 shift-Enter:ZnClient new get: 'http://zn.stfx.eu/zn/small.html'Enter
 
 and so on.
 
 The interaction with the completion menu is not 100% perfect, but pressing 
 Space at the end before Enter solves that.
 
 Feedback ?
 
 Sven
 
 PS: I know that many Smalltalk greybeards type everywhere to the same effect, 
 and that is cool to, but it leaves around dirty windows. Opening a workspace 
 for a single expression often is overkill. This feature is totally keyboard 
 driven and very clean.
 
 PS2: Yes it resembles Emacs' M-: (evaluate-expression), but Pharo is much 
 cooler, right ;-)
 
 




Re: [Pharo-dev] [Pharo-fuel] FileSystemGit and Fuel final report

2014-03-25 Thread Pharo4Stef
When I see all the interactions and people helping I think that this was really 
worth :)
Thanks for ESUG for sponsoring your trip (like that we can reinvite with RMOD 
money).

Stef
On 24 Mar 2014, at 10:06, Max Leske maxle...@gmail.com wrote:

 For those who’ve been interested in what went on during the last two weeks, 
 where I visited Lille, I’ve compiled a short report. Regarding my work on Git 
 I’ll continue to report on the status from time to time.
 
 I want to thank everyone at RMoD once again for the warm welcome and the 
 support I received. Special thanks to Ben and Camillo for providing a place 
 to crash at.
 Thanks also go to all of you guys and girls on the list for pushing Pharo 
 constantly and for showing interest in my work. It’s very encouraging.
 
 Cheers,
 Max
 
 
 Git:
 - Esteban Lorenzano and me worked together on preparing the libgit2 and 
 libssh2 libraries for integration into the VM
 - Igor Stasenko worked with me to solve a couple of problems I had with 
 NativeBoost. Especially callbacks can be tricky
 - Learnt how to build the VM in debugging mode so that I could debug FFI 
 calls in XCode
 - Stefan Marr worked with me on moving the tests from Phexample to SUnit
 - The implementation now enables writing of blobs, trees and commits, cloning 
 of remote repositories (https), fetching from remote repositories (https), 
 pushing to remote repositories (https)
 - Authentication with remote repositories via SSH is working but clone, 
 fetch, push don't work yet (problems with the libssh2 interaction that I 
 wasn't able to resolve yet)
 - I set up an initial build infrastructure on the INRIA CI server 
 (https://ci.inria.fr/pharo-contribution/job/LibGit2/)
 - We defined a rough roadmap for what needs to be done in the near future:
1. finish the low level libgit2 abstraction (offer a minimal API that 
 hides the bindings; we don't want users to use the bindings directly)
2. we already have a prototype of a FileSystem wrapper for Git. We 
 want to use that on top of the libgit2 abstraction layer
3. we already have a Monticello FileSystem wrapper prototype. We want 
 to use that to abstract from the actual storage method. Together with the 
 Git-FileSystem wrapper this should make it very easy to continue (for now) 
 using Monticello and the existing GUI tools while using Git as a backend for 
 storage.
 - On Friday 21 I gave a short demo at RMoD on the work accomplished and what 
 the plans are for the future
 
 Fuel:
 - Martín Dias and I worked together on:
- debugging a problem with large object graphs
- preparing a new baseline for Fuel 2
- moving the benchmark suite to SMark
- setting up a benchmark build on the INRIA CI server which will help 
 us track performance changes when introducing changes
- defining a rough roadmap for Fuel
 - Had a discussion with Usman Bhatti about the uses and the future of Fuel in 
 Moose
 ___
 Pharo-fuel mailing list
 pharo-f...@lists.gforge.inria.fr
 http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-fuel



Re: [Pharo-dev] Random refactoring on UITheme or what?

2014-03-22 Thread Pharo4Stef

 bitter
 In Pharo3, the UITheme hierarchy seems to have been hit by random
 refactoring (it really looks like that) because it is broken in so many
 place[1][2][3] and in such obvious way (very visible).
 
 It will be nice the random refactorers take(s) full responsibility to do
 the job from A to Z, and not only from A to H.
 /bitter
 
 [1] https://pharo.fogbugz.com/f/cases/12554/Broken-Watery-theme
 [2] https://pharo.fogbugz.com/f/cases/13112/Broken-Vistary-theme
 [3] https://pharo.fogbugz.com/f/cases/13114/Broken-PharoTheme
 
 Thanks

Thanks hilaire.

Indeed this is sometimes difficult to do things :)
I think that we should be more cautious about
- making sure that changes fully works. I can tell you that when we 
worked three days with igor to clean the frame API 
it was a huge work but we when over all the corners and nobody saw even 
that we worked. 
- deprecate more 

Now you see you are the first one to report this. 

Stef


Re: [Pharo-dev] Random refactoring on UITheme or what?

2014-03-22 Thread Pharo4Stef


 Speaking of that, one will notice that the class comment of UITheme has the 
 examples list:
 
 Common superclass for User Interface themes. Provides methods for creating 
 new morphs in a standard way, various services like a file dialog, message 
 dialogs etc. and also methods for customising aspects of the appearance of 
 various morphs.
 Though conceptually abstract, no code is missing. Subclasses, therefore, 
 should override the aspects they wish to change.
 
 UITheme exampleBasicControls
 UITheme exampleBuilder
 UITheme exampleColorControls
 UITheme exampleDialogs
 UITheme exampleGroups
 UITheme exampleOtherControls
 UITheme exampleWindowWithToolbars
 
 But in 3.0 it is not in there, it moved to Widgets in 
 'Morphic-Examples-Widgets’

indeed!

 with:
 
 ExampleBuilderMorph 
 WidgetExamples 
 
 Maybe worth a change in the class comment.

Yes!
I think that many changes missed a deprecation or information to help people 
migrating. 


Re: [Pharo-dev] Bug in Rectangle?

2014-03-22 Thread Pharo4Stef
https://pharo.fogbugz.com/default.asp?13116


 Pointvertex: aPoint
 ^aRectangle vertex: self vertex: aPoint
 
 Rectangle classvertex: point1 vertex: point2
 ^self origin: (point1 min: point2) corner: (point1 max: point2)



Re: [Pharo-dev] Bug in Rectangle?

2014-03-22 Thread Pharo4Stef

 From the st80 ages, rectangle have allways been oriented.
 You have an origin and a corner inst var, not 2 corners or vertices.
 And you have creation messages Rectangle classorigin:corner:
 The conventions are that of latin scribes, the orientation of rectangle 
 should be (left-right , top-down)
 
 There is an assumption that a rectangle with negative width (right-left) or 
 height (bottom-top) should be treated as empty.


 And this was globally well maintained except a few breakages introduced in 
 Squeak along the years (but I hope I corrected most of the slips since then).
 
 Now Igor and Stephane had another view more geometric and un-oriented, and 
 wanted to change conventions/handling of empty rectangles in Pharo.
 I don't know how far they went, or even if it is feasible at all... IMO, it's 
 a recipe for maximizing breakage/gain ratio.

It is clearly not. :)
We removed bugs in the invalid rectangle areas and others.
And we fixed all the places that were created negative dimensions (like in 
framelayout) because rectangle where hijack to represent two points that were 
not 
a rectangle.
We also introduce margin which is really nice to represent 1,2, or 4 digits and 
avoid to overuse again a rectangle. 

 Note that VW has Rectangle classvertex:vertex:, and we probably should add 
 such message...
 
 
 
 
 2014-03-21 15:15 GMT+01:00 Noury Bouraqadi bouraq...@gmail.com:
 Inverting the origin and the corner of a rectangle changes the result of 
 intersection.
 I guess it's a bug, though I imagine that changing the code of Rectangle is 
 likely to have deep/undesired consequences..
 
 (0@0 corner: 100@100) intersects: (-50@ -50 corner: 80@80) == true
 (100@100 corner: 0@0) intersects: (-50@ -50 corner: 80@80) == false  
 
 Noury
 
 
 
 
 



Re: [Pharo-dev] Bug in Rectangle?

2014-03-22 Thread Pharo4Stef

 
 You did not fix everything that was fixed in Squeak.
 Example:
 
 rect1 := 10@10 corner: 40@40.
 empty2 := 30@30 corner: 20@20.
 (rect1 intersects: empty2) -  true

I think that we should not use intersect: anymore because it does not make 
sense. 

 What I see is that you provided intersect:ifNone: to avoid producing empty 
 rectangle in the first place - or to produce explicitely empty 0@0 extent: 
 0@0.
 
 But
 - not all intersect: senders have been changed,
Indeed we should probably continue

 - some senders have been changed questionably (allowedArea in 
 IdentifierChooserMorph is re-implementing RealEstateAgent class 
 maximumUsableArea differently)
 - I don't know if intersect: was the sole source of empty rectangles…

No around 160 layoutFrame and others

 Until all producers have been eradicated, the empty invariant still exists, 
 and Rectangle methods must still be guarded against empty rectangle edge 
 cases.
 Right now, it is not enforced everywhere (see intersects: case above).
 
 Right now you're in the middle of the bridge, but that's OK if the emptiness 
 invariant eradication is still planned, it's just a temporary transition..

If I remember correctly the goal is to never have never width.


Re: [Pharo-dev] Location of Metacello package dependency

2014-03-22 Thread Pharo4Stef
We were discussing about that.
My point is that the system should work if the catalog fall apart.
Now others told me that in other community this is the inverse. People only 
refer to the catalog.

Since we did not get last year and this year the engineer I requested to work 
on the validation of distirbution we did not make progress
on that front because we are busy. 

For me I do not use SqueakSource not because it is written Squeak but because I 
think that squeaksource is over and too old. 

Stef

 I'm currently browsing the various ConfigurationOf in MetaRepoForPharo30 
 catalog hoping to find a pattern to serve as guidelines, but what I see is a 
 messy variety of solutions:
 
 - direct reference to specific source repositories of package B as Johan 
 suggested (and the successive baselines are effectively tracking motions of B)
 IMO the worst thing, I don't manage B and don't want to update my 
 ConfigurationOfA each time B moves.
 
 - references to ConfigurationOfB thru squeaksource MetacelloRepository.
 My preferred solution. I don't care if the catalog is centralized on 
 squeaksource, Smalltalkhub or whatever, but I want a centralized catalog

Me too. 
Now the question is the following one. 
Ideally I would like to have one inbox and that configuration move to the 
catalog for their version.
(Because I do not see the point of having around old versions of projects that 
do not load in the given version).
I explained that in the Pharo vision document. 
Now may be other solutions are better.

Stef


 
 - refrences thru MetaRepo catalog du jour (tracking motions of MetaRepo 
 across baselines)
 My original question, using secondary catalogs is not a problem if they are 
 just a duplicata, but I prefer to ask, because it sounds strange to have 
 multiple catalogs just to implement a filter (the filter being select those 
 packages that are tested and approved in pharo x.y)... Certainly a workaround 
 for a missing feature of Metacello.
 
 - a mixture of the 3 solutions above for some packages!
 That appears as randomness from my POV, or like of guidance
 
 So again, what are the best practices currently, and could we think of it in 
 a bit longer term?
 
 
 2014-03-22 21:51 GMT+01:00 Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com:
 
 2014-03-22 21:27 GMT+01:00 Johan Brichau jo...@inceptive.be:
 
 I don't understand what squeaksource has to do with that.
 With main repository, I mean the repository of the project itself. 
 
 Almost all ConfigurationOfXXX are hosted together with the project itself. 
 They are also referenced in that repo. The MetacelloRepo or MetaRepos are 
 almost always secondary copies (if not, they should be)
 
 Johan
 
 
 Arghh N, so that is really going to be a problem for me !
 With MetacelloRepository I absolutely don't care where to find a specific 
 package, I have some kind of centralized catalog.
 
 Now, if I must track each and every motion of package B from squeaksource to 
 ss3 to SmalltalkHub to github to (what's next ?), the idea of catalog is 
 completely broken then...
 
 Nicolas
 
 
 On 22 Mar 2014, at 21:10, Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com wrote:
 
 OK, if the MetacelloRepository on squeaksource can still serve as reference, 
 I'm perfectly OK with it, I don't know why I had this impression that 
 anything beginning with those 6 letters was going to be seen as a problem ;)
 
 
 2014-03-22 18:53 GMT+01:00 Johan Brichau jo...@inceptive.be:
 Why can you not reference the main repository? The meta repository is just a 
 place where the configuration loader tool fetches them.
 
 Platform-specific elements go in the separate 'sections' of a baseline or 
 version method. 
 
 Don't make separate branches of the same ConfigurationOf class. You will not 
 only make your life hard but also confuse all users!
 
 Maybe you can explain why you think you need those?
 
 Johan 
 
 On 22 Mar 2014, at 18:20, Nicolas Cellier 
 nicolas.cellier.aka.n...@gmail.com wrote:
 
 I have some packages A that depend on another package B.
 In Metacello, I can easily declare the dependency
 spec
 className: 'ConfigurationOfB';
 versionString: #'stable';
 repository: 'http://www.squeaksource.com/MetacelloRepository' ].
 But the repository is hardcoded here.
 
 My problem is that I'd like to edit a ConfigurationOfA valid for pharo 1.x, 
 2.0.x and 3.0.x (so far so good) and put a copy in MetaRepoForPharo20 and 
 another copy in MetaRepoForPharo30.
 
 Since the repository is hardcoded, this is going to be a problem because 
 the MetaRepo will then cross-ref other repositories and weaken robustness 
 or miss uptodate ConfigurationOfB...
 
 I'd like to avoid maintaining many branches of ConfigurationOfA.
 
 How do others resolve this?
 
 
 



Re: [Pharo-dev] Voyage cannot be load

2014-03-21 Thread Pharo4Stef

 
 I know. I would wish we would stop having metacello versions that contain 
 dependencies to symbolic versions. A tool like versionner should rewrite 
 every symbolic version to a number version when producing a release.


Indeed!
Christophe is working on that.
Release should not be symbolic!

Stef




Re: [Pharo-dev] Nautilus: plugins, PackageTreePackageSelection, PackageTreeTagSelectop, promote, tags, ...

2014-03-21 Thread Pharo4Stef
thanks phil
We should do another pass on nautilus.

On 21 Mar 2014, at 19:58, p...@highoctane.be wrote:

 Furthering the investigation:
 
 With groups, plugins are not working at all as package doesn't exist in 
 DynamicClassGroup etc.
 
 I fixed the plugin I was interested in but this makes for strange code as:
 
 packageSelected: anAnnouncement
   
   | package name |
   
   (anAnnouncement respondsTo: #package) ifTrue: [ 
 ...
 
 This is because the announcement comes for a package which is not one.
 
 even if one has registered it with:
 
 registerTo: aModel
 
   aModel announcer
   on: NautilusPackageSelected send: #packageSelected: to: self
 
 Maybe should we have other announcements for these specific items like 
 DynamicClassGroup (e.g. DynamicClassGroupSelected announcement)
 
 I have made a little plugin to help me explore the selected classes in the 
 left most list.
 
 Also adding 
 
 RPackagepackage
^self
 
 helps with package selected code as without it it is hard to write:
 
 package node item package 
 
 for both PackageTreeTagSelection and PackageTreePackageSelection
 
 
 This makes the TasksPlugin code like;
 
 packageSelected: anAnnouncement
   
   | package |
   (anAnnouncement respondsTo: #package) ifTrue: [ 
   package := anAnnouncement package.
 
   package
   ifNil: [ tasks removeAll ]
   ifNotNil: [ 
   (package node item respondsTo: #package) 
 ifTrue: [ 
   tasks := (self systemNavigation 
 allCallsOn: 'flag:' asSymbol) select: [ :m | package node item package 
 includesMethod: m selector ofClass: m methodClass ]
   ].
   ].
   
 
   ] ifFalse: [ 
 tasks removeAll.
   ].
 
   self changed: #tasks.
 
 Maybe can we get this leaner with the proposed changes to the announcements.
 
 Phil 
 
  
 
 
 
 On Fri, Mar 21, 2014 at 7:12 PM, p...@highoctane.be p...@highoctane.be 
 wrote:
 I have been looking at Nautilus plugins as I wanted to be able to export some 
 classes to other formats (e.g. CSV, XML for use with other tools).
 
 Then, I started playing around with the URLPlugin with its buildString 
 method, which proves helpful to find out about what is selected in the 
 'list2'.
 
 So, that's where I started drilling down the rabbit hole...
 
 So, I see that we have packages and package tags. And actions like promote as 
 true package and demote (which kind of doesn't work and crashes, but I should 
 test further).
 
 One thing is that this setup breaks the PackageTasks plugin is broken at this 
 point.
 
 We have: 
 packageSelected: anAnnouncement
 package := anAnnouncement package.
 ...
 tasks := (self systemNavigation allCallsOn: 'flag:' asSymbol) select: [ :m | 
 package includesMethod: m selector ofClass: m methodClass ] ]
 
 But with the packages and tags, it doesn't work.
 
 In fact, package is misleading as the announcement contains a 
 PackageTreePackageSelection or a PackageTreeTagSelection.
 
 Question: how is one filtering on either the package or a given tag? Is this 
 possible?
 I saw the node and nodeitem things.
 
 I was trying to build the full path (Like Nautilus-Plugin from what is 
 selected in the model).
 Question; Is there any method for doing that at this point? (e.g. fullTag?)
 
 Then I tried this:
 
 Object subclass: #
   instanceVariableNames: ''
   classVariableNames: ''
   category: 'Nautilus-Nautilus'
 
 This gets  mixed with the classes in Nautilus under the Nautilus package 
 in the Nautilus tag.
 
 So, a tag class is mixed with the root package. Not nice.
 
 What's the underlying model? Is there a doc somewhere?
 
 Going back to the digging...
 
 TIA
 Phil
 
 ExplorePackageSelectedPlugin.st



Re: [Pharo-dev] FileSystem-Git status update 2

2014-03-19 Thread Pharo4Stef
+1 

On 19 Mar 2014, at 08:53, Yuriy Tymchuk yuriy.tymc...@me.com wrote:

 Good to see this progress! Thanks for your effort.
 
 Uko
 
 On 19 Mar 2014, at 08:46, Max Leske maxle...@gmail.com wrote:
 
 - I moved all the code to the FileSystemGitDev team on Smalltalkhub
 - we now have a working LibGit2 build (tests fail but that will be fixed in 
 the coming days)
 - we got simple fetch working yesterday (yay!)
 - we (which means Stefan) started rewriting our tests with SUnit, moving 
 away from Phexample (for several reasons)
 
 Today’s program:
 - migrate more tests
 - fix initialization and setup issues
 - try to perform a complete fetch + merge (without conflicts)
 - implement clone
 - try to get push working
 
 Have a great day!
 
 Cheers,
 Max
 
 




[Pharo-dev] Fwd: pharo sound should be working

2014-03-18 Thread Pharo4Stef


Begin forwarded message:

 From: xavier MESSNER xmess...@gmail.com
 Subject: Re: [Pharo-dev] pharo sound should be working
 Date: 17 Mar 2014 22:12:30 GMT+1
 To: Stéphane Ducasse stephane.duca...@inria.fr
 
 Salut Stéphane,
 
 Les modifications apportées corrigent le problème. Le son fonctionne 
 correctement mais uniquement si le serveur sonore Pulseaudio n'est pas 
 démarré, ce qui n'est pas le cas pour les distributions modernes ou orientées 
 desktop. Pour avoir du son j'ai dû désactiver pulseaudio.
 
 Voici comment j'ai procédé.
 
 Dans ~/.pulse/client.conf
 
 autospawn = no
 
 Cela permet de ne pas relancer le service en automatique
 
 Ensuite
 
 killall pulseaudio
 
 Maintenant je suis dans une configuration idéale et j'ai pu rejouer la 
 mélodie de pacman :)
 
 Seulement, si le serveur de son pulseaudio est lancé j'ai cela qui apparaît 
 dans la console
 
 sound_Start(default)
 soundStart: snd_add_pcm_handler: Fonction non implantée
 sound_Start(default)
 soundStart: snd_add_pcm_handler: Fonction non implantée
 
 Je suis bien parti de la dernière version de la vm disponible comme demané.
 A mon avis lorsqu'on utilise pulseaudio, il y a conflit avec la vm qui elle 
 veut utiliser alsa.
 
 Xavier.
 
 
 2014-03-17 20:03 GMT+01:00 Stéphane Ducasse stephane.duca...@inria.fr:
 xavier peux-tu reessayer?
 
 
 Begin forwarded message:
 
 From: Esteban Lorenzano esteba...@gmail.com
 Subject: Re: [Pharo-dev] pharo sound should be working
 Date: 17 Mar 2014 15:45:06 GMT+1
 To: Pharo Development List pharo-dev@lists.pharo.org
 Reply-To: Pharo Development List pharo-dev@lists.pharo.org
 
 can you check with the latest vm now?
 
 btw… you need to install:
 
 sudo apt-get install libasound2-plugins:i386
 
 in order to prevent warnings.
 
 On 15 Mar 2014, at 00:03, Nicolai Hess nicolaih...@web.de wrote:
 
 2014-03-14 21:43 GMT+01:00 Esteban Lorenzano esteba...@gmail.com:
 
 Hi,
 
 so I committed some changes to allow soundplugin to work on the pharovm.
 can you please download and test in your platforms?
 
 Works on windows
 
  
 
 (remember, in linux you need libasound2 dependency installed)
 
 it does not work on linux Ubuntu 12.04.2 LTS
 (I have installed libasound2).
 
 Why don't we include the pulse config again and build the vm-sound-pulse 
 module as well?
 As I described it in the issue 12493, vm-sound-oss is buildable too. But 
 current
 linux distribution don't provide the older OSS sound system.
 (it worked for me with ubuntu 10.04 but not with 12.04)
  
 
 cheers,
 Esteban
 
 
 
 
 



[Pharo-dev] Better catalog builder

2014-03-18 Thread Pharo4Stef
Hi guys

I improved the catalog builder to take into more sources of configurations.
I will add an Error log to identify potential problems.

Stef



[Pharo-dev] Catalog entry of ConfigurationOfPunQLite is broken

2014-03-18 Thread Pharo4Stef
Hi 

I improved the CatalogBuilder to be more robust but Catalog entry of 
ConfigurationOfPunQLite is broken 

 Startup Error: MessageNotUnderstood: ByteStringput:
ByteString(Object)doesNotUnderstand: #put:
ConfigurationOfPunQLite classcatalogKeyClassesAndExample
CatalogBuilderbuildKeyClassesFor:on:
CatalogBuildercatalogCardBodyFor: in Block: [:s | ...


Thanks

[Pharo-dev] Looking for a project reloader tool

2014-03-18 Thread Pharo4Stef
Hi guys

I’m starting to get bored to always reload my projects in new images.
I would like to have a simple button to say 
Save script to reload on a project

Does any of you implement such behavior?
Else I will do it.

Stef


Re: [Pharo-dev] Looking for a project reloader tool

2014-03-18 Thread Pharo4Stef
yes but my projects are often not related. I will try to add a menu in the 
configurationBrowser to generate nice information such as

Gofer it 
smalltalkhubUser: 'MartinDias' project: 'Epicea';
configuration; loadStable.


Gofer it 
smalltalkhubUser: 'DamienCassou' project: 'Pier-Gutemberg';
package: 'ConfigurationOfCatalog'; 
load.

Stef


On 18 Mar 2014, at 11:14, Sven Van Caekenberghe s...@stfx.eu wrote:

 One way to do this (restore all your own stuff in a new image) is to use a 
 single configuration ... 
 
 On 18 Mar 2014, at 11:08, Pharo4Stef pharo4s...@free.fr wrote:
 
 Hi guys
 
 I’m starting to get bored to always reload my projects in new images.
 I would like to have a simple button to say 
  Save script to reload on a project
 
 Does any of you implement such behavior?
 Else I will do it.
 
 Stef
 
 




Re: [Pharo-dev] Just found, i can compile this:

2014-03-18 Thread Pharo4Stef

On 18 Mar 2014, at 17:02, Clément Bera bera.clem...@gmail.com wrote:

 Hello,
 
 For blockClosures it is normal, block closure arguments have always been 
 assignable since smalltalk-80.

No this is wrong. 

 We could add a warning to discourage it, but we cannot forbid it, or we will 
 not be able to load lots of frameworks and libraries that use it.

No they should not 
 So 12419 is not a bug to me, it's a feature.

No this is a bug.

 
 For methods it is a bug, thanks for noticing. I will check.
 
 
 
 
 2014-03-18 15:45 GMT+01:00 Nicolai Hess nicolaih...@web.de:
 similiar to issue 12419  block arguments should be read only
 
 
 2014-03-18 15:21 GMT+01:00 Camille Teruel camille.ter...@gmail.com:
 
 Indeed, I can compile:
 
 Cfoo: arg
 ^ arg := 3
 
 And 'C new foo: 1' returns 3...
 
 
 On 18 mars 2014, at 15:16, Igor Stasenko siguc...@gmail.com wrote:
 
  extent: newExtent
 
  vertical
  ifTrue: [ newExtent := self  defaultWidth @ newExtent y ]
  ifFalse: [ newExtent := newExtent x @ self  defaultWidth ].
 
  super extent: newExtent
 
  Can you verify it? Arguments should be not assignable.
 
  --
  Best regards,
  Igor Stasenko.
 
 
 
 



Re: [Pharo-dev] Adding a new catalog entry

2014-03-17 Thread Pharo4Stef

 well we will have to clean and simplify all that in the future. 
 This is why versionner should be good so that people use it and we can 
 simplify the declarations. 
 
 Stef
 
  
 But I had the  feeling that Versionner UI is currently very limited vs 
 Metacello options (especially w.r.t. cross dialect support)


The problem is that metacello is too complex. :)
And the API could be better.

 Or do you have a different POV, like only Pharo3.0 stuff should go to 
 MetaRepoForPharo3.0, and the ConfigurationOf... should be expunged from any 
 other dialect/version ?

For now this is ok to have multiple dialects in the metarepo because people may 
want to have gemstone and squeak version.
Now for the core Pharo tool configruations should be as simple as possible (RB, 
…)

Stef

 
  
  
 Bye
 T.
  
 Gesendet: Sonntag, 16. März 2014 um 17:31 Uhr
 Von: Nicolas Cellier nicolas.cellier.aka.n...@gmail.com
 An: Pharo Development List pharo-dev@lists.pharo.org
 Betreff: Re: [Pharo-dev] Adding a new catalog entry
  
 2014-03-16 16:06 GMT+01:00 Sven Van Caekenberghe s...@stfx.eu:
 Nicolas,
 
 On 16 Mar 2014, at 10:08, Sven Van Caekenberghe s...@stfx.eu wrote:
 
  To get access your StHub account, if you have any, should be part of the 
  Pharo team, but I don't think I can do that.
  
 I now see that 'nice' is part of 'Pharo', so I think you should be able to 
 save to MetaRepoForPharo30.
  
 
 Thanks, I think I messed up when entering my credentials...
 I have now published with a symbolic stable version.
  
 Sven



Re: [Pharo-dev] WhatsUp from: 2014-03-17 until: 2014-03-31

2014-03-17 Thread Pharo4Stef
 
 ### Here's what I've been up to since the last WhatsUp:

- working on new book chapter
- better catalog
- working on finding money for engineers.

 
 ### What's next, until 2014-03-31 (*):

- consortium more work.
- working on finding money for engineers
- unreloader




Re: [Pharo-dev] WhatsUp from: 2014-03-17 until: 2014-03-31

2014-03-17 Thread Pharo4Stef

 seas...@rmod.lille.inria.fr wrote:
 Hi! We're sending this automatic email twice a month, to give the community 
 an opportunity to easily know what's happening and to coordinate efforts.  
 Just answer informally, and feel free to spawn discussions thereafter!
 
 ### Here's what I've been up to since the last WhatsUp: 
 * Had a dozen or so bug fixes integrated. Surprised myself by how far I could 
 dig into the system and it still made sense.  I've learnt a lot about corners 
 of the system I'd normally never poke around in. Its been fun.

And this is cool :)

 
 ### What's next, until 2014-03-31 (*):
 
  
 Squash more bugs.
 




Re: [Pharo-dev] pharo sound should be working

2014-03-17 Thread Pharo4Stef
did you enable sound in the setting?

On 17 Mar 2014, at 20:53, Nicolai Hess nicolaih...@web.de wrote:

 Still no sound on Ubuntu 12.04
 (libasound2 and libasound2-plugins installed).
 I see the warning on the terminal although libasound2-plugins is 
 installed.
 
 
 2014-03-17 17:40 GMT+01:00 Esteban Lorenzano esteba...@gmail.com:
 the ppa is not updated yet… this is a test version. 
 you have to install libasound2i386 and  libasound2-plugins:i386.
 you get the vm with zeroconf: wget -O- get.pharo.org/vmLatest | bash
 
 Esteban
 
 On 17 Mar 2014, at 16:49, J.F. Rick s...@je77.com wrote:
 
 What would I need to do to install it on Ubuntu? Could I just use the PPA? 
 If so, what are the commands?
 
 Cheers,
 
 Jeff
 
 
 On Mon, Mar 17, 2014 at 3:45 PM, Esteban Lorenzano esteba...@gmail.com 
 wrote:
 can you check with the latest vm now?
 
 btw… you need to install:
 
 sudo apt-get install libasound2-plugins:i386
 
 in order to prevent warnings.
 
 On 15 Mar 2014, at 00:03, Nicolai Hess nicolaih...@web.de wrote:
 
 2014-03-14 21:43 GMT+01:00 Esteban Lorenzano esteba...@gmail.com:
 Hi,
 
 so I committed some changes to allow soundplugin to work on the pharovm.
 can you please download and test in your platforms?
 
 Works on windows
 
  
 
 (remember, in linux you need libasound2 dependency installed)
 
 it does not work on linux Ubuntu 12.04.2 LTS
 (I have installed libasound2).
 
 Why don't we include the pulse config again and build the vm-sound-pulse 
 module as well?
 As I described it in the issue 12493, vm-sound-oss is buildable too. But 
 current
 linux distribution don't provide the older OSS sound system.
 (it worked for me with ubuntu 10.04 but not with 12.04)
  
 
 cheers,
 Esteban
 
 
 
 
 
 
 -- 
 Jochen Jeff Rick, Ph.D.
 http://www.je77.com/
 Skype ID: jochenrick
 
 



Re: [Pharo-dev] Image's size in pillar

2014-03-16 Thread Pharo4Stef
HI natalia

in my chapter I do 

+Inspecting and interacting with a 
Dicefile://figures/DiceNoDetail.pdf|width=50|label=figDiceNoDetail+

and it is working. I checked and when I modify the size the picture size 
changes too.

Stef

On 16 Mar 2014, at 14:23, Natalia Tymchuk natalia.tymc...@unikernel.net wrote:

 Hello,
 
 I write chapter for PharoForTheEnterprise and I have problems with images. It 
 is said, that I should use the syntax :
 +Captionfile://image.png|width=50|label=label+
 
 but with changing the value width I didn’t get changes of my images sizes. 
 How can I make my images take half of the page’s width? 
 
 Best regards,
 Natalia




Re: [Pharo-dev] Image's size in pillar

2014-03-16 Thread Pharo4Stef
ok now I understand you meant in the html output.
Probably the exporter does not do it well. In latex it works. 

On 16 Mar 2014, at 19:51, Natalia Tymchuk natalia.tymc...@unikernel.net wrote:

 I see this code  figureimg src=pictures/AB2.png/imgfigcaptionAB2 
 example/figcaption/figure
 
 in the generated file. And here is no width defined or maybe I didn’t see it.
 
 On Mar 16, 2014, at 3:37 PM, Pharo4Stef pharo4s...@free.fr wrote:
 
 HI natalia
 
 in my chapter I do 
 
 +Inspecting and interacting with a 
 Dicefile://figures/DiceNoDetail.pdf|width=50|label=figDiceNoDetail+
 
 and it is working. I checked and when I modify the size the picture size 
 changes too.
 
 Stef
 
 On 16 Mar 2014, at 14:23, Natalia Tymchuk natalia.tymc...@unikernel.net 
 wrote:
 
 Hello,
 
 I write chapter for PharoForTheEnterprise and I have problems with images. 
 It is said, that I should use the syntax :
 +Captionfile://image.png|width=50|label=label+
 
 but with changing the value width I didn’t get changes of my images sizes. 
 How can I make my images take half of the page’s width? 
 
 Best regards,
 Natalia
 
 
 
 




Re: [Pharo-dev] method Quest :)

2014-03-15 Thread Pharo4Stef
I have to think if the asSet is needed too.

In fact I want in addition


intersectionAndDifferences: aColl

because I want to be able to define nicely 


merge: aDict onKeyConflictDoValues: aBlock
as follow


| d d2 |
d := #(1 3 4 5 ) groupedBy: #even.
d2 := #(10 31 41 50 ) groupedBy: #even.
d merge: d2 onKeyConflictDoValues: [ :aValue :anotherValue | (aValue, 
anotherValue) asSet asOrderedCollection ] 

Because manipulating dictionaries whose values are collections is boring.

Stef
On 14 Mar 2014, at 23:15, Sven Van Caekenberghe s...@stfx.eu wrote:

 Are the final #asArray conversions always needed ?
 If not, it would be more efficient not to do them every time, no ?
 
 On 14 Mar 2014, at 22:19, Pharo4Stef pharo4s...@free.fr wrote:
 
 something like that 
 
 diffs: aCollection
  Answer the set theoretic differences of two collections. The first 
 element of the result is the difference from the perspective of the receiver 
 and the second element the difference from the perspective of the argument.
 
  #(a b c d e f) diffs:  #(a b z k)  #(#a #b #c #d #e #f)
  { #(#f #d #e #c) .  #(#k #z)} 
  
  { self difference: aCollection .  aCollection difference: self }
  
  | receiver another |  
  receiver := self asSet. 
  another := aCollection asSet.  
  self do: [ :each | 
  (another includes: each)
  ifTrue: [ receiver remove: each.
   another 
 remove: each ]].
  ^ { receiver asArray . another asArray}
 
 
 




Re: [Pharo-dev] method Quest :)

2014-03-15 Thread Pharo4Stef
Now I can merge dictionaries in a nice way

testMergeWithNonOverlappingKeys
self run: #testMerge

| d d2 d3 |
d := Dictionary new at: #x put: #(x y z) ; at: #y put: #(e f g ) ; at: 
#a put: #(a b c); yourself.
d2 := Dictionary new at: #x put: #(x y z) ; at: #y put: #( h i j) ; 
yourself.
d3 := d merge: d2 onKeyConflictDoValues: [ :aValue :anotherValue | 
(aValue, anotherValue) asSet asOrderedCollection ].

self assert: (d3 at: #y) equals: #(e f g h i j).
self assert: (d3 at: #a) equals: #(a b c ).
self assert: (d3 at: #x) equals: #(x y z).



Re: [Pharo-dev] EyeTreeInspector not ready for prime-time

2014-03-14 Thread Pharo4Stef
thanks sven.


 
 On 13 Mar 2014, at 22:35, Sven Van Caekenberghe s...@stfx.eu wrote:
 
 Should I make a slice ?
 
 I have grouped all my suggested solutions and then some more in 
 
 https://pharo.fogbugz.com/f/cases/13076/Optimize-the-information-displayed-by-EyeInspector-and-EyeTreeInspector
 
 Sven




Re: [Pharo-dev] FileSystem-Git status update

2014-03-14 Thread Pharo4Stef
excellent!
Keep pushing.

On 14 Mar 2014, at 11:11, Max Leske maxle...@gmail.com wrote:

 Hi everyone
 
 I promised to keep you posted about the progress, so here goes:
 
 - Esteban and I worked together yesterday and we got callbacks working
 - I will now do some cleanup so that its actually possible to work on libgit2 
 (some bindings have changed between versions 0.18 and 0.20 and I need to find 
 out which)
 - Esteban and I will sit together again on Monday and prepare work for others 
 / implement the object model on top of libgit2. I hope that we can separate 
 tasks so that multiple people can work in parallel
 
 In my opinion we should be able to create local repositories, perform 
 commits, switch branches and do checkouts by tuesday next week. 
 Optimistically, fetch and push should also work by the end of the week.
 But that’s really just conjecture and I’ll keep you all posted.
 
 Just a reminder: at the moment we are working to get Git running with 
 NativeBoost *at all*. Plans for abstraction, Monticello - Git, Github etc. 
 should certainly be discussed, but don’t expect those things to be there at 
 the end of next week.
 
 Max




Re: [Pharo-dev] method Quest :)

2014-03-14 Thread Pharo4Stef
something like that 

diffs: aCollection
Answer the set theoretic differences of two collections. The first 
element of the result is the difference from the perspective of the receiver 
and the second element the difference from the perspective of the argument.

#(a b c d e f) diffs:  #(a b z k)  #(#a #b #c #d #e #f)
{ #(#f #d #e #c) .  #(#k #z)} 

{ self difference: aCollection .  aCollection difference: self }

| receiver another |  
receiver := self asSet. 
another := aCollection asSet.  
self do: [ :each | 
(another includes: each)
ifTrue: [ receiver remove: each.
 another 
remove: each ]].
^ { receiver asArray . another asArray}






Re: [Pharo-dev] [ANN] Merchant - a credit card processing library

2014-03-13 Thread Pharo4Stef
Thanks this is nice to see all these packages getting exposure
On 12 Mar 2014, at 22:01, Sebastian Sastre sebast...@flowingconcept.com wrote:

 Hi there,
 
 actually this was announced a long ago, but we moved it to github:
 https://github.com/sebastianconcept/Merchant
 
 Also available in Pharo's ConfigurationOf..  catalog

Hourra.

 
 It might be useful for other people
 
 sebastian
 
 o/
 



[Pharo-dev] method Quest :)

2014-03-13 Thread Pharo4Stef
Hi guys

I need the following behavior and I started to implement it (but I’m not sure 
that I implemented in a good way).
But may be this method already exist.

testDiffs
self run: #testDiffs

self assert: (#(a b c d e f) diff: #(a b z k)) equals: {#(c d e f) . 
#(z k)}.

Stef


Re: [Pharo-dev] method Quest :)

2014-03-13 Thread Pharo4Stef
I was thinking that I could do it in one pass.



 On Thu, Mar 13, 2014 at 8:52 AM, Pharo4Stef pharo4s...@free.fr wrote:
 #(a b c d e f) diff: #(a b z k)
 
 Use #difference:
 
 #(a b c d e f) difference:  #(a b z k). ==  #(#f #d #e #c)
 #(a b z k) difference: #(a b c d e f) == #(#k #z)
 
 
 -- 
 Damien Cassou
 http://damiencassou.seasidehosting.st
 
 Success is the ability to go from one failure to another without
 losing enthusiasm.
 Winston Churchill
 




Re: [Pharo-dev] thumbs up to Pharo3 from Yesplan

2014-03-13 Thread Pharo4Stef
Thanks and good holidays



 Hi everyone,
 
 I want to send a thumbs up to everyone working on Pharo, coming from the 
 Yesplan.be team.
 Over the past few months, we have been working on migrating the development 
 of Yesplan from Pharo1.4 to Pharo3.0 (yes, we did skip Pharo2.0). 
 
 I have been working in Pharo3 exclusively since January and have seen the 
 tools evolve and improve. Up until last week, my colleagues were still 
 working on Pharo1.4 because we needed to ensure continued development on the 
 product itself. So the application is completely cross-platform Pharo1.4, 
 Pharo3.0 and Gemstone2.4 (verified by 4082 automated tests).
 
 My time is limited right now (stress before leaving on a week holiday), but 
 if you are interested, I intend to write up more feedback. There are issues 
 we are trying to investigate ourselves, but obviously we are not 
 time-efficient diving into unknown code. 
 
 Keep up the good work!
 
 Johan




  1   2   3   >