Re: [Pharo-dev] [Moose-dev] moving to Rubric in Glamour

2015-10-30 Thread Tudor Girba
Thank you!

Doru

On Fri, Oct 30, 2015 at 9:33 PM, Andrei Chis 
wrote:

> Hi,
>
> I moved Glamour to Rubric, deprecated those presentations that use
> PluggableTextMorph and moved almost all usages of presentations that rely
> on PluggableTextMorph.
> These changes are still only in the Moose branch to see if there are any
> ugly bugs.
>
> The changes to the glamour API are the following:
>
> - deprecated #smalltalkCode, #pharoPlayground and #rubricText
> - added #pharoScript
>
> If you use #smalltalkCode replace it with either #pharoMethod or
> #pharoScript
> If you use #rubricTest replace those usages with #text
> If you use #pharoPlayground replace those usages with #pharoScript (we
> changed this as the glamour playground is not the same at the GTPlayground
> and this was causing some confusion)
> For this I also renamed  GLMPharoPlaygroundPresentation to
> GLMPharoScriptPresentation and GLMMorphicPharoPlaygroundRenderer to
> GLMMorphicPharoScriptRenderer.
>
> If you are using the latest moose let me know if you run into any problems
> or have questions.
>
> Cheers,
> Andrei
>
> ___
> Moose-dev mailing list
> moose-...@list.inf.unibe.ch
> https://www.list.inf.unibe.ch/listinfo/moose-dev
>
>


-- 
www.tudorgirba.com

"Every thing has its own flow"


Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Nicolai Hess
2015-10-30 19:30 GMT+01:00 Andrei Chis :

> Cool example.
> I slightly modified it and added it to the glamour examples :)
>
> | browser morph |
>morph := StringMorph new.
>morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
>browser := GLMTabulator new.
>browser
> row: #main;
> row: #preview.
>browser transmit
>   to: #main;
>   andShow: [ :a | a text
> onChangeOfPort: #text act: [ :text  |
> morph contents:text text] ].
>browser transmit
> to: #preview;
> andShow: [ :a | a morph
> title: 'Preview';
>display: [ morph ] ].
>
>   ^ browser openOn: 'some text'
>
>
cool!



> On Fri, Oct 30, 2015 at 11:47 AM, Nicolai Hess 
> wrote:
>
>>
>>
>> 2015-10-30 16:32 GMT+01:00 Andrei Chis :
>>
>>> Hi,
>>>
>>> You can try this:
>>>
>>> composite := GLMCompositePresentation new.
>>> composite pharoPlayground
>>>  title: 'Script';
>>>  variableBindings: [ { #x -> 1. #y -> 2 } ].
>>> composite
>>>  openOn: 'x+y'.
>>>
>>> For the moment only script presentations can have variables.
>>>
>>> Btw  #pharoPlayground  and #rubricText will be deprecated in the latest
>>> version in favour of #pharoScript and #text
>>>
>>> Cheers,
>>> Andrei
>>>
>>> On Fri, Oct 30, 2015 at 11:14 AM, Torsten Bergmann 
>>> wrote:
>>>
 Hi,

 if one has an inspector extension that shows a textual iVar of an object
 representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
 as in this example:

  gtInspectorSourceIn: composite
 
 ^ composite pharoMethod
 title: 'Source';
 smalltalkClass: [ self methodClass ];
 display: [ self getSource ];
 act: [ self browse ] icon: GLMUIThemeExtraIcons
 glamorousBrowse entitled: 'Browse'

 What is the best/correct way to set the iVar when the text is typed so
 the
 state of the iVar represents the lively editing in the inspector
 extension?

 Or is there a way to realize this somehow with Glamour ports using the
 #text port?

>>>
>>
>> you can define an action on a port change:
>> onChangeOfPort:act:
>>
>> | browser morph |
>>morph := StringMorph new openInWorld.
>>morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
>> browser := GLMTabulator new.
>> browser
>> row: #main.
>> (browser transmit)
>> to: #main;
>> andShow: [ :a | a rubricText
>> onChangeOfPort: #text act: [ :text  |
>> morph contents:text text] ].
>>
>> ^ browser openOn:'type some text'
>>
>> This will open a StringMorph and a GlamourBrowser.
>> If you change the text in the browser, it will change the contents of the
>> string morph.
>>
>>
>>
 Thanks
 T.

>>>
>>>
>>
>


[Pharo-dev] moving to Rubric in Glamour

2015-10-30 Thread Andrei Chis
Hi,

I moved Glamour to Rubric, deprecated those presentations that use
PluggableTextMorph and moved almost all usages of presentations that rely
on PluggableTextMorph.
These changes are still only in the Moose branch to see if there are any
ugly bugs.

The changes to the glamour API are the following:

- deprecated #smalltalkCode, #pharoPlayground and #rubricText
- added #pharoScript

If you use #smalltalkCode replace it with either #pharoMethod or
#pharoScript
If you use #rubricTest replace those usages with #text
If you use #pharoPlayground replace those usages with #pharoScript (we
changed this as the glamour playground is not the same at the GTPlayground
and this was causing some confusion)
For this I also renamed  GLMPharoPlaygroundPresentation to
GLMPharoScriptPresentation and GLMMorphicPharoPlaygroundRenderer to
GLMMorphicPharoScriptRenderer.

If you are using the latest moose let me know if you run into any problems
or have questions.

Cheers,
Andrei


Re: [Pharo-dev] Metacello and preparing a release?

2015-10-30 Thread Dale Henrichs



On 10/30/2015 10:04 AM, Eliot Miranda wrote:

Hi Dale,

 but why can't Metacello provide something really simple that automatically 
generates a configuration with all the prerequisites fully defined as fixed 
specific versions?  Then Holger can easily freeze his release using the new 
confit and continue his internal development using his current configuration.
Your suggestion implies that Holger would have to "take ownership" of 
the generated configuration and he would no longer be using the 
"official" configurations ... If the official configurations for the 
projects he is using change, how do you propose he merge in those changes?


