Re: [Pharo-users] Spec doc

2016-02-07 Thread Hernán Morales Durand
2016-02-07 5:33 GMT-03:00 stepharo :

>
>
> Le 6/2/16 21:44, Hernán Morales Durand a écrit :
>
> As always I don't have time to open, follow and check issues. It is faster
> (for me) if I have them isolated.
> But my repos are always open and anyone can feel free to ask me about the
> extensions.
> Sorry for this.
>
> I cannot believe that it takes you that much time to open a bug entry and
> package your changes
> compared with getting impacted the next teim we will do a pass on spec
>
>
When I am coding I am concentrated in building features for my application,
I cannot stop 5 minutes every time I find missing or bug in methods in
Spec, Metacello, Glamour (which is *very* often), or other core packages.

On the other side opening an entry is more than saying "this doesn't work",
there is a context of usage you have to explain, you have to search for
previously opened similar entries, you have to try to reproduce the exact
steps (not always possible), describe them in an undestandable way for the
reader, and if you propose a fix sometimes you have to explain again, and
check for regressions you all know the right steps.

So in this case, I have packaged my Spec extensions (which needs to be
reviewed anyway) and uploaded to SmalltalkHub under MIT license. I am sorry
to hear that is not enough for you. If anyone really wish to review
extensions in Spec please welcome - because they would probably also
contains bugs - I cannot do more for Pharo now and I have to work for my
employer which is asking me everyday things completely far far away from
Pharo (you know I do not want to get fired :).

Now you are telling us that do not know what you did to do that.
> This is a bit unfair when I see the COUNTLESS hours I spend writing docs
> and improving Pharo.
>
>
Yes, and I think most of us sincerely appreciate your efforts. And I also
believe many of us have our own battles. Actually I had to "fight" every
week for Pharo because having people telling Python/R has implemented X
(which is crappy argument) is not easy.

Hernán



> Stef
>
>
> Hernán
>
>
> 2016-02-06 16:45 GMT-03:00 stepharo :
>
>> Hernan
>>
>> why did you push such extensions in the main spec version inside the
>> image?
>> I do not get the rationale of not doing it. Especially since we always
>> welcome
>> enhancements.
>>
>> Stef
>>
>> Le 5/2/16 18:55, Hernán Morales Durand a écrit :
>>
>> BTW have a look at http://www.smalltalkhub.com/#!/~hernan/SpecUIAddOns .
>> Repository contains behaviors I had to add while developing a desktop
>> application.
>>
>> Hernan
>>
>>
>> 2016-02-05 8:52 GMT-03:00 Hernán Morales Durand <
>> hernan.mora...@gmail.com>:
>>
>>> Hi Hilaire,
>>>
>>> 2016-02-04 13:42 GMT-03:00 Hilaire < hila...@drgeo.eu>
>>> :
>>>
 Hello

 I want to evaluate the use of Spec for desktop application.

 What are the recommended spec reading?


>>> In this case, the best is to read source code in the image.
>>>
>>>
 Is Spec feature complete enough to develop application with complex GUI?
 (very subjective question)


>>> Besides all good intentions and nice innocent feelings, Spec is not
>>> ready yet for professional UI development. However you can lower your
>>> ambitions by building simpler UI components. The lack of a UI builder is
>>> not helping at all.
>>>
>>> Hernán
>>>
>>>
>>
>>
>>
>
>


Re: [Pharo-users] Spec doc

2016-02-07 Thread stepharo



Le 6/2/16 21:44, Hernán Morales Durand a écrit :
As always I don't have time to open, follow and check issues. It is 
faster (for me) if I have them isolated.
But my repos are always open and anyone can feel free to ask me about 
the extensions.

Sorry for this.
I cannot believe that it takes you that much time to open a bug entry 
and package your changes

compared with getting impacted the next teim we will do a pass on spec

Now you are telling us that do not know what you did to do that.
This is a bit unfair when I see the COUNTLESS hours I spend writing docs 
and improving Pharo.


Stef


Hernán


2016-02-06 16:45 GMT-03:00 stepharo >:


Hernan

why did you push such extensions in the main spec version inside
the image?
I do not get the rationale of not doing it. Especially since we
always welcome
enhancements.

Stef

Le 5/2/16 18:55, Hernán Morales Durand a écrit :

BTW have a look at
http://www.smalltalkhub.com/#!/~hernan/SpecUIAddOns
 .
Repository contains behaviors I had to add while developing a
desktop application.

Hernan


2016-02-05 8:52 GMT-03:00 Hernán Morales Durand
>:

