Re: [Pharo-dev] roundTo: strange behavior

2016-10-29 Thread Ben Coman
On Sat, Oct 29, 2016 at 11:01 PM, test  wrote:
> 2. when i make a slice i find no possibility to save it to my pc,

Save it to package-cache (Henrik's snapshot),
then later  it from package-cache to Pharo6Inbox.

Note that  doesn't automatically request your password
for Pharo6Inbox like when you  direct to it. You will need to
edit its repository definition to add manually add your account & password.

> to check
> whether i made things correctly and there is no changes-button in the
> monticello-browser to look at the diff that slice would make.

I find the preview provided by the  button
more often gives me what I want to review my Slices in a fresh Image.

cheers -ben



Re: [Pharo-dev] Odd literal in metaclasses methods

2016-10-29 Thread Nicolas Cellier
Because CompiledMethod>>methodClass expects a classical literal binding
className->class

methodClass
"answer the class that I am installed in"
^(self literalAt: self numLiterals) value.

But there ain't no binding for the metaclass which is accessible only
indirectly thru the class (you write Object class, not ObjectClass).
So it is a kind of hack to unify class and metaclass behavior...

Note that the hack is necessary and used by the VM for resolving super
send, so think twice if you want to come with a better hack, it's possible
but also and advanced topic.

2016-10-29 18:23 GMT+02:00 Henrik Nergaard :

> Every method implemented in the class side includes a literal:
> “nil->theMetaClass”.
> Object class methods collect: [ :cm | cm literals last ].
>
> What is it used for?
>
> Best regards,
> Henrik
>
>


[Pharo-dev] Odd literal in metaclasses methods

2016-10-29 Thread Henrik Nergaard
Every method implemented in the class side includes a literal: 
"nil->theMetaClass".
Object class methods collect: [ :cm | cm literals last ].

What is it used for?

Best regards,
Henrik



Re: [Pharo-dev] Instructions for Pharo 6 64bits

2016-10-29 Thread Thierry Goubier

Le 28/10/2016 à 15:18, Esteban Lorenzano a écrit :



On 28 Oct 2016, at 14:22, Thierry Goubier mailto:thierry.goub...@gmail.com>> wrote:

apart from the missing SSL support which makes loading complex stuff
from github a bit painfull, it seems to be usable enough.


I should work on this :)


Anything we can be of help on this?

In the meantime, I'm becoming expert at writing wget requests to github 
to get tarballs of smalltalk projects :)


Thierry


Esteban





Re: [Pharo-dev] Instructions for Pharo 6 64bits

2016-10-29 Thread Thierry Goubier

Hi Eliot,

Le 29/10/2016 à 01:23, Eliot Miranda a écrit :

Hi Thierry,

On Fri, Oct 28, 2016 at 11:23 AM, Thierry Goubier
mailto:thierry.goub...@gmail.com>> wrote:

Hi Esteban,

Le 28/10/2016 à 11:56, Esteban Lorenzano a écrit :

VM here: http://bintray.com/estebanlm/pharo-vm/build#files/



What is the difference between the various x86_64 versions? I chose
the itimer one for my tests. The threaded one is the "run external
calls in their own thread" vm?


No.  The "threaded" one uses a separate thread for generating the
heartbeat.  The timer one uses a signal-based interval timer.  You want
the threaded one.  The signal-based implementation causes havoc with
external code.


Thanks. I've also found the instructions for allowing the threaded one 
under Linux.


Thierry



Re: [Pharo-dev] roundTo: strange behavior

2016-10-29 Thread test

On 10/27/2016 11:13 AM, Nicolas Cellier wrote:


feel free to improve the slice.


Hi,
i never made a slice and thought , i could eventually try 
to do that in this case, but of course i did not succeed:
1. Nicolas, i do not understand, why you put asScaledDecimal: 
numberOfWishedDecimal at the end of Fraction>>round:. what would not 
work, if one simply omitted that?
2. when i make a slice i find no possibility to save it to my pc, to 
check whether i made things correctly and there is no changes-button in 
the monticello-browser to look at the diff that slice would make. of 
course the seasoned programmer has no problems with that, but a simple 
user like me?
3. this line: "< expr: '(1/3 round: 2)' result: (33/100) >" is not 
accepted by the browser. i have no idea how to call this example to 
debug it, perhaps (33/100) is not accepted as a result because Fractions 
are no literals? and then what?

werner

p.s. regarding your slice, Nicolas, FractionTest>>testRounding needs 
also to be changed.




[Pharo-dev] Epicea user experience report

2016-10-29 Thread Ben Coman
1. Created fresh Pharo image (build 60269)


2. Opened World > Tools > Epicea > All changes

Points for discussion...

  a. How many submenu items are expected for Epicea? Can we push the
