Re: [Pharo-users] Depending on MetaRepo instead of the target repo

2017-02-13 Thread Peter Uhnák
> I do not think so but if people show me otherwise I could follow that.

Well, in most languages (their package dependencies) one can just specify
name of the project and a version. The location/how to load it is pulled
from a central repository.
So that's why I thought that maybe the MetaRepo could be used in a similar
fashion.

> In the long term the the MetaRepo should be replaced by a repository of
project specification objects

That also seems needlessly complex; basically just ConfigurationOf
separated to parts. I do not want to restrict the users, but with a central
repo the most common use case shouldn't be 10 lines of configuration.


> Does BaselineOf work with Monticello?
> I thought it was only for use with git.

Monticello or Metacello?

You can download/install projects just fine (and also depend on other
baselines from your baselines or configurations)

Metacello new
baseline: 'FileDialog';
repository: 'github://peteruhnak/file-dialog/repository';
load.

Also BaselineOf is just a subclass of ConfigurationOf.



On Mon, Feb 13, 2017 at 2:48 AM, Dale Henrichs <
dale.henri...@gemtalksystems.com> wrote:

> Very good to hear ... I have to try to be a bit more patient :)
>
>
>
> On 2/12/17 9:37 AM, stepharong wrote:
>
>> On Sun, 12 Feb 2017 16:36:42 +0100, Dale Henrichs <
>> dale.henri...@gemtalksystems.com> wrote:
>>
>> Peter,
>>>
>>> 
>>>
>>> In the long term the the MetaRepo should be replaced by a repository of
>>> project specification objects (like this [1]). Each project specification
>>> would contain the meta data for a project (like this[2]) instead of a copy
>>> of a ConfigurationOf that is almost always out-of-date.
>>>
>>
>> Yes we are working on it.
>> Now 64bits, FFI, Iceberg, bootstrap got our attention.
>>
>>>
>>> ConfigurationOf should really be phased out -- they've been obsolete for
>>> 3-4 years now... BaselineOf is preferred.
>>>
>>> If folks are using something like git/github, with proper branching,
>>> then a BaselineOf wouldn't be published on the master branch until the unit
>>> tests are passing (travis-ci).
>>>
>>
>> I want more than just the tests but this is a start.
>>
>>>
>>> 
>>>
>>
>> We will arrive there. Because I want it too.
>> Now pavel worked on the bootstrap to avoid to lose all the energy that
>> guille put on it.
>>
>>
>>> Dale
>>>
>>> [1] https://github.com/GsDevKit/GsDevKit_home/tree/gh-pages
>>> [2] https://github.com/GsDevKit/GsDevKit_home/blob/gh-pages/Seas
>>> ide3.ston
>>> On 2/12/17 4:03 AM, Peter Uhnak wrote:
>>>
 Hi,

 would it make sense to take configurations from metarepos instead
 directly from the source?

 And more imporantly: would be considered bad practice for users to do
 it right now?

 E.g.

 spec
 project: 'Magritte'
 with: [ spec
 className: #ConfigurationOfMagritte3;
 versionString: #stable;
 repository: 'http://smalltalkhub.com/mc/Ph
 aro/MetaRepoForPharo50/main/' ].

 v. repository: 'http://smalltalkhub.com/mc/Magritte/Magritte3/main/'


 pros:
 * the (e.g. Magritte) developer can freely change platforms
 * the ConfigurationOf could differ between various MetaRepo versions
 (combined with git it could reduce their complexity)
 * users do not have to think about where is the canonical repo (I've
 seen project that had copies on SS, STHub, GitHub, and a custom location
 -_-)

 cons:
 * the ConfigurationOf could differ between various MetaRepo versions
 (if the code is compatible, then two repos have to be updated

 Any thoughts?

 Peter


>>>
>>>
>>
>>
>
>


Re: [Pharo-users] getting real changes from RB refactoring

2017-02-13 Thread Peter Uhnák
On Sun, Feb 12, 2017 at 6:33 PM, stepharong  wrote:

> Hi peter
>
>
> is there some filter that will reject RB changes that actually do not do
>> anything? I.e. applying them would have no effect (same method code, class,
>> inst var exists, ...).
>>
>
> I do not know.
> Do you have an example of when such changes are created?


Well, I generate the changes with this
https://github.com/peteruhnak/xml-magritte-generator

So when I want to regenerate the code, I want to see just the things that
will be actually changed.


Re: [Pharo-users] About asSymbol message , some questions in my mind

2017-02-13 Thread lb
Just To You,  :-)
Symbol  ,  a sign with some meaning in nature language.
eg, #% = percent, #$ = dollar.
but
 2.  '$%%&' asSymbol no meaning

symbol as a message should have his meaning. defined in its method.
a message should let programmer know what to do.



I come from China , My English is poor.


Cheers.


Bing


在 2017-02-13 07:26:05,"john pfersich"  写道:

BUT There are not compliant below
1.' ' asSymbol no meaning
2.  '$%%&' asSymbol no meaning
3.  'sign' asSymbol = 'sign ' asSymbol   >>>  false because of space.
3. '  one two  three ' asSymbol  >>>I think It should become 
three symbols = #one, #two, #three


I don't know what you mean by "no meaning', they're symbols.

Try this in a Playground, it works in Pharo 5"

| oc sym filtered|
oc := ' one two  three $%%&' splitOn: ' '.
sym := OrderedCollection new.
oc do: [:each | sym add: each asSymbol].
filtered := OrderedCollection new.
filtered := sym select: [ :each | each ~= #'' ].
Transcript show: sym printString; cr.
Transcript show: filtered printString; cr.



On Fri, Feb 10, 2017 at 8:56 PM, lb  wrote:

Hi,
I know Symbol is subclass of String.
Any string object can become symbol object by sending 'asSymbol' message..
I think  symbol must has its meaning in comon use, so the symbol should be 
composed of alphabet or number ‘without space“.


BUT There are not compliant below
1.' ' asSymbol no meaning
2.  '$%%&' asSymbol no meaning
3.  'sign' asSymbol = 'sign ' asSymbol   >>>  false because of space.
3. '  one two  three ' asSymbol  >>>I think It should become 
three symbols = #one, #two, #three




Mybe my understanding is wrong.


Bing Liang







Re: [Pharo-users] GitFileTree in Pharo 5

2017-02-13 Thread Pierce Ng
On Thu, Feb 02, 2017 at 09:56:55AM -0300, Mariano Martinez Peck wrote:
> OSSubprocess has a problem which hangs the VM on Linux with an specific
> flavor of the VM (the default one).
> 
> You can try with the VM form here:
> 
> https://dl.bintray.com/pharo-project/pharo-vm/pharo-linux-i386threaded-201612210925-0807b30.zip

Hi Mariano,

I believe I've always been using the itimer VM because that's the default
download. Anyhow, I cloned the opensmalltalk-vm repository and built the itimer
and this VM. Tested each VM with a fresh 50768 image and in both cases 
GitFileTree
loaded cleanly using snippet by Cyril.

Pierce



Re: [Pharo-users] Depending on MetaRepo instead of the target repo

2017-02-13 Thread Ben Coman
On Mon, Feb 13, 2017 at 7:28 PM, Peter Uhnák  wrote:

> > I do not think so but if people show me otherwise I could follow that.
>
> Well, in most languages (their package dependencies) one can just specify
> name of the project and a version. The location/how to load it is pulled
> from a central repository.
> So that's why I thought that maybe the MetaRepo could be used in a similar
> fashion.
>
> > In the long term the the MetaRepo should be replaced by a repository of
> project specification objects
>
> That also seems needlessly complex; basically just ConfigurationOf
> separated to parts. I do not want to restrict the users, but with a central
> repo the most common use case shouldn't be 10 lines of configuration.
>
>
> > Does BaselineOf work with Monticello?
> > I thought it was only for use with git.
>
> Monticello or Metacello?
>

I meant, can a Baseline be stored in / operate from a mcz file, without a
Configuration?
I thought git made Baselines feasible since git takes care of versioning.

cheers -ben


> You can download/install projects just fine (and also depend on other
> baselines from your baselines or configurations)
>
> Metacello new
> baseline: 'FileDialog';
> repository: 'github://peteruhnak/file-dialog/repository';
> load.
>
> Also BaselineOf is just a subclass of ConfigurationOf.
>
>
>
> On Mon, Feb 13, 2017 at 2:48 AM, Dale Henrichs <
> dale.henri...@gemtalksystems.com> wrote:
>
>> Very good to hear ... I have to try to be a bit more patient :)
>>
>>
>>
>> On 2/12/17 9:37 AM, stepharong wrote:
>>
>>> On Sun, 12 Feb 2017 16:36:42 +0100, Dale Henrichs <
>>> dale.henri...@gemtalksystems.com> wrote:
>>>
>>> Peter,

 

 In the long term the the MetaRepo should be replaced by a repository of
 project specification objects (like this [1]). Each project specification
 would contain the meta data for a project (like this[2]) instead of a copy
 of a ConfigurationOf that is almost always out-of-date.

>>>
>>> Yes we are working on it.
>>> Now 64bits, FFI, Iceberg, bootstrap got our attention.
>>>

 ConfigurationOf should really be phased out -- they've been obsolete
 for 3-4 years now... BaselineOf is preferred.

 If folks are using something like git/github, with proper branching,
 then a BaselineOf wouldn't be published on the master branch until the unit
 tests are passing (travis-ci).

>>>
>>> I want more than just the tests but this is a start.
>>>

 

>>>
>>> We will arrive there. Because I want it too.
>>> Now pavel worked on the bootstrap to avoid to lose all the energy that
>>> guille put on it.
>>>
>>>
 Dale

 [1] https://github.com/GsDevKit/GsDevKit_home/tree/gh-pages
 [2] https://github.com/GsDevKit/GsDevKit_home/blob/gh-pages/Seas
 ide3.ston
 On 2/12/17 4:03 AM, Peter Uhnak wrote:

> Hi,
>
> would it make sense to take configurations from metarepos instead
> directly from the source?
>
> And more imporantly: would be considered bad practice for users to do
> it right now?
>
> E.g.
>
> spec
> project: 'Magritte'
> with: [ spec
> className: #ConfigurationOfMagritte3;
> versionString: #stable;
> repository: 'http://smalltalkhub.com/mc/Ph
> aro/MetaRepoForPharo50/main/' ].
>
> v. repository: 'http://smalltalkhub.com/mc/Magritte/Magritte3/main/'
>
>
> pros:
> * the (e.g. Magritte) developer can freely change platforms
> * the ConfigurationOf could differ between various MetaRepo versions
> (combined with git it could reduce their complexity)
> * users do not have to think about where is the canonical repo (I've
> seen project that had copies on SS, STHub, GitHub, and a custom location
> -_-)
>
> cons:
> * the ConfigurationOf could differ between various MetaRepo versions
> (if the code is compatible, then two repos have to be updated
>
> Any thoughts?
>
> Peter
>
>


>>>
>>>
>>
>>
>


Re: [Pharo-users] Depending on MetaRepo instead of the target repo

2017-02-13 Thread Peter Uhnak

> I meant, can a Baseline be stored in / operate from a mcz file, without a
> Configuration?
> I thought git made Baselines feasible since git takes care of versioning.

Git takes care of the versioning, so the Baseline is really just a baseline, 
like it would be in a ConfigurationOf.




Re: [Pharo-users] Depending on MetaRepo instead of the target repo

2017-02-13 Thread Dale Henrichs



On 02/12/2017 08:40 AM, Ben Coman wrote:



On Sun, Feb 12, 2017 at 11:36 PM, Dale Henrichs 
> wrote:


Peter,



In the long term the the MetaRepo should be replaced by a
repository of project specification objects (like this [1]). Each
project specification would contain the meta data for a project
(like this[2]) instead of a copy of a ConfigurationOf that is
almost always out-of-date.

ConfigurationOf should really be phased out -- they've been
obsolete for 3-4 years now... BaselineOf is preferred.


Does BaselineOf work with Monticello?
Technically, yes (bleeding edge), but practically no. That doesn't 
change the fact that ConfigurationOf should be phased out ...


There are so many things wrong with the way that ConfigurationOf works: 
manual editing required on every package commit, editable version data 
that should be immutable, no good branching model, no project-level 
version comparison, etc.


5 years ago,I was seriously looking at solving the problems with 
ConfigurationOf. I happened to be looking at git for inspiration (mainly 
the branching model), but was not really looking forward to the amount 
of work that was going to be involved.


Fortunately right about that time Otto Behrens introduced FileTree. 
Being able to leverage a fully featured version control system to manage 
Smalltalk code in FileTree, meant that instead trying to put effort into 
fixing ConfigurationOf, I was able to greatly simplify ConfigurationOf 
with BaselineOf ...


Project specification objects would support both ConfigurationOf and 
BaselineOf projects ... the current model of only supporting 
ConfigurationOf projects with a MetaRepo means that BaselineOf projects 
are not really properly supported


Dale


Re: [Pharo-users] Depending on MetaRepo instead of the target repo

2017-02-13 Thread Dale Henrichs



On 02/13/2017 03:28 AM, Peter Uhnák wrote:

> I do not think so but if people show me otherwise I could follow that.

Well, in most languages (their package dependencies) one can just 
specify name of the project and a version. The location/how to load it 
is pulled from a central repository.
So that's why I thought that maybe the MetaRepo could be used in a 
similar fashion.



You are correct that the MetaRepo could accomplish this using a 
ConfigurationOf (the current scheme basically does follow this model), 
but this is a bit of a hack ..


A better solution is to use a "project specification object" --- many 
other languages use their own flavor of "project specification object" 
to define the versions.


Having project specification objects means that a whole host of project 
meta data can be included in the object as first class objects without 
having to hack around with adding methods (by convention) to a 
ConfigurationOf




> In the long term the the MetaRepo should be replaced by a repository 
of project specification objects


That also seems needlessly complex; basically just ConfigurationOf 
separated to parts. I do not want to restrict the users, but with a 
central repo the most common use case shouldn't be 10 lines of 
configuration.
I don't agree that this would be needlessly complex ... the 
implementation I use with tODE leverages gh-pages on github and STON ... 
having first class objects for project specifications, means that tools 
can be built to work directly with these objects, instead of loading a 
ConfigurationOf and hoping that the expected meta data is there ...


Dale


Re: [Pharo-users] About asSymbol message , some questions in my mind

2017-02-13 Thread Igor Stasenko
On 13 February 2017 at 13:48, lb  wrote:

> Just To You,  :-)
> Symbol  ,  a sign with some meaning in nature language.
> eg, #% = percent, #$ = dollar.
> but
>  2.  '$%%&' asSymbol no meaning
>
> symbol as a message should have his meaning. defined in its method.
> a message should let programmer know what to do.
>
>
I come from China , My English is poor.
>

Hmm.. Then why it is so hard for you to comprehend such simple concept?
In Chinese you have thousands unique glyphs,
that you can use for writing, and each one has own meaning. Sometimes they
literally mean something,
but sometimes the meaning depends on context.
That means that symbols '@#&%@#$' may not have meaning for most uses,
while for some other can. This depends on context.

Now if you take into account that in English, there's not so many glyphs
for letter,
so you have to use combination(s) of them to form words, phrases etc.. that
could have meaning
in specific context, while not have in other.


>
>
Cheers.
>
> Bing
>
> 在 2017-02-13 07:26:05,"john pfersich"  写道:
>
> BUT There are not compliant below
> 1.' ' asSymbol no meaning
> 2.  '$%%&' asSymbol no meaning
> 3.  'sign' asSymbol = 'sign ' asSymbol   >>>  false because of space.
> 3. '  one two  three ' asSymbol  >>>I think It should
> become three symbols = #one, #two, #three
>
> I don't know what you mean by "no meaning', they're symbols.
> Try this in a Playground, it works in Pharo 5"
>
> | oc sym filtered|
> oc := ' one two  three $%%&' splitOn: ' '.
> sym := OrderedCollection new.
> oc do: [:each | sym add: each asSymbol].
> filtered := OrderedCollection new.
> filtered := sym select: [ :each | each ~= #'' ].
> Transcript show: sym printString; cr.
> Transcript show: filtered printString; cr.
>
> On Fri, Feb 10, 2017 at 8:56 PM, lb  wrote:
>
>> Hi,
>> I know Symbol is subclass of String.
>> Any string object can become symbol object by sending 'asSymbol' message..
>> I think  symbol must has its meaning in comon use, so the symbol should
>> be composed of alphabet or number ‘without space“.
>>
>> BUT There are not compliant below
>> 1.' ' asSymbol no meaning
>> 2.  '$%%&' asSymbol no meaning
>> 3.  'sign' asSymbol = 'sign ' asSymbol   >>>  false because of space.
>> 3. '  one two  three ' asSymbol  >>>I think It should
>> become three symbols = #one, #two, #three
>>
>>
>> Mybe my understanding is wrong.
>>
>> Bing Liang
>>
>>
>>
>


-- 
Best regards,
Igor Stasenko.


[Pharo-users] Trait Searchability

2017-02-13 Thread Sean P. DeNigris
Forgive me if I'm missing something obvious, but how does one browse Traits
in the system for inspiration when creating a new one?



-
Cheers,
Sean
--
View this message in context: 
http://forum.world.st/Trait-Searchability-tp4934131.html
Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.



Re: [Pharo-users] [THIS IS A TEST FOR DISCORD FEEDS PLEASE IGNORE]

2017-02-13 Thread Dimitris Chloupis
test again

http://pharo.org/


On Fri, Feb 10, 2017 at 2:01 PM Dimitris Chloupis 
wrote:

> Test... test ... something test
>
>
> http://fieldguide.gizmodo.com/turn-gmail-into-an-rss-reader-with-ifttt-1582552035
>


Re: [Pharo-users] Trait Searchability

2017-02-13 Thread Denis Kudriashov
2017-02-13 20:52 GMT+01:00 Sean P. DeNigris :

> Forgive me if I'm missing something obvious, but how does one browse Traits
> in the system for inspiration when creating a new one?
>

In Calypso there are extra hierarchy modes: traits and trait users


[Pharo-users] GitFiletree on Pharo 6

2017-02-13 Thread Dimitris Chloupis
hey guys I was wondering where I can find the metadata less version of
GitFiletree, the one without the meta data that caused the merge confilcts

Anyone knows ?


Re: [Pharo-users] Trait Searchability

2017-02-13 Thread Peter Uhnak
Traits are instances of class Trait, so you can do `Trait allInstances`.

Peter

On Mon, Feb 13, 2017 at 11:52:03AM -0800, Sean P. DeNigris wrote:
> Forgive me if I'm missing something obvious, but how does one browse Traits
> in the system for inspiration when creating a new one?
> 
> 
> 
> -
> Cheers,
> Sean
> --
> View this message in context: 
> http://forum.world.st/Trait-Searchability-tp4934131.html
> Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
> 



Re: [Pharo-users] GitFiletree on Pharo 6

2017-02-13 Thread Peter Uhnak
On Mon, Feb 13, 2017 at 09:04:40PM +, Dimitris Chloupis wrote:
> hey guys I was wondering where I can find the metadata less version of
> GitFiletree, the one without the meta data that caused the merge confilcts
> 
> Anyone knows ?

GitFileTree uses metadata-less format by default;

if you have an older GFT repo, you can switch to metadataless easily: 
https://www.peteruhnak.com/blog/2016/08/05/switch-to-metadata-less-gitfiletree/

Peter



Re: [Pharo-users] GitFiletree on Pharo 6

2017-02-13 Thread Dimitris Chloupis
oh it has gone that far, nice
By the way very nice post too, thanks Peter , bookmarked :)


On Mon, Feb 13, 2017 at 11:14 PM Peter Uhnak  wrote:

> On Mon, Feb 13, 2017 at 09:04:40PM +, Dimitris Chloupis wrote:
> > hey guys I was wondering where I can find the metadata less version of
> > GitFiletree, the one without the meta data that caused the merge
> confilcts
> >
> > Anyone knows ?
>
> GitFileTree uses metadata-less format by default;
>
> if you have an older GFT repo, you can switch to metadataless easily:
> https://www.peteruhnak.com/blog/2016/08/05/switch-to-metadata-less-gitfiletree/
>
> Peter
>
>