Hi Hilaire,

2016-02-04 13:42 GMT-03:00 Hilaire >:

Hello

I want to evaluate the use of Spec for desktop application.

What are the recommended spec reading?


In this case, the best is to read source code in the image.

Is Spec feature complete enough to develop application
with complex GUI?
(very subjective question)


Besides all good intentions and nice innocent feelings, Spec
is not ready yet for professional UI development. However you
can lower your ambitions by building simpler UI components.
The lack of a UI builder is not helping at all.

Hernán









Re: [Pharo-users] Spec doc

2016-02-07 Thread stepharo

Hi hernan

some feedback/questions while waiting for my kids...

=
"protocol: *SpecUIAddOns"
includesNameBeginsWith: aString
" Answer whether the receiver begins with aString. "

^ self asLowercase = aString first asLowercase


does not look like doing what it says.


=
I do not get

specModalParent
" Receiver cannot be modal parent, answer a default (morphic world) "

^ [ self currentWorld ]
on: Error
do: [ : ex | UIManager default currentWorld ]


=

In searchableTree

either use tree or self tree

"protocol: *SpecUIAddOns"
autoMultiSelection: aBoolean

self tree autoMultiSelection: aBoolean



It was interested to see that you added a lot of methods

methods
self xxxmodel methods

I was against them.
Now the point is

if we ban such idiom

remove: anItem
self listModel remove: anItem

then (beside exposing the model which would be ok for me if we consider 
it as a port)


we have the problem of encapsulating more complex behavior
such

removeAllItems

self listModel removeAll.
self updateList

So probably that

remove: anItem
self listModel remove: anItem

is better


Stef





Re: [Pharo-users] Spec doc

2016-02-07 Thread Serge Stinckwich
On Sun, Feb 7, 2016 at 10:22 AM, Hernán Morales Durand
 wrote:
>
> 2016-02-07 5:33 GMT-03:00 stepharo :
>>
>>
>>
>> Le 6/2/16 21:44, Hernán Morales Durand a écrit :
>>
>> As always I don't have time to open, follow and check issues. It is faster
>> (for me) if I have them isolated.
>> But my repos are always open and anyone can feel free to ask me about the
>> extensions.
>> Sorry for this.
>>
>> I cannot believe that it takes you that much time to open a bug entry and
>> package your changes
>> compared with getting impacted the next teim we will do a pass on spec
>>
>
> When I am coding I am concentrated in building features for my application,
> I cannot stop 5 minutes every time I find missing or bug in methods in Spec,
> Metacello, Glamour (which is *very* often), or other core packages.
>
> On the other side opening an entry is more than saying "this doesn't work",
> there is a context of usage you have to explain, you have to search for
> previously opened similar entries, you have to try to reproduce the exact
> steps (not always possible), describe them in an undestandable way for the
> reader, and if you propose a fix sometimes you have to explain again, and
> check for regressions you all know the right steps.
>
> So in this case, I have packaged my Spec extensions (which needs to be
> reviewed anyway) and uploaded to SmalltalkHub under MIT license. I am sorry
> to hear that is not enough for you. If anyone really wish to review
> extensions in Spec please welcome - because they would probably also
> contains bugs - I cannot do more for Pharo now and I have to work for my
> employer which is asking me everyday things completely far far away from
> Pharo (you know I do not want to get fired :).
>
>> Now you are telling us that do not know what you did to do that.
>> This is a bit unfair when I see the COUNTLESS hours I spend writing docs
>> and improving Pharo.
>>
>
> Yes, and I think most of us sincerely appreciate your efforts. And I also
> believe many of us have our own battles. Actually I had to "fight" every
> week for Pharo because having people telling Python/R has implemented X
> (which is crappy argument) is not easy.

We are on the same boat Hernan :-) I heard the same crap.
This is why this is important to play cooperatively between us and
report bugs upstream if possible.

Thank you for your effort for pushing the use of Pharo in such directions !

I will have a look to your work about phylogenetics.
With BioSmalltalk, SciSmalltalk and Kendrick, I think that we are
pushing hard Pharo in the domain of biology/epidemiology modeling.
We should try to share as much as possible what we are doing.

Regards,
-- 
Serge Stinckwich
UCBN & UMI UMMISCO 209 (IRD/UPMC)
Every DSL ends up being Smalltalk
http://www.doesnotunderstand.org/



Re: [Pharo-users] Image Cleaner no longer useful?