In git the version that you check out _is already_ a collection of the 
"fixed specific versions", so there is no need to create and maintain an 
"automatic configuration generator"  that's the SCMs job.


When using git things get simpler rather than more complex. For example 
just compare the ConfigurationOfSeaside3[1] (mzc repo) and the 
BaselineOfSeaside3[2] (git repo). On method count alone there are ~10 
times more methods in ConfigurationOfSeaside3 than in BaselineOfSeaside3 
... then look at the methods themselves!


[1] 
http://smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main/ConfigurationOfSeaside3-JohanBrichau.280.mcz
[2] 
https://github.com/SeasideSt/Seaside/tree/master/repository/BaselineOfSeaside3.package/BaselineOfSeaside3.class/instance

Why is is about the repository and not the versions?
Because versions _should_ be managed by the repository, not the package 
manager ...


git and other disk based SCMS give me a single SHA (or other identifier) 
that uniquely identifies the collection of files on disk .. one can tag 
this SHA and give it a version name ... this is the job of an SCM ...


The ConfigurationOf was invented to fill in the gap between what you 
could do with Monticello and what needed to be done --- which was to tag 
a _collection_ of packages with a version name --- and manage project 
and package dependencies 


Metacello does this.

But there is more to "to be done" than just tagging a _collection_ of 
pages with a version name ...


One should be able to see the differences between versions: changes to 
packages plus added and removed packages. Metacello does not do this.


One should be able to merge one version into another. Metacello does not 
do this.


Git and other SCM based SCM do show you diffs between versions and you 
can merge changes between two different versions... as an added bonus 
you can include your documentation, images and shell scripts in the same 
directory structure and version them altogether in one swell foop.


Rather than attempt to duplicate the entire range of functionality that 
git and other disk-based SCMs provide, I  choose to leverage existing 
functionality and put my effort into inventing new things in Smalltalk


Dale



[Pharo-dev] Does anyone remember details of a "pro-Smalltalk" merger circa 2013?

2015-10-30 Thread Richard Sargent
I heard an anecdote of a recent merger between two companies in which one had
over 200 people supporting a Java application and the other had ~25 people
supporting a Smalltalk application. The surprising result was that the
Smalltalk application was selected for the merged company rather than the
Java one.

I would like to know which companies were involved, when this occurred, and
what the precise details were.


Thank you!



--
View this message in context: 
http://forum.world.st/Does-anyone-remember-details-of-a-pro-Smalltalk-merger-circa-2013-tp4858715.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.



Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Andrei Chis
Cool example.
I slightly modified it and added it to the glamour examples :)

| browser morph |
   morph := StringMorph new.
   morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
   browser := GLMTabulator new.
   browser
row: #main;
row: #preview.
   browser transmit
  to: #main;
  andShow: [ :a | a text
onChangeOfPort: #text act: [ :text  |
morph contents:text text] ].
   browser transmit
to: #preview;
andShow: [ :a | a morph
title: 'Preview';
   display: [ morph ] ].

  ^ browser openOn: 'some text'

On Fri, Oct 30, 2015 at 11:47 AM, Nicolai Hess 
wrote:

>
>
> 2015-10-30 16:32 GMT+01:00 Andrei Chis :
>
>> Hi,
>>
>> You can try this:
>>
>> composite := GLMCompositePresentation new.
>> composite pharoPlayground
>>  title: 'Script';
>>  variableBindings: [ { #x -> 1. #y -> 2 } ].
>> composite
>>  openOn: 'x+y'.
>>
>> For the moment only script presentations can have variables.
>>
>> Btw  #pharoPlayground  and #rubricText will be deprecated in the latest
>> version in favour of #pharoScript and #text
>>
>> Cheers,
>> Andrei
>>
>> On Fri, Oct 30, 2015 at 11:14 AM, Torsten Bergmann 
>> wrote:
>>
>>> Hi,
>>>
>>> if one has an inspector extension that shows a textual iVar of an object
>>> representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
>>> as in this example:
>>>
>>>  gtInspectorSourceIn: composite
>>> 
>>> ^ composite pharoMethod
>>> title: 'Source';
>>> smalltalkClass: [ self methodClass ];
>>> display: [ self getSource ];
>>> act: [ self browse ] icon: GLMUIThemeExtraIcons
>>> glamorousBrowse entitled: 'Browse'
>>>
>>> What is the best/correct way to set the iVar when the text is typed so
>>> the
>>> state of the iVar represents the lively editing in the inspector
>>> extension?
>>>
>>> Or is there a way to realize this somehow with Glamour ports using the
>>> #text port?
>>>
>>
>
> you can define an action on a port change:
> onChangeOfPort:act:
>
> | browser morph |
>morph := StringMorph new openInWorld.
>morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
> browser := GLMTabulator new.
> browser
> row: #main.
> (browser transmit)
> to: #main;
> andShow: [ :a | a rubricText
> onChangeOfPort: #text act: [ :text  |
> morph contents:text text] ].
>
> ^ browser openOn:'type some text'
>
> This will open a StringMorph and a GlamourBrowser.
> If you change the text in the browser, it will change the contents of the
> string morph.
>
>
>
>>> Thanks
>>> T.
>>>
>>
>>
>


Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Andrei Chis
On Fri, Oct 30, 2015 at 12:07 PM, Torsten Bergmann  wrote:

> #onChangeOfPort:act: solved the problem. Thanks a lot!
>
> BTW: would be cool if you both could join Pharo on Slack.
>

This and next week I'm travelling but afterwards I'll join


Re: [Pharo-dev] GTInspector extension menues with line separators and submenu items

2015-10-30 Thread Andrei Chis
Super. Thanks for the fix.

Right now I'm in the middle of  deprecating the text renderer based in
PluggableTextMorph and moving everything in glamour to rubric.
I'll probably be done today or tomorrow.  If it takes me longer and you
really need this in pharo feel free to make an issue with a slice :)