current ones up so the Tools menu remains a flat menu.

  b. Do we need the two current menu items?  "Current session" is
encompassed by "All changes"?  What expectations do people have of how
often they'll use the former rather than the latter?

  c. When people move from Pharo 5 to Pharo 6 and in a panic want to
"recover changes" for a crashed image, they'll be looking for that
familiar feature name, not a new app name. Could the app name be left
out or placed in brackets "Changes (Epicea)".

btw, the interface looks really slick! nice work.


3. Opened World > System Browser.

4. Added package AAA
All Changes window - no dynamic change.
On , still no change, i.e. no sessions
#New All Changes window - not visible, no sessions.

5. Added class AA.
All Changes window - no dynamic change.
On , shows new session with AAA & AA.

5. Added method...
AA>a
   ^'something'
Prompted for author, entered 'BenComan'
All Changes window with session selected - dynamic update showing AA>>a.

6. Added package BBB.
All Changes window - no dynamic update.
On , BBB still not visible in session.

7. Added class A to package AAA.
All Changes window - dynamic update showing A.
On , BBB still not visible in session.

8. Added class BB to package BBB.
All Changes window - dynamic update showing BBB & BB.

  a. Package creation event seems not handled properly, being only
pushed through when a class is created in it.

  b. Since there is a dynamic update for class and method
modifications, could the session creation also dynamically update it
UI.

---
9. Killed the vm from command line
$ ps -ef | grep pharo
$ kill 29349
   Restarted Pharo image

10. World > Tools > Epica > All changes.
Authorship is inconsistent:
* AAA and AA have blank author
* AA>>a, A, BBB, B have author 'BenComan'.

 a. I understand this follows on from Author not being requested until
the first method was defined. Did the old changes track the author of
packages and classes at all?

 b. Since Epicea can track package and class authors, can we trigger
the author prompt earlier for them?

11. Selected all previous changes AAA, AA, AA>>a, A, BBB, BB
and did .
Prompted for author. Entered 'DrWho'
Existing All Changes window - no change
New All Changes window - shows new session with all six changes.
Authorship is a little inconsistent:
* AAA and AA have author 'Unknown'.
* AA>>a, A, BBB, B have blank author.

12. Killed the vm from command line
$ ps -ef | grep pharo
$ kill 30696
   Restarted Pharo image

13. World > Tools > Epica > All changes.
Authorship is a little inconsistent:
First session
* AAA and AA have blank author
* AA>>a, A, BBB, B have author 'BenComan'.
Second session
* AAA and AA have blank author
* AA>>a, A, BBB, B have author 'DrWho'.

 a. Epicea changes are reapplied as the current author.  This seems a