2016-02-07 Thread Maximiliano Tabacman via Pharo-users
--- Begin Message ---
I've got some additional details.
Using the old VM at: http://files.pharo.org/vm/pharo/win/Pharo-VM-win-stable.zip
I downloaded a fresh 50491 image 
at:http://files.pharo.org/image/50-preSpur/50491.zip
Opened a playground and executedImageCleaner cleanUpForProduction
This was really fast, and in 2 minutes the process was complete.
Then I downloaded the 50492 image 
at:http://files.pharo.org/image/50-preSpur/50492.zip
Did the same ImageCleaner cleanUpForProduction, only this time is took about 
half an hour to do the same.
Hope that helps to catch the reason.Thanks
 

On Friday, February 5, 2016 9:33 AM, Maximiliano Tabacman via Pharo-users 
 wrote:
 

 Thanks for the reply Marcus.I just checked, and can confirm that the old 
process took only 2 minutes and converted a 58,2 MB image (includes Seaside and 
my web product) into a 26,4 MB production image.
By looking at PharoDebug.log, I can tell that this version is:
VM: Win32 - IX86 - 6.1 - NBCoInterpreter 
NativeBoost-CogPlugin-HolgerHansPeterFreyther.21 uuid: 
e0df6e2d-5694-40e2-8035-dc217200b424 Sep 25 2014NBCogit 
NativeBoost-CogPlugin-HolgerHansPeterFreyther.21 uuid: 
e0df6e2d-5694-40e2-8035-dc217200b424 Sep 25 
2014https://github.com/pharo-project/pharo-vm.git Commit: 
81b5d19917dcb78f22482a780deec48c53738396 Date: 2014-09-20 14:36:18 +0200 By: 
Esteban Lorenzano  Jenkins build #14858Image: Pharo5.0 
[Latest update: #50491]

Hope that helps. This is Pharo 5, so the Image Cleaner must have broken at some 
point after this version.
Let me know if there is any additional information I can provide to help figure 
it out.

 

On Thursday, February 4, 2016 12:22 PM, Marcus Denker 
 wrote:
 

 Hello,
Sorry for the late answer.
I think there are multiple problems…
1) slowness. This is strange that unloading packages is so slow. This looks 
like a bug to me.
2) image size in Pharo5: We have a bug right now that images *never* shrink. 
This means that if you savean image once with 80MB, even if the GC cleans up, 
the saved image stays 80MB.
We should fix both….

On 25 Jan 2016, at 13:32, Maximiliano Tabacman via Pharo-users 
 wrote:

From: Maximiliano Tabacman 
Subject: Image Cleaner no longer useful?
Date: 25 January 2016 at 13:31:28 GMT+1
To: "pharo-users@lists.pharo.org" 
Reply-To: Maximiliano Tabacman 


Hi, and sorry if this has already been discussed.
In Pharo 3, I used to be able to do:
ImageCleaner cleanUpForProduction
and that would correctly remove a lot of unneeded code in the image when 
preparing for a productive release.Then I would save the cleaned image, and 
since it had been cleaned, it would be smaller than the original development 
image (say from 60 mb to 25 mb).This process would take about 2-3 minutes.
Then, in Pharo 4 it seems some changes were made here, since the same process 
took a lot more, like 20 minutes.
When I first tried Pharo 5, I was happy to see that it was again down to 2-3 
minutes.
And here comes my question...Why is it that since some 2 months ago (maybe 
more), the Pharo 5 images once again require like 20 minutes to complete the 
cleanUpForProduction process?
Also, and this is the most relevant to me, it no longer reduces the image 
size.So if I want to release a Pharo 5 version based on the latest images, I 
would be shipping a product that is more than twice the size of previous public 
versions of my software!
Thanks for any insights into this. If it is a known bug, I would like to know 
if there is any workaround, or alternative objects that I should be using for 
the process.Also, if it would help for me to run any tests in particular to 
share and help in fixing this, please let me know.





   

  --- End Message ---


[Pharo-users] how to add a class via programatic refactoring

2016-02-07 Thread Tudor Girba
Hi,

I would like to create a class with instance variables and methods using RB, 
and preview the changes with the changes browser.

I know how to create AddClass, AddInstanceVariable, AddMethod refactorings 
individually and query for their changes. For example:

(RBAddClassRefactoring 
addClass: #SomeClass
superclass: #Object
subclasses: {}
category: #Category) primitiveExecute; changes.

(RBAddInstanceVariableRefactoring 
variable: 'x'
class: #SomeClass) primitiveExecute; changes

My question is: is it possible to create them all in one batch and preview 
their changes in one single window?

Cheers,
Doru


--
www.tudorgirba.com
www.feenk.com

"If you interrupt the barber while he is cutting your hair,
you will end up with a messy haircut."




Re: [Pharo-users] Spec doc

2016-02-07 Thread stepharo

I will integrate some of your additions in Pharo (the enhancing of API).
Esteban this is just improving Spec API so it does not break anything.

Le 7/2/16 10:24, Hernán Morales Durand a écrit :

Thanks, I will check later because it's 6 a.m. and I have to sleep :)
Cheers,

Hernán

2016-02-07 6:13 GMT-03:00 stepharo >:


Hi hernan

some feedback/questions while waiting for my kids...

=
"protocol: *SpecUIAddOns"
includesNameBeginsWith: aString
" Answer whether the receiver begins with aString. "

^ self asLowercase = aString first asLowercase


does not look like doing what it says.


=
I do not get

specModalParent
" Receiver cannot be modal parent, answer a default (morphic
world) "

^ [ self currentWorld ]
on: Error
do: [ : ex | UIManager default currentWorld ]


=

In searchableTree

either use tree or self tree

"protocol: *SpecUIAddOns"
autoMultiSelection: aBoolean

self tree autoMultiSelection: aBoolean



It was interested to see that you added a lot of methods

methods
self xxxmodel methods

I was against them.
Now the point is

if we ban such idiom

remove: anItem
self listModel remove: anItem

then (beside exposing the model which would be ok for me if we
consider it as a port)

we have the problem of encapsulating more complex behavior
such

removeAllItems

self listModel removeAll.
self updateList

So probably that

remove: anItem
self listModel remove: anItem

is better


Stef








Re: [Pharo-users] Windows headless and service

2016-02-07 Thread Robert Kuszinger
Hello Everyone!

I've tested NSSM successfully with manual service start and reboot/auto
start as well.

Details:

Windows Server 2008 R2 64 bit.


   - *For the log: Pharo.exe --headless  does nothing. Executed
   from windows command line in the directory where Pharo is installed
   (actually, extracted)*
   - NSSM
  - full path to pharo exe
  - working directory is the path where Pharo.exe is put
  - parameter: name of production image pu in the same working dir
  - enable interaction with desktop (haven't tested without itt
  - all other options are default
   - Service appears on service list. Started well manually.
   - Seaside web server with installed app is alive and runs well
   - Service manual stop function works (actually, kills it, no problem,
   this is a stateless server holding only volatile session data thus no
   shutdown callback is necessary)

That's all by far.

This seems to be a 100% solution to run Pharo WWW server on Windows as a
service. Thanks for the many ideas and support.


Later on I may inform you on the results of real life situations (load,
stability, etc).


Best regards
Robert

Esteban Lorenzano  ezt írta (időpont: 2016. febr. 1.,
H, 13:46):

>
> > On 01 Feb 2016, at 13:19, jan.struz  wrote:
> >
> > Hi,
> > try NSSM - https://nssm.cc/usage
> >
> > I personally haven't found anything better.
>
>


Re: [Pharo-users] Windows headless and service

2016-02-07 Thread Ben Coman
Good to hear your success. Thanks for the update.
cheers -ben

On Mon, Feb 8, 2016 at 12:57 AM, Robert Kuszinger  wrote:
> Hello Everyone!
>
> I've tested NSSM successfully with manual service start and reboot/auto
> start as well.
>
> Details:
>
> Windows Server 2008 R2 64 bit.
>
> For the log: Pharo.exe --headless  does nothing. Executed from
> windows command line in the directory where Pharo is installed (actually,
> extracted)
> NSSM
>
> full path to pharo exe
> working directory is the path where Pharo.exe is put
> parameter: name of production image pu in the same working dir
> enable interaction with desktop (haven't tested without itt
> all other options are default
>
> Service appears on service list. Started well manually.
> Seaside web server with installed app is alive and runs well
> Service manual stop function works (actually, kills it, no problem, this is
> a stateless server holding only volatile session data thus no shutdown
> callback is necessary)
>
> That's all by far.
>
> This seems to be a 100% solution to run Pharo WWW server on Windows as a
> service. Thanks for the many ideas and support.
>
>
> Later on I may inform you on the results of real life situations (load,
> stability, etc).
>
>
> Best regards
> Robert
>
> Esteban Lorenzano  ezt írta (időpont: 2016. febr. 1.,
> H, 13:46):
>>
>>
>> > On 01 Feb 2016, at 13:19, jan.struz  wrote:
>> >
>> > Hi,
>> > try NSSM - https://nssm.cc/usage
>> >
>> > I personally haven't found anything better.
>>
>