On Fri, Oct 30, 2015 at 11:53 AM, Torsten Bergmann  wrote:

> Hi Andrei,
>
> using the #with: aBlock variant initially seemed to have no effect
> when using a tree representation.
>
> Looks like  GLMTreeMorphNodeModel>>#menu:shifted: does not honor the
> "separatorAfter" boolean flag during menu construction as it already
> done in GLMMorphicModel>>menu:
>
> This is a bug as this was left out in this method. I added the missing
> piece to GLMTreeMorphNodeModel>>#menu:shifted: to make it work.
> Works like a charme.
>
> Packaged as for further review:
>
> ---
> Name: Glamour-Morphic-Widgets-TorstenBergmann.183
> Author: TorstenBergmann
> Time: 30 October 2015, 4:49:41.455057 pm
> UUID: 9c2470db-73bc-2c43-b40d-1633b8de00eb
> Ancestors: Glamour-Morphic-Widgets-MarcusDenker.182
>
> The #separatorAfter flag of the action should have an effect
> ---
>
> Can you integate it (or should I open an additional bug entry first)?
> When is the next round for a Glamour update to have this quickly in recent
> Pharo image?
>
> Thx
> T.
>
> Gesendet: Freitag, 30. Oktober 2015 um 14:14 Uhr
> Von: "Andrei Chis" 
> An: "Pharo Development List" 
> Betreff: Re: [Pharo-dev] GTInspector extension menues with line separators
> and submenu items
>
> Hi,
>
> Currently when creating methods using the scripting actions from glamour
> you cannot directly specify #withSeparatorAfter.
> Right now you can either add actions manually (for examples
> #browsingSelectionActions) or use something like:
>
>with: [ :presentation | presentation selectionActions
> last withSeparatorAfter]
>
> If you find a nice way to improve this API please do so :)
>
>
> For submenus look in GLMBasiExamples>>#staticAndDynamicMenu
>
> Cheers,
> Andrei
>
> On Fri, Oct 30, 2015 at 9:00 AM, Torsten Bergmann 
> wrote:Hi,
>
> Is it possible to separate the context menus (built with #selectionAct:
> ...)
> in GTInspector extension methods with lines similar to the regular menue
> building
> where #withSeparatorAfter is used.
>
> Is it possible to have submenues in the context menu items (cascading
> menues as the world menu).
>
> Any examples?`
>
> Thx
> T.
>
>


Re: [Pharo-dev] #50409 regression

2015-10-30 Thread Thierry Goubier

Le 30/10/2015 11:59, stepharo a écrit :

I'm thorn because on one hand I would like to be able to express a

visitor for the complete compilation unit
and in particular package and extensions but may be we do not need to
have this nodes and just
have an object. I would be favor to have a nice and full AST
representation of the compilation unit.


Well, you can unify Ring and RBMethodNode from the point of view of
the visitor: you're not in Java where typing could be an issue.



If you have some cycle I would love to have that unification :)
Yes I know :) and thought about it.


I'll have a look.


Note that I have a structure + visitor for the above AST level
implemented in the AltBrowser (covers groups of groups of packages,
packages, package tags, classes, extensions, protocols, methods,
comments).

Do you have a gofer expression :)


Loading AltBrowser from the ConfigurationBrowser and looking at the 
Alt-Browser-Nodes package tag :) A bit unstable to use as Browser on 
Pharo5 at the moment, however. I'm in the middle of a browser rewrite.


I looked and I don't have a Visitor on the structure. I know I did that 
on purpose, but can't remember what was my rationale.



so that I can load the code because I think that we should have this as
a clearly identifiable component.


I tried to match to Ring at a point, but Ring coverage is partial. My 
approach is symbol-based (each node only contains a symbol on the 
underlying object and resolve the symbol when needed. resolution can be 
dependent on the environment: the node parent).



We may not have to load it always in Pharo but it should be there.


It could simplify Nautilus code a bit.




Stef








Re: [Pharo-dev] Metacello and preparing a release?

2015-10-30 Thread Eliot Miranda
Hi Dale,

but why can't Metacello provide something really simple that automatically 
generates a configuration with all the prerequisites fully defined as fixed 
specific versions?  Then Holger can easily freeze his release using the new 
confit and continue his internal development using his current configuration.  
Why is is about the repository and not the versions?  Seems like the tail 
wagging the dog to me.

_,,,^..^,,,_ (phone)

> On Oct 30, 2015, at 12:44 PM, Dale Henrichs 
>  wrote:
> 
> Holger ...
> 
> Frankly this is one of the main reasons I have headed down the path of using 
> "git" (or any other disk-based scm) for GsDevKit/GLASS 
> 
> If all of the applications that you use are managed under "git", then for 
> production you make local clones for all of the projects including your own 
> ... Use the Metacallo lock[1] command and lock each project to reference your 
> local filtree/clone ... then when you use "Metacello new" to load projects, 
> the "locked" versions have precedence and there is no need to modify all of 
> the configurations/baselines or try the half a dozen other hacks ...
> 
> With the approach you can have a development set of project clones, a sandbox 
> set and a production set ... and all three subsystesm use the exact same load 
> scripts ... you simply change which repositories are locked ...
> 
> Managing locks can be tricky, but it's a problem that I've solved with tODE 
> as well, use .ston files that contain a "project entry" specification object 
> with a number of fields including whther or not the spec is locked... when an 
> image (stone in the case of  GemStone) comes up it looks for "project 
> entries" on disk and it then registers those projects in the Metacello 
> Project registry ... voila _if_ you load one of those locked projects your 
> local clone will be used ...
> 
> I will talking about these things at the upcoming Smalltalks in Buenos Aires 
> ...
> 
> Dale
> 
> [1] 
> https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md
> 
>> On 10/30/2015 03:10 AM, Holger Freyther wrote:
>> Hi,
>> 
>> I have an application that is about to be moved into production. Currently 
>> it is
>> pulling "stable" or sometimes bleedingEdge of other configurations. After the
>> system moves from testing into production I would like to have tight control 
>> of
>> which packages are updated from one version to another. E.g. not have a
>> Voyage "stable" upgrade just because there is a new stable version but 
>> probably
>> at the same time still use a symbolic reference myapp-stable-5 to load the
>> package?
>> 
>> Is there a common/known to work approach. I could identify all used Metacello
>> configs and move them to my own infrastructure and then copy the use packages
>> as well. Is there tooling support for adding such a "freeze"? How do other 
>> handle
>> a release of an application that needs to be updated in an "incremental" way?
>> 
>> cheers
>>holger
> 
> 



Re: [Pharo-dev] Metacello and preparing a release?

2015-10-30 Thread Dale Henrichs

Holger ...

Frankly this is one of the main reasons I have headed down the path of 
using "git" (or any other disk-based scm) for GsDevKit/GLASS 


If all of the applications that you use are managed under "git", then 
for production you make local clones for all of the projects including 
your own ... Use the Metacallo lock[1] command and lock each project to 
reference your local filtree/clone ... then when you use "Metacello new" 
to load projects, the "locked" versions have precedence and there is no 
need to modify all of the configurations/baselines or try the half a 
dozen other hacks ...


With the approach you can have a development set of project clones, a 
sandbox set and a production set ... and all three subsystesm use the 
exact same load scripts ... you simply change which repositories are 
locked ...


Managing locks can be tricky, but it's a problem that I've solved with 
tODE as well, use .ston files that contain a "project entry" 
specification object with a number of fields including whther or not the 
spec is locked... when an image (stone in the case of  GemStone) comes 
up it looks for "project entries" on disk and it then registers those 
projects in the Metacello Project registry ... voila _if_ you load one 
of those locked projects your local clone will be used ...


I will talking about these things at the upcoming Smalltalks in Buenos 
Aires ...


Dale

[1] 
https://github.com/dalehenrich/metacello-work/blob/master/docs/LockCommandReference.md


On 10/30/2015 03:10 AM, Holger Freyther wrote:

Hi,

I have an application that is about to be moved into production. Currently it is
pulling "stable" or sometimes bleedingEdge of other configurations. After the
system moves from testing into production I would like to have tight control of
which packages are updated from one version to another. E.g. not have a
Voyage "stable" upgrade just because there is a new stable version but probably
at the same time still use a symbolic reference myapp-stable-5 to load the
package?

Is there a common/known to work approach. I could identify all used Metacello
configs and move them to my own infrastructure and then copy the use packages
as well. Is there tooling support for adding such a "freeze"? How do other 
handle
a release of an application that needs to be updated in an "incremental" way?

cheers
holger





Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Torsten Bergmann
#onChangeOfPort:act: solved the problem. Thanks a lot!

BTW: would be cool if you both could join Pharo on Slack.



Re: [Pharo-dev] GTInspector extension menues with line separators and submenu items

2015-10-30 Thread Torsten Bergmann
Hi Andrei,

using the #with: aBlock variant initially seemed to have no effect
when using a tree representation.

Looks like  GLMTreeMorphNodeModel>>#menu:shifted: does not honor the 
"separatorAfter" boolean flag during menu construction as it already
done in GLMMorphicModel>>menu:

This is a bug as this was left out in this method. I added the missing 
piece to GLMTreeMorphNodeModel>>#menu:shifted: to make it work. 
Works like a charme.

Packaged as for further review:

---
Name: Glamour-Morphic-Widgets-TorstenBergmann.183
Author: TorstenBergmann
Time: 30 October 2015, 4:49:41.455057 pm
UUID: 9c2470db-73bc-2c43-b40d-1633b8de00eb
Ancestors: Glamour-Morphic-Widgets-MarcusDenker.182

The #separatorAfter flag of the action should have an effect 
---

Can you integate it (or should I open an additional bug entry first)? 
When is the next round for a Glamour update to have this quickly in recent 
Pharo image?

Thx
T.

Gesendet: Freitag, 30. Oktober 2015 um 14:14 Uhr
Von: "Andrei Chis" 
An: "Pharo Development List" 
Betreff: Re: [Pharo-dev] GTInspector extension menues with line separators and 
submenu items

Hi,
 
Currently when creating methods using the scripting actions from glamour you 
cannot directly specify #withSeparatorAfter.
Right now you can either add actions manually (for examples 
#browsingSelectionActions) or use something like:
 
   with: [ :presentation | presentation selectionActions last 
withSeparatorAfter]
 
If you find a nice way to improve this API please do so :)
 
 
For submenus look in GLMBasiExamples>>#staticAndDynamicMenu
 
Cheers,
Andrei
 
On Fri, Oct 30, 2015 at 9:00 AM, Torsten Bergmann  wrote:Hi,

Is it possible to separate the context menus (built with #selectionAct: ...)
in GTInspector extension methods with lines similar to the regular menue 
building
where #withSeparatorAfter is used.

Is it possible to have submenues in the context menu items (cascading menues as 
the world menu).

Any examples?`