semantic change from Pharo 5 where changes were reapplied as their
original author. Is this accidental or by design?  Can we have some
community discussion on this point (I don't remember seeing any)?

cheers -ben

P.S. I'll wait to see what arises out of discussion before creating any issues.



[Pharo-dev] [pharo-project/pharo-core] 955c8b: 60271

2016-10-29 Thread GitHub
  Branch: refs/heads/6.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 955c8b6b44eb169ec6b4066d8c025563cfde61c5
  
https://github.com/pharo-project/pharo-core/commit/955c8b6b44eb169ec6b4066d8c025563cfde61c5
  Author: Jenkins Build Server 
  Date:   2016-10-29 (Sat, 29 Oct 2016)

  Changed paths:
A Alien.package/AlienSunit.class/instance/testing/testParser.st
M 
ConfigurationOfUnifiedFFI.package/ConfigurationOfUnifiedFFI.class/instance/symbolic
 versions/stable_.st
A 
ConfigurationOfUnifiedFFI.package/ConfigurationOfUnifiedFFI.class/instance/versions/v0%5F24_.st
M FFI-Kernel.package/ExternalObject.class/class/class 
initialization/initialize.st
A Kernel.package/Object.class/instance/model - stepping/stepAt_in_.st
A Kernel.package/Object.class/instance/model - stepping/stepIn_.st
A Kernel.package/Object.class/instance/model - stepping/stepTime.st
A Kernel.package/Object.class/instance/model - stepping/stepTimeIn_.st
A Kernel.package/Object.class/instance/model - stepping/wantsSteps.st
A Kernel.package/Object.class/instance/model - stepping/wantsStepsIn_.st
A Kernel.package/Object.class/instance/model - updating/okToChange.st
A Kernel.package/Object.class/instance/model - updating/windowIsClosing.st
R Kernel.package/Object.class/instance/stepping/stepAt_in_.st
R Kernel.package/Object.class/instance/stepping/stepIn_.st
R Kernel.package/Object.class/instance/stepping/stepTime.st
R Kernel.package/Object.class/instance/stepping/stepTimeIn_.st
R Kernel.package/Object.class/instance/stepping/wantsSteps.st
R Kernel.package/Object.class/instance/stepping/wantsStepsIn_.st
R Kernel.package/Object.class/instance/updating/okToChange.st
R Kernel.package/Object.class/instance/updating/windowIsClosing.st
M 
Network-Mail.package/MailComposition.class/instance/interface/addAttachment.st
R Polymorph-Widgets.package/MorphicUIManager.class/instance/ui 
requests/chooseFileMatching_label_.st
R 
Polymorph-Widgets.package/UITheme.class/instance/services/chooseFileNameIn_title_patterns_path_preview_.st
M 
Rubric.package/RubLipsumWithSegmentsExample.class/instance/accessing/loremIpsum.st
R ScriptLoader60.package/ScriptLoader.class/instance/pharo - 
scripts/script60270.st
A ScriptLoader60.package/ScriptLoader.class/instance/pharo - 
scripts/script60271.st
R ScriptLoader60.package/ScriptLoader.class/instance/pharo - 
updates/update60270.st
A ScriptLoader60.package/ScriptLoader.class/instance/pharo - 
updates/update60271.st
M 
ScriptLoader60.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
A System-Model.package/Model.class/instance/accessing/announcer.st
R System-Model.package/Model.class/instance/as yet unclassified/announcer.st
A System-Model.package/Model.class/instance/updating/changed.st
A System-Model.package/Model.class/instance/updating/changed_.st
A System-Model.package/Model.class/instance/updating/changed_with_.st
A System-Model.package/Model.class/instance/updating/okToChange.st
A System-Model.package/Model.class/instance/updating/update_with_.st
A System-Model.package/Model.class/instance/updating/windowIsClosing.st
R UIManager.package/NonInteractiveUIManager.class/instance/ui 
requests/chooseFileMatching_label_.st
R UIManager.package/UIManager.class/instance/ui 
requests/chooseFileMatching_.st
R UIManager.package/UIManager.class/instance/ui 
requests/chooseFileMatching_label_.st
A UnifiedFFI.package/FFIExternalReference.class/class/instance 
creation/newPointer.st
A 
UnifiedFFI.package/FFIExternalStructureType.class/instance/initialization/prepareAsSelfFromCalloutDeclaration.st
M UnifiedFFI.package/FFITypeArray.class/README.md
A UnifiedFFI.package/LibC.class/class/misc/loadLibrary_.st
A UnifiedFFI.package/LibC.class/class/misc/system_.st
A UnifiedFFI.package/LibC.class/instance/misc/loadLibrary_.st
A UnifiedFFI.package/LibC.class/instance/misc/system_.st
A UnifiedFFI.package/extension/ExternalAddress/class/newPointer.st

  Log Message:
  ---
  60271
19252 Implement Model specific methods from Object into Model
https://pharo.fogbugz.com/f/cases/19252

19016 Are  UIManager>>chooseFileMatching: and friends really useful?
https://pharo.fogbugz.com/f/cases/19016

19254 Improve RubLipsumWithSegmentsExample>>#loremIpsum
https://pharo.fogbugz.com/f/cases/19254

19249 Simple Shell Command Eval was gone in Pharo 6
https://pharo.fogbugz.com/f/cases/19249

http://files.pharo.org/image/60/60271.zip




[Pharo-dev] [pharo-project/pharo-core]

2016-10-29 Thread GitHub
  Branch: refs/tags/60271
  Home:   https://github.com/pharo-project/pharo-core


Re: [Pharo-dev] Instructions for Pharo 6 64bits

2016-10-29 Thread Esteban Lorenzano

> On 29 Oct 2016, at 01:23, Eliot Miranda  wrote:
> 
> Hi Thierry,
> 
> On Fri, Oct 28, 2016 at 11:23 AM, Thierry Goubier  > wrote:
> Hi Esteban,
> 
> Le 28/10/2016 à 11:56, Esteban Lorenzano a écrit :
> VM here: http://bintray.com/estebanlm/pharo-vm/build#files/ 
> 
> 
> What is the difference between the various x86_64 versions? I chose the 
> itimer one for my tests. The threaded one is the "run external calls in their 
> own thread" vm?
> 
> No.  The "threaded" one uses a separate thread for generating the heartbeat.  
> The timer one uses a signal-based interval timer.  You want the threaded one. 
>  The signal-based implementation causes havoc with external code.

^ this.
but the threaded one requires a config on linux. 
(executing it by command line will point you to the correct NOTE, just 
s/squeak/pharo :) )

Esteban

> 
> Thanks,
> 
> Thierry
>  
> _,,,^..^,,,_
> best, Eliot