Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Dale Henrichs



On 8/29/16 8:12 AM, Esteban A. Maringolo wrote:

2016-08-29 9:12 GMT-03:00 Serge Stinckwich :

On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano  wrote:

On 29 Aug 2016, at 14:04, Serge Stinckwich  wrote:

On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
 wrote:

Well, I am not sure if this has to do with Iceberg itself, because Iceberg
does nothing with dependencies.

But I am not sure that a ConfigurationOfXXX really has information of only
one package. Normally you will have only one configuration for each project,
am I wrong?
Then the configuration specifies (among other stuff) dependencies between
the parts (packages) of your project... I think this is right.
If you depend in another project, then you should not depend in specific
packages but in another configuration.

With the Iceberg tool, you can load or unload packages.
How it will works if the dependencies are not loaded before ?

AFAIK, this is not iceberg concern… this is a work for metacello (or cargo).

Yes you are right, but when you load a package from Iceberg, the
dependencies should be loaded at the same time I guess.

No, they shouldn't. Because Iceberg, AFAIU, is for SCM, and Metacello
for dependency management. A proper package manager (Cargo?) should
coordinate artifacts of both.




Christophe and I are talking about the fact that there is overlap 
between Cargo and Metacello with regards to dependency management ... 
We'll see how things evolve ...


Dale



Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Nicolas Passerini
>
> >>> With the Iceberg tool, you can load or unload packages.
> >>> How it will works if the dependencies are not loaded before ?
> >>
> >> AFAIK, this is not iceberg concern… this is a work for metacello (or
> cargo).
> >
> > Yes you are right, but when you load a package from Iceberg, the
> > dependencies should be loaded at the same time I guess.
>
> No, they shouldn't. Because Iceberg, AFAIU, is for SCM, and Metacello
> for dependency management. A proper package manager (Cargo?) should
> coordinate artifacts of both.
>
>
> I think I agree with both Estebans, I hope that Metacello/Cargo will use
Iceberg to load packages, but it should be their responsibility to decide
which packages and versions to load.


Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Esteban A. Maringolo
2016-08-29 9:12 GMT-03:00 Serge Stinckwich :
> On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano  
> wrote:
>>
>>> On 29 Aug 2016, at 14:04, Serge Stinckwich  
>>> wrote:
>>>
>>> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
>>>  wrote:
 Well, I am not sure if this has to do with Iceberg itself, because Iceberg
 does nothing with dependencies.

 But I am not sure that a ConfigurationOfXXX really has information of only
 one package. Normally you will have only one configuration for each 
 project,
 am I wrong?
 Then the configuration specifies (among other stuff) dependencies between
 the parts (packages) of your project... I think this is right.
 If you depend in another project, then you should not depend in specific
 packages but in another configuration.
>>>
>>> With the Iceberg tool, you can load or unload packages.
>>> How it will works if the dependencies are not loaded before ?
>>
>> AFAIK, this is not iceberg concern… this is a work for metacello (or cargo).
>
> Yes you are right, but when you load a package from Iceberg, the
> dependencies should be loaded at the same time I guess.

No, they shouldn't. Because Iceberg, AFAIU, is for SCM, and Metacello
for dependency management. A proper package manager (Cargo?) should
coordinate artifacts of both.


Esteban A. Maringolo



Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Serge Stinckwich
On Mon, Aug 29, 2016 at 2:08 PM, Esteban Lorenzano  wrote:
>
>> On 29 Aug 2016, at 14:04, Serge Stinckwich  
>> wrote:
>>
>> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
>>  wrote:
>>> Well, I am not sure if this has to do with Iceberg itself, because Iceberg
>>> does nothing with dependencies.
>>>
>>> But I am not sure that a ConfigurationOfXXX really has information of only
>>> one package. Normally you will have only one configuration for each project,
>>> am I wrong?
>>> Then the configuration specifies (among other stuff) dependencies between
>>> the parts (packages) of your project... I think this is right.
>>> If you depend in another project, then you should not depend in specific
>>> packages but in another configuration.
>>
>> With the Iceberg tool, you can load or unload packages.
>> How it will works if the dependencies are not loaded before ?
>
> AFAIK, this is not iceberg concern… this is a work for metacello (or cargo).

Yes you are right, but when you load a package from Iceberg, the
dependencies should be loaded at the same time I guess.

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



Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Esteban Lorenzano