Thx
T.
 



Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Andrei Chis
Ahh. I think I misunderstood your question :)
On Oct 30, 2015 11:48 AM, "Nicolai Hess"  wrote:

>
>
> 2015-10-30 16:32 GMT+01:00 Andrei Chis :
>
>> Hi,
>>
>> You can try this:
>>
>> composite := GLMCompositePresentation new.
>> composite pharoPlayground
>>  title: 'Script';
>>  variableBindings: [ { #x -> 1. #y -> 2 } ].
>> composite
>>  openOn: 'x+y'.
>>
>> For the moment only script presentations can have variables.
>>
>> Btw  #pharoPlayground  and #rubricText will be deprecated in the latest
>> version in favour of #pharoScript and #text
>>
>> Cheers,
>> Andrei
>>
>> On Fri, Oct 30, 2015 at 11:14 AM, Torsten Bergmann 
>> wrote:
>>
>>> Hi,
>>>
>>> if one has an inspector extension that shows a textual iVar of an object
>>> representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
>>> as in this example:
>>>
>>>  gtInspectorSourceIn: composite
>>> 
>>> ^ composite pharoMethod
>>> title: 'Source';
>>> smalltalkClass: [ self methodClass ];
>>> display: [ self getSource ];
>>> act: [ self browse ] icon: GLMUIThemeExtraIcons
>>> glamorousBrowse entitled: 'Browse'
>>>
>>> What is the best/correct way to set the iVar when the text is typed so
>>> the
>>> state of the iVar represents the lively editing in the inspector
>>> extension?
>>>
>>> Or is there a way to realize this somehow with Glamour ports using the
>>> #text port?
>>>
>>
>
> you can define an action on a port change:
> onChangeOfPort:act:
>
> | browser morph |
>morph := StringMorph new openInWorld.
>morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
> browser := GLMTabulator new.
> browser
> row: #main.
> (browser transmit)
> to: #main;
> andShow: [ :a | a rubricText
> onChangeOfPort: #text act: [ :text  |
> morph contents:text text] ].
>
> ^ browser openOn:'type some text'
>
> This will open a StringMorph and a GlamourBrowser.
> If you change the text in the browser, it will change the contents of the
> string morph.
>
>
>
>>> Thanks
>>> T.
>>>
>>
>>
>


Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Nicolai Hess
2015-10-30 16:32 GMT+01:00 Andrei Chis :

> Hi,
>
> You can try this:
>
> composite := GLMCompositePresentation new.
> composite pharoPlayground
>  title: 'Script';
>  variableBindings: [ { #x -> 1. #y -> 2 } ].
> composite
>  openOn: 'x+y'.
>
> For the moment only script presentations can have variables.
>
> Btw  #pharoPlayground  and #rubricText will be deprecated in the latest
> version in favour of #pharoScript and #text
>
> Cheers,
> Andrei
>
> On Fri, Oct 30, 2015 at 11:14 AM, Torsten Bergmann  wrote:
>
>> Hi,
>>
>> if one has an inspector extension that shows a textual iVar of an object
>> representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
>> as in this example:
>>
>>  gtInspectorSourceIn: composite
>> 
>> ^ composite pharoMethod
>> title: 'Source';
>> smalltalkClass: [ self methodClass ];
>> display: [ self getSource ];
>> act: [ self browse ] icon: GLMUIThemeExtraIcons
>> glamorousBrowse entitled: 'Browse'
>>
>> What is the best/correct way to set the iVar when the text is typed so the
>> state of the iVar represents the lively editing in the inspector
>> extension?
>>
>> Or is there a way to realize this somehow with Glamour ports using the
>> #text port?
>>
>

you can define an action on a port change:
onChangeOfPort:act:

| browser morph |
   morph := StringMorph new openInWorld.
   morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
browser := GLMTabulator new.
browser
row: #main.
(browser transmit)
to: #main;
andShow: [ :a | a rubricText
onChangeOfPort: #text act: [ :text  |
morph contents:text text] ].

^ browser openOn:'type some text'

This will open a StringMorph and a GlamourBrowser.
If you change the text in the browser, it will change the contents of the
string morph.



>> Thanks
>> T.
>>
>
>


Re: [Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Andrei Chis
Hi,

You can try this:

composite := GLMCompositePresentation new.
composite pharoPlayground
 title: 'Script';
 variableBindings: [ { #x -> 1. #y -> 2 } ].
composite
 openOn: 'x+y'.

For the moment only script presentations can have variables.

Btw  #pharoPlayground  and #rubricText will be deprecated in the latest
version in favour of #pharoScript and #text

Cheers,
Andrei

On Fri, Oct 30, 2015 at 11:14 AM, Torsten Bergmann  wrote:

> Hi,
>
> if one has an inspector extension that shows a textual iVar of an object
> representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
> as in this example:
>
>  gtInspectorSourceIn: composite
> 
> ^ composite pharoMethod
> title: 'Source';
> smalltalkClass: [ self methodClass ];
> display: [ self getSource ];
> act: [ self browse ] icon: GLMUIThemeExtraIcons
> glamorousBrowse entitled: 'Browse'
>
> What is the best/correct way to set the iVar when the text is typed so the
> state of the iVar represents the lively editing in the inspector extension?
>
> Or is there a way to realize this somehow with Glamour ports using the
> #text port?
>
> Thanks
> T.
>


[Pharo-dev] Write (rubric) text changes back to the object in GTInspector

2015-10-30 Thread Torsten Bergmann
Hi,

if one has an inspector extension that shows a textual iVar of an object
representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
as in this example:

 gtInspectorSourceIn: composite
 
^ composite pharoMethod 
title: 'Source';
smalltalkClass: [ self methodClass ];
display: [ self getSource ];
act: [ self browse ] icon: GLMUIThemeExtraIcons glamorousBrowse 
entitled: 'Browse'

What is the best/correct way to set the iVar when the text is typed so the
state of the iVar represents the lively editing in the inspector extension?

Or is there a way to realize this somehow with Glamour ports using the #text 
port?

Thanks
T.



[Pharo-dev] [pharo-project/pharo-core] d83c78: 50415

2015-10-30 Thread GitHub
  Branch: refs/heads/5.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: d83c78382b8f4f05794631ae31d116796c412a14
  
https://github.com/pharo-project/pharo-core/commit/d83c78382b8f4f05794631ae31d116796c412a14
  Author: Jenkins Build Server 
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
M Collections-Streams.package/Generator.class/README.md
R 
Monticello.package/MCLazyVersionInfo.class/instance/private/loadAncestorsAndStepChildren.st
A 
Monticello.package/MCLazyVersionInfo.class/instance/private/setAncestors_.st
A 
Monticello.package/MCLazyVersionInfo.class/instance/private/setStepChildren_.st
A 
Monticello.package/MCVersionInfo.class/instance/private/loadAncestorsAndStepChildren.st
A Monticello.package/MCVersionInfo.class/instance/private/setAncestors_.st
A 
Monticello.package/MCVersionInfo.class/instance/private/setStepChildren_.st
M MonticelloGUI.package/MCTool.class/README.md
A MonticelloGUI.package/MCTool.class/class/accessing/mcVersionCache.st
A MonticelloGUI.package/MCTool.class/class/class 
initialization/flushMCVersionCache.st
A MonticelloGUI.package/MCTool.class/class/class 
initialization/initMCVersionCache.st
M MonticelloGUI.package/MCTool.class/definition.st
A 
MonticelloGUI.package/extension/MCLazyVersionInfo/instance/loadAncestorsAndStepChildren.st
M Nautilus.package/AbstractNautilusUI.class/definition.st
M Nautilus.package/AbstractNautilusUI.class/instance/icon/classIconFor_.st
M 
Nautilus.package/AbstractNautilusUI.class/instance/initialization/initialize.st
R 
Nautilus.package/AbstractNautilusUI.class/instance/private/setCachedHierarchyClass_.st
M Nautilus.package/Nautilus.class/definition.st
M Nautilus.package/Nautilus.class/instance/accessing/uiClass.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
scripts/script50414.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
scripts/script50415.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
updates/update50414.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
updates/update50415.st
M 
ScriptLoader50.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st

  Log Message:
  ---
  50415
16894 Better generator class comment
https://pharo.fogbugz.com/f/cases/16894

16881 MCLazyVersion: avoid aggressive fetch of version info
https://pharo.fogbugz.com/f/cases/16881

16900 Small Nautilus cleanup
https://pharo.fogbugz.com/f/cases/16900

http://files.pharo.org/image/50/50415.zip




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

2015-10-30 Thread GitHub
  Branch: refs/tags/50415
  Home:   https://github.com/pharo-project/pharo-core


Re: [Pharo-dev] GTInspector extension menues with line separators and submenu items

2015-10-30 Thread Andrei Chis
Hi,

Currently when creating methods using the scripting actions from glamour
you cannot directly specify #withSeparatorAfter.
Right now you can either add actions manually (for examples
#browsingSelectionActions) or use something like:

   with: [ :presentation | presentation selectionActions last
withSeparatorAfter]

If you find a nice way to improve this API please do so :)


For submenus look in GLMBasiExamples>>#staticAndDynamicMenu

Cheers,
Andrei

On Fri, Oct 30, 2015 at 9:00 AM, Torsten Bergmann  wrote:

> Hi,
>
> Is it possible to separate the context menus (built with #selectionAct:
> ...)
> in GTInspector extension methods with lines similar to the regular menue
> building
> where #withSeparatorAfter is used.
>
> Is it possible to have submenues in the context menu items (cascading
> menues as the world menu).
>
> Any examples?`
>
> Thx
> T.
>
>


Re: [Pharo-dev] You can get a real impact on newbies!!!

2015-10-30 Thread stepharo
I published that in 
https://pharo.fogbugz.com/f/cases/16902/Improve-Array-comment


as a fix. Took me 5 min.
You can really improve user experience with 5 min!

Stef


 Array is a fixed-sized collection of elements accessed by integer 
indices. Contrary to the C convention, the first element of a Smalltalk 
array is at position 1 and not 0. The main protocol to access array 
elements is the method at: and at:put:.


- at: anInteger returns the element at index anInteger.
- at: anInteger put: anObject puts anObject at index anInteger.

Arrays are fixed-size collections therefore we cannot add or remove 
elements at the end of an array.


The following code creates an array of size 5, puts values in the first 
3 locations and returns the first element.


[[[
| anArray |
anArray := Array new: 5.
anArray at: 1 put: 4.
anArray at: 2 put: 3/2.
anArray at: 3 put: ''.
anArray at: 1
> 4
]]]

#() creates literal arrays with static (or “literal”) elements that have 
to be known when the expression is compiled, and not when it is executed.


The following code creates an array of size 2 where the first element is 
the (literal) number 1 and the second the (literal) string 'here'.


[[[
#(1 'here') size
> 2
]]]

{ } is a way to create arrays in a more dynamic manner.

[[[
| array |
array := (Array new: 2). array
at: 1 put: (Point x: 10 y: 20);
at: 2 put: (Point x: 10 y: 20).
array
]]]

is equivalent to

[[[
{(10@20) . (10@20)}
{Point x: 10 y: 20 . Point x: 10 y: 20}
]]]




Le 30/10/15 08:57, stepharo a écrit :

Hi guys

Array comment is

"I present an ArrayedCollection whose elements are objects."

Seriously this is inacceptable.

I started to improve. Now we should port some text from PBE and add it 
in the class comment.


Please help this is simple super easy and this is a welcome for newbies.

Stef







[Pharo-dev] GTInspector extension menues with line separators and submenu items

2015-10-30 Thread Torsten Bergmann
Hi,

Is it possible to separate the context menus (built with #selectionAct: ...) 
in GTInspector extension methods with lines similar to the regular menue 
building 
where #withSeparatorAfter is used.

Is it possible to have submenues in the context menu items (cascading menues as 
the world menu).

Any examples?`

Thx
T.



[Pharo-dev] You can get a real impact on newbies!!!

2015-10-30 Thread stepharo

Hi guys

Array comment is

"I present an ArrayedCollection whose elements are objects."

Seriously this is inacceptable.

I started to improve. Now we should port some text from PBE and add it 
in the class comment.


Please help this is simple super easy and this is a welcome for newbies.

Stef



Re: [Pharo-dev] what is this method?

2015-10-30 Thread Nicolai Hess
2015-10-30 12:49 GMT+01:00 Esteban Lorenzano :

> I saw this today:
>
> Class>>#private_subclass: t instanceVariableNames: f classVariableNames: d
> poolDictionaries: s category: cat
>
> 1) method name is not according to conventions (should be
> #privateSubclass:instanceVariableNames:classVariableNames:
> poolDictionaries:category:)
> 2) variable names are not good: t, f, d, s and cat do not means anything.
> 3) if is private, needs to be in “private” protocol.
> 4) more than “private” I think it’s function is “basic”… but that’s not a
> real problem :)
>
> please, a fix?
>

This is my fix for issue
16836

Can't remove an instance variable and a trait in one step

to fix this issue, I had to add another method private_subclass ... between
the two
subclass:...
variants, one with a uses-traits and one without the uses-traits name.
If you find a better way, please let me know.
About the variable naming, well I just copied the existing method arg names.
It is not in the "private" category, because it is not private to the trait
users that have to implement this.
The method is just called "private_" because I could not think of a
better name.



>
> Esteban
>


[Pharo-dev] what is this method?

2015-10-30 Thread Esteban Lorenzano
I saw this today:

Class>>#private_subclass: t instanceVariableNames: f classVariableNames: d 
poolDictionaries: s category: cat 

1) method name is not according to conventions (should be 
#privateSubclass:instanceVariableNames:classVariableNames: 
poolDictionaries:category:)
2) variable names are not good: t, f, d, s and cat do not means anything. 
3) if is private, needs to be in “private” protocol. 
4) more than “private” I think it’s function is “basic”… but that’s not a real 
problem :)

please, a fix?

Esteban


[Pharo-dev] [pharo-project/pharo-core] 2ac872: 50414

2015-10-30 Thread GitHub
  Branch: refs/heads/5.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 2ac872d6d9919449684a1bc7f77f496ae01b5995
  
https://github.com/pharo-project/pharo-core/commit/2ac872d6d9919449684a1bc7f77f496ae01b5995
  Author: Jenkins Build Server 
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
M ConfigurationOfFastTable.package/ConfigurationOfFastTable.class/README.md
A 
ConfigurationOfFastTable.package/ConfigurationOfFastTable.class/instance/baselines/baseline03_.st
M 
ConfigurationOfFastTable.package/ConfigurationOfFastTable.class/instance/symbolic
 versions/development_.st
M 
ConfigurationOfFastTable.package/ConfigurationOfFastTable.class/instance/symbolic
 versions/stable_.st
A 
ConfigurationOfFastTable.package/ConfigurationOfFastTable.class/instance/versions/version0710_.st
A 
ConfigurationOfFastTable.package/ConfigurationOfFastTable.class/instance/versions/version0711_.st
M Morphic-Widgets-FastTable.package/FTCellMorph.class/definition.st
A 
Morphic-Widgets-FastTable.package/FTCellMorph.class/instance/accessing/withTopSeparator.st
A 
Morphic-Widgets-FastTable.package/FTCellMorph.class/instance/drawing/drawOn_.st
M 
Morphic-Widgets-FastTable.package/FTCellMorph.class/instance/initialization/initialize.st
A 
Morphic-Widgets-FastTable.package/FTDataSource.class/instance/accessing/newDataSourceMatching_.st
A 
Morphic-Widgets-FastTable.package/FTDataSource.class/instance/accessing/toString_.st
M 
Morphic-Widgets-FastTable.package/FTEasyListDataSource.class/instance/accessing/menuColumn_row_.st
M 
Morphic-Widgets-FastTable.package/FTExampleMethodModel.class/instance/factory/createActionIconOn_.st
M 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleEasyList1.st
A 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleEditableList1.st
A 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleFilterableList.st
A 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleListWithExplicitFilter.st
A 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleListWithExplicitFilterAndActionButton.st
A 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleListWithExplicitFilterAndActionButton2.st
A 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleListWithExplicitSearch.st
M 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleOutline1.st
M 
Morphic-Widgets-FastTable.package/FTExamples.class/class/examples/exampleOutline2.st
A Morphic-Widgets-FastTable.package/FTFilterFunction.class/README.md
A Morphic-Widgets-FastTable.package/FTFilterFunction.class/definition.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/accessing/reset.st
A Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/event 
handling/keyStroke_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/initialization/initializeFilter.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/initialization/reinitializeTable.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/private/showFilterFieldFromKeystrokeEvent_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/updating/colorText_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/updating/filter.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/updating/filterWith_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/updating/patternFromString_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/updating/spawnFilterUpdateThread.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/updating/update_.st
A Morphic-Widgets-FastTable.package/FTFilterFunction.class/instance/widget 
API/ghostText.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/README.md
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/class/instance
 creation/table_action_named_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/definition.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/instance/accessing/beExplicite.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/instance/execute/execute.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/instance/initialization/initializeActionButtonNamed_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/instance/option/action_named_.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/instance/private/resizeButton.st
A 
Morphic-Widgets-FastTable.package/FTFilterFunctionWithAction.class/instance/private/resizeField.st
A 
Morphic-Widgets-FastTable.package/FTFil

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

2015-10-30 Thread GitHub
  Branch: refs/tags/50414
  Home:   https://github.com/pharo-project/pharo-core


Re: [Pharo-dev] #50409 regression

2015-10-30 Thread stepharo

I'm thorn because on one hand I would like to be able to express a

visitor for the complete compilation unit
and in particular package and extensions but may be we do not need to
have this nodes and just
have an object. I would be favor to have a nice and full AST
representation of the compilation unit.


Well, you can unify Ring and RBMethodNode from the point of view of 
the visitor: you're not in Java where typing could be an issue.

If you have some cycle I would love to have that unification :)
Yes I know :) and thought about it.

Note that I have a structure + visitor for the above AST level 
implemented in the AltBrowser (covers groups of groups of packages, 
packages, package tags, classes, extensions, protocols, methods, 
comments).

Do you have a gofer expression :)
so that I can load the code because I think that we should have this as 
a clearly identifiable component.

We may not have to load it always in Pharo but it should be there.

Stef




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

2015-10-30 Thread GitHub
  Branch: refs/tags/50413
  Home:   https://github.com/pharo-project/pharo-core


[Pharo-dev] [pharo-project/pharo-core] 74b42f: 50413

2015-10-30 Thread GitHub
  Branch: refs/heads/5.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 74b42fc054cef35bca9c1a13a2624cb9fedd5454
  
https://github.com/pharo-project/pharo-core/commit/74b42fc054cef35bca9c1a13a2624cb9fedd5454
  Author: Jenkins Build Server 
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
M 
ConfigurationOfZincHTTPComponents.package/ConfigurationOfZincHTTPComponents.class/instance/accessing/stable_.st
M 
ConfigurationOfZincHTTPComponents.package/ConfigurationOfZincHTTPComponents.class/instance/versions/version263_.st
M 
ConfigurationOfZincHTTPComponents.package/ConfigurationOfZincHTTPComponents.class/instance/versions/version264_.st
A 
ConfigurationOfZincHTTPComponents.package/ConfigurationOfZincHTTPComponents.class/instance/versions/version265_.st
A 
ConfigurationOfZincHTTPComponents.package/ConfigurationOfZincHTTPComponents.class/instance/versions/version266_.st
A 
ConfigurationOfZincHTTPComponents.package/ConfigurationOfZincHTTPComponents.class/instance/versions/version267_.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
scripts/script50412.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
scripts/script50413.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
updates/update50412.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
updates/update50413.st
M 
ScriptLoader50.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/accessing/generateByteToUnicodeSpec_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/accessing/handlesEncoding_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/accessing/knownEncodingIdentifiers.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/accessing/parseUnicodeOrgSpec_.st
R Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/class 
initialization/initialize.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/convenience/iso88591.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/convenience/latin1.st
R Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/instance 
creation/newForEncoding_.st
A Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/instance 
creation/newFromUrl_.st
A 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/mappings/cp850Mapping.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/mappings/iso88591Mapping.st
M 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/mappings/mappingToIdentifiers.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/private/initializeByteTextConverters.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/private/tablesFromSpec_.st
A 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/utilties/generateByteToUnicodeSpec_.st
A 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/utilties/parseUnicodeOrgSpec_.st
A 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/class/utilties/top128FromUnicodeSpec_.st
M Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/definition.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/accessing/byteDomain.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/accessing/characterDomain.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/accessing/identifier.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/converting/backOnStream_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/converting/encodedByteCountFor_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/converting/nextFromStream_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/converting/nextPut_toStream_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/initialization/initialize.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/initialize-release/beLenient.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/initialize-release/byteToUnicode_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/initialize-release/identifier_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/initialize-release/unicodeToByte_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/printing/printOn_.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/testing/isLenient.st
R 
Zinc-Character-Encoding-Core.package/ZnByteEncoder.class/instance/testing/isStrict.st
M 
Zinc-Character-Encoding-Core.package/ZnCharacterEncoder.class/class/accessing/canonicalEncodingIdentifier_.st
A 
Zinc-Character-Encoding-Core.pa

[Pharo-dev] Metacello and preparing a release?

2015-10-30 Thread Holger Freyther
Hi,

I have an application that is about to be moved into production. Currently it is
pulling "stable" or sometimes bleedingEdge of other configurations. After the
system moves from testing into production I would like to have tight control of
which packages are updated from one version to another. E.g. not have a
Voyage "stable" upgrade just because there is a new stable version but probably
at the same time still use a symbolic reference myapp-stable-5 to load the
package?

Is there a common/known to work approach. I could identify all used Metacello
configs and move them to my own infrastructure and then copy the use packages
as well. Is there tooling support for adding such a "freeze"? How do other 
handle
a release of an application that needs to be updated in an "incremental" way?

cheers
holger


[Pharo-dev] [pharo-project/pharo-core] 528bfe: 50412

2015-10-30 Thread GitHub
  Branch: refs/heads/5.0
  Home:   https://github.com/pharo-project/pharo-core
  Commit: 528bfe07a8a28909fbd641a39d945415b1f2465e
  
https://github.com/pharo-project/pharo-core/commit/528bfe07a8a28909fbd641a39d945415b1f2465e
  Author: Jenkins Build Server 
  Date:   2015-10-30 (Fri, 30 Oct 2015)

  Changed paths:
R Kernel.package/Number.class/instance/converting/asB3DVector3.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
scripts/script50411.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
scripts/script50412.st
R ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
updates/update50411.st
A ScriptLoader50.package/ScriptLoader.class/instance/pharo - 
updates/update50412.st
M 
ScriptLoader50.package/ScriptLoader.class/instance/public/commentForCurrentUpdate.st
R 
StartupPreferences.package/StartupPreferencesLoader.class/class/menu/startupGeneralPrefererencesFolderMenuOn_.st
R 
StartupPreferences.package/StartupPreferencesLoader.class/class/menu/startupLoaderMenuOn_.st
R 
StartupPreferences.package/StartupPreferencesLoader.class/class/menu/startupPreferencesVersionFolderMenuOn_.st
R 
StartupPreferences.package/StartupPreferencesLoader.class/class/menu/systemStartupMenuOn_.st
A 
System-Settings.package/extension/StartupPreferencesLoader/class/startupGeneralPrefererencesFolderMenuOn_.st
A 
System-Settings.package/extension/StartupPreferencesLoader/class/startupLoaderMenuOn_.st
A 
System-Settings.package/extension/StartupPreferencesLoader/class/startupPreferencesVersionFolderMenuOn_.st
A 
System-Settings.package/extension/StartupPreferencesLoader/class/systemStartupMenuOn_.st

  Log Message:
  ---
  50412
16898 MNU: Point>>@
https://pharo.fogbugz.com/f/cases/16898

16899 StartupPreferencesLoader makes new unimplemented calls in the minimal 
Pharo
https://pharo.fogbugz.com/f/cases/16899

http://files.pharo.org/image/50/50412.zip




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

2015-10-30 Thread GitHub
  Branch: refs/tags/50412
  Home:   https://github.com/pharo-project/pharo-core