> On 29 Aug 2016, at 14:04, Serge Stinckwich  wrote:
> 
> On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
>  wrote:
>> Well, I am not sure if this has to do with Iceberg itself, because Iceberg
>> does nothing with dependencies.
>> 
>> But I am not sure that a ConfigurationOfXXX really has information of only
>> one package. Normally you will have only one configuration for each project,
>> am I wrong?
>> Then the configuration specifies (among other stuff) dependencies between
>> the parts (packages) of your project... I think this is right.
>> If you depend in another project, then you should not depend in specific
>> packages but in another configuration.
> 
> With the Iceberg tool, you can load or unload packages.
> How it will works if the dependencies are not loaded before ?

AFAIK, this is not iceberg concern… this is a work for metacello (or cargo).

Esteban

> 
>> The problem here is that we are (at least Iceberg is) assuming a correlation
>> between project and repository, because in fact Iceberg handles
>> repositories. If a project would be spawn in several repositories, at least
>> now Iceberg can't do anything about it, it will treat them as independent
>> "projects". I am not sure about changing this logic in the near future, and
>> also we should think if that is not a Cargo/Metacello feature.
> 
> I never see a project spawn on many repo. I guess you can safely say
> that 1 project = 1 repo.
> 
> -- 
> Serge Stinckwich
> UCBN & UMI UMMISCO 209 (IRD/UPMC)
> Every DSL ends up being Smalltalk
> http://www.doesnotunderstand.org/
> 




Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Serge Stinckwich
On Mon, Aug 29, 2016 at 10:52 AM, Nicolas Passerini
 wrote:
> Well, I am not sure if this has to do with Iceberg itself, because Iceberg
> does nothing with dependencies.
>
> But I am not sure that a ConfigurationOfXXX really has information of only
> one package. Normally you will have only one configuration for each project,
> am I wrong?
> Then the configuration specifies (among other stuff) dependencies between
> the parts (packages) of your project... I think this is right.
> If you depend in another project, then you should not depend in specific
> packages but in another configuration.

With the Iceberg tool, you can load or unload packages.
How it will works if the dependencies are not loaded before ?

> The problem here is that we are (at least Iceberg is) assuming a correlation
> between project and repository, because in fact Iceberg handles
> repositories. If a project would be spawn in several repositories, at least
> now Iceberg can't do anything about it, it will treat them as independent
> "projects". I am not sure about changing this logic in the near future, and
> also we should think if that is not a Cargo/Metacello feature.

I never see a project spawn on many repo. I guess you can safely say
that 1 project = 1 repo.

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



Re: [Pharo-dev] IceBerg and push for projects vs packages

2016-08-29 Thread Nicolas Passerini
Well, I am not sure if this has to do with Iceberg itself, because Iceberg
does nothing with dependencies.

But I am not sure that a ConfigurationOfXXX really has information of only
one package. Normally you will have only one configuration for each
project, am I wrong?
Then the configuration specifies (among other stuff) dependencies between
the parts (packages) of your project... I think this is right.
If you depend in another project, then you should not depend in specific
packages but in another configuration.

The problem here is that we are (at least Iceberg is) assuming a
correlation between project and repository, because in fact Iceberg handles
repositories. If a project would be spawn in several repositories, at least
now Iceberg can't do anything about it, it will treat them as independent
"projects". I am not sure about changing this logic in the near future, and
also we should think if that is not a Cargo/Metacello feature.

On Sat, Aug 27, 2016 at 10:35 AM, Peter Uhnak  wrote:

> Hi,
>
> one thing that I wanted to ask about IceBerg --- during the IceBerg talk
> Nico mentioned that we need to think in terms of projects.
>
> Now I understand that perspective, because that's how git behaves and
> that's how _I_ think,
>
> however at the same time, there is a strong push for focusing on
> packages... having each package describing it's dependencies, etc.
>
> So my question is, how do those two views interact with each other?
> Because I feel like they are going against each other.
>
> Peter
>
>


[Pharo-dev] IceBerg and push for projects vs packages

2016-08-27 Thread Peter Uhnak
Hi,

one thing that I wanted to ask about IceBerg --- during the IceBerg talk Nico 
mentioned that we need to think in terms of projects.

Now I understand that perspective, because that's how git behaves and that's 
how _I_ think,

however at the same time, there is a strong push for focusing on packages... 
having each package describing it's dependencies, etc.

So my question is, how do those two views interact with each other? Because I 
feel like they are going against each other.

